diff --git a/README.md b/README.md
index 513bee8c09d..b2955f8c4b5 100644
--- a/README.md
+++ b/README.md
@@ -7,8 +7,11 @@ PokéRogue is a browser based Pokémon fangame heavily inspired by the roguelite
If you have the motivation and experience with Typescript/Javascript (or are willing to learn) please feel free to fork the repository and make pull requests with contributions. If you don't know what to work on but want to help, reference the below **To-Do** section or the **#vote** channel in the discord.
### 💻 Environment Setup
-node: 18.3.0
+#### Prerequisites
+- node: 18.3.0
+- npm: [how to install](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)
+#### Running Locally
1. Clone the repo and in the root directory run `npm install`
- *if you run into any errors, reach out in the **#dev-corner** channel in discord*
2. Run `npm run start:dev` to locally run the project in `localhost:8000`
@@ -55,6 +58,9 @@ Check out our [Trello Board](https://trello.com/b/z10B703R/pokerogue-board) to s
- GAMEFREAK
- LJ Birdman
+### 🎨 Pagefault Games Intro
+ - Spectremint
+
### 🎨 Game Logo
- Gonstar (Paid Commission)
diff --git a/index.css b/index.css
index 73d6a91db24..9a507ad6766 100644
--- a/index.css
+++ b/index.css
@@ -142,7 +142,11 @@ body {
align-self: flex-end;
}
-#touchControls:not([data-ui-mode='STARTER_SELECT']) #apad .apadRectBtnContainer > #apadCycleNature, #touchControls:not([data-ui-mode='STARTER_SELECT']) #apad .apadSqBtnContainer {
+#apad .apadRectBtnContainer > .apadSqBtn:not(:first-child) {
+ margin-left: 10%;
+}
+
+#touchControls:not([data-ui-mode='STARTER_SELECT']) #apad .apadRectBtnContainer > .apadSqBtn, #touchControls:not([data-ui-mode='STARTER_SELECT']) #apad .apadSqBtnContainer {
display: none;
}
diff --git a/index.html b/index.html
index 67f999e7704..c05c1c0be92 100644
--- a/index.html
+++ b/index.html
@@ -68,17 +68,17 @@
B
-
-
- R
-
F
@@ -88,6 +88,9 @@
E
+
+ N
+
diff --git a/package-lock.json b/package-lock.json
index b93e2b2c6a3..5521dcc86a8 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "pokemon-rogue-battle",
- "version": "1.0.0",
+ "version": "1.0.1",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "pokemon-rogue-battle",
- "version": "1.0.0",
+ "version": "1.0.1",
"dependencies": {
"@material/material-color-utilities": "^0.2.7",
"crypto-js": "^4.2.0",
diff --git a/package.json b/package.json
index fd189fd4d89..16f5a316307 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "pokemon-rogue-battle",
"private": true,
- "version": "1.0.0",
+ "version": "1.0.2",
"type": "module",
"scripts": {
"start": "vite",
diff --git a/public/audio/cry/25-gigantamax.m4a b/public/audio/cry/25-gigantamax.m4a
index 103504a5657..2cf38814bce 100644
Binary files a/public/audio/cry/25-gigantamax.m4a and b/public/audio/cry/25-gigantamax.m4a differ
diff --git a/public/audio/cry/25.m4a b/public/audio/cry/25.m4a
index 103504a5657..2cf38814bce 100644
Binary files a/public/audio/cry/25.m4a and b/public/audio/cry/25.m4a differ
diff --git a/public/audio/cry/669-white.m4a b/public/audio/cry/669-white.m4a
new file mode 100644
index 00000000000..773241dac0f
Binary files /dev/null and b/public/audio/cry/669-white.m4a differ
diff --git a/public/audio/cry/670-white.m4a b/public/audio/cry/670-white.m4a
new file mode 100644
index 00000000000..45e83e386af
Binary files /dev/null and b/public/audio/cry/670-white.m4a differ
diff --git a/public/audio/cry/671-white.m4a b/public/audio/cry/671-white.m4a
new file mode 100644
index 00000000000..e604dea4064
Binary files /dev/null and b/public/audio/cry/671-white.m4a differ
diff --git a/public/battle-anims/common-infestation.json b/public/battle-anims/common-infestation.json
new file mode 100644
index 00000000000..35e60fd2c99
--- /dev/null
+++ b/public/battle-anims/common-infestation.json
@@ -0,0 +1,1966 @@
+{
+ "graphic": "PRAS- Struggle Bug",
+ "frames": [
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -67.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -71,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 116,
+ "y": -75,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -67.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -71,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 144,
+ "y": -75,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 125.5,
+ "y": -52.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 116,
+ "y": -75,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -71,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -71,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 144,
+ "y": -75,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 152,
+ "y": -79,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 116,
+ "y": -75,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -71,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 104,
+ "y": -63.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 125.5,
+ "y": -52.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 120,
+ "y": -44.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 144,
+ "y": -75,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 152,
+ "y": -79,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 156,
+ "y": -87,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -71,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 104,
+ "y": -63.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -55,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 120,
+ "y": -44.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -40.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 125.5,
+ "y": -52.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 152,
+ "y": -79,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 156,
+ "y": -87,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -95,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 104,
+ "y": -63.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -55,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 104,
+ "y": -47,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -40.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 132,
+ "y": -48.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 120,
+ "y": -44.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 156,
+ "y": -87,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -95,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -99,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -55,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 104,
+ "y": -47,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -39,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 132,
+ "y": -48.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -56.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -40.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -95,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -99,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 132,
+ "y": -95,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 104,
+ "y": -47,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -39,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 116,
+ "y": -43,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 132,
+ "y": -48.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -60.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -56.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -99,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 132,
+ "y": -95,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 120,
+ "y": -91,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -39,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 116,
+ "y": -43,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 124,
+ "y": -47.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -60.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -64.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 132,
+ "y": -48.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 132,
+ "y": -95,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 120,
+ "y": -91,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -87,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 116,
+ "y": -43,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 124,
+ "y": -47.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -55.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -64.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -72.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -60.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 120,
+ "y": -91,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -87,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 96,
+ "y": -79,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 124,
+ "y": -47.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -55.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -51.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -72.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 144,
+ "y": -80.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -64.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -87,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 96,
+ "y": -79,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 100,
+ "y": -71,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 128,
+ "y": -55.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -51.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 144,
+ "y": -48,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 144,
+ "y": -80.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -88.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -72.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 96,
+ "y": -79,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 100,
+ "y": -71,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -63,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 144,
+ "y": -48,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -51.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -44,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -88.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -84.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 144,
+ "y": -80.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 100,
+ "y": -71,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -63,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 116,
+ "y": -59,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 144,
+ "y": -48,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -44,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -36,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -84.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 152,
+ "y": -76.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 144,
+ "y": -80.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 108,
+ "y": -63,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 116,
+ "y": -59,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 124,
+ "y": -67,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -44,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -36,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -44,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 152,
+ "y": -76.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 160,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -68.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -84.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 116,
+ "y": -59,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -44,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 124,
+ "y": -67,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 140,
+ "y": -36,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -68.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 152,
+ "y": -76.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 100,
+ "priority": 1,
+ "focus": 1
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 136,
+ "y": -44,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 140,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 148,
+ "y": -68.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 140,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 124,
+ "y": -67,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 140,
+ "priority": 1,
+ "focus": 1
+ }
+ ]
+ ],
+ "frameTimedEvents": {
+ "0": [
+ {
+ "frameIndex": 0,
+ "resourceName": "PRSFX- Infestation.wav",
+ "volume": 100,
+ "pitch": 100,
+ "eventType": "AnimTimedSoundEvent"
+ }
+ ]
+ },
+ "position": 1,
+ "hue": 0
+}
\ No newline at end of file
diff --git a/public/battle-anims/common-snow.json b/public/battle-anims/common-snow.json
new file mode 100644
index 00000000000..03bca8434fb
--- /dev/null
+++ b/public/battle-anims/common-snow.json
@@ -0,0 +1,2477 @@
+{
+ "graphic": "PRAS- Weather",
+ "frames": [
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -49.214285714285715,
+ "y": -88.64285714285714,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -41.92857142857143,
+ "y": -67.78571428571429,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 75,
+ "y": -111,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -34.64285714285714,
+ "y": -46.928571428571445,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 88.25,
+ "y": -80,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -7.5,
+ "y": -111,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -27.35714285714286,
+ "y": -26.071428571428584,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 101.5,
+ "y": -49.00000000000002,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 30.5,
+ "y": -111,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 2.5269971999999967,
+ "y": -90.30207,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -20.071428571428577,
+ "y": -5.214285714285737,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 114.75,
+ "y": -18.000000000000043,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 37.28571428571429,
+ "y": -93.35714285714286,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 14.297732800000006,
+ "y": -66.00468000000001,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -12.785714285714299,
+ "y": 15.64285714285711,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 114.5,
+ "y": -18.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 44.07142857142857,
+ "y": -75.71428571428572,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": -63.5,
+ "y": -110.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 25.196381200000005,
+ "y": -43.50747,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -13,
+ "y": 15.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 114.5,
+ "y": -14.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 50.85714285714286,
+ "y": -58.071428571428584,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": -56,
+ "y": -88.5034,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 155,
+ "y": -111,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 36.96960200000001,
+ "y": -19.204949999999997,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -13,
+ "y": 19.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 100.5,
+ "y": -111,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 57.642857142857125,
+ "y": -40.42857142857146,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": -44,
+ "y": -58.5068,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 162.59260970569616,
+ "y": -85.3547946619629,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 47,
+ "y": 1.4999999999999858,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 107.87500000000003,
+ "y": -92.75,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 64.42857142857142,
+ "y": -22.785714285714334,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": -32,
+ "y": -28.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 170.1999439097043,
+ "y": -59.71395402493992,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 47,
+ "y": 1.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -63.5,
+ "y": -76,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 115.25000000000003,
+ "y": -74.50000000000001,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 71.21428571428572,
+ "y": -5.142857142857196,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": -32,
+ "y": -28.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 177.80249439597412,
+ "y": -34.07198837210045,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 47,
+ "y": 5.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -56,
+ "y": -52.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 122.625,
+ "y": -56.250000000000014,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 71,
+ "y": -5.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": -32,
+ "y": -24.25,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 185.01460118233896,
+ "y": -8.317186570033272,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 12.5,
+ "y": -111.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -44.50000000000001,
+ "y": -22.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 130,
+ "y": -38,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 71,
+ "y": -1.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": -18.5,
+ "y": -111,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 185,
+ "y": -8.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 21.5,
+ "y": -91.80000000000001,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -35,
+ "y": 4.25,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 137.375,
+ "y": -19.750000000000014,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 185,
+ "y": -4.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -6.997244140625007,
+ "y": -86.904753515625,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 30.5,
+ "y": -72.10000000000002,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -28,
+ "y": 24,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 144.75,
+ "y": -1.5000000000000142,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 5,
+ "y": -112,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 5.247328124999996,
+ "y": -61.255596875,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 39.5,
+ "y": -52.400000000000006,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -28,
+ "y": 24,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 152.12500000000003,
+ "y": 16.74999999999997,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 13.676215624999998,
+ "y": -92.46028749999999,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 17.493458984374996,
+ "y": -35.603175390625,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 48.499999999999986,
+ "y": -32.70000000000002,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -63.5,
+ "y": -107,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -28,
+ "y": 28,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 152,
+ "y": 16.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 24.83135,
+ "y": -67.3378,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 29,
+ "y": -11.500000000000014,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 120,
+ "y": -111.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 48.5,
+ "y": -33,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -52.25,
+ "y": -83.75,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 152,
+ "y": 20.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 34.74665312500001,
+ "y": -45.0075375,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 29,
+ "y": -11.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 136.83165,
+ "y": -83.8361,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 48.5,
+ "y": -29,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 150,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -41.00000000000001,
+ "y": -60.50000000000001,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -63,
+ "y": -110.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 44.6627,
+ "y": -22.675600000000003,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 29,
+ "y": -7.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 153.6633,
+ "y": -56.172200000000004,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": -29.75,
+ "y": -37.250000000000014,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -53.2489752,
+ "y": -88.7901712,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 55.82080937500001,
+ "y": 2.4535874999999976,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 170.50000000000006,
+ "y": -28.50000000000003,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 10,
+ "y": -111.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -30,
+ "y": -37.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -41.8022048,
+ "y": -63.3049088,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 73,
+ "y": -111.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 64.50000000000003,
+ "y": 22,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 170.5,
+ "y": -29,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 18.749124999999992,
+ "y": -91.085375,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -30,
+ "y": -33.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 150,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -30.703519199999995,
+ "y": -41.70783519999999,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 81.5,
+ "y": -93,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 64.5,
+ "y": 22,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 170.85714285714286,
+ "y": -24.642857142857153,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 29.99799999999999,
+ "y": -64.838,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -19.75433199999999,
+ "y": -14.217191999999983,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 87.71428571428572,
+ "y": -75.78571428571429,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 64.5,
+ "y": 22,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 39.996624999999995,
+ "y": -41.50787500000001,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -64,
+ "y": -76.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -10.000000000000007,
+ "y": 7.500000000000014,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 95.07142857142858,
+ "y": -57.92857142857144,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -4,
+ "y": -110.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 49.995999999999995,
+ "y": -18.176000000000002,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -56.875,
+ "y": -54.75,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -10,
+ "y": 7.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 102.42857142857142,
+ "y": -40.0714285714286,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 6.5,
+ "y": -88.4,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 61.24787499999999,
+ "y": 8.078374999999994,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -49.75,
+ "y": -33,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -10,
+ "y": 11.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 109.78571428571428,
+ "y": -22.214285714285737,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 17,
+ "y": -66.30000000000001,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 70,
+ "y": 28.49999999999997,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -42.625,
+ "y": -11.25,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 117.14285714285714,
+ "y": -4.35714285714289,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 27.5,
+ "y": -44.19999999999999,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 70,
+ "y": 28,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": -43,
+ "y": -11.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": -43,
+ "y": -7.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 117,
+ "y": -4.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 37.999999999999986,
+ "y": -22.10000000000001,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ },
+ {
+ "x": 70,
+ "y": 32,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 0,
+ "opacity": 150,
+ "priority": 1,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 117,
+ "y": -0.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 1,
+ "focus": 4
+ },
+ {
+ "x": 38,
+ "y": -22.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 255,
+ "priority": 2,
+ "focus": 4
+ }
+ ],
+ [
+ {
+ "x": 0,
+ "y": 0,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 0,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 2
+ },
+ {
+ "x": 128,
+ "y": -64,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 1,
+ "graphicFrame": 0,
+ "opacity": 255,
+ "locked": true,
+ "priority": 1,
+ "focus": 1
+ },
+ {
+ "x": 38,
+ "y": -18.5,
+ "zoomX": 100,
+ "zoomY": 100,
+ "visible": true,
+ "target": 2,
+ "graphicFrame": 1,
+ "opacity": 150,
+ "priority": 2,
+ "focus": 4
+ }
+ ]
+ ],
+ "frameTimedEvents": {
+ "0": [
+ {
+ "frameIndex": 0,
+ "resourceName": "PRSFX- Hail.wav",
+ "volume": 100,
+ "pitch": 101,
+ "eventType": "AnimTimedSoundEvent"
+ }
+ ],
+ "7": [
+ {
+ "frameIndex": 7,
+ "resourceName": "PRSFX- Hail.wav",
+ "volume": 100,
+ "pitch": 102,
+ "eventType": "AnimTimedSoundEvent"
+ }
+ ],
+ "15": [
+ {
+ "frameIndex": 15,
+ "resourceName": "PRSFX- Hail.wav",
+ "volume": 100,
+ "pitch": 100,
+ "eventType": "AnimTimedSoundEvent"
+ }
+ ],
+ "23": [
+ {
+ "frameIndex": 23,
+ "resourceName": "PRSFX- Hail.wav",
+ "volume": 100,
+ "pitch": 102,
+ "eventType": "AnimTimedSoundEvent"
+ }
+ ]
+ },
+ "position": 4,
+ "hue": 0
+}
\ No newline at end of file
diff --git a/public/images/effects/shiny_2.json b/public/images/effects/shiny_2.json
new file mode 100644
index 00000000000..1eb34cade22
--- /dev/null
+++ b/public/images/effects/shiny_2.json
@@ -0,0 +1,755 @@
+{
+ "textures": [
+ {
+ "image": "shiny_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 455,
+ "h": 539
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 1,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "1.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 1,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "2.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 1,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "3.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 1,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "4.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 1,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "5.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 78,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "6.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 78,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "7.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 78,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "8.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 78,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "9.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 78,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "10.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 155,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "11.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 155,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "12.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 155,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "13.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 155,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "14.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 155,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "15.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 232,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "16.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 232,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "17.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 232,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "18.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 232,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "19.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 232,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "20.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 309,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "21.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 309,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "22.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "23.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 309,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "24.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 309,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "25.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 386,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "26.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 386,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "27.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 386,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "28.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 386,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "29.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 386,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "30.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 463,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "31.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 463,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "32.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 463,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "33.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 463,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "34.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 463,
+ "w": 89,
+ "h": 75
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:e7ab42084b4f407be2605df69451df70:81a31b72361bd6b97bbe9921ad9d1ce7:08550d35d145cda6fb30cd1e5a8b5c68$"
+ }
+}
diff --git a/public/images/effects/shiny_2.png b/public/images/effects/shiny_2.png
new file mode 100644
index 00000000000..3f9e37c1643
Binary files /dev/null and b/public/images/effects/shiny_2.png differ
diff --git a/public/images/effects/shiny_3.json b/public/images/effects/shiny_3.json
new file mode 100644
index 00000000000..5891134b944
--- /dev/null
+++ b/public/images/effects/shiny_3.json
@@ -0,0 +1,755 @@
+{
+ "textures": [
+ {
+ "image": "shiny_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 455,
+ "h": 539
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 1,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "1.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 1,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "2.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 1,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "3.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 1,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "4.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 1,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "5.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 78,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "6.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 78,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "7.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 78,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "8.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 78,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "9.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 78,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "10.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 155,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "11.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 155,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "12.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 155,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "13.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 155,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "14.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 155,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "15.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 232,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "16.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 232,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "17.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 232,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "18.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 232,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "19.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 232,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "20.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 309,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "21.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 309,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "22.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "23.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 309,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "24.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 309,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "25.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 386,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "26.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 386,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "27.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 386,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "28.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 386,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "29.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 386,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "30.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 1,
+ "y": 463,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "31.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 92,
+ "y": 463,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "32.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 183,
+ "y": 463,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "33.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 274,
+ "y": 463,
+ "w": 89,
+ "h": 75
+ }
+ },
+ {
+ "filename": "34.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 89,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 89,
+ "h": 75
+ },
+ "frame": {
+ "x": 365,
+ "y": 463,
+ "w": 89,
+ "h": 75
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:e7ab42084b4f407be2605df69451df70:81a31b72361bd6b97bbe9921ad9d1ce7:08550d35d145cda6fb30cd1e5a8b5c68$"
+ }
+}
diff --git a/public/images/effects/shiny_3.png b/public/images/effects/shiny_3.png
new file mode 100644
index 00000000000..53000bdb3d1
Binary files /dev/null and b/public/images/effects/shiny_3.png differ
diff --git a/public/images/intro_dark.mp4 b/public/images/intro_dark.mp4
new file mode 100644
index 00000000000..dc0fc9e9b62
Binary files /dev/null and b/public/images/intro_dark.mp4 differ
diff --git a/public/images/items.json b/public/images/items.json
index 3d247c554f8..b2fd7491979 100644
--- a/public/images/items.json
+++ b/public/images/items.json
@@ -6058,7 +6058,7 @@
}
},
{
- "filename": "big_root",
+ "filename": "wide_lens",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -6066,16 +6066,16 @@
"h": 32
},
"spriteSourceSize": {
- "x": 4,
+ "x": 5,
"y": 4,
- "w": 23,
- "h": 24
+ "w": 22,
+ "h": 23
},
"frame": {
"x": 66,
"y": 301,
- "w": 23,
- "h": 24
+ "w": 22,
+ "h": 23
}
},
{
@@ -6093,12 +6093,33 @@
"h": 23
},
"frame": {
- "x": 89,
+ "x": 88,
"y": 302,
"w": 24,
"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": 112,
+ "y": 303,
+ "w": 23,
+ "h": 24
+ }
+ },
{
"filename": "catching_charm",
"rotated": false,
@@ -6114,7 +6135,7 @@
"h": 24
},
"frame": {
- "x": 113,
+ "x": 135,
"y": 303,
"w": 21,
"h": 24
@@ -6135,8 +6156,8 @@
"h": 24
},
"frame": {
- "x": 134,
- "y": 303,
+ "x": 156,
+ "y": 304,
"w": 24,
"h": 24
}
@@ -6156,7 +6177,7 @@
"h": 24
},
"frame": {
- "x": 158,
+ "x": 180,
"y": 304,
"w": 24,
"h": 24
@@ -6177,8 +6198,8 @@
"h": 24
},
"frame": {
- "x": 182,
- "y": 304,
+ "x": 204,
+ "y": 305,
"w": 24,
"h": 24
}
@@ -6198,7 +6219,7 @@
"h": 24
},
"frame": {
- "x": 206,
+ "x": 228,
"y": 305,
"w": 24,
"h": 24
@@ -6219,8 +6240,8 @@
"h": 24
},
"frame": {
- "x": 230,
- "y": 305,
+ "x": 252,
+ "y": 306,
"w": 24,
"h": 24
}
@@ -6240,8 +6261,8 @@
"h": 24
},
"frame": {
- "x": 254,
- "y": 306,
+ "x": 276,
+ "y": 307,
"w": 16,
"h": 24
}
@@ -6261,7 +6282,7 @@
"h": 24
},
"frame": {
- "x": 270,
+ "x": 292,
"y": 307,
"w": 23,
"h": 24
@@ -6282,7 +6303,7 @@
"h": 24
},
"frame": {
- "x": 293,
+ "x": 315,
"y": 307,
"w": 24,
"h": 24
@@ -6303,7 +6324,7 @@
"h": 24
},
"frame": {
- "x": 317,
+ "x": 339,
"y": 307,
"w": 24,
"h": 24
@@ -6324,28 +6345,7 @@
"h": 24
},
"frame": {
- "x": 341,
- "y": 307,
- "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": 365,
+ "x": 363,
"y": 309,
"w": 24,
"h": 24
@@ -6373,7 +6373,7 @@
}
},
{
- "filename": "lustrous_globe",
+ "filename": "lucky_punch_ultra",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -6393,6 +6393,27 @@
"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": 41,
+ "y": 323,
+ "w": 24,
+ "h": 24
+ }
+ },
{
"filename": "max_elixir",
"rotated": false,
@@ -6408,8 +6429,8 @@
"h": 24
},
"frame": {
- "x": 41,
- "y": 323,
+ "x": 65,
+ "y": 324,
"w": 18,
"h": 24
}
@@ -6429,7 +6450,7 @@
"h": 24
},
"frame": {
- "x": 59,
+ "x": 83,
"y": 325,
"w": 18,
"h": 24
@@ -6450,8 +6471,8 @@
"h": 24
},
"frame": {
- "x": 77,
- "y": 325,
+ "x": 101,
+ "y": 327,
"w": 17,
"h": 24
}
@@ -6471,8 +6492,8 @@
"h": 24
},
"frame": {
- "x": 94,
- "y": 325,
+ "x": 118,
+ "y": 327,
"w": 18,
"h": 24
}
@@ -6492,7 +6513,7 @@
"h": 24
},
"frame": {
- "x": 112,
+ "x": 136,
"y": 327,
"w": 16,
"h": 24
@@ -6513,8 +6534,8 @@
"h": 24
},
"frame": {
- "x": 128,
- "y": 327,
+ "x": 152,
+ "y": 328,
"w": 22,
"h": 24
}
@@ -6534,7 +6555,7 @@
"h": 24
},
"frame": {
- "x": 150,
+ "x": 174,
"y": 328,
"w": 24,
"h": 24
@@ -6555,8 +6576,8 @@
"h": 24
},
"frame": {
- "x": 174,
- "y": 328,
+ "x": 198,
+ "y": 329,
"w": 21,
"h": 24
}
@@ -6576,7 +6597,7 @@
"h": 24
},
"frame": {
- "x": 195,
+ "x": 219,
"y": 329,
"w": 16,
"h": 24
@@ -6597,7 +6618,7 @@
"h": 24
},
"frame": {
- "x": 211,
+ "x": 235,
"y": 329,
"w": 16,
"h": 24
@@ -6618,8 +6639,8 @@
"h": 24
},
"frame": {
- "x": 227,
- "y": 329,
+ "x": 251,
+ "y": 330,
"w": 16,
"h": 24
}
@@ -6639,8 +6660,8 @@
"h": 24
},
"frame": {
- "x": 243,
- "y": 330,
+ "x": 267,
+ "y": 331,
"w": 20,
"h": 24
}
@@ -6660,7 +6681,7 @@
"h": 24
},
"frame": {
- "x": 263,
+ "x": 287,
"y": 331,
"w": 16,
"h": 24
@@ -6681,7 +6702,7 @@
"h": 24
},
"frame": {
- "x": 279,
+ "x": 303,
"y": 331,
"w": 23,
"h": 24
@@ -6702,7 +6723,7 @@
"h": 24
},
"frame": {
- "x": 302,
+ "x": 326,
"y": 331,
"w": 24,
"h": 24
@@ -6722,52 +6743,10 @@
"w": 24,
"h": 24
},
- "frame": {
- "x": 326,
- "y": 331,
- "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": 350,
"y": 333,
- "w": 21,
- "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": 371,
- "y": 333,
- "w": 17,
+ "w": 24,
"h": 24
}
},
@@ -6785,10 +6764,52 @@
"w": 16,
"h": 24
},
+ "frame": {
+ "x": 374,
+ "y": 333,
+ "w": 16,
+ "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": 0,
"y": 346,
- "w": 16,
+ "w": 17,
+ "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": 17,
+ "y": 347,
+ "w": 21,
"h": 24
}
},
@@ -6807,7 +6828,7 @@
"h": 24
},
"frame": {
- "x": 16,
+ "x": 38,
"y": 347,
"w": 24,
"h": 24
@@ -6828,8 +6849,29 @@
"h": 24
},
"frame": {
- "x": 40,
- "y": 347,
+ "x": 62,
+ "y": 348,
+ "w": 16,
+ "h": 24
+ }
+ },
+ {
+ "filename": "zinc",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 32,
+ "h": 32
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 4,
+ "w": 16,
+ "h": 24
+ },
+ "frame": {
+ "x": 78,
+ "y": 349,
"w": 16,
"h": 24
}
@@ -6849,33 +6891,12 @@
"h": 24
},
"frame": {
- "x": 56,
- "y": 349,
+ "x": 94,
+ "y": 351,
"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": 80,
- "y": 349,
- "w": 16,
- "h": 24
- }
- },
{
"filename": "black_augurite",
"rotated": false,
@@ -6891,7 +6912,7 @@
"h": 25
},
"frame": {
- "x": 96,
+ "x": 118,
"y": 351,
"w": 22,
"h": 25
@@ -6912,8 +6933,8 @@
"h": 26
},
"frame": {
- "x": 118,
- "y": 351,
+ "x": 140,
+ "y": 352,
"w": 23,
"h": 26
}
@@ -6933,7 +6954,7 @@
"h": 26
},
"frame": {
- "x": 141,
+ "x": 163,
"y": 352,
"w": 24,
"h": 26
@@ -6954,8 +6975,8 @@
"h": 26
},
"frame": {
- "x": 165,
- "y": 352,
+ "x": 187,
+ "y": 353,
"w": 27,
"h": 26
}
@@ -6975,7 +6996,7 @@
"h": 27
},
"frame": {
- "x": 192,
+ "x": 214,
"y": 353,
"w": 32,
"h": 27
@@ -6996,8 +7017,8 @@
"h": 28
},
"frame": {
- "x": 224,
- "y": 354,
+ "x": 246,
+ "y": 355,
"w": 29,
"h": 28
}
@@ -7017,7 +7038,7 @@
"h": 30
},
"frame": {
- "x": 253,
+ "x": 275,
"y": 355,
"w": 29,
"h": 30
@@ -7038,7 +7059,7 @@
"h": 30
},
"frame": {
- "x": 282,
+ "x": 304,
"y": 355,
"w": 17,
"h": 30
@@ -7059,7 +7080,7 @@
"h": 31
},
"frame": {
- "x": 299,
+ "x": 321,
"y": 355,
"w": 17,
"h": 31
@@ -7080,8 +7101,8 @@
"h": 31
},
"frame": {
- "x": 316,
- "y": 355,
+ "x": 338,
+ "y": 357,
"w": 17,
"h": 31
}
@@ -7101,8 +7122,8 @@
"h": 31
},
"frame": {
- "x": 333,
- "y": 355,
+ "x": 355,
+ "y": 357,
"w": 17,
"h": 31
}
@@ -7113,6 +7134,6 @@
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
"version": "3.0",
- "smartupdate": "$TexturePacker:SmartUpdate:6d684b34b1074ff970152bf5b6c304e3:7c1ae946dd8c91ed5dfd1e2c9a39e1b1:110e074689c9edd2c54833ce2e4d9270$"
+ "smartupdate": "$TexturePacker:SmartUpdate:c16376d506289ffa5c901575af53cc84:c882e2e3aa145f15aae7eaf611efe36c:110e074689c9edd2c54833ce2e4d9270$"
}
}
diff --git a/public/images/items.png b/public/images/items.png
index 1ecd17240f0..d01db47850d 100644
Binary files a/public/images/items.png and b/public/images/items.png differ
diff --git a/public/images/items/wide_lens.png b/public/images/items/wide_lens.png
new file mode 100644
index 00000000000..bf622521a9a
Binary files /dev/null and b/public/images/items/wide_lens.png differ
diff --git a/public/images/pokemon/1024-stellar.json b/public/images/pokemon/1024-stellar.json
index 3f8ffe6c4ca..0972c56328f 100644
--- a/public/images/pokemon/1024-stellar.json
+++ b/public/images/pokemon/1024-stellar.json
@@ -4,30 +4,30 @@
"image": "1024-stellar.png",
"format": "RGBA8888",
"size": {
- "w": 96,
- "h": 96
+ "w": 119,
+ "h": 119
},
- "scale": 0.5,
+ "scale": 1,
"frames": [
{
"filename": "0001.png",
"rotated": false,
"trimmed": false,
"sourceSize": {
- "w": 96,
- "h": 96
+ "w": 119,
+ "h": 119
},
"spriteSourceSize": {
- "x": 9,
+ "x": 0,
"y": 0,
- "w": 78,
- "h": 96
+ "w": 115,
+ "h": 119
},
"frame": {
"x": 0,
"y": 0,
- "w": 78,
- "h": 96
+ "w": 115,
+ "h": 119
}
}
]
@@ -36,6 +36,6 @@
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
"version": "3.0",
- "smartupdate": "$TexturePacker:SmartUpdate:c9ee64bda72f2dadb06109338796ccac:1313f1218b7da2c57ad9f290d1323840:c1508f3b01ae78a28a1267fd6caa4f7b$"
+ "smartupdate": "$TexturePacker:SmartUpdate:bc663acf2e62803fce6c3a525dc8dd98:ccd7d0de8a487235cfbd6f372afa931f:c1508f3b01ae78a28a1267fd6caa4f7b$"
}
}
diff --git a/public/images/pokemon/1024-stellar.png b/public/images/pokemon/1024-stellar.png
index 6500eddec8e..7e40fb0043f 100644
Binary files a/public/images/pokemon/1024-stellar.png and b/public/images/pokemon/1024-stellar.png differ
diff --git a/public/images/pokemon/308.png b/public/images/pokemon/308.png
index 4e99791d62f..20e41507efa 100644
Binary files a/public/images/pokemon/308.png and b/public/images/pokemon/308.png differ
diff --git a/public/images/pokemon/back/1024-stellar.json b/public/images/pokemon/back/1024-stellar.json
index f80edd88606..ce84b0d4502 100644
--- a/public/images/pokemon/back/1024-stellar.json
+++ b/public/images/pokemon/back/1024-stellar.json
@@ -4,30 +4,30 @@
"image": "1024-stellar.png",
"format": "RGBA8888",
"size": {
- "w": 96,
- "h": 96
+ "w": 119,
+ "h": 119
},
- "scale": 0.333,
+ "scale": 1,
"frames": [
{
"filename": "0001.png",
"rotated": false,
"trimmed": false,
"sourceSize": {
- "w": 96,
- "h": 96
+ "w": 119,
+ "h": 119
},
"spriteSourceSize": {
- "x": 5,
+ "x": 0,
"y": 0,
- "w": 86,
- "h": 96
+ "w": 115,
+ "h": 119
},
"frame": {
"x": 0,
"y": 0,
- "w": 86,
- "h": 96
+ "w": 115,
+ "h": 119
}
}
]
@@ -36,6 +36,6 @@
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
"version": "3.0",
- "smartupdate": "$TexturePacker:SmartUpdate:ac5e775f77477eeabd029932804747c4:f7a112a87c35dc81cb0da88b7cbb39e8:c1508f3b01ae78a28a1267fd6caa4f7b$"
+ "smartupdate": "$TexturePacker:SmartUpdate:210ba1c2e6e58501571ae226d073a3c5:f12bdf191842f7ec3a4be98a43fb8121:c1508f3b01ae78a28a1267fd6caa4f7b$"
}
}
diff --git a/public/images/pokemon/back/1024-stellar.png b/public/images/pokemon/back/1024-stellar.png
index 7940444f580..0bb2993d857 100644
Binary files a/public/images/pokemon/back/1024-stellar.png and b/public/images/pokemon/back/1024-stellar.png differ
diff --git a/public/images/pokemon/back/303-mega.png b/public/images/pokemon/back/303-mega.png
index 2854cbb07c4..c1fe85b22ff 100644
Binary files a/public/images/pokemon/back/303-mega.png and b/public/images/pokemon/back/303-mega.png differ
diff --git a/public/images/pokemon/back/shiny/1024-stellar.json b/public/images/pokemon/back/shiny/1024-stellar.json
index eeabac109a3..ce84b0d4502 100644
--- a/public/images/pokemon/back/shiny/1024-stellar.json
+++ b/public/images/pokemon/back/shiny/1024-stellar.json
@@ -4,30 +4,30 @@
"image": "1024-stellar.png",
"format": "RGBA8888",
"size": {
- "w": 96,
- "h": 96
+ "w": 119,
+ "h": 119
},
- "scale": 0.333,
+ "scale": 1,
"frames": [
{
"filename": "0001.png",
"rotated": false,
"trimmed": false,
"sourceSize": {
- "w": 96,
- "h": 96
+ "w": 119,
+ "h": 119
},
"spriteSourceSize": {
- "x": 5,
+ "x": 0,
"y": 0,
- "w": 86,
- "h": 96
+ "w": 115,
+ "h": 119
},
"frame": {
"x": 0,
"y": 0,
- "w": 86,
- "h": 96
+ "w": 115,
+ "h": 119
}
}
]
@@ -36,6 +36,6 @@
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
"version": "3.0",
- "smartupdate": "$TexturePacker:SmartUpdate:2bd25bae0fabcfbc35e24bd578a7b4b5:aec60788a0d77f38fb599d721e41a0d6:c1508f3b01ae78a28a1267fd6caa4f7b$"
+ "smartupdate": "$TexturePacker:SmartUpdate:210ba1c2e6e58501571ae226d073a3c5:f12bdf191842f7ec3a4be98a43fb8121:c1508f3b01ae78a28a1267fd6caa4f7b$"
}
}
diff --git a/public/images/pokemon/back/shiny/1024-stellar.png b/public/images/pokemon/back/shiny/1024-stellar.png
index 6b9e35174ee..0bb2993d857 100644
Binary files a/public/images/pokemon/back/shiny/1024-stellar.png and b/public/images/pokemon/back/shiny/1024-stellar.png differ
diff --git a/public/images/pokemon/back/shiny/303-mega.png b/public/images/pokemon/back/shiny/303-mega.png
index a4fac715fbe..c7de009cf2a 100644
Binary files a/public/images/pokemon/back/shiny/303-mega.png and b/public/images/pokemon/back/shiny/303-mega.png differ
diff --git a/public/images/pokemon/exp/4264.png b/public/images/pokemon/exp/4264.png
index 86cdc71d183..3436fe2fe13 100644
Binary files a/public/images/pokemon/exp/4264.png and b/public/images/pokemon/exp/4264.png differ
diff --git a/public/images/pokemon/exp/857.png b/public/images/pokemon/exp/857.png
index c3b52bf3462..0a3195e2bda 100644
Binary files a/public/images/pokemon/exp/857.png and b/public/images/pokemon/exp/857.png differ
diff --git a/public/images/pokemon/exp/shiny/4264.png b/public/images/pokemon/exp/shiny/4264.png
index ad777e97efd..4848f512a60 100644
Binary files a/public/images/pokemon/exp/shiny/4264.png and b/public/images/pokemon/exp/shiny/4264.png differ
diff --git a/public/images/pokemon/icons/778-busted.png b/public/images/pokemon/icons/778-busted.png
new file mode 100644
index 00000000000..20bcc0176cd
Binary files /dev/null and b/public/images/pokemon/icons/778-busted.png differ
diff --git a/public/images/pokemon/icons/778s-busted.png b/public/images/pokemon/icons/778s-busted.png
new file mode 100644
index 00000000000..97048167703
Binary files /dev/null and b/public/images/pokemon/icons/778s-busted.png differ
diff --git a/public/images/pokemon/icons/variant/1/113_1.png b/public/images/pokemon/icons/variant/1/113_1.png
new file mode 100644
index 00000000000..36b1728fda4
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/113_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/113_2.png b/public/images/pokemon/icons/variant/1/113_2.png
new file mode 100644
index 00000000000..c954640e755
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/113_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/113_3.png b/public/images/pokemon/icons/variant/1/113_3.png
new file mode 100644
index 00000000000..536e0686905
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/113_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/123_1.png b/public/images/pokemon/icons/variant/1/123_1.png
new file mode 100644
index 00000000000..0bc5a3f6872
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/123_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/123_2.png b/public/images/pokemon/icons/variant/1/123_2.png
new file mode 100644
index 00000000000..08df4b1b366
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/123_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/123_3.png b/public/images/pokemon/icons/variant/1/123_3.png
new file mode 100644
index 00000000000..95533340fad
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/123_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/131-gigantamax_2.png b/public/images/pokemon/icons/variant/1/131-gigantamax_2.png
new file mode 100644
index 00000000000..6032d52a1ad
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/131-gigantamax_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/131-gigantamax_3.png b/public/images/pokemon/icons/variant/1/131-gigantamax_3.png
new file mode 100644
index 00000000000..229d6ae864e
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/131-gigantamax_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/131_2.png b/public/images/pokemon/icons/variant/1/131_2.png
new file mode 100644
index 00000000000..eb7dc097a35
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/131_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/131_3.png b/public/images/pokemon/icons/variant/1/131_3.png
new file mode 100644
index 00000000000..6a2e2436e3f
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/131_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/133_2.png b/public/images/pokemon/icons/variant/1/133_2.png
new file mode 100644
index 00000000000..7ab496699f7
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/133_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/133_3.png b/public/images/pokemon/icons/variant/1/133_3.png
new file mode 100644
index 00000000000..f999dd0fff7
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/133_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/134_2.png b/public/images/pokemon/icons/variant/1/134_2.png
new file mode 100644
index 00000000000..9cffe29a5e9
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/134_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/134_3.png b/public/images/pokemon/icons/variant/1/134_3.png
new file mode 100644
index 00000000000..5c1c1384110
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/134_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/135_1.png b/public/images/pokemon/icons/variant/1/135_1.png
new file mode 100644
index 00000000000..259dca57c06
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/135_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/135_2.png b/public/images/pokemon/icons/variant/1/135_2.png
new file mode 100644
index 00000000000..3b8b864196b
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/135_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/135_3.png b/public/images/pokemon/icons/variant/1/135_3.png
new file mode 100644
index 00000000000..f7f98152dfe
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/135_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/136_1.png b/public/images/pokemon/icons/variant/1/136_1.png
new file mode 100644
index 00000000000..bbf577e442e
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/136_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/136_2.png b/public/images/pokemon/icons/variant/1/136_2.png
new file mode 100644
index 00000000000..78c6844c47c
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/136_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/136_3.png b/public/images/pokemon/icons/variant/1/136_3.png
new file mode 100644
index 00000000000..fc5c63dc0a2
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/136_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/144_1.png b/public/images/pokemon/icons/variant/1/144_1.png
new file mode 100644
index 00000000000..a67ae72dc05
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/144_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/144_2.png b/public/images/pokemon/icons/variant/1/144_2.png
new file mode 100644
index 00000000000..cb73a0f3b9f
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/144_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/144_3.png b/public/images/pokemon/icons/variant/1/144_3.png
new file mode 100644
index 00000000000..f330cdeb62e
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/144_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/145_1.png b/public/images/pokemon/icons/variant/1/145_1.png
new file mode 100644
index 00000000000..8bf9b8c94fd
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/145_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/145_2.png b/public/images/pokemon/icons/variant/1/145_2.png
new file mode 100644
index 00000000000..4fdadb9990b
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/145_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/145_3.png b/public/images/pokemon/icons/variant/1/145_3.png
new file mode 100644
index 00000000000..07502c60e22
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/145_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/146_1.png b/public/images/pokemon/icons/variant/1/146_1.png
new file mode 100644
index 00000000000..e264b024ba9
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/146_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/146_2.png b/public/images/pokemon/icons/variant/1/146_2.png
new file mode 100644
index 00000000000..a6f78c0e917
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/146_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/146_3.png b/public/images/pokemon/icons/variant/1/146_3.png
new file mode 100644
index 00000000000..a0c4b9656bb
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/146_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/147_2.png b/public/images/pokemon/icons/variant/1/147_2.png
new file mode 100644
index 00000000000..1f66a5f5e6c
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/147_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/147_3.png b/public/images/pokemon/icons/variant/1/147_3.png
new file mode 100644
index 00000000000..9e61342b2c9
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/147_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/148_2.png b/public/images/pokemon/icons/variant/1/148_2.png
new file mode 100644
index 00000000000..0b38dd92640
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/148_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/148_3.png b/public/images/pokemon/icons/variant/1/148_3.png
new file mode 100644
index 00000000000..e9be6110f95
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/148_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/149_2.png b/public/images/pokemon/icons/variant/1/149_2.png
new file mode 100644
index 00000000000..5a0cab35949
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/149_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/149_3.png b/public/images/pokemon/icons/variant/1/149_3.png
new file mode 100644
index 00000000000..3defe1c15fa
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/149_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/150_2.png b/public/images/pokemon/icons/variant/1/150_2.png
new file mode 100644
index 00000000000..f2fbe81988c
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/150_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/150_3.png b/public/images/pokemon/icons/variant/1/150_3.png
new file mode 100644
index 00000000000..47742c993f4
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/150_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/151_2.png b/public/images/pokemon/icons/variant/1/151_2.png
new file mode 100644
index 00000000000..63baee99844
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/151_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/151_3.png b/public/images/pokemon/icons/variant/1/151_3.png
new file mode 100644
index 00000000000..1ba138538b4
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/151_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/35_3.png b/public/images/pokemon/icons/variant/1/35_3.png
new file mode 100644
index 00000000000..e6f4fb4f527
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/35_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/36_3.png b/public/images/pokemon/icons/variant/1/36_3.png
new file mode 100644
index 00000000000..159deb7ac9c
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/36_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/46_1.png b/public/images/pokemon/icons/variant/1/46_1.png
new file mode 100644
index 00000000000..6f29d16ed7d
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/46_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/46_2.png b/public/images/pokemon/icons/variant/1/46_2.png
new file mode 100644
index 00000000000..45bd33c6230
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/46_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/46_3.png b/public/images/pokemon/icons/variant/1/46_3.png
new file mode 100644
index 00000000000..c2a0e958745
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/46_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/47_1.png b/public/images/pokemon/icons/variant/1/47_1.png
new file mode 100644
index 00000000000..6dfafffe8de
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/47_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/47_2.png b/public/images/pokemon/icons/variant/1/47_2.png
new file mode 100644
index 00000000000..193a3e786fb
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/47_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/47_3.png b/public/images/pokemon/icons/variant/1/47_3.png
new file mode 100644
index 00000000000..6a19f28aab5
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/47_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/52-gigantamax_1.png b/public/images/pokemon/icons/variant/1/52-gigantamax_1.png
new file mode 100644
index 00000000000..b5a46b1af7a
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/52-gigantamax_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/52-gigantamax_2.png b/public/images/pokemon/icons/variant/1/52-gigantamax_2.png
new file mode 100644
index 00000000000..657f44d5b27
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/52-gigantamax_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/52-gigantamax_3.png b/public/images/pokemon/icons/variant/1/52-gigantamax_3.png
new file mode 100644
index 00000000000..a61ef7f1f3a
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/52-gigantamax_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/52_1.png b/public/images/pokemon/icons/variant/1/52_1.png
new file mode 100644
index 00000000000..b8fd1ea80c8
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/52_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/52_2.png b/public/images/pokemon/icons/variant/1/52_2.png
new file mode 100644
index 00000000000..4ba9daced0a
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/52_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/52_3.png b/public/images/pokemon/icons/variant/1/52_3.png
new file mode 100644
index 00000000000..ed9e423096b
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/52_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/53_1.png b/public/images/pokemon/icons/variant/1/53_1.png
new file mode 100644
index 00000000000..bcd50545860
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/53_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/53_2.png b/public/images/pokemon/icons/variant/1/53_2.png
new file mode 100644
index 00000000000..337b037b9c8
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/53_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/53_3.png b/public/images/pokemon/icons/variant/1/53_3.png
new file mode 100644
index 00000000000..749bac6b911
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/53_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/69_2.png b/public/images/pokemon/icons/variant/1/69_2.png
new file mode 100644
index 00000000000..6924dccf989
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/69_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/70_2.png b/public/images/pokemon/icons/variant/1/70_2.png
new file mode 100644
index 00000000000..6095f7032af
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/70_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/71_2.png b/public/images/pokemon/icons/variant/1/71_2.png
new file mode 100644
index 00000000000..4cac71faaf7
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/71_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/86_1.png b/public/images/pokemon/icons/variant/1/86_1.png
new file mode 100644
index 00000000000..33032e875bd
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/86_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/86_2.png b/public/images/pokemon/icons/variant/1/86_2.png
new file mode 100644
index 00000000000..e6495963b07
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/86_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/86_3.png b/public/images/pokemon/icons/variant/1/86_3.png
new file mode 100644
index 00000000000..7ab2eecbe79
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/86_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/87_1.png b/public/images/pokemon/icons/variant/1/87_1.png
new file mode 100644
index 00000000000..ddeeec97b98
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/87_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/87_2.png b/public/images/pokemon/icons/variant/1/87_2.png
new file mode 100644
index 00000000000..2631944bbe0
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/87_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/87_3.png b/public/images/pokemon/icons/variant/1/87_3.png
new file mode 100644
index 00000000000..a53c4e6830c
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/87_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/92_1.png b/public/images/pokemon/icons/variant/1/92_1.png
new file mode 100644
index 00000000000..630edf8dd65
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/92_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/92_2.png b/public/images/pokemon/icons/variant/1/92_2.png
new file mode 100644
index 00000000000..bcfd934e262
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/92_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/92_3.png b/public/images/pokemon/icons/variant/1/92_3.png
new file mode 100644
index 00000000000..2a63286ab71
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/92_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/93_1.png b/public/images/pokemon/icons/variant/1/93_1.png
new file mode 100644
index 00000000000..6b234888e7c
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/93_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/93_2.png b/public/images/pokemon/icons/variant/1/93_2.png
new file mode 100644
index 00000000000..bbac824bb92
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/93_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/93_3.png b/public/images/pokemon/icons/variant/1/93_3.png
new file mode 100644
index 00000000000..f8dda577d8a
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/93_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/94-gigantamax_1.png b/public/images/pokemon/icons/variant/1/94-gigantamax_1.png
new file mode 100644
index 00000000000..44410e1bb6b
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/94-gigantamax_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/94-gigantamax_2.png b/public/images/pokemon/icons/variant/1/94-gigantamax_2.png
new file mode 100644
index 00000000000..c48eaa9bc3c
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/94-gigantamax_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/94-gigantamax_3.png b/public/images/pokemon/icons/variant/1/94-gigantamax_3.png
new file mode 100644
index 00000000000..19f9ca86395
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/94-gigantamax_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/94-mega_1.png b/public/images/pokemon/icons/variant/1/94-mega_1.png
new file mode 100644
index 00000000000..8be3900458d
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/94-mega_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/94-mega_2.png b/public/images/pokemon/icons/variant/1/94-mega_2.png
new file mode 100644
index 00000000000..07306aec370
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/94-mega_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/94-mega_3.png b/public/images/pokemon/icons/variant/1/94-mega_3.png
new file mode 100644
index 00000000000..dca0a75b535
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/94-mega_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/94_1.png b/public/images/pokemon/icons/variant/1/94_1.png
new file mode 100644
index 00000000000..53589398a5a
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/94_1.png differ
diff --git a/public/images/pokemon/icons/variant/1/94_2.png b/public/images/pokemon/icons/variant/1/94_2.png
new file mode 100644
index 00000000000..e4f015c6604
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/94_2.png differ
diff --git a/public/images/pokemon/icons/variant/1/94_3.png b/public/images/pokemon/icons/variant/1/94_3.png
new file mode 100644
index 00000000000..b5809b798c4
Binary files /dev/null and b/public/images/pokemon/icons/variant/1/94_3.png differ
diff --git a/public/images/pokemon/icons/variant/1/icons.bat b/public/images/pokemon/icons/variant/1/icons.bat
new file mode 100644
index 00000000000..111ac2a8ca2
--- /dev/null
+++ b/public/images/pokemon/icons/variant/1/icons.bat
@@ -0,0 +1 @@
+cmd /c TexturePacker ./ ../configuration.tps --sheet ../../../../pokemon_icons_1v.png --data ../../../../pokemon_icons_1v.json --replace .png=
\ No newline at end of file
diff --git a/public/images/pokemon/icons/variant/2/175_1.png b/public/images/pokemon/icons/variant/2/175_1.png
new file mode 100644
index 00000000000..3908363e380
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/175_1.png differ
diff --git a/public/images/pokemon/icons/variant/2/175_2.png b/public/images/pokemon/icons/variant/2/175_2.png
new file mode 100644
index 00000000000..b602ce368b8
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/175_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/175_3.png b/public/images/pokemon/icons/variant/2/175_3.png
new file mode 100644
index 00000000000..842cb52abfc
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/175_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/176_1.png b/public/images/pokemon/icons/variant/2/176_1.png
new file mode 100644
index 00000000000..e51a7a45c3c
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/176_1.png differ
diff --git a/public/images/pokemon/icons/variant/2/176_2.png b/public/images/pokemon/icons/variant/2/176_2.png
new file mode 100644
index 00000000000..22df84f66e1
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/176_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/176_3.png b/public/images/pokemon/icons/variant/2/176_3.png
new file mode 100644
index 00000000000..5663e2bbf51
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/176_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/179_2.png b/public/images/pokemon/icons/variant/2/179_2.png
new file mode 100644
index 00000000000..3edfe9fd44e
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/179_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/179_3.png b/public/images/pokemon/icons/variant/2/179_3.png
new file mode 100644
index 00000000000..6a93e4d9ed7
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/179_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/180_2.png b/public/images/pokemon/icons/variant/2/180_2.png
new file mode 100644
index 00000000000..45b2e052738
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/180_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/180_3.png b/public/images/pokemon/icons/variant/2/180_3.png
new file mode 100644
index 00000000000..c3c7278a8fd
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/180_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/181-mega_2.png b/public/images/pokemon/icons/variant/2/181-mega_2.png
new file mode 100644
index 00000000000..69619852229
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/181-mega_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/181-mega_3.png b/public/images/pokemon/icons/variant/2/181-mega_3.png
new file mode 100644
index 00000000000..94c351a8093
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/181-mega_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/181_2.png b/public/images/pokemon/icons/variant/2/181_2.png
new file mode 100644
index 00000000000..246ccf2f753
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/181_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/181_3.png b/public/images/pokemon/icons/variant/2/181_3.png
new file mode 100644
index 00000000000..fb087c93669
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/181_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/196_1.png b/public/images/pokemon/icons/variant/2/196_1.png
new file mode 100644
index 00000000000..720839e6852
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/196_1.png differ
diff --git a/public/images/pokemon/icons/variant/2/196_2.png b/public/images/pokemon/icons/variant/2/196_2.png
new file mode 100644
index 00000000000..e67145e663f
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/196_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/196_3.png b/public/images/pokemon/icons/variant/2/196_3.png
new file mode 100644
index 00000000000..7a7254f30f5
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/196_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/200_1.png b/public/images/pokemon/icons/variant/2/200_1.png
new file mode 100644
index 00000000000..675b37bf5b3
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/200_1.png differ
diff --git a/public/images/pokemon/icons/variant/2/200_2.png b/public/images/pokemon/icons/variant/2/200_2.png
new file mode 100644
index 00000000000..3e269f2ed79
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/200_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/200_3.png b/public/images/pokemon/icons/variant/2/200_3.png
new file mode 100644
index 00000000000..82a7ea6c5d9
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/200_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/212-mega_1.png b/public/images/pokemon/icons/variant/2/212-mega_1.png
new file mode 100644
index 00000000000..53bc17210d1
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/212-mega_1.png differ
diff --git a/public/images/pokemon/icons/variant/2/212-mega_2.png b/public/images/pokemon/icons/variant/2/212-mega_2.png
new file mode 100644
index 00000000000..b541274ce3b
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/212-mega_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/212-mega_3.png b/public/images/pokemon/icons/variant/2/212-mega_3.png
new file mode 100644
index 00000000000..43546d2555e
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/212-mega_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/212_1.png b/public/images/pokemon/icons/variant/2/212_1.png
new file mode 100644
index 00000000000..e465191ec6b
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/212_1.png differ
diff --git a/public/images/pokemon/icons/variant/2/212_2.png b/public/images/pokemon/icons/variant/2/212_2.png
new file mode 100644
index 00000000000..fe788d5c996
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/212_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/212_3.png b/public/images/pokemon/icons/variant/2/212_3.png
new file mode 100644
index 00000000000..3a85f51517d
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/212_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/242_1.png b/public/images/pokemon/icons/variant/2/242_1.png
new file mode 100644
index 00000000000..cb486161264
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/242_1.png differ
diff --git a/public/images/pokemon/icons/variant/2/242_2.png b/public/images/pokemon/icons/variant/2/242_2.png
new file mode 100644
index 00000000000..478db55af73
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/242_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/242_3.png b/public/images/pokemon/icons/variant/2/242_3.png
new file mode 100644
index 00000000000..6a22a1ebbf1
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/242_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/243_2.png b/public/images/pokemon/icons/variant/2/243_2.png
new file mode 100644
index 00000000000..586b706f4e8
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/243_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/243_3.png b/public/images/pokemon/icons/variant/2/243_3.png
new file mode 100644
index 00000000000..58aa6b3470c
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/243_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/244_2.png b/public/images/pokemon/icons/variant/2/244_2.png
new file mode 100644
index 00000000000..753fce18f2e
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/244_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/244_3.png b/public/images/pokemon/icons/variant/2/244_3.png
new file mode 100644
index 00000000000..3ce134570d5
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/244_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/245_2.png b/public/images/pokemon/icons/variant/2/245_2.png
new file mode 100644
index 00000000000..54a5eccc7bb
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/245_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/245_3.png b/public/images/pokemon/icons/variant/2/245_3.png
new file mode 100644
index 00000000000..91a195809d7
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/245_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/249_2.png b/public/images/pokemon/icons/variant/2/249_2.png
new file mode 100644
index 00000000000..87b8525c716
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/249_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/249_3.png b/public/images/pokemon/icons/variant/2/249_3.png
new file mode 100644
index 00000000000..b8142d29758
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/249_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/250_2.png b/public/images/pokemon/icons/variant/2/250_2.png
new file mode 100644
index 00000000000..cbdd7d6c17f
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/250_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/250_3.png b/public/images/pokemon/icons/variant/2/250_3.png
new file mode 100644
index 00000000000..160bc12a516
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/250_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/251_2.png b/public/images/pokemon/icons/variant/2/251_2.png
new file mode 100644
index 00000000000..05ba4721a89
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/251_2.png differ
diff --git a/public/images/pokemon/icons/variant/2/251_3.png b/public/images/pokemon/icons/variant/2/251_3.png
new file mode 100644
index 00000000000..05084ac8687
Binary files /dev/null and b/public/images/pokemon/icons/variant/2/251_3.png differ
diff --git a/public/images/pokemon/icons/variant/2/icons.bat b/public/images/pokemon/icons/variant/2/icons.bat
new file mode 100644
index 00000000000..abc331c75e5
--- /dev/null
+++ b/public/images/pokemon/icons/variant/2/icons.bat
@@ -0,0 +1 @@
+cmd /c TexturePacker ./ ../configuration.tps --sheet ../../../../pokemon_icons_2v.png --data ../../../../pokemon_icons_2v.json --replace .png=
\ No newline at end of file
diff --git a/public/images/pokemon/icons/variant/3/263_2.png b/public/images/pokemon/icons/variant/3/263_2.png
new file mode 100644
index 00000000000..b638deec648
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/263_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/263_3.png b/public/images/pokemon/icons/variant/3/263_3.png
new file mode 100644
index 00000000000..5c5f447c79a
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/263_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/264_2.png b/public/images/pokemon/icons/variant/3/264_2.png
new file mode 100644
index 00000000000..42f87b76058
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/264_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/264_3.png b/public/images/pokemon/icons/variant/3/264_3.png
new file mode 100644
index 00000000000..88d700d9a9e
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/264_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/285_2.png b/public/images/pokemon/icons/variant/3/285_2.png
new file mode 100644
index 00000000000..b05cc520bbe
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/285_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/286_2.png b/public/images/pokemon/icons/variant/3/286_2.png
new file mode 100644
index 00000000000..a0b4f9ba99d
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/286_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/303-mega_1.png b/public/images/pokemon/icons/variant/3/303-mega_1.png
new file mode 100644
index 00000000000..0290f7c2662
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/303-mega_1.png differ
diff --git a/public/images/pokemon/icons/variant/3/303-mega_2.png b/public/images/pokemon/icons/variant/3/303-mega_2.png
new file mode 100644
index 00000000000..f0132c2e149
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/303-mega_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/303-mega_3.png b/public/images/pokemon/icons/variant/3/303-mega_3.png
new file mode 100644
index 00000000000..4e81c96c1b8
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/303-mega_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/303_1.png b/public/images/pokemon/icons/variant/3/303_1.png
new file mode 100644
index 00000000000..813cd91b44e
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/303_1.png differ
diff --git a/public/images/pokemon/icons/variant/3/303_2.png b/public/images/pokemon/icons/variant/3/303_2.png
new file mode 100644
index 00000000000..394d3676be4
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/303_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/303_3.png b/public/images/pokemon/icons/variant/3/303_3.png
new file mode 100644
index 00000000000..7f862199926
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/303_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/307_2.png b/public/images/pokemon/icons/variant/3/307_2.png
new file mode 100644
index 00000000000..13af3fbcf5e
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/307_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/307_3.png b/public/images/pokemon/icons/variant/3/307_3.png
new file mode 100644
index 00000000000..1ad23e2038d
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/307_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/308-mega_2.png b/public/images/pokemon/icons/variant/3/308-mega_2.png
new file mode 100644
index 00000000000..8a5213092f9
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/308-mega_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/308-mega_3.png b/public/images/pokemon/icons/variant/3/308-mega_3.png
new file mode 100644
index 00000000000..7e3d7ddc258
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/308-mega_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/308_2.png b/public/images/pokemon/icons/variant/3/308_2.png
new file mode 100644
index 00000000000..d72c502ea22
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/308_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/308_3.png b/public/images/pokemon/icons/variant/3/308_3.png
new file mode 100644
index 00000000000..135e7bc80a0
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/308_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/328_2.png b/public/images/pokemon/icons/variant/3/328_2.png
new file mode 100644
index 00000000000..8fa26e80d4b
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/328_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/328_3.png b/public/images/pokemon/icons/variant/3/328_3.png
new file mode 100644
index 00000000000..10b2d3cf6e2
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/328_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/329_2.png b/public/images/pokemon/icons/variant/3/329_2.png
new file mode 100644
index 00000000000..ec4da909118
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/329_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/329_3.png b/public/images/pokemon/icons/variant/3/329_3.png
new file mode 100644
index 00000000000..c58ca1f9b4b
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/329_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/330_2.png b/public/images/pokemon/icons/variant/3/330_2.png
new file mode 100644
index 00000000000..db09dd178c0
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/330_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/330_3.png b/public/images/pokemon/icons/variant/3/330_3.png
new file mode 100644
index 00000000000..457139323d8
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/330_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/334-mega_2.png b/public/images/pokemon/icons/variant/3/334-mega_2.png
new file mode 100644
index 00000000000..221b5e3c6c4
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/334-mega_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/334-mega_3.png b/public/images/pokemon/icons/variant/3/334-mega_3.png
new file mode 100644
index 00000000000..cf9f34e70f1
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/334-mega_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/352_1.png b/public/images/pokemon/icons/variant/3/352_1.png
new file mode 100644
index 00000000000..f6e0f96024a
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/352_1.png differ
diff --git a/public/images/pokemon/icons/variant/3/352_2.png b/public/images/pokemon/icons/variant/3/352_2.png
new file mode 100644
index 00000000000..88d67f91e1a
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/352_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/352_3.png b/public/images/pokemon/icons/variant/3/352_3.png
new file mode 100644
index 00000000000..e4f659efac0
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/352_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/358_1.png b/public/images/pokemon/icons/variant/3/358_1.png
new file mode 100644
index 00000000000..14deda92d58
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/358_1.png differ
diff --git a/public/images/pokemon/icons/variant/3/358_2.png b/public/images/pokemon/icons/variant/3/358_2.png
new file mode 100644
index 00000000000..181fe4226c1
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/358_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/358_3.png b/public/images/pokemon/icons/variant/3/358_3.png
new file mode 100644
index 00000000000..a5b66165185
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/358_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/384-mega_2.png b/public/images/pokemon/icons/variant/3/384-mega_2.png
new file mode 100644
index 00000000000..4715d127ff6
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/384-mega_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/384-mega_3.png b/public/images/pokemon/icons/variant/3/384-mega_3.png
new file mode 100644
index 00000000000..ee344250831
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/384-mega_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/384_2.png b/public/images/pokemon/icons/variant/3/384_2.png
new file mode 100644
index 00000000000..2835499beca
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/384_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/384_3.png b/public/images/pokemon/icons/variant/3/384_3.png
new file mode 100644
index 00000000000..84ff706b9fa
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/384_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/385_1.png b/public/images/pokemon/icons/variant/3/385_1.png
new file mode 100644
index 00000000000..5b66629d94b
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/385_1.png differ
diff --git a/public/images/pokemon/icons/variant/3/385_2.png b/public/images/pokemon/icons/variant/3/385_2.png
new file mode 100644
index 00000000000..f9efafe0634
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/385_2.png differ
diff --git a/public/images/pokemon/icons/variant/3/385_3.png b/public/images/pokemon/icons/variant/3/385_3.png
new file mode 100644
index 00000000000..6b2bdaa1fac
Binary files /dev/null and b/public/images/pokemon/icons/variant/3/385_3.png differ
diff --git a/public/images/pokemon/icons/variant/3/icons.bat b/public/images/pokemon/icons/variant/3/icons.bat
new file mode 100644
index 00000000000..1a59cd845a0
--- /dev/null
+++ b/public/images/pokemon/icons/variant/3/icons.bat
@@ -0,0 +1 @@
+cmd /c TexturePacker ./ ../configuration.tps --sheet ../../../../pokemon_icons_3v.png --data ../../../../pokemon_icons_3v.json --replace .png=
\ No newline at end of file
diff --git a/public/images/pokemon/icons/variant/4/399_2.png b/public/images/pokemon/icons/variant/4/399_2.png
new file mode 100644
index 00000000000..bdf0093d408
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/399_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/399_3.png b/public/images/pokemon/icons/variant/4/399_3.png
new file mode 100644
index 00000000000..5459fc5a8a1
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/399_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/400_2.png b/public/images/pokemon/icons/variant/4/400_2.png
new file mode 100644
index 00000000000..b7a5ad3e272
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/400_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/400_3.png b/public/images/pokemon/icons/variant/4/400_3.png
new file mode 100644
index 00000000000..2d4c4c03c3d
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/400_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/429_1.png b/public/images/pokemon/icons/variant/4/429_1.png
new file mode 100644
index 00000000000..7354a6a6be7
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/429_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/429_2.png b/public/images/pokemon/icons/variant/4/429_2.png
new file mode 100644
index 00000000000..9ec7cd5e76e
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/429_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/429_3.png b/public/images/pokemon/icons/variant/4/429_3.png
new file mode 100644
index 00000000000..48f7068ced8
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/429_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/433_1.png b/public/images/pokemon/icons/variant/4/433_1.png
new file mode 100644
index 00000000000..04e9fbcaf3a
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/433_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/433_2.png b/public/images/pokemon/icons/variant/4/433_2.png
new file mode 100644
index 00000000000..fbccdb13cd0
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/433_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/433_3.png b/public/images/pokemon/icons/variant/4/433_3.png
new file mode 100644
index 00000000000..72b3389978f
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/433_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/440_1.png b/public/images/pokemon/icons/variant/4/440_1.png
new file mode 100644
index 00000000000..221f382a21b
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/440_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/440_2.png b/public/images/pokemon/icons/variant/4/440_2.png
new file mode 100644
index 00000000000..13b7a152372
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/440_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/440_3.png b/public/images/pokemon/icons/variant/4/440_3.png
new file mode 100644
index 00000000000..a97c51cd646
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/440_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/442_2.png b/public/images/pokemon/icons/variant/4/442_2.png
new file mode 100644
index 00000000000..9859bb7ce98
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/442_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/442_3.png b/public/images/pokemon/icons/variant/4/442_3.png
new file mode 100644
index 00000000000..d64848ac40d
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/442_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/443_1.png b/public/images/pokemon/icons/variant/4/443_1.png
new file mode 100644
index 00000000000..53d93aab99e
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/443_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/443_2.png b/public/images/pokemon/icons/variant/4/443_2.png
new file mode 100644
index 00000000000..e7dfb3fdb5c
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/443_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/443_3.png b/public/images/pokemon/icons/variant/4/443_3.png
new file mode 100644
index 00000000000..abf81433d96
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/443_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/444_1.png b/public/images/pokemon/icons/variant/4/444_1.png
new file mode 100644
index 00000000000..1cb56ea2b84
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/444_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/444_2.png b/public/images/pokemon/icons/variant/4/444_2.png
new file mode 100644
index 00000000000..00c4eefefb4
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/444_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/444_3.png b/public/images/pokemon/icons/variant/4/444_3.png
new file mode 100644
index 00000000000..477505c805b
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/444_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/445-mega_1.png b/public/images/pokemon/icons/variant/4/445-mega_1.png
new file mode 100644
index 00000000000..ad7b058c3c1
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/445-mega_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/445-mega_2.png b/public/images/pokemon/icons/variant/4/445-mega_2.png
new file mode 100644
index 00000000000..c7260ae2013
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/445-mega_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/445-mega_3.png b/public/images/pokemon/icons/variant/4/445-mega_3.png
new file mode 100644
index 00000000000..e05693129d3
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/445-mega_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/445_1.png b/public/images/pokemon/icons/variant/4/445_1.png
new file mode 100644
index 00000000000..955f80fc48d
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/445_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/445_2.png b/public/images/pokemon/icons/variant/4/445_2.png
new file mode 100644
index 00000000000..aa36c7791af
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/445_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/445_3.png b/public/images/pokemon/icons/variant/4/445_3.png
new file mode 100644
index 00000000000..a0b6ed9cd1d
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/445_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/468_1.png b/public/images/pokemon/icons/variant/4/468_1.png
new file mode 100644
index 00000000000..686326a1aa8
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/468_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/468_2.png b/public/images/pokemon/icons/variant/4/468_2.png
new file mode 100644
index 00000000000..96f525ce43e
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/468_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/468_3.png b/public/images/pokemon/icons/variant/4/468_3.png
new file mode 100644
index 00000000000..7e907f3eae3
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/468_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/470_1.png b/public/images/pokemon/icons/variant/4/470_1.png
new file mode 100644
index 00000000000..4ba723592e3
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/470_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/470_2.png b/public/images/pokemon/icons/variant/4/470_2.png
new file mode 100644
index 00000000000..87324b2666a
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/470_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/470_3.png b/public/images/pokemon/icons/variant/4/470_3.png
new file mode 100644
index 00000000000..421ce166559
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/470_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/471_1.png b/public/images/pokemon/icons/variant/4/471_1.png
new file mode 100644
index 00000000000..d37a7515a00
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/471_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/471_2.png b/public/images/pokemon/icons/variant/4/471_2.png
new file mode 100644
index 00000000000..429544cc591
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/471_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/471_3.png b/public/images/pokemon/icons/variant/4/471_3.png
new file mode 100644
index 00000000000..95b8e481818
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/471_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/488_2.png b/public/images/pokemon/icons/variant/4/488_2.png
new file mode 100644
index 00000000000..400a2d2d065
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/488_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/488_3.png b/public/images/pokemon/icons/variant/4/488_3.png
new file mode 100644
index 00000000000..595ceb54f82
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/488_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/489_1.png b/public/images/pokemon/icons/variant/4/489_1.png
new file mode 100644
index 00000000000..9cb6e03888a
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/489_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/489_2.png b/public/images/pokemon/icons/variant/4/489_2.png
new file mode 100644
index 00000000000..b4e32fe5259
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/489_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/489_3.png b/public/images/pokemon/icons/variant/4/489_3.png
new file mode 100644
index 00000000000..428156638bf
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/489_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/490_1.png b/public/images/pokemon/icons/variant/4/490_1.png
new file mode 100644
index 00000000000..1fda8d15b43
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/490_1.png differ
diff --git a/public/images/pokemon/icons/variant/4/490_2.png b/public/images/pokemon/icons/variant/4/490_2.png
new file mode 100644
index 00000000000..b9014e88e18
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/490_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/490_3.png b/public/images/pokemon/icons/variant/4/490_3.png
new file mode 100644
index 00000000000..87a055c99e0
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/490_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/492-land_2.png b/public/images/pokemon/icons/variant/4/492-land_2.png
new file mode 100644
index 00000000000..fdb71a83687
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/492-land_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/492-land_3.png b/public/images/pokemon/icons/variant/4/492-land_3.png
new file mode 100644
index 00000000000..0262fb96375
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/492-land_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/492-sky_2.png b/public/images/pokemon/icons/variant/4/492-sky_2.png
new file mode 100644
index 00000000000..6c704ab6089
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/492-sky_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/492-sky_3.png b/public/images/pokemon/icons/variant/4/492-sky_3.png
new file mode 100644
index 00000000000..bd18e72a73d
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/492-sky_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/494_2.png b/public/images/pokemon/icons/variant/4/494_2.png
new file mode 100644
index 00000000000..bf0c810d1f8
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/494_2.png differ
diff --git a/public/images/pokemon/icons/variant/4/494_3.png b/public/images/pokemon/icons/variant/4/494_3.png
new file mode 100644
index 00000000000..49a0c349338
Binary files /dev/null and b/public/images/pokemon/icons/variant/4/494_3.png differ
diff --git a/public/images/pokemon/icons/variant/4/icons.bat b/public/images/pokemon/icons/variant/4/icons.bat
new file mode 100644
index 00000000000..b920365087e
--- /dev/null
+++ b/public/images/pokemon/icons/variant/4/icons.bat
@@ -0,0 +1 @@
+cmd /c TexturePacker ./ ../configuration.tps --sheet ../../../../pokemon_icons_4v.png --data ../../../../pokemon_icons_4v.json --replace .png=
\ No newline at end of file
diff --git a/public/images/pokemon/icons/variant/5/532_2.png b/public/images/pokemon/icons/variant/5/532_2.png
new file mode 100644
index 00000000000..81c5ccccd02
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/532_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/532_3.png b/public/images/pokemon/icons/variant/5/532_3.png
new file mode 100644
index 00000000000..276b7da7bac
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/532_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/533_2.png b/public/images/pokemon/icons/variant/5/533_2.png
new file mode 100644
index 00000000000..0a0e58b5af5
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/533_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/533_3.png b/public/images/pokemon/icons/variant/5/533_3.png
new file mode 100644
index 00000000000..abfa6b61c91
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/533_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/534_2.png b/public/images/pokemon/icons/variant/5/534_2.png
new file mode 100644
index 00000000000..19a37ec320e
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/534_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/534_3.png b/public/images/pokemon/icons/variant/5/534_3.png
new file mode 100644
index 00000000000..bb5716edede
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/534_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/538_2.png b/public/images/pokemon/icons/variant/5/538_2.png
new file mode 100644
index 00000000000..cce9492da40
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/538_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/538_3.png b/public/images/pokemon/icons/variant/5/538_3.png
new file mode 100644
index 00000000000..6167c7fbdcd
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/538_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/540_2.png b/public/images/pokemon/icons/variant/5/540_2.png
new file mode 100644
index 00000000000..26123ac72c3
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/540_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/541_2.png b/public/images/pokemon/icons/variant/5/541_2.png
new file mode 100644
index 00000000000..6e14cea1d65
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/541_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/542_2.png b/public/images/pokemon/icons/variant/5/542_2.png
new file mode 100644
index 00000000000..c6fab880eee
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/542_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/546_2.png b/public/images/pokemon/icons/variant/5/546_2.png
new file mode 100644
index 00000000000..e5db5b4f74f
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/546_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/546_3.png b/public/images/pokemon/icons/variant/5/546_3.png
new file mode 100644
index 00000000000..126bd405d95
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/546_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/547_2.png b/public/images/pokemon/icons/variant/5/547_2.png
new file mode 100644
index 00000000000..2294b11332a
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/547_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/547_3.png b/public/images/pokemon/icons/variant/5/547_3.png
new file mode 100644
index 00000000000..1af57cc099a
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/547_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/548_1.png b/public/images/pokemon/icons/variant/5/548_1.png
new file mode 100644
index 00000000000..ee99f5110f2
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/548_1.png differ
diff --git a/public/images/pokemon/icons/variant/5/548_2.png b/public/images/pokemon/icons/variant/5/548_2.png
new file mode 100644
index 00000000000..aafa94dc525
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/548_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/548_3.png b/public/images/pokemon/icons/variant/5/548_3.png
new file mode 100644
index 00000000000..4b31b7c0bdd
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/548_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/549_2.png b/public/images/pokemon/icons/variant/5/549_2.png
new file mode 100644
index 00000000000..9dbb35707b5
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/549_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/549_3.png b/public/images/pokemon/icons/variant/5/549_3.png
new file mode 100644
index 00000000000..ef8dba0f5be
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/549_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/559_1.png b/public/images/pokemon/icons/variant/5/559_1.png
new file mode 100644
index 00000000000..806899a722d
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/559_1.png differ
diff --git a/public/images/pokemon/icons/variant/5/559_2.png b/public/images/pokemon/icons/variant/5/559_2.png
new file mode 100644
index 00000000000..3323fc8c12f
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/559_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/559_3.png b/public/images/pokemon/icons/variant/5/559_3.png
new file mode 100644
index 00000000000..fdbb6f60687
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/559_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/560_1.png b/public/images/pokemon/icons/variant/5/560_1.png
new file mode 100644
index 00000000000..1cdbe72ed94
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/560_1.png differ
diff --git a/public/images/pokemon/icons/variant/5/560_2.png b/public/images/pokemon/icons/variant/5/560_2.png
new file mode 100644
index 00000000000..8dcf14f9494
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/560_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/560_3.png b/public/images/pokemon/icons/variant/5/560_3.png
new file mode 100644
index 00000000000..10351746c23
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/560_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/570_2.png b/public/images/pokemon/icons/variant/5/570_2.png
new file mode 100644
index 00000000000..c72fb971f4a
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/570_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/570_3.png b/public/images/pokemon/icons/variant/5/570_3.png
new file mode 100644
index 00000000000..d68ea4261b7
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/570_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/571_2.png b/public/images/pokemon/icons/variant/5/571_2.png
new file mode 100644
index 00000000000..1e238ee619d
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/571_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/571_3.png b/public/images/pokemon/icons/variant/5/571_3.png
new file mode 100644
index 00000000000..528bfc4b719
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/571_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
new file mode 100644
index 00000000000..b6230a17cbc
Binary files /dev/null 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
new file mode 100644
index 00000000000..c0848deade2
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/572_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/577_1.png b/public/images/pokemon/icons/variant/5/577_1.png
new file mode 100644
index 00000000000..16f8a4d6640
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/577_1.png differ
diff --git a/public/images/pokemon/icons/variant/5/577_2.png b/public/images/pokemon/icons/variant/5/577_2.png
new file mode 100644
index 00000000000..ac85ca5f5c3
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/577_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/577_3.png b/public/images/pokemon/icons/variant/5/577_3.png
new file mode 100644
index 00000000000..e2d68729a1b
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/577_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/578_1.png b/public/images/pokemon/icons/variant/5/578_1.png
new file mode 100644
index 00000000000..71364650cbb
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/578_1.png differ
diff --git a/public/images/pokemon/icons/variant/5/578_2.png b/public/images/pokemon/icons/variant/5/578_2.png
new file mode 100644
index 00000000000..7b3a54b60ce
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/578_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/578_3.png b/public/images/pokemon/icons/variant/5/578_3.png
new file mode 100644
index 00000000000..27e53e15336
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/578_3.png differ
diff --git a/public/images/pokemon/icons/variant/5/579_1.png b/public/images/pokemon/icons/variant/5/579_1.png
new file mode 100644
index 00000000000..18a57ba8742
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/579_1.png differ
diff --git a/public/images/pokemon/icons/variant/5/579_2.png b/public/images/pokemon/icons/variant/5/579_2.png
new file mode 100644
index 00000000000..7424adf1e60
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/579_2.png differ
diff --git a/public/images/pokemon/icons/variant/5/579_3.png b/public/images/pokemon/icons/variant/5/579_3.png
new file mode 100644
index 00000000000..af642842fac
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/579_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
new file mode 100644
index 00000000000..ddd0ca15c0c
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/641-incarnate_1.png 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
new file mode 100644
index 00000000000..8f6f01fd0d7
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/641-therian_1.png 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
new file mode 100644
index 00000000000..55507be70b9
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/642-incarnate_1.png 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
new file mode 100644
index 00000000000..bea360abb95
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/642-therian_1.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
new file mode 100644
index 00000000000..416fa9ca1db
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/645-incarnate_1.png 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
new file mode 100644
index 00000000000..c03d4233e29
Binary files /dev/null and b/public/images/pokemon/icons/variant/5/645-therian_1.png differ
diff --git a/public/images/pokemon/icons/variant/5/icons.bat b/public/images/pokemon/icons/variant/5/icons.bat
new file mode 100644
index 00000000000..01b8f86a03d
--- /dev/null
+++ b/public/images/pokemon/icons/variant/5/icons.bat
@@ -0,0 +1 @@
+cmd /c TexturePacker ./ ../configuration.tps --sheet ../../../../pokemon_icons_5v.png --data ../../../../pokemon_icons_5v.json --replace .png=
\ No newline at end of file
diff --git a/public/images/pokemon/icons/variant/6/700_2.png b/public/images/pokemon/icons/variant/6/700_2.png
new file mode 100644
index 00000000000..718027f0552
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/700_2.png differ
diff --git a/public/images/pokemon/icons/variant/6/700_3.png b/public/images/pokemon/icons/variant/6/700_3.png
new file mode 100644
index 00000000000..7a20bb24146
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/700_3.png differ
diff --git a/public/images/pokemon/icons/variant/6/704_2.png b/public/images/pokemon/icons/variant/6/704_2.png
new file mode 100644
index 00000000000..b5ef3292868
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/704_2.png differ
diff --git a/public/images/pokemon/icons/variant/6/704_3.png b/public/images/pokemon/icons/variant/6/704_3.png
new file mode 100644
index 00000000000..362180b54a1
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/704_3.png differ
diff --git a/public/images/pokemon/icons/variant/6/705_2.png b/public/images/pokemon/icons/variant/6/705_2.png
new file mode 100644
index 00000000000..de2fd606d6b
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/705_2.png differ
diff --git a/public/images/pokemon/icons/variant/6/705_3.png b/public/images/pokemon/icons/variant/6/705_3.png
new file mode 100644
index 00000000000..f79760bc5b4
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/705_3.png differ
diff --git a/public/images/pokemon/icons/variant/6/706_2.png b/public/images/pokemon/icons/variant/6/706_2.png
new file mode 100644
index 00000000000..01999cbdd86
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/706_2.png differ
diff --git a/public/images/pokemon/icons/variant/6/706_3.png b/public/images/pokemon/icons/variant/6/706_3.png
new file mode 100644
index 00000000000..03c46970756
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/706_3.png differ
diff --git a/public/images/pokemon/icons/variant/6/708_2.png b/public/images/pokemon/icons/variant/6/708_2.png
new file mode 100644
index 00000000000..903a00f6164
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/708_2.png differ
diff --git a/public/images/pokemon/icons/variant/6/708_3.png b/public/images/pokemon/icons/variant/6/708_3.png
new file mode 100644
index 00000000000..0180fca8779
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/708_3.png differ
diff --git a/public/images/pokemon/icons/variant/6/709_2.png b/public/images/pokemon/icons/variant/6/709_2.png
new file mode 100644
index 00000000000..72eb02bb04e
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/709_2.png differ
diff --git a/public/images/pokemon/icons/variant/6/709_3.png b/public/images/pokemon/icons/variant/6/709_3.png
new file mode 100644
index 00000000000..c53edfa6c9f
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/709_3.png differ
diff --git a/public/images/pokemon/icons/variant/6/710_2.png b/public/images/pokemon/icons/variant/6/710_2.png
new file mode 100644
index 00000000000..91d5b29d1ea
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/710_2.png differ
diff --git a/public/images/pokemon/icons/variant/6/710_3.png b/public/images/pokemon/icons/variant/6/710_3.png
new file mode 100644
index 00000000000..02e4ca50199
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/710_3.png differ
diff --git a/public/images/pokemon/icons/variant/6/711_1.png b/public/images/pokemon/icons/variant/6/711_1.png
new file mode 100644
index 00000000000..b2360c10df2
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/711_1.png differ
diff --git a/public/images/pokemon/icons/variant/6/711_2.png b/public/images/pokemon/icons/variant/6/711_2.png
new file mode 100644
index 00000000000..eb85beda5e8
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/711_2.png differ
diff --git a/public/images/pokemon/icons/variant/6/711_3.png b/public/images/pokemon/icons/variant/6/711_3.png
new file mode 100644
index 00000000000..6e37d2ebff4
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/711_3.png differ
diff --git a/public/images/pokemon/icons/variant/6/720-unbound_1.png b/public/images/pokemon/icons/variant/6/720-unbound_1.png
new file mode 100644
index 00000000000..e0f5e5f9e32
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/720-unbound_1.png differ
diff --git a/public/images/pokemon/icons/variant/6/720-unbound_2.png b/public/images/pokemon/icons/variant/6/720-unbound_2.png
new file mode 100644
index 00000000000..2ff7b5f8d92
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/720-unbound_2.png differ
diff --git a/public/images/pokemon/icons/variant/6/720-unbound_3.png b/public/images/pokemon/icons/variant/6/720-unbound_3.png
new file mode 100644
index 00000000000..29aa89b77e5
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/720-unbound_3.png differ
diff --git a/public/images/pokemon/icons/variant/6/720_1.png b/public/images/pokemon/icons/variant/6/720_1.png
new file mode 100644
index 00000000000..8a7f03ed222
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/720_1.png differ
diff --git a/public/images/pokemon/icons/variant/6/720_2.png b/public/images/pokemon/icons/variant/6/720_2.png
new file mode 100644
index 00000000000..632ccf7e3ab
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/720_2.png differ
diff --git a/public/images/pokemon/icons/variant/6/720_3.png b/public/images/pokemon/icons/variant/6/720_3.png
new file mode 100644
index 00000000000..7d0ea61305c
Binary files /dev/null and b/public/images/pokemon/icons/variant/6/720_3.png differ
diff --git a/public/images/pokemon/icons/variant/6/icons.bat b/public/images/pokemon/icons/variant/6/icons.bat
new file mode 100644
index 00000000000..610d5d740d6
--- /dev/null
+++ b/public/images/pokemon/icons/variant/6/icons.bat
@@ -0,0 +1 @@
+cmd /c TexturePacker ./ ../configuration.tps --sheet ../../../../pokemon_icons_6v.png --data ../../../../pokemon_icons_6v.json --replace .png=
\ No newline at end of file
diff --git a/public/images/pokemon/icons/variant/7/747_2.png b/public/images/pokemon/icons/variant/7/747_2.png
new file mode 100644
index 00000000000..618e2d03694
Binary files /dev/null and b/public/images/pokemon/icons/variant/7/747_2.png differ
diff --git a/public/images/pokemon/icons/variant/7/747_3.png b/public/images/pokemon/icons/variant/7/747_3.png
new file mode 100644
index 00000000000..df4ecf7373a
Binary files /dev/null and b/public/images/pokemon/icons/variant/7/747_3.png differ
diff --git a/public/images/pokemon/icons/variant/7/748_2.png b/public/images/pokemon/icons/variant/7/748_2.png
new file mode 100644
index 00000000000..7dd1f40bebf
Binary files /dev/null and b/public/images/pokemon/icons/variant/7/748_2.png differ
diff --git a/public/images/pokemon/icons/variant/7/748_3.png b/public/images/pokemon/icons/variant/7/748_3.png
new file mode 100644
index 00000000000..9432853a337
Binary files /dev/null and b/public/images/pokemon/icons/variant/7/748_3.png differ
diff --git a/public/images/pokemon/icons/variant/7/789_1.png b/public/images/pokemon/icons/variant/7/789_1.png
new file mode 100644
index 00000000000..fe970efa3d4
Binary files /dev/null and b/public/images/pokemon/icons/variant/7/789_1.png differ
diff --git a/public/images/pokemon/icons/variant/7/791_1.png b/public/images/pokemon/icons/variant/7/791_1.png
new file mode 100644
index 00000000000..dfba58f0364
Binary files /dev/null and b/public/images/pokemon/icons/variant/7/791_1.png differ
diff --git a/public/images/pokemon/icons/variant/7/802_1.png b/public/images/pokemon/icons/variant/7/802_1.png
new file mode 100644
index 00000000000..d9e268dd2e7
Binary files /dev/null and b/public/images/pokemon/icons/variant/7/802_1.png differ
diff --git a/public/images/pokemon/icons/variant/7/802_2.png b/public/images/pokemon/icons/variant/7/802_2.png
new file mode 100644
index 00000000000..039dbd12e03
Binary files /dev/null and b/public/images/pokemon/icons/variant/7/802_2.png differ
diff --git a/public/images/pokemon/icons/variant/7/802_3.png b/public/images/pokemon/icons/variant/7/802_3.png
new file mode 100644
index 00000000000..e371bd9e6bc
Binary files /dev/null and b/public/images/pokemon/icons/variant/7/802_3.png differ
diff --git a/public/images/pokemon/icons/variant/7/icons.bat b/public/images/pokemon/icons/variant/7/icons.bat
new file mode 100644
index 00000000000..727739c6524
--- /dev/null
+++ b/public/images/pokemon/icons/variant/7/icons.bat
@@ -0,0 +1 @@
+cmd /c TexturePacker ./ ../configuration.tps --sheet ../../../../pokemon_icons_7v.png --data ../../../../pokemon_icons_7v.json --replace .png=
\ No newline at end of file
diff --git a/public/images/pokemon/icons/variant/8/4263_2.png b/public/images/pokemon/icons/variant/8/4263_2.png
new file mode 100644
index 00000000000..abf0690d946
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/4263_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/4263_3.png b/public/images/pokemon/icons/variant/8/4263_3.png
new file mode 100644
index 00000000000..eb41f1d6edf
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/4263_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/4264_2.png b/public/images/pokemon/icons/variant/8/4264_2.png
new file mode 100644
index 00000000000..a176b19139b
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/4264_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/4264_3.png b/public/images/pokemon/icons/variant/8/4264_3.png
new file mode 100644
index 00000000000..80ff6ee4314
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/4264_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/6549_2.png b/public/images/pokemon/icons/variant/8/6549_2.png
new file mode 100644
index 00000000000..89846aeb4c3
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/6549_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/6549_3.png b/public/images/pokemon/icons/variant/8/6549_3.png
new file mode 100644
index 00000000000..017b78430d6
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/6549_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/6570_2.png b/public/images/pokemon/icons/variant/8/6570_2.png
new file mode 100644
index 00000000000..c1309423a17
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/6570_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/6570_3.png b/public/images/pokemon/icons/variant/8/6570_3.png
new file mode 100644
index 00000000000..d01a08b1745
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/6570_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/6571_2.png b/public/images/pokemon/icons/variant/8/6571_2.png
new file mode 100644
index 00000000000..2da0932716b
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/6571_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/6571_3.png b/public/images/pokemon/icons/variant/8/6571_3.png
new file mode 100644
index 00000000000..e1587335c74
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/6571_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/6705_2.png b/public/images/pokemon/icons/variant/8/6705_2.png
new file mode 100644
index 00000000000..2f4a0b3f939
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/6705_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/6705_3.png b/public/images/pokemon/icons/variant/8/6705_3.png
new file mode 100644
index 00000000000..47798e1e9c6
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/6705_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/6706_2.png b/public/images/pokemon/icons/variant/8/6706_2.png
new file mode 100644
index 00000000000..8f2423ebd7c
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/6706_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/6706_3.png b/public/images/pokemon/icons/variant/8/6706_3.png
new file mode 100644
index 00000000000..7f265f02f4c
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/6706_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/856_2.png b/public/images/pokemon/icons/variant/8/856_2.png
new file mode 100644
index 00000000000..6474bf08629
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/856_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/856_3.png b/public/images/pokemon/icons/variant/8/856_3.png
new file mode 100644
index 00000000000..c5898aa47e0
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/856_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/857_2.png b/public/images/pokemon/icons/variant/8/857_2.png
new file mode 100644
index 00000000000..b1a4c2f82ba
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/857_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/857_3.png b/public/images/pokemon/icons/variant/8/857_3.png
new file mode 100644
index 00000000000..d04b631f628
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/857_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/858_2.png b/public/images/pokemon/icons/variant/8/858_2.png
new file mode 100644
index 00000000000..c129c2df02d
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/858_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/858_3.png b/public/images/pokemon/icons/variant/8/858_3.png
new file mode 100644
index 00000000000..499312644de
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/858_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/872_1.png b/public/images/pokemon/icons/variant/8/872_1.png
new file mode 100644
index 00000000000..585412d2397
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/872_1.png differ
diff --git a/public/images/pokemon/icons/variant/8/872_2.png b/public/images/pokemon/icons/variant/8/872_2.png
new file mode 100644
index 00000000000..258f8fd225b
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/872_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/872_3.png b/public/images/pokemon/icons/variant/8/872_3.png
new file mode 100644
index 00000000000..2dc2a3f88da
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/872_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/873_1.png b/public/images/pokemon/icons/variant/8/873_1.png
new file mode 100644
index 00000000000..e3ca501356b
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/873_1.png differ
diff --git a/public/images/pokemon/icons/variant/8/873_2.png b/public/images/pokemon/icons/variant/8/873_2.png
new file mode 100644
index 00000000000..76a37ec55c8
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/873_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/873_3.png b/public/images/pokemon/icons/variant/8/873_3.png
new file mode 100644
index 00000000000..8101b0f317e
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/873_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/877-hangry_1.png b/public/images/pokemon/icons/variant/8/877-hangry_1.png
new file mode 100644
index 00000000000..9ccfcba6dcf
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/877-hangry_1.png differ
diff --git a/public/images/pokemon/icons/variant/8/877-hangry_2.png b/public/images/pokemon/icons/variant/8/877-hangry_2.png
new file mode 100644
index 00000000000..03c6e48a63d
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/877-hangry_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/877-hangry_3.png b/public/images/pokemon/icons/variant/8/877-hangry_3.png
new file mode 100644
index 00000000000..5dbf6ca7cdf
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/877-hangry_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/877_1.png b/public/images/pokemon/icons/variant/8/877_1.png
new file mode 100644
index 00000000000..c9cd435fac8
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/877_1.png differ
diff --git a/public/images/pokemon/icons/variant/8/877_2.png b/public/images/pokemon/icons/variant/8/877_2.png
new file mode 100644
index 00000000000..bfebde92e5e
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/877_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/877_3.png b/public/images/pokemon/icons/variant/8/877_3.png
new file mode 100644
index 00000000000..8fb654de930
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/877_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/885_1.png b/public/images/pokemon/icons/variant/8/885_1.png
new file mode 100644
index 00000000000..ec0849c4a3a
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/885_1.png differ
diff --git a/public/images/pokemon/icons/variant/8/885_2.png b/public/images/pokemon/icons/variant/8/885_2.png
new file mode 100644
index 00000000000..5b19fac0813
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/885_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/885_3.png b/public/images/pokemon/icons/variant/8/885_3.png
new file mode 100644
index 00000000000..3938810e1d9
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/885_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/886_1.png b/public/images/pokemon/icons/variant/8/886_1.png
new file mode 100644
index 00000000000..0001af872dc
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/886_1.png differ
diff --git a/public/images/pokemon/icons/variant/8/886_2.png b/public/images/pokemon/icons/variant/8/886_2.png
new file mode 100644
index 00000000000..b49491cbafd
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/886_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/886_3.png b/public/images/pokemon/icons/variant/8/886_3.png
new file mode 100644
index 00000000000..5de076df77c
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/886_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/887_2.png b/public/images/pokemon/icons/variant/8/887_2.png
new file mode 100644
index 00000000000..28a337f295b
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/887_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/887_3.png b/public/images/pokemon/icons/variant/8/887_3.png
new file mode 100644
index 00000000000..12507e42247
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/887_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/900_2.png b/public/images/pokemon/icons/variant/8/900_2.png
new file mode 100644
index 00000000000..376c1dbe794
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/900_2.png differ
diff --git a/public/images/pokemon/icons/variant/8/900_3.png b/public/images/pokemon/icons/variant/8/900_3.png
new file mode 100644
index 00000000000..9e2fb2a91af
Binary files /dev/null and b/public/images/pokemon/icons/variant/8/900_3.png differ
diff --git a/public/images/pokemon/icons/variant/8/icons.bat b/public/images/pokemon/icons/variant/8/icons.bat
new file mode 100644
index 00000000000..8a6e7d51ef9
--- /dev/null
+++ b/public/images/pokemon/icons/variant/8/icons.bat
@@ -0,0 +1 @@
+cmd /c TexturePacker ./ ../configuration.tps --sheet ../../../../pokemon_icons_8v.png --data ../../../../pokemon_icons_8v.json --replace .png=
\ No newline at end of file
diff --git a/public/images/pokemon/icons/variant/9/1000_1.png b/public/images/pokemon/icons/variant/9/1000_1.png
new file mode 100644
index 00000000000..92457719472
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/1000_1.png differ
diff --git a/public/images/pokemon/icons/variant/9/1000_2.png b/public/images/pokemon/icons/variant/9/1000_2.png
new file mode 100644
index 00000000000..def858c1d10
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/1000_2.png differ
diff --git a/public/images/pokemon/icons/variant/9/1000_3.png b/public/images/pokemon/icons/variant/9/1000_3.png
new file mode 100644
index 00000000000..e9ce3de8d62
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/1000_3.png differ
diff --git a/public/images/pokemon/icons/variant/9/962_1.png b/public/images/pokemon/icons/variant/9/962_1.png
new file mode 100644
index 00000000000..5b78aa0f0a7
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/962_1.png differ
diff --git a/public/images/pokemon/icons/variant/9/962_2.png b/public/images/pokemon/icons/variant/9/962_2.png
new file mode 100644
index 00000000000..7d018e82197
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/962_2.png differ
diff --git a/public/images/pokemon/icons/variant/9/962_3.png b/public/images/pokemon/icons/variant/9/962_3.png
new file mode 100644
index 00000000000..4bde28d426e
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/962_3.png differ
diff --git a/public/images/pokemon/icons/variant/9/967_2.png b/public/images/pokemon/icons/variant/9/967_2.png
new file mode 100644
index 00000000000..a8b7935f1dc
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/967_2.png differ
diff --git a/public/images/pokemon/icons/variant/9/973_1.png b/public/images/pokemon/icons/variant/9/973_1.png
new file mode 100644
index 00000000000..3dafafe1f8d
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/973_1.png differ
diff --git a/public/images/pokemon/icons/variant/9/973_2.png b/public/images/pokemon/icons/variant/9/973_2.png
new file mode 100644
index 00000000000..0fb662c43fb
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/973_2.png differ
diff --git a/public/images/pokemon/icons/variant/9/973_3.png b/public/images/pokemon/icons/variant/9/973_3.png
new file mode 100644
index 00000000000..3b8e2b58d8c
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/973_3.png differ
diff --git a/public/images/pokemon/icons/variant/9/987_1.png b/public/images/pokemon/icons/variant/9/987_1.png
new file mode 100644
index 00000000000..dccbbb60a04
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/987_1.png differ
diff --git a/public/images/pokemon/icons/variant/9/987_2.png b/public/images/pokemon/icons/variant/9/987_2.png
new file mode 100644
index 00000000000..9253f797f9d
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/987_2.png differ
diff --git a/public/images/pokemon/icons/variant/9/987_3.png b/public/images/pokemon/icons/variant/9/987_3.png
new file mode 100644
index 00000000000..27cd59ebab8
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/987_3.png differ
diff --git a/public/images/pokemon/icons/variant/9/999_1.png b/public/images/pokemon/icons/variant/9/999_1.png
new file mode 100644
index 00000000000..ea3cdfa0de5
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/999_1.png differ
diff --git a/public/images/pokemon/icons/variant/9/999_2.png b/public/images/pokemon/icons/variant/9/999_2.png
new file mode 100644
index 00000000000..05a374b7f30
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/999_2.png differ
diff --git a/public/images/pokemon/icons/variant/9/999_3.png b/public/images/pokemon/icons/variant/9/999_3.png
new file mode 100644
index 00000000000..84545a14d52
Binary files /dev/null and b/public/images/pokemon/icons/variant/9/999_3.png differ
diff --git a/public/images/pokemon/icons/variant/9/icons.bat b/public/images/pokemon/icons/variant/9/icons.bat
new file mode 100644
index 00000000000..abeddc55742
--- /dev/null
+++ b/public/images/pokemon/icons/variant/9/icons.bat
@@ -0,0 +1 @@
+cmd /c TexturePacker ./ ../configuration.tps --sheet ../../../../pokemon_icons_9v.png --data ../../../../pokemon_icons_9v.json --replace .png=
\ No newline at end of file
diff --git a/public/images/pokemon/icons/variant/configuration.tps b/public/images/pokemon/icons/variant/configuration.tps
new file mode 100644
index 00000000000..b077e37f873
--- /dev/null
+++ b/public/images/pokemon/icons/variant/configuration.tps
@@ -0,0 +1,207 @@
+
+
+
+ fileFormatVersion
+ 6
+ texturePackerVersion
+ 7.1.0
+ autoSDSettings
+
+
+ scale
+ 1
+ extension
+
+ spriteFilter
+
+ acceptFractionalValues
+
+ maxTextureSize
+
+ width
+ -1
+ height
+ -1
+
+
+
+ allowRotation
+
+ shapeDebug
+
+ dpi
+ 72
+ dataFormat
+ phaser
+ textureFileName
+
+ flipPVR
+
+ pvrQualityLevel
+ 3
+ astcQualityLevel
+ 2
+ basisUniversalQualityLevel
+ 2
+ etc1QualityLevel
+ 70
+ etc2QualityLevel
+ 70
+ dxtCompressionMode
+ DXT_PERCEPTUAL
+ ditherType
+ PngQuantLow
+ backgroundColor
+ 0
+ libGdx
+
+ filtering
+
+ x
+ Linear
+ y
+ Linear
+
+
+ shapePadding
+ 0
+ jpgQuality
+ 80
+ pngOptimizationLevel
+ 1
+ webpQualityLevel
+ 101
+ textureSubPath
+
+ textureFormat
+ png8
+ borderPadding
+ 0
+ maxTextureSize
+
+ width
+ 2048
+ height
+ 2048
+
+ fixedTextureSize
+
+ width
+ -1
+ height
+ -1
+
+ algorithmSettings
+
+ algorithm
+ MaxRects
+ freeSizeMode
+ Best
+ sizeConstraints
+ AnySize
+ forceSquared
+
+ maxRects
+
+ heuristic
+ Best
+
+ basic
+
+ sortBy
+ Best
+ order
+ Ascending
+
+ polygon
+
+ alignToGrid
+ 1
+
+
+ dataFileNames
+
+ multiPackMode
+ MultiPackOff
+ forceIdenticalLayout
+
+ outputFormat
+ RGBA8888
+ alphaHandling
+ ClearTransparentPixels
+ contentProtection
+
+ key
+
+
+ autoAliasEnabled
+
+ trimSpriteNames
+
+ prependSmartFolderName
+
+ autodetectAnimations
+
+ globalSpriteSettings
+
+ scale
+ 1
+ scaleMode
+ Smooth
+ extrude
+ 0
+ trimThreshold
+ 1
+ trimMargin
+ 1
+ trimMode
+ Trim
+ tracerTolerance
+ 200
+ heuristicMask
+
+ defaultPivotPoint
+ 0.5,0.5
+ writePivotPoints
+
+
+ individualSpriteSettings
+
+ fileLists
+
+ ignoreFileList
+
+ replaceList
+
+ ignoredWarnings
+
+ commonDivisorX
+ 1
+ commonDivisorY
+ 1
+ packNormalMaps
+
+ autodetectNormalMaps
+
+ normalMapFilter
+
+ normalMapSuffix
+
+ normalMapSheetFileName
+
+ exporterProperties
+
+
+
diff --git a/public/images/pokemon/shiny/1024-stellar.json b/public/images/pokemon/shiny/1024-stellar.json
index dd07eb812f2..ba751e2bc5c 100644
--- a/public/images/pokemon/shiny/1024-stellar.json
+++ b/public/images/pokemon/shiny/1024-stellar.json
@@ -4,30 +4,30 @@
"image": "1024-stellar.png",
"format": "RGBA8888",
"size": {
- "w": 96,
- "h": 96
+ "w": 119,
+ "h": 119
},
- "scale": 0.5,
+ "scale": 1,
"frames": [
{
"filename": "0001.png",
"rotated": false,
"trimmed": false,
"sourceSize": {
- "w": 96,
- "h": 96
+ "w": 119,
+ "h": 119
},
"spriteSourceSize": {
- "x": 9,
+ "x": 0,
"y": 0,
- "w": 78,
- "h": 96
+ "w": 115,
+ "h": 119
},
"frame": {
"x": 0,
"y": 0,
- "w": 78,
- "h": 96
+ "w": 115,
+ "h": 119
}
}
]
@@ -36,6 +36,6 @@
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
"version": "3.0",
- "smartupdate": "$TexturePacker:SmartUpdate:a7e89af07a22475413df24b510c193f7:45261af90c4a51e3dc73cccb894a2aad:c1508f3b01ae78a28a1267fd6caa4f7b$"
+ "smartupdate": "$TexturePacker:SmartUpdate:3510deaf42eaa3ee2fdfa22c00a2b30b:3beb6b12ca1bb50ad260593b41939f27:c1508f3b01ae78a28a1267fd6caa4f7b$"
}
}
diff --git a/public/images/pokemon/shiny/1024-stellar.png b/public/images/pokemon/shiny/1024-stellar.png
index 42ed145d937..b00b395ec56 100644
Binary files a/public/images/pokemon/shiny/1024-stellar.png and b/public/images/pokemon/shiny/1024-stellar.png differ
diff --git a/public/images/pokemon/variant/1000.json b/public/images/pokemon/variant/1000.json
new file mode 100644
index 00000000000..e7451cd51d0
--- /dev/null
+++ b/public/images/pokemon/variant/1000.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "917228": "a33612",
+ "ffdba6": "ffb667",
+ "ffd52d": "ee883f",
+ "0f0f0f": "0f0f0f",
+ "f7a62d": "a64700",
+ "d9880f": "9b3e00",
+ "484415": "6d1906",
+ "d5a431": "d05c31",
+ "323437": "531f03",
+ "836c54": "a60d4a",
+ "b9285b": "cd6229",
+ "bfa33e": "d22643",
+ "545b6b": "8f4a14",
+ "8a8f9f": "34497e",
+ "b9becd": "5e86c2"
+ },
+ "1": {
+ "917228": "622f43",
+ "ffdba6": "f3e3e4",
+ "ffd52d": "e1ced1",
+ "0f0f0f": "0f0f0f",
+ "f7a62d": "96747e",
+ "d9880f": "7a4e5d",
+ "484415": "4b1a32",
+ "d5a431": "b09098",
+ "323437": "1d2c54",
+ "836c54": "32455a",
+ "b9285b": "7f6086",
+ "bfa33e": "557fa3",
+ "545b6b": "415073",
+ "8a8f9f": "2d6b61",
+ "b9becd": "5eb5a1"
+ },
+ "2": {
+ "917228": "3d717b",
+ "ffdba6": "ffffff",
+ "ffd52d": "e5fffc",
+ "0f0f0f": "0f0f0f",
+ "f7a62d": "89d1d6",
+ "d9880f": "5a9aa3",
+ "484415": "214048",
+ "d5a431": "aae8e4",
+ "323437": "212857",
+ "836c54": "526481",
+ "b9285b": "204e8b",
+ "bfa33e": "7e93b0",
+ "545b6b": "495890",
+ "8a8f9f": "a5ace8",
+ "b9becd": "dae0f3"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/113_1.json b/public/images/pokemon/variant/113_1.json
new file mode 100644
index 00000000000..aa25036535c
--- /dev/null
+++ b/public/images/pokemon/variant/113_1.json
@@ -0,0 +1,2540 @@
+{
+ "textures": [
+ {
+ "image": "113_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 313,
+ "h": 313
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 187,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 187,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 140,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 140,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 212,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 212,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 92,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 92,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 159,
+ "y": 138,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 159,
+ "y": 138,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 53,
+ "y": 186,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 53,
+ "y": 186,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 159,
+ "y": 227,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 159,
+ "y": 227,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 230,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 230,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 213,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 213,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:0bf34066af33fac571e74094a6134df4:f705b27e0c4ab3f54e46f07402021701:622256e98da575d9c1945946a2b6a0ef$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/113_1.png b/public/images/pokemon/variant/113_1.png
new file mode 100644
index 00000000000..bf4ce11b3d7
Binary files /dev/null and b/public/images/pokemon/variant/113_1.png differ
diff --git a/public/images/pokemon/variant/113_2.json b/public/images/pokemon/variant/113_2.json
new file mode 100644
index 00000000000..3dffa8187e8
--- /dev/null
+++ b/public/images/pokemon/variant/113_2.json
@@ -0,0 +1,2540 @@
+{
+ "textures": [
+ {
+ "image": "113_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 313,
+ "h": 313
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 187,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 187,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 140,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 140,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 212,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 212,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 92,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 92,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 159,
+ "y": 138,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 159,
+ "y": 138,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 53,
+ "y": 186,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 53,
+ "y": 186,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 159,
+ "y": 227,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 159,
+ "y": 227,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 230,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 230,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 213,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 213,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:0bf34066af33fac571e74094a6134df4:f705b27e0c4ab3f54e46f07402021701:622256e98da575d9c1945946a2b6a0ef$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/113_2.png b/public/images/pokemon/variant/113_2.png
new file mode 100644
index 00000000000..455068d0c66
Binary files /dev/null and b/public/images/pokemon/variant/113_2.png differ
diff --git a/public/images/pokemon/variant/113_3.json b/public/images/pokemon/variant/113_3.json
new file mode 100644
index 00000000000..c5c3c2b1624
--- /dev/null
+++ b/public/images/pokemon/variant/113_3.json
@@ -0,0 +1,2540 @@
+{
+ "textures": [
+ {
+ "image": "113_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 313,
+ "h": 313
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 53,
+ "y": 47,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ },
+ "frame": {
+ "x": 106,
+ "y": 0,
+ "w": 53,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 94,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 47,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 187,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 187,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 140,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 53,
+ "y": 140,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 46,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 212,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 212,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 139,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 234,
+ "w": 52,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 92,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 53,
+ "h": 46
+ },
+ "frame": {
+ "x": 159,
+ "y": 92,
+ "w": 53,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 46,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 159,
+ "y": 138,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 159,
+ "y": 138,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 91,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 136,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 159,
+ "y": 183,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 212,
+ "y": 181,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 106,
+ "y": 185,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 53,
+ "y": 186,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 53,
+ "y": 186,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 45
+ },
+ "frame": {
+ "x": 52,
+ "y": 231,
+ "w": 53,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 159,
+ "y": 227,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 159,
+ "y": 227,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 44
+ },
+ "frame": {
+ "x": 214,
+ "y": 226,
+ "w": 53,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 230,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 106,
+ "y": 230,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 158,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 213,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 47
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 55,
+ "h": 43
+ },
+ "frame": {
+ "x": 213,
+ "y": 270,
+ "w": 55,
+ "h": 43
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:0bf34066af33fac571e74094a6134df4:f705b27e0c4ab3f54e46f07402021701:622256e98da575d9c1945946a2b6a0ef$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/113_3.png b/public/images/pokemon/variant/113_3.png
new file mode 100644
index 00000000000..3a82615fcca
Binary files /dev/null and b/public/images/pokemon/variant/113_3.png differ
diff --git a/public/images/pokemon/variant/131-gigantamax.json b/public/images/pokemon/variant/131-gigantamax.json
new file mode 100644
index 00000000000..3cb6eb5dc1b
--- /dev/null
+++ b/public/images/pokemon/variant/131-gigantamax.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "101010": "101010",
+ "41a4e6": "85cfef",
+ "184152": "133363",
+ "73c5f6": "ffc0e7",
+ "397ba4": "3595c4",
+ "51fffb": "ff8de5",
+ "fffad6": "fffad6",
+ "8ba494": "a7b2ab",
+ "dec583": "dac99e",
+ "52526a": "3c1838",
+ "a49494": "844a73",
+ "fefefe": "ffebe9",
+ "d5cdc5": "cb88b0",
+ "807573": "6b3768",
+ "f6deac": "f1e9d9"
+ },
+ "2": {
+ "101010": "101010",
+ "41a4e6": "49b18c",
+ "184152": "184152",
+ "73c5f6": "8bd3b6",
+ "397ba4": "3a8770",
+ "51fffb": "0085b2",
+ "fffad6": "fffad6",
+ "8ba494": "8ca594",
+ "dec583": "baafaa",
+ "52526a": "282548",
+ "a49494": "666b8b",
+ "fefefe": "fefefe",
+ "d5cdc5": "969dbc",
+ "807573": "454565",
+ "f6deac": "e8e3e0"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/131.json b/public/images/pokemon/variant/131.json
new file mode 100644
index 00000000000..603bff575b2
--- /dev/null
+++ b/public/images/pokemon/variant/131.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "194252": "133363",
+ "000000": "000000",
+ "42a5e6": "85cfef",
+ "3a7ba5": "4b9bc3",
+ "73c5f7": "c4f6ff",
+ "f7efe6": "ffe8f6",
+ "6b5219": "b83e94",
+ "dec584": "dac99e",
+ "8ca594": "a7b2ab",
+ "5a4a42": "504642",
+ "52526b": "51264d",
+ "d6cec5": "cb88b0",
+ "a59494": "844a73",
+ "f7dead": "f1e9d9"
+ },
+ "2": {
+ "194252": "06383e",
+ "000000": "000000",
+ "42a5e6": "49b18c",
+ "3a7ba5": "3a8770",
+ "73c5f7": "8bd3b6",
+ "f7efe6": "f7efe6",
+ "6b5219": "18418d",
+ "dec584": "baafaa",
+ "8ca594": "8ca594",
+ "5a4a42": "5a4a42",
+ "52526b": "383851",
+ "d6cec5": "969dbc",
+ "a59494": "666b8b",
+ "f7dead": "e8e3e0"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/133.json b/public/images/pokemon/variant/133.json
new file mode 100644
index 00000000000..1939d16ec22
--- /dev/null
+++ b/public/images/pokemon/variant/133.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "a5634a": "5982b7",
+ "734a4a": "334b7d",
+ "d69c4a": "90c1f1",
+ "000000": "000000",
+ "523121": "13235c",
+ "e6c594": "9db5d8",
+ "bd9c7b": "5f6f94",
+ "ffffff": "ffffff",
+ "ffe6ad": "d7ebff"
+ },
+ "2": {
+ "a5634a": "915ea3",
+ "734a4a": "5e3372",
+ "d69c4a": "bf88cb",
+ "000000": "000000",
+ "523121": "461144",
+ "e6c594": "d7b8ba",
+ "bd9c7b": "a07c83",
+ "ffffff": "ffffff",
+ "ffe6ad": "f3e6e3"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/134.json b/public/images/pokemon/variant/134.json
new file mode 100644
index 00000000000..f801da9a8e0
--- /dev/null
+++ b/public/images/pokemon/variant/134.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "104a63": "411d87",
+ "107394": "7054e7",
+ "bdad5a": "a26b30",
+ "6b6321": "663a18",
+ "101010": "101010",
+ "8c8c8c": "754949",
+ "ffffff": "ffe6db",
+ "ffe6a5": "f4cb60",
+ "cecece": "d6978c",
+ "84deff": "c497e5",
+ "5ac5e6": "a271e1",
+ "429cbd": "764abf",
+ "521073": "18359b",
+ "7b0829": "7b0829",
+ "d65273": "d65273"
+ },
+ "2": {
+ "104a63": "5e1120",
+ "107394": "b75846",
+ "bdad5a": "7d2f67",
+ "6b6321": "4a1642",
+ "101010": "101010",
+ "8c8c8c": "655081",
+ "ffffff": "fee1fa",
+ "ffe6a5": "a65687",
+ "cecece": "a990b9",
+ "84deff": "e1c66e",
+ "5ac5e6": "d29d48",
+ "429cbd": "a66829",
+ "521073": "13517b",
+ "7b0829": "7b0829",
+ "d65273": "d65273"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/135.json b/public/images/pokemon/variant/135.json
new file mode 100644
index 00000000000..4f3620bc696
--- /dev/null
+++ b/public/images/pokemon/variant/135.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "000000": "000000",
+ "5a4a10": "7b3e14",
+ "cead4a": "e4a254",
+ "ad8c3a": "975720",
+ "846b29": "b87130",
+ "ffff8c": "fae5bb",
+ "ffde52": "eecc94",
+ "4a087b": "126746",
+ "525252": "3b3f50",
+ "ffffff": "effffd",
+ "c5c5c5": "aacbc7"
+ },
+ "1": {
+ "000000": "000000",
+ "5a4a10": "202448",
+ "cead4a": "5e5a84",
+ "ad8c3a": "35346d",
+ "846b29": "404076",
+ "ffff8c": "d5cff3",
+ "ffde52": "a8a2c1",
+ "4a087b": "df9e4c",
+ "525252": "30486d",
+ "ffffff": "c7cedb",
+ "c5c5c5": "8e99b5"
+ },
+ "2": {
+ "000000": "000000",
+ "5a4a10": "2c3182",
+ "cead4a": "47b4e9",
+ "ad8c3a": "4351d7",
+ "846b29": "5576f9",
+ "ffff8c": "d0fffc",
+ "ffde52": "90ecee",
+ "4a087b": "304243",
+ "525252": "83809a",
+ "ffffff": "cdcfe1",
+ "c5c5c5": "a19fb8"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/136.json b/public/images/pokemon/variant/136.json
new file mode 100644
index 00000000000..d3ce6e156f5
--- /dev/null
+++ b/public/images/pokemon/variant/136.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "732119": "64391a",
+ "c5a56b": "ac9276",
+ "d64252": "b1772e",
+ "000000": "000000",
+ "735a42": "5e4828",
+ "ffefa5": "f5f4e2",
+ "f7734a": "e6af4a",
+ "debd8c": "e5d9c3",
+ "21216b": "0e4481",
+ "ffffff": "ffffff",
+ "a54252": "8c5219"
+ },
+ "1": {
+ "732119": "1b5255",
+ "c5a56b": "b1a58c",
+ "d64252": "3aad8b",
+ "000000": "000000",
+ "735a42": "766a5b",
+ "ffefa5": "f5f3df",
+ "f7734a": "5dde9d",
+ "debd8c": "d9c9ac",
+ "21216b": "541433",
+ "ffffff": "ffffff",
+ "a54252": "2c736b"
+ },
+ "2": {
+ "732119": "4c0013",
+ "c5a56b": "564c51",
+ "d64252": "8c2426",
+ "000000": "000000",
+ "735a42": "2d252a",
+ "ffefa5": "a89da0",
+ "f7734a": "b54144",
+ "debd8c": "82787c",
+ "21216b": "4d1b00",
+ "ffffff": "ffffff",
+ "a54252": "771823"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/144.json b/public/images/pokemon/variant/144.json
new file mode 100644
index 00000000000..3117db9f49d
--- /dev/null
+++ b/public/images/pokemon/variant/144.json
@@ -0,0 +1,19 @@
+{
+ "0": {
+ "005273": "642c89",
+ "94c5ff": "f1dfff",
+ "4a84d6": "7b42ab",
+ "000000": "000000",
+ "6badf7": "d7adff",
+ "003152": "461660",
+ "007bbd": "a142c8",
+ "5a3a19": "221531",
+ "b59473": "736581",
+ "8c6b52": "372841",
+ "ffffff": "ffffff",
+ "bd293a": "2d6cb0",
+ "cee6ff": "fef5ff",
+ "525252": "525252",
+ "cecece": "cecece"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/144_2.json b/public/images/pokemon/variant/144_2.json
new file mode 100644
index 00000000000..e60fbe651b5
--- /dev/null
+++ b/public/images/pokemon/variant/144_2.json
@@ -0,0 +1,1721 @@
+{
+ "textures": [
+ {
+ "image": "144_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 399,
+ "h": 399
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 81,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 81,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 81,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ },
+ "frame": {
+ "x": 72,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ },
+ "frame": {
+ "x": 72,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 162,
+ "w": 70,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 162,
+ "w": 70,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 72,
+ "h": 78
+ },
+ "frame": {
+ "x": 142,
+ "y": 0,
+ "w": 72,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 72,
+ "h": 78
+ },
+ "frame": {
+ "x": 142,
+ "y": 0,
+ "w": 72,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 72,
+ "h": 78
+ },
+ "frame": {
+ "x": 214,
+ "y": 0,
+ "w": 72,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 72,
+ "h": 78
+ },
+ "frame": {
+ "x": 214,
+ "y": 0,
+ "w": 72,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 69,
+ "h": 81
+ },
+ "frame": {
+ "x": 72,
+ "y": 81,
+ "w": 69,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 69,
+ "h": 81
+ },
+ "frame": {
+ "x": 72,
+ "y": 81,
+ "w": 69,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 69,
+ "h": 79
+ },
+ "frame": {
+ "x": 0,
+ "y": 243,
+ "w": 69,
+ "h": 79
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 69,
+ "h": 79
+ },
+ "frame": {
+ "x": 0,
+ "y": 243,
+ "w": 69,
+ "h": 79
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 65,
+ "h": 77
+ },
+ "frame": {
+ "x": 0,
+ "y": 322,
+ "w": 65,
+ "h": 77
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 65,
+ "h": 77
+ },
+ "frame": {
+ "x": 0,
+ "y": 322,
+ "w": 65,
+ "h": 77
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 70,
+ "y": 162,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 70,
+ "y": 162,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 69,
+ "h": 78
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 69,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 69,
+ "h": 78
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 69,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 69,
+ "y": 243,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 69,
+ "y": 243,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 136,
+ "y": 162,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 136,
+ "y": 162,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 135,
+ "y": 243,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 141,
+ "y": 81,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 141,
+ "y": 81,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 206,
+ "y": 78,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 206,
+ "y": 78,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 206,
+ "y": 78,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 206,
+ "y": 78,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 272,
+ "y": 78,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 201,
+ "y": 162,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 201,
+ "y": 243,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 201,
+ "y": 243,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 266,
+ "y": 159,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 266,
+ "y": 240,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 266,
+ "y": 240,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 78
+ },
+ "frame": {
+ "x": 266,
+ "y": 321,
+ "w": 67,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 78
+ },
+ "frame": {
+ "x": 266,
+ "y": 321,
+ "w": 67,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 65,
+ "h": 80
+ },
+ "frame": {
+ "x": 331,
+ "y": 159,
+ "w": 65,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 65,
+ "h": 80
+ },
+ "frame": {
+ "x": 331,
+ "y": 159,
+ "w": 65,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 65,
+ "h": 80
+ },
+ "frame": {
+ "x": 331,
+ "y": 239,
+ "w": 65,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 65,
+ "h": 80
+ },
+ "frame": {
+ "x": 331,
+ "y": 239,
+ "w": 65,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 66,
+ "h": 80
+ },
+ "frame": {
+ "x": 333,
+ "y": 319,
+ "w": 66,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 66,
+ "h": 80
+ },
+ "frame": {
+ "x": 333,
+ "y": 319,
+ "w": 66,
+ "h": 80
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:00f756af63dc87ba353fe1070a81915d:5a336085a1271036b9bee4bcd0851391:0e8d3adc565fe64fd4ec7ff2d88d335b$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/144_2.png b/public/images/pokemon/variant/144_2.png
new file mode 100644
index 00000000000..9c5ff41d5c5
Binary files /dev/null and b/public/images/pokemon/variant/144_2.png differ
diff --git a/public/images/pokemon/variant/144_3.json b/public/images/pokemon/variant/144_3.json
new file mode 100644
index 00000000000..04ad931655a
--- /dev/null
+++ b/public/images/pokemon/variant/144_3.json
@@ -0,0 +1,1721 @@
+{
+ "textures": [
+ {
+ "image": "144_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 399,
+ "h": 399
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 81,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 81,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 72,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 81,
+ "w": 72,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ },
+ "frame": {
+ "x": 72,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ },
+ "frame": {
+ "x": 72,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 162,
+ "w": 70,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 81
+ },
+ "frame": {
+ "x": 0,
+ "y": 162,
+ "w": 70,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 72,
+ "h": 78
+ },
+ "frame": {
+ "x": 142,
+ "y": 0,
+ "w": 72,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 72,
+ "h": 78
+ },
+ "frame": {
+ "x": 142,
+ "y": 0,
+ "w": 72,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 72,
+ "h": 78
+ },
+ "frame": {
+ "x": 214,
+ "y": 0,
+ "w": 72,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 72,
+ "h": 78
+ },
+ "frame": {
+ "x": 214,
+ "y": 0,
+ "w": 72,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 69,
+ "h": 81
+ },
+ "frame": {
+ "x": 72,
+ "y": 81,
+ "w": 69,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 69,
+ "h": 81
+ },
+ "frame": {
+ "x": 72,
+ "y": 81,
+ "w": 69,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 69,
+ "h": 79
+ },
+ "frame": {
+ "x": 0,
+ "y": 243,
+ "w": 69,
+ "h": 79
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 69,
+ "h": 79
+ },
+ "frame": {
+ "x": 0,
+ "y": 243,
+ "w": 69,
+ "h": 79
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 65,
+ "h": 77
+ },
+ "frame": {
+ "x": 0,
+ "y": 322,
+ "w": 65,
+ "h": 77
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 65,
+ "h": 77
+ },
+ "frame": {
+ "x": 0,
+ "y": 322,
+ "w": 65,
+ "h": 77
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 70,
+ "y": 162,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 70,
+ "y": 162,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 69,
+ "h": 78
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 69,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 69,
+ "h": 78
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 69,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 69,
+ "y": 243,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 69,
+ "y": 243,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 136,
+ "y": 162,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 136,
+ "y": 162,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 135,
+ "y": 243,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 141,
+ "y": 81,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 141,
+ "y": 81,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 206,
+ "y": 78,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 206,
+ "y": 78,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 206,
+ "y": 78,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 206,
+ "y": 78,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 81
+ },
+ "frame": {
+ "x": 272,
+ "y": 78,
+ "w": 66,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 201,
+ "y": 162,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 201,
+ "y": 243,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 201,
+ "y": 243,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 266,
+ "y": 159,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 266,
+ "y": 240,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 65,
+ "h": 81
+ },
+ "frame": {
+ "x": 266,
+ "y": 240,
+ "w": 65,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 78
+ },
+ "frame": {
+ "x": 266,
+ "y": 321,
+ "w": 67,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 78
+ },
+ "frame": {
+ "x": 266,
+ "y": 321,
+ "w": 67,
+ "h": 78
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 65,
+ "h": 80
+ },
+ "frame": {
+ "x": 331,
+ "y": 159,
+ "w": 65,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 65,
+ "h": 80
+ },
+ "frame": {
+ "x": 331,
+ "y": 159,
+ "w": 65,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 65,
+ "h": 80
+ },
+ "frame": {
+ "x": 331,
+ "y": 239,
+ "w": 65,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 65,
+ "h": 80
+ },
+ "frame": {
+ "x": 331,
+ "y": 239,
+ "w": 65,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 66,
+ "h": 80
+ },
+ "frame": {
+ "x": 333,
+ "y": 319,
+ "w": 66,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 72,
+ "h": 81
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 66,
+ "h": 80
+ },
+ "frame": {
+ "x": 333,
+ "y": 319,
+ "w": 66,
+ "h": 80
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:00f756af63dc87ba353fe1070a81915d:5a336085a1271036b9bee4bcd0851391:0e8d3adc565fe64fd4ec7ff2d88d335b$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/144_3.png b/public/images/pokemon/variant/144_3.png
new file mode 100644
index 00000000000..52e8bb092f1
Binary files /dev/null and b/public/images/pokemon/variant/144_3.png differ
diff --git a/public/images/pokemon/variant/145.json b/public/images/pokemon/variant/145.json
new file mode 100644
index 00000000000..3104d408a9f
--- /dev/null
+++ b/public/images/pokemon/variant/145.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "523a10": "20080b",
+ "ffd642": "ff914f",
+ "101010": "000000",
+ "d6ad08": "cc4e17",
+ "9c7b10": "991500",
+ "ffffff": "ffffff",
+ "dedede": "dedede",
+ "f79419": "6c4645",
+ "c56b19": "442526",
+ "6b6b6b": "6b6b6b",
+ "7b6b19": "2f1517",
+ "9c8c31": "290f13"
+ },
+ "1": {
+ "523a10": "724a32",
+ "ffd642": "ffead3",
+ "101010": "000000",
+ "d6ad08": "e3b68e",
+ "9c7b10": "ac7c5b",
+ "ffffff": "ffffff",
+ "dedede": "dedede",
+ "f79419": "ff9a33",
+ "c56b19": "dd6b10",
+ "6b6b6b": "6b6b6b",
+ "7b6b19": "885024",
+ "9c8c31": "6e4216"
+ },
+ "2": {
+ "523a10": "660065",
+ "ffd642": "fe66ed",
+ "101010": "000000",
+ "d6ad08": "a32a71",
+ "9c7b10": "94007e",
+ "ffffff": "ffffff",
+ "dedede": "dedede",
+ "f79419": "ffdeff",
+ "c56b19": "c992cb",
+ "6b6b6b": "6b6b6b",
+ "7b6b19": "970083",
+ "9c8c31": "ce24a8"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/146.json b/public/images/pokemon/variant/146.json
new file mode 100644
index 00000000000..8f9a5337298
--- /dev/null
+++ b/public/images/pokemon/variant/146.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "d60808": "7f010b",
+ "ef633a": "b60437",
+ "ffd663": "ff3bac",
+ "ffa54a": "e01291",
+ "734210": "220f23",
+ "de9410": "431d43",
+ "000000": "000000",
+ "ffc54a": "512d4e",
+ "ffef63": "755c73",
+ "523a29": "460241",
+ "8c634a": "8c0c75",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "b58c63": "dd2559",
+ "636363": "636363"
+ },
+ "1": {
+ "d60808": "00877f",
+ "ef633a": "0ab10c",
+ "ffd663": "fffa4c",
+ "ffa54a": "90e932",
+ "734210": "706127",
+ "de9410": "c2b562",
+ "000000": "000000",
+ "ffc54a": "f1eca3",
+ "ffef63": "feffe1",
+ "523a29": "840000",
+ "8c634a": "ad1910",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "b58c63": "de423a",
+ "636363": "636363"
+ },
+ "2": {
+ "d60808": "053889",
+ "ef633a": "1377b3",
+ "ffd663": "68fffd",
+ "ffa54a": "26b1e1",
+ "734210": "0c4f6b",
+ "de9410": "58abdb",
+ "000000": "000000",
+ "ffc54a": "9dd5ff",
+ "ffef63": "dae9ff",
+ "523a29": "3e0b03",
+ "8c634a": "78230b",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "b58c63": "b05329",
+ "636363": "636363"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/147.json b/public/images/pokemon/variant/147.json
new file mode 100644
index 00000000000..acc6eb7909e
--- /dev/null
+++ b/public/images/pokemon/variant/147.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "9c948c": "79a2a3",
+ "ffffff": "def1ef",
+ "5a5a5a": "54787d",
+ "000000": "000000",
+ "ded6de": "a2c7c7",
+ "5a63bd": "b24729",
+ "293184": "a82d17",
+ "b5ceff": "fbc859",
+ "8c9cf7": "eca340",
+ "7384d6": "cb6933"
+ },
+ "2": {
+ "9c948c": "c2a7a3",
+ "ffffff": "fff5f0",
+ "5a5a5a": "8c7270",
+ "000000": "000000",
+ "ded6de": "dfc8c2",
+ "5a63bd": "1b5f6f",
+ "293184": "134557",
+ "b5ceff": "74e3be",
+ "8c9cf7": "44b7a9",
+ "7384d6": "328f97"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/148.json b/public/images/pokemon/variant/148.json
new file mode 100644
index 00000000000..b05769f1f8f
--- /dev/null
+++ b/public/images/pokemon/variant/148.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "000000": "000000",
+ "a59ca5": "79a2a3",
+ "ffffff": "def1ef",
+ "5a525a": "54787d",
+ "ded6de": "a2c7c7",
+ "193173": "750518",
+ "4a6bc5": "ce4736",
+ "5a8cef": "f48c59",
+ "7badff": "ffad67",
+ "84083a": "1b6794",
+ "b5084a": "61cce2",
+ "19297b": "1b6794",
+ "7bceff": "61cce2",
+ "425aff": "359bbd"
+ },
+ "2": {
+ "000000": "000000",
+ "a59ca5": "c29490",
+ "ffffff": "ffedde",
+ "5a525a": "895e5c",
+ "ded6de": "deb8ab",
+ "193173": "1b5f6f",
+ "4a6bc5": "3c8289",
+ "5a8cef": "4aab9f",
+ "7badff": "90eacc",
+ "84083a": "d68d06",
+ "b5084a": "ffc622",
+ "19297b": "971f7d",
+ "7bceff": "f86ebf",
+ "425aff": "b930bc"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/149.json b/public/images/pokemon/variant/149.json
new file mode 100644
index 00000000000..aade1494b1f
--- /dev/null
+++ b/public/images/pokemon/variant/149.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "5a3a21": "102908",
+ "ffefbd": "def1ef",
+ "ef9c3a": "e9917b",
+ "000000": "000000",
+ "de733a": "d15b67",
+ "efbd8c": "a2c7c7",
+ "9c5a4a": "5a394e",
+ "f7bd5a": "f8b58f",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "196b63": "359bbd",
+ "21a57b": "61cce2",
+ "104231": "1b6794",
+ "ad8c42": "79a2a3",
+ "636363": "636363"
+ },
+ "2": {
+ "5a3a21": "102908",
+ "ffefbd": "f8dfce",
+ "ef9c3a": "55a39f",
+ "000000": "000000",
+ "de733a": "2d636d",
+ "efbd8c": "c0a59d",
+ "9c5a4a": "895e5c",
+ "f7bd5a": "8ed9c4",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "196b63": "a44a91",
+ "21a57b": "f86ebf",
+ "104231": "9c4a94",
+ "ad8c42": "ad7e7a",
+ "636363": "636363"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/151.json b/public/images/pokemon/variant/151.json
new file mode 100644
index 00000000000..5506cdbc7c9
--- /dev/null
+++ b/public/images/pokemon/variant/151.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "b56394": "895ac3",
+ "5a2952": "5c2da1",
+ "ffb5d6": "d3b8e8",
+ "000000": "000000",
+ "ef84b5": "ab87cf",
+ "ffd6ef": "eed7fa",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "193a6b": "ca241d",
+ "2963e6": "e85040",
+ "84adf7": "ff9180"
+ },
+ "2": {
+ "b56394": "d68f40",
+ "5a2952": "884c17",
+ "ffb5d6": "ffdd98",
+ "000000": "000000",
+ "ef84b5": "edaf5b",
+ "ffd6ef": "ffeeb6",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "193a6b": "067576",
+ "2963e6": "11948c",
+ "84adf7": "74f5e3"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/175.json b/public/images/pokemon/variant/175.json
new file mode 100644
index 00000000000..0d99c606a43
--- /dev/null
+++ b/public/images/pokemon/variant/175.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "94735a": "844466",
+ "000000": "000000",
+ "f7efc5": "f7c9c5",
+ "ce9c73": "a7738f",
+ "734a4a": "5b2847",
+ "f7d6a5": "e4b2bb",
+ "b5b5c5": "c5b5b5",
+ "ffffff": "ffffff",
+ "ad2121": "811a5f",
+ "d6dede": "ded6d6",
+ "c54242": "409e80",
+ "4a84c5": "d05887",
+ "7b8c94": "9c8c84",
+ "3163ad": "9e4065",
+ "de736b": "8ee4be"
+ },
+ "1": {
+ "94735a": "734350",
+ "000000": "000000",
+ "f7efc5": "f7c5ce",
+ "ce9c73": "a26867",
+ "734a4a": "452030",
+ "f7d6a5": "be868a",
+ "b5b5c5": "a68a8c",
+ "ffffff": "ead3cb",
+ "ad2121": "941430",
+ "d6dede": "c8afaf",
+ "c54242": "d08d39",
+ "4a84c5": "f19a4e",
+ "7b8c94": "9c8c84",
+ "3163ad": "d26425",
+ "de736b": "f5b55e"
+ },
+ "2": {
+ "94735a": "404d5b",
+ "000000": "000000",
+ "f7efc5": "ddeaef",
+ "ce9c73": "8093a5",
+ "734a4a": "1f293b",
+ "f7d6a5": "afc2d1",
+ "b5b5c5": "c3a5a1",
+ "ffffff": "ffeae3",
+ "ad2121": "711a7f",
+ "d6dede": "e7c5bb",
+ "c54242": "d97741",
+ "4a84c5": "e89fe5",
+ "7b8c94": "9c8c84",
+ "3163ad": "db79db",
+ "de736b": "f39a4c"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/176.json b/public/images/pokemon/variant/176.json
new file mode 100644
index 00000000000..612920b2e34
--- /dev/null
+++ b/public/images/pokemon/variant/176.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "737b84": "6b3552",
+ "000000": "000000",
+ "ffffff": "eee0db",
+ "adc5bd": "ceacac",
+ "d6efef": "dbc9c5",
+ "de423a": "8ee4be",
+ "bd1908": "409e80",
+ "2994e6": "d05887",
+ "1063bd": "9e4065"
+ },
+ "1": {
+ "737b84": "734350",
+ "000000": "000000",
+ "ffffff": "f3cbcb",
+ "adc5bd": "ae7675",
+ "d6efef": "c79397",
+ "de423a": "f5b55e",
+ "bd1908": "d08d39",
+ "2994e6": "f19a4e",
+ "1063bd": "d26425"
+ },
+ "2": {
+ "737b84": "384d72",
+ "000000": "000000",
+ "ffffff": "c1dfe9",
+ "adc5bd": "81aaca",
+ "d6efef": "91b6cf",
+ "de423a": "f39a4c",
+ "bd1908": "d97741",
+ "2994e6": "e89fe5",
+ "1063bd": "ca5fca"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/179.json b/public/images/pokemon/variant/179.json
new file mode 100644
index 00000000000..1a6a01ebd6f
--- /dev/null
+++ b/public/images/pokemon/variant/179.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "847352": "2e4663",
+ "ceb58c": "5886a1",
+ "ffe6bd": "9adddd",
+ "e6cea5": "6ab1b7",
+ "e6ad00": "672e76",
+ "ffde00": "9d51a3",
+ "ffffff": "ffffff",
+ "101010": "101010",
+ "525252": "3d2825",
+ "a5a5a5": "6b4a4c",
+ "004a94": "71396a",
+ "2194bd": "9f618f",
+ "b57b00": "58276a",
+ "42ade6": "d99bc2",
+ "73c5f7": "f0c6dd"
+ },
+ "2": {
+ "847352": "7c4012",
+ "ceb58c": "c07f47",
+ "ffe6bd": "efce80",
+ "e6cea5": "cf9e50",
+ "e6ad00": "d26b00",
+ "ffde00": "fdba5b",
+ "ffffff": "ffffff",
+ "101010": "101010",
+ "525252": "263964",
+ "a5a5a5": "496491",
+ "004a94": "5d2615",
+ "2194bd": "884626",
+ "b57b00": "a23c00",
+ "42ade6": "af673b",
+ "73c5f7": "cd895d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/180_2.json b/public/images/pokemon/variant/180_2.json
new file mode 100644
index 00000000000..a340344e20e
--- /dev/null
+++ b/public/images/pokemon/variant/180_2.json
@@ -0,0 +1,2540 @@
+{
+ "textures": [
+ {
+ "image": "180_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 210,
+ "h": 210
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 44,
+ "h": 50
+ },
+ "frame": {
+ "x": 39,
+ "y": 50,
+ "w": 44,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 44,
+ "h": 50
+ },
+ "frame": {
+ "x": 39,
+ "y": 50,
+ "w": 44,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 45,
+ "h": 50
+ },
+ "frame": {
+ "x": 83,
+ "y": 50,
+ "w": 45,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 45,
+ "h": 50
+ },
+ "frame": {
+ "x": 83,
+ "y": 50,
+ "w": 45,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 45,
+ "h": 50
+ },
+ "frame": {
+ "x": 128,
+ "y": 50,
+ "w": 45,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 45,
+ "h": 50
+ },
+ "frame": {
+ "x": 128,
+ "y": 50,
+ "w": 45,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 43,
+ "h": 51
+ },
+ "frame": {
+ "x": 70,
+ "y": 100,
+ "w": 43,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 43,
+ "h": 51
+ },
+ "frame": {
+ "x": 70,
+ "y": 100,
+ "w": 43,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 44,
+ "h": 51
+ },
+ "frame": {
+ "x": 113,
+ "y": 100,
+ "w": 44,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 44,
+ "h": 51
+ },
+ "frame": {
+ "x": 113,
+ "y": 100,
+ "w": 44,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 157,
+ "y": 103,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 157,
+ "y": 103,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 43,
+ "h": 52
+ },
+ "frame": {
+ "x": 41,
+ "y": 151,
+ "w": 43,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 43,
+ "h": 52
+ },
+ "frame": {
+ "x": 41,
+ "y": 151,
+ "w": 43,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 84,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 84,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 40,
+ "h": 52
+ },
+ "frame": {
+ "x": 125,
+ "y": 154,
+ "w": 40,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 40,
+ "h": 52
+ },
+ "frame": {
+ "x": 125,
+ "y": 154,
+ "w": 40,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 40,
+ "h": 52
+ },
+ "frame": {
+ "x": 165,
+ "y": 154,
+ "w": 40,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 40,
+ "h": 52
+ },
+ "frame": {
+ "x": 165,
+ "y": 154,
+ "w": 40,
+ "h": 52
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:e17ff25b09f912f0267945b5e79798a4:ce653498d3734737bddaa732397dcd22:b10060457c1176e3f4a6139578a0859b$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/180_2.png b/public/images/pokemon/variant/180_2.png
new file mode 100644
index 00000000000..43e370da6e6
Binary files /dev/null and b/public/images/pokemon/variant/180_2.png differ
diff --git a/public/images/pokemon/variant/180_3.json b/public/images/pokemon/variant/180_3.json
new file mode 100644
index 00000000000..5a1d53e078c
--- /dev/null
+++ b/public/images/pokemon/variant/180_3.json
@@ -0,0 +1,2540 @@
+{
+ "textures": [
+ {
+ "image": "180_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 210,
+ "h": 210
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 37,
+ "h": 49
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 37,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 34,
+ "h": 49
+ },
+ "frame": {
+ "x": 37,
+ "y": 0,
+ "w": 34,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 50
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 40,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 32,
+ "h": 50
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 32,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 37,
+ "h": 50
+ },
+ "frame": {
+ "x": 143,
+ "y": 0,
+ "w": 37,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 39,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 49,
+ "w": 39,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 44,
+ "h": 50
+ },
+ "frame": {
+ "x": 39,
+ "y": 50,
+ "w": 44,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 44,
+ "h": 50
+ },
+ "frame": {
+ "x": 39,
+ "y": 50,
+ "w": 44,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 45,
+ "h": 50
+ },
+ "frame": {
+ "x": 83,
+ "y": 50,
+ "w": 45,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 45,
+ "h": 50
+ },
+ "frame": {
+ "x": 83,
+ "y": 50,
+ "w": 45,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 45,
+ "h": 50
+ },
+ "frame": {
+ "x": 128,
+ "y": 50,
+ "w": 45,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 45,
+ "h": 50
+ },
+ "frame": {
+ "x": 128,
+ "y": 50,
+ "w": 45,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 51
+ },
+ "frame": {
+ "x": 173,
+ "y": 52,
+ "w": 35,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 30,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 30,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 30,
+ "y": 100,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 43,
+ "h": 51
+ },
+ "frame": {
+ "x": 70,
+ "y": 100,
+ "w": 43,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 43,
+ "h": 51
+ },
+ "frame": {
+ "x": 70,
+ "y": 100,
+ "w": 43,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 44,
+ "h": 51
+ },
+ "frame": {
+ "x": 113,
+ "y": 100,
+ "w": 44,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 44,
+ "h": 51
+ },
+ "frame": {
+ "x": 113,
+ "y": 100,
+ "w": 44,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 157,
+ "y": 103,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 40,
+ "h": 51
+ },
+ "frame": {
+ "x": 157,
+ "y": 103,
+ "w": 40,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 43,
+ "h": 52
+ },
+ "frame": {
+ "x": 41,
+ "y": 151,
+ "w": 43,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 43,
+ "h": 52
+ },
+ "frame": {
+ "x": 41,
+ "y": 151,
+ "w": 43,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 84,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 41,
+ "h": 52
+ },
+ "frame": {
+ "x": 84,
+ "y": 151,
+ "w": 41,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 40,
+ "h": 52
+ },
+ "frame": {
+ "x": 125,
+ "y": 154,
+ "w": 40,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 40,
+ "h": 52
+ },
+ "frame": {
+ "x": 125,
+ "y": 154,
+ "w": 40,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 40,
+ "h": 52
+ },
+ "frame": {
+ "x": 165,
+ "y": 154,
+ "w": 40,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 46,
+ "h": 52
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 40,
+ "h": 52
+ },
+ "frame": {
+ "x": 165,
+ "y": 154,
+ "w": 40,
+ "h": 52
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:e17ff25b09f912f0267945b5e79798a4:ce653498d3734737bddaa732397dcd22:b10060457c1176e3f4a6139578a0859b$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/180_3.png b/public/images/pokemon/variant/180_3.png
new file mode 100644
index 00000000000..c506a91b50a
Binary files /dev/null and b/public/images/pokemon/variant/180_3.png differ
diff --git a/public/images/pokemon/variant/181-mega.json b/public/images/pokemon/variant/181-mega.json
new file mode 100644
index 00000000000..f5de7038144
--- /dev/null
+++ b/public/images/pokemon/variant/181-mega.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "737373": "39585d",
+ "f8f8f8": "baebeb",
+ "101010": "101010",
+ "bf370a": "d53691",
+ "bfbfbf": "8ebabe",
+ "ff490d": "ee74c1",
+ "802506": "b12173",
+ "b38324": "74418f",
+ "ffe14c": "d19bd8",
+ "734b22": "553168",
+ "e5b82e": "9f62b0"
+ },
+ "2": {
+ "737373": "5d412a",
+ "f8f8f8": "fff1d0",
+ "101010": "101010",
+ "bf370a": "d26b00",
+ "bfbfbf": "ebbb78",
+ "ff490d": "ffab34",
+ "802506": "a23c00",
+ "b38324": "884626",
+ "ffe14c": "cd895d",
+ "734b22": "49200d",
+ "e5b82e": "af673b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/181.json b/public/images/pokemon/variant/181.json
new file mode 100644
index 00000000000..564a8d0c041
--- /dev/null
+++ b/public/images/pokemon/variant/181.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "101010": "101010",
+ "636b6b": "65383a",
+ "ffc510": "9f62b0",
+ "845a31": "553168",
+ "ce8c10": "74418f",
+ "ffef4a": "d19bd8",
+ "c54200": "d53691",
+ "ff6300": "ee74c1",
+ "ffffff": "b8e2f6",
+ "8c2100": "b12173",
+ "adadad": "536f84",
+ "5a0000": "781155",
+ "e6e6e6": "8db4c9"
+ },
+ "2": {
+ "101010": "101010",
+ "636b6b": "73441e",
+ "ffc510": "af673b",
+ "845a31": "492602",
+ "ce8c10": "884626",
+ "ffef4a": "cd895d",
+ "c54200": "d26b00",
+ "ff6300": "ffab34",
+ "ffffff": "f7e6bf",
+ "8c2100": "a23c00",
+ "adadad": "bb905a",
+ "5a0000": "1d4046",
+ "e6e6e6": "e6c285"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/196.json b/public/images/pokemon/variant/196.json
new file mode 100644
index 00000000000..02084307b2e
--- /dev/null
+++ b/public/images/pokemon/variant/196.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "7b4a7b": "204024",
+ "101010": "101010",
+ "efbdef": "bddd9e",
+ "e6a5d6": "6c9e63",
+ "b57bb5": "416240",
+ "314273": "a86a2c",
+ "4a73b5": "ffb554",
+ "c52152": "ffa80e",
+ "ffffff": "ffffff",
+ "8c2152": "c54200",
+ "8463b5": "ffa72a",
+ "c5c5c5": "c5c5c5"
+ },
+ "1": {
+ "7b4a7b": "581747",
+ "101010": "101010",
+ "efbdef": "e99eae",
+ "e6a5d6": "d1759c",
+ "b57bb5": "953b6c",
+ "314273": "537fde",
+ "4a73b5": "90b7f9",
+ "c52152": "31d9ff",
+ "ffffff": "ffffff",
+ "8c2152": "15a7d2",
+ "8463b5": "1662bf",
+ "c5c5c5": "c5c5c5"
+ },
+ "2": {
+ "7b4a7b": "9b5250",
+ "101010": "101010",
+ "efbdef": "f5f3e1",
+ "e6a5d6": "ded0af",
+ "b57bb5": "ce987a",
+ "314273": "194540",
+ "4a73b5": "39816d",
+ "c52152": "00de92",
+ "ffffff": "ffffff",
+ "8c2152": "00ad7f",
+ "8463b5": "006b5b",
+ "c5c5c5": "c5c5c5"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/200.json b/public/images/pokemon/variant/200.json
new file mode 100644
index 00000000000..75ec1831f2e
--- /dev/null
+++ b/public/images/pokemon/variant/200.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "631942": "71370f",
+ "101010": "101010",
+ "de63a5": "f6b557",
+ "9c3a4a": "c7722c",
+ "4a84a5": "8366ab",
+ "192942": "1b1235",
+ "314a63": "432e69",
+ "3a6384": "603f90",
+ "bd9431": "c08ecb",
+ "a5295a": "d3941a",
+ "ffffff": "ffffff",
+ "efe663": "e5c9e9",
+ "de4284": "ffdd67",
+ "731031": "9b490e"
+ },
+ "1": {
+ "631942": "00535b",
+ "101010": "101010",
+ "de63a5": "099394",
+ "9c3a4a": "42c3bc",
+ "4a84a5": "c7d8e1",
+ "192942": "2c384d",
+ "314a63": "8199ac",
+ "3a6384": "4a6077",
+ "bd9431": "149c9d",
+ "a5295a": "c87819",
+ "ffffff": "ffffff",
+ "efe663": "55e6de",
+ "de4284": "ffc668",
+ "731031": "7b3c08"
+ },
+ "2": {
+ "631942": "5d4a2f",
+ "101010": "101010",
+ "de63a5": "fff7dd",
+ "9c3a4a": "fae3ad",
+ "4a84a5": "fecb77",
+ "192942": "603305",
+ "314a63": "c27923",
+ "3a6384": "e1983d",
+ "bd9431": "66d0e5",
+ "a5295a": "7a1511",
+ "ffffff": "ffffff",
+ "efe663": "a6f0f8",
+ "de4284": "b83a31",
+ "731031": "430a09"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/242_1.json b/public/images/pokemon/variant/242_1.json
new file mode 100644
index 00000000000..6ba57a2fa6f
--- /dev/null
+++ b/public/images/pokemon/variant/242_1.json
@@ -0,0 +1,2036 @@
+{
+ "textures": [
+ {
+ "image": "242_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 278,
+ "h": 278
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 221,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 221,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 169,
+ "y": 113,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 169,
+ "y": 113,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 222,
+ "y": 56,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 222,
+ "y": 56,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 111,
+ "y": 168,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 111,
+ "y": 168,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 56,
+ "y": 170,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 56,
+ "y": 170,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 169,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 169,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 223,
+ "y": 169,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 223,
+ "y": 169,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 111,
+ "y": 223,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 111,
+ "y": 223,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:b332c535f287f84723df2f242c85cf6d:ddf6fc908da3d9dfddeb9c5c830dc666:869a5e1354f822d5a647f79282a9896b$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/242_1.png b/public/images/pokemon/variant/242_1.png
new file mode 100644
index 00000000000..987c4d5a9f9
Binary files /dev/null and b/public/images/pokemon/variant/242_1.png differ
diff --git a/public/images/pokemon/variant/242_2.json b/public/images/pokemon/variant/242_2.json
new file mode 100644
index 00000000000..cfdd292d237
--- /dev/null
+++ b/public/images/pokemon/variant/242_2.json
@@ -0,0 +1,2036 @@
+{
+ "textures": [
+ {
+ "image": "242_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 278,
+ "h": 278
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 221,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 221,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 169,
+ "y": 113,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 169,
+ "y": 113,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 222,
+ "y": 56,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 222,
+ "y": 56,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 111,
+ "y": 168,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 111,
+ "y": 168,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 56,
+ "y": 170,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 56,
+ "y": 170,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 169,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 169,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 223,
+ "y": 169,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 223,
+ "y": 169,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 111,
+ "y": 223,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 111,
+ "y": 223,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:b332c535f287f84723df2f242c85cf6d:ddf6fc908da3d9dfddeb9c5c830dc666:869a5e1354f822d5a647f79282a9896b$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/242_2.png b/public/images/pokemon/variant/242_2.png
new file mode 100644
index 00000000000..276d36f7091
Binary files /dev/null and b/public/images/pokemon/variant/242_2.png differ
diff --git a/public/images/pokemon/variant/242_3.json b/public/images/pokemon/variant/242_3.json
new file mode 100644
index 00000000000..cacb64d845a
--- /dev/null
+++ b/public/images/pokemon/variant/242_3.json
@@ -0,0 +1,2036 @@
+{
+ "textures": [
+ {
+ "image": "242_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 278,
+ "h": 278
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 55,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ },
+ "frame": {
+ "x": 111,
+ "y": 0,
+ "w": 54,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 56,
+ "h": 57
+ },
+ "frame": {
+ "x": 165,
+ "y": 0,
+ "w": 56,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 56
+ },
+ "frame": {
+ "x": 165,
+ "y": 57,
+ "w": 57,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 221,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 221,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 58,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 57,
+ "h": 55
+ },
+ "frame": {
+ "x": 112,
+ "y": 113,
+ "w": 57,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 56,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 56,
+ "y": 114,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 169,
+ "y": 113,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 55,
+ "h": 56
+ },
+ "frame": {
+ "x": 169,
+ "y": 113,
+ "w": 55,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 222,
+ "y": 56,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 222,
+ "y": 56,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 111,
+ "y": 168,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 111,
+ "y": 168,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 170,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 56,
+ "y": 170,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 56,
+ "y": 170,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 224,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 169,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 169,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 223,
+ "y": 169,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 55,
+ "h": 55
+ },
+ "frame": {
+ "x": 223,
+ "y": 169,
+ "w": 55,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 111,
+ "y": 223,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 111,
+ "y": 223,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 55,
+ "h": 54
+ },
+ "frame": {
+ "x": 167,
+ "y": 223,
+ "w": 55,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 222,
+ "y": 224,
+ "w": 56,
+ "h": 53
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:b332c535f287f84723df2f242c85cf6d:ddf6fc908da3d9dfddeb9c5c830dc666:869a5e1354f822d5a647f79282a9896b$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/242_3.png b/public/images/pokemon/variant/242_3.png
new file mode 100644
index 00000000000..6f83ed75c95
Binary files /dev/null and b/public/images/pokemon/variant/242_3.png differ
diff --git a/public/images/pokemon/variant/243.json b/public/images/pokemon/variant/243.json
new file mode 100644
index 00000000000..e42b832d153
--- /dev/null
+++ b/public/images/pokemon/variant/243.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "846ba5": "732c40",
+ "52296b": "481532",
+ "101010": "101010",
+ "bd8cc5": "b74f57",
+ "6b6b6b": "3c3c4e",
+ "9cd6ff": "ffcb59",
+ "ffffff": "f3dfdf",
+ "a5a5a5": "9b7b81",
+ "d6d6d6": "c7b0b2",
+ "8c6310": "833000",
+ "c50000": "009caf",
+ "ffce42": "ff945c",
+ "d69c29": "c55d3b",
+ "ffef94": "ffb675"
+ },
+ "2": {
+ "846ba5": "dc9779",
+ "52296b": "994d3d",
+ "101010": "101010",
+ "bd8cc5": "f5d4c0",
+ "6b6b6b": "3c3c4e",
+ "9cd6ff": "ffb23a",
+ "ffffff": "eed7cd",
+ "a5a5a5": "ac8982",
+ "d6d6d6": "d0b0a7",
+ "8c6310": "2a4083",
+ "c50000": "b70039",
+ "ffce42": "8aade5",
+ "d69c29": "5278c7",
+ "ffef94": "abd3fa"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/244_2.json b/public/images/pokemon/variant/244_2.json
new file mode 100644
index 00000000000..fffcd260952
--- /dev/null
+++ b/public/images/pokemon/variant/244_2.json
@@ -0,0 +1,3170 @@
+{
+ "textures": [
+ {
+ "image": "244_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 368,
+ "h": 368
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 152,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 152,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 152,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0148.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 228,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0149.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 228,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0150.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 228,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 205,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 205,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0145.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 273,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0146.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 273,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0147.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 273,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 228,
+ "y": 69,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 228,
+ "y": 69,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 149,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 149,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 149,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 222,
+ "y": 138,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 222,
+ "y": 138,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 295,
+ "y": 138,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 295,
+ "y": 138,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 295,
+ "y": 138,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 151,
+ "y": 207,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 151,
+ "y": 207,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 151,
+ "y": 207,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0143.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 151,
+ "y": 274,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0144.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 151,
+ "y": 274,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 207,
+ "w": 73,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 207,
+ "w": 73,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 207,
+ "w": 73,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 275,
+ "w": 73,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 275,
+ "w": 73,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 275,
+ "w": 73,
+ "h": 68
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:3861b0d7115a42d93e539929217178c1:6a21c30aa596923ae448932e20babe79:62b0725a7cb86a9ff140f99ac6e2af84$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/244_2.png b/public/images/pokemon/variant/244_2.png
new file mode 100644
index 00000000000..2b7b4e57b97
Binary files /dev/null and b/public/images/pokemon/variant/244_2.png differ
diff --git a/public/images/pokemon/variant/244_3.json b/public/images/pokemon/variant/244_3.json
new file mode 100644
index 00000000000..f22debdbbaa
--- /dev/null
+++ b/public/images/pokemon/variant/244_3.json
@@ -0,0 +1,3170 @@
+{
+ "textures": [
+ {
+ "image": "244_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 368,
+ "h": 368
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 152,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 152,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 152,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0148.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 228,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0149.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 228,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0150.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ },
+ "frame": {
+ "x": 228,
+ "y": 0,
+ "w": 76,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 137,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 205,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 205,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0145.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 273,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0146.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 273,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0147.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 76,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 273,
+ "w": 76,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 76,
+ "h": 67
+ },
+ "frame": {
+ "x": 152,
+ "y": 69,
+ "w": 76,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 228,
+ "y": 69,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 228,
+ "y": 69,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 76,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 149,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 149,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 149,
+ "y": 136,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 222,
+ "y": 138,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 222,
+ "y": 138,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 295,
+ "y": 138,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 295,
+ "y": 138,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 69
+ },
+ "frame": {
+ "x": 295,
+ "y": 138,
+ "w": 73,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 205,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 76,
+ "y": 272,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 151,
+ "y": 207,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 151,
+ "y": 207,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 151,
+ "y": 207,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0143.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 151,
+ "y": 274,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0144.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 75,
+ "h": 67
+ },
+ "frame": {
+ "x": 151,
+ "y": 274,
+ "w": 75,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 207,
+ "w": 73,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 207,
+ "w": 73,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 207,
+ "w": 73,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 275,
+ "w": 73,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 275,
+ "w": 73,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 76,
+ "h": 69
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 73,
+ "h": 68
+ },
+ "frame": {
+ "x": 226,
+ "y": 275,
+ "w": 73,
+ "h": 68
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:3861b0d7115a42d93e539929217178c1:6a21c30aa596923ae448932e20babe79:62b0725a7cb86a9ff140f99ac6e2af84$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/244_3.png b/public/images/pokemon/variant/244_3.png
new file mode 100644
index 00000000000..93b51f45f2f
Binary files /dev/null and b/public/images/pokemon/variant/244_3.png differ
diff --git a/public/images/pokemon/variant/245.json b/public/images/pokemon/variant/245.json
new file mode 100644
index 00000000000..da4dd9edf29
--- /dev/null
+++ b/public/images/pokemon/variant/245.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "31428c": "271a56",
+ "101010": "101010",
+ "7bbdff": "6b62c0",
+ "5a7bd6": "4c4097",
+ "7b5ab5": "bd4530",
+ "ad6bd6": "e56444",
+ "c594de": "ff8e67",
+ "523a7b": "892015",
+ "525252": "65395c",
+ "ffffff": "f7dfec",
+ "848484": "956385",
+ "d61010": "ea9043",
+ "bdefff": "9795d1",
+ "dedede": "e0b4ce",
+ "bdbdbd": "bb89a9"
+ },
+ "2": {
+ "31428c": "854607",
+ "101010": "101010",
+ "7bbdff": "f5c042",
+ "5a7bd6": "d67f17",
+ "7b5ab5": "863062",
+ "ad6bd6": "c16792",
+ "c594de": "d285bb",
+ "523a7b": "40163c",
+ "525252": "3f3559",
+ "ffffff": "fbecff",
+ "848484": "726785",
+ "d61010": "af228e",
+ "bdefff": "ffe171",
+ "dedede": "d7ccde",
+ "bdbdbd": "b0a5bd"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/249_2.json b/public/images/pokemon/variant/249_2.json
new file mode 100644
index 00000000000..f2c08a02925
--- /dev/null
+++ b/public/images/pokemon/variant/249_2.json
@@ -0,0 +1,2540 @@
+{
+ "textures": [
+ {
+ "image": "249_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 622,
+ "h": 622
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 12,
+ "w": 115,
+ "h": 80
+ },
+ "frame": {
+ "x": 0,
+ "y": 111,
+ "w": 115,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 10,
+ "w": 111,
+ "h": 82
+ },
+ "frame": {
+ "x": 115,
+ "y": 118,
+ "w": 111,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 10,
+ "w": 111,
+ "h": 82
+ },
+ "frame": {
+ "x": 115,
+ "y": 118,
+ "w": 111,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 7,
+ "w": 114,
+ "h": 83
+ },
+ "frame": {
+ "x": 226,
+ "y": 129,
+ "w": 114,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 6,
+ "w": 114,
+ "h": 83
+ },
+ "frame": {
+ "x": 340,
+ "y": 133,
+ "w": 114,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 9,
+ "w": 109,
+ "h": 83
+ },
+ "frame": {
+ "x": 454,
+ "y": 142,
+ "w": 109,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 5,
+ "w": 111,
+ "h": 84
+ },
+ "frame": {
+ "x": 105,
+ "y": 200,
+ "w": 111,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 7,
+ "w": 109,
+ "h": 84
+ },
+ "frame": {
+ "x": 216,
+ "y": 212,
+ "w": 109,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 7,
+ "w": 109,
+ "h": 84
+ },
+ "frame": {
+ "x": 216,
+ "y": 212,
+ "w": 109,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 9,
+ "w": 109,
+ "h": 84
+ },
+ "frame": {
+ "x": 325,
+ "y": 216,
+ "w": 109,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 108,
+ "h": 85
+ },
+ "frame": {
+ "x": 434,
+ "y": 225,
+ "w": 108,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 4,
+ "w": 105,
+ "h": 85
+ },
+ "frame": {
+ "x": 0,
+ "y": 275,
+ "w": 105,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 20,
+ "y": 8,
+ "w": 105,
+ "h": 85
+ },
+ "frame": {
+ "x": 105,
+ "y": 284,
+ "w": 105,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 5,
+ "w": 113,
+ "h": 85
+ },
+ "frame": {
+ "x": 210,
+ "y": 296,
+ "w": 113,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 105,
+ "h": 85
+ },
+ "frame": {
+ "x": 323,
+ "y": 300,
+ "w": 105,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 6,
+ "w": 101,
+ "h": 86
+ },
+ "frame": {
+ "x": 0,
+ "y": 360,
+ "w": 101,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 6,
+ "w": 101,
+ "h": 86
+ },
+ "frame": {
+ "x": 0,
+ "y": 360,
+ "w": 101,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 6,
+ "w": 105,
+ "h": 86
+ },
+ "frame": {
+ "x": 101,
+ "y": 369,
+ "w": 105,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 2,
+ "w": 107,
+ "h": 86
+ },
+ "frame": {
+ "x": 206,
+ "y": 381,
+ "w": 107,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 2,
+ "w": 107,
+ "h": 86
+ },
+ "frame": {
+ "x": 206,
+ "y": 381,
+ "w": 107,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 1,
+ "w": 101,
+ "h": 86
+ },
+ "frame": {
+ "x": 313,
+ "y": 385,
+ "w": 101,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 20,
+ "y": 3,
+ "w": 102,
+ "h": 86
+ },
+ "frame": {
+ "x": 414,
+ "y": 396,
+ "w": 102,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 0,
+ "w": 101,
+ "h": 87
+ },
+ "frame": {
+ "x": 0,
+ "y": 446,
+ "w": 101,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 0,
+ "w": 104,
+ "h": 87
+ },
+ "frame": {
+ "x": 101,
+ "y": 455,
+ "w": 104,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 0,
+ "w": 104,
+ "h": 87
+ },
+ "frame": {
+ "x": 101,
+ "y": 455,
+ "w": 104,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 0,
+ "w": 97,
+ "h": 87
+ },
+ "frame": {
+ "x": 205,
+ "y": 467,
+ "w": 97,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 0,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 302,
+ "y": 471,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 20,
+ "y": 6,
+ "w": 102,
+ "h": 87
+ },
+ "frame": {
+ "x": 400,
+ "y": 482,
+ "w": 102,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:0a1f7d8fb8cfe18cea6de6b6f39cae56:fa1c4ca2e119b580f9ce75095b16bd4c:25c89a8ec37b43392b53a70993acdff3$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/249_2.png b/public/images/pokemon/variant/249_2.png
new file mode 100644
index 00000000000..220258fb7f8
Binary files /dev/null and b/public/images/pokemon/variant/249_2.png differ
diff --git a/public/images/pokemon/variant/249_3.json b/public/images/pokemon/variant/249_3.json
new file mode 100644
index 00000000000..c53eade6392
--- /dev/null
+++ b/public/images/pokemon/variant/249_3.json
@@ -0,0 +1,2540 @@
+{
+ "textures": [
+ {
+ "image": "249_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 622,
+ "h": 622
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 44,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 42,
+ "w": 154,
+ "h": 51
+ },
+ "frame": {
+ "x": 154,
+ "y": 0,
+ "w": 154,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 37,
+ "w": 141,
+ "h": 54
+ },
+ "frame": {
+ "x": 308,
+ "y": 0,
+ "w": 141,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 152,
+ "h": 57
+ },
+ "frame": {
+ "x": 449,
+ "y": 0,
+ "w": 152,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 36,
+ "w": 139,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 51,
+ "w": 139,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 27,
+ "w": 132,
+ "h": 67
+ },
+ "frame": {
+ "x": 139,
+ "y": 51,
+ "w": 132,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 14,
+ "w": 124,
+ "h": 75
+ },
+ "frame": {
+ "x": 271,
+ "y": 54,
+ "w": 124,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 18,
+ "w": 123,
+ "h": 76
+ },
+ "frame": {
+ "x": 395,
+ "y": 57,
+ "w": 123,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 104,
+ "h": 85
+ },
+ "frame": {
+ "x": 518,
+ "y": 57,
+ "w": 104,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 12,
+ "w": 115,
+ "h": 80
+ },
+ "frame": {
+ "x": 0,
+ "y": 111,
+ "w": 115,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 10,
+ "w": 111,
+ "h": 82
+ },
+ "frame": {
+ "x": 115,
+ "y": 118,
+ "w": 111,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 10,
+ "w": 111,
+ "h": 82
+ },
+ "frame": {
+ "x": 115,
+ "y": 118,
+ "w": 111,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 7,
+ "w": 114,
+ "h": 83
+ },
+ "frame": {
+ "x": 226,
+ "y": 129,
+ "w": 114,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 6,
+ "w": 114,
+ "h": 83
+ },
+ "frame": {
+ "x": 340,
+ "y": 133,
+ "w": 114,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 9,
+ "w": 109,
+ "h": 83
+ },
+ "frame": {
+ "x": 454,
+ "y": 142,
+ "w": 109,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 5,
+ "w": 105,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 105,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 5,
+ "w": 111,
+ "h": 84
+ },
+ "frame": {
+ "x": 105,
+ "y": 200,
+ "w": 111,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 7,
+ "w": 109,
+ "h": 84
+ },
+ "frame": {
+ "x": 216,
+ "y": 212,
+ "w": 109,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 7,
+ "w": 109,
+ "h": 84
+ },
+ "frame": {
+ "x": 216,
+ "y": 212,
+ "w": 109,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 9,
+ "w": 109,
+ "h": 84
+ },
+ "frame": {
+ "x": 325,
+ "y": 216,
+ "w": 109,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 108,
+ "h": 85
+ },
+ "frame": {
+ "x": 434,
+ "y": 225,
+ "w": 108,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 4,
+ "w": 105,
+ "h": 85
+ },
+ "frame": {
+ "x": 0,
+ "y": 275,
+ "w": 105,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 20,
+ "y": 8,
+ "w": 105,
+ "h": 85
+ },
+ "frame": {
+ "x": 105,
+ "y": 284,
+ "w": 105,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 5,
+ "w": 113,
+ "h": 85
+ },
+ "frame": {
+ "x": 210,
+ "y": 296,
+ "w": 113,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 8,
+ "w": 105,
+ "h": 85
+ },
+ "frame": {
+ "x": 323,
+ "y": 300,
+ "w": 105,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 2,
+ "w": 98,
+ "h": 86
+ },
+ "frame": {
+ "x": 428,
+ "y": 310,
+ "w": 98,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 1,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 526,
+ "y": 310,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 6,
+ "w": 101,
+ "h": 86
+ },
+ "frame": {
+ "x": 0,
+ "y": 360,
+ "w": 101,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 6,
+ "w": 101,
+ "h": 86
+ },
+ "frame": {
+ "x": 0,
+ "y": 360,
+ "w": 101,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 6,
+ "w": 105,
+ "h": 86
+ },
+ "frame": {
+ "x": 101,
+ "y": 369,
+ "w": 105,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 2,
+ "w": 107,
+ "h": 86
+ },
+ "frame": {
+ "x": 206,
+ "y": 381,
+ "w": 107,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 2,
+ "w": 107,
+ "h": 86
+ },
+ "frame": {
+ "x": 206,
+ "y": 381,
+ "w": 107,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 1,
+ "w": 101,
+ "h": 86
+ },
+ "frame": {
+ "x": 313,
+ "y": 385,
+ "w": 101,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 20,
+ "y": 3,
+ "w": 102,
+ "h": 86
+ },
+ "frame": {
+ "x": 414,
+ "y": 396,
+ "w": 102,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 5,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 516,
+ "y": 398,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 0,
+ "w": 101,
+ "h": 87
+ },
+ "frame": {
+ "x": 0,
+ "y": 446,
+ "w": 101,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 0,
+ "w": 104,
+ "h": 87
+ },
+ "frame": {
+ "x": 101,
+ "y": 455,
+ "w": 104,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 0,
+ "w": 104,
+ "h": 87
+ },
+ "frame": {
+ "x": 101,
+ "y": 455,
+ "w": 104,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 0,
+ "w": 97,
+ "h": 87
+ },
+ "frame": {
+ "x": 205,
+ "y": 467,
+ "w": 97,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 0,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 302,
+ "y": 471,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 20,
+ "y": 6,
+ "w": 102,
+ "h": 87
+ },
+ "frame": {
+ "x": 400,
+ "y": 482,
+ "w": 102,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 24,
+ "y": 2,
+ "w": 92,
+ "h": 88
+ },
+ "frame": {
+ "x": 502,
+ "y": 485,
+ "w": 92,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 154,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 3,
+ "w": 96,
+ "h": 88
+ },
+ "frame": {
+ "x": 0,
+ "y": 533,
+ "w": 96,
+ "h": 88
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:0a1f7d8fb8cfe18cea6de6b6f39cae56:fa1c4ca2e119b580f9ce75095b16bd4c:25c89a8ec37b43392b53a70993acdff3$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/249_3.png b/public/images/pokemon/variant/249_3.png
new file mode 100644
index 00000000000..85a453e0ad5
Binary files /dev/null and b/public/images/pokemon/variant/249_3.png differ
diff --git a/public/images/pokemon/variant/250_2.json b/public/images/pokemon/variant/250_2.json
new file mode 100644
index 00000000000..1837d32866e
--- /dev/null
+++ b/public/images/pokemon/variant/250_2.json
@@ -0,0 +1,2372 @@
+{
+ "textures": [
+ {
+ "image": "250_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 373,
+ "h": 373
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 214,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 214,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 214,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 94
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 85,
+ "h": 94
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 94
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 85,
+ "h": 94
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 0,
+ "y": 247,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 0,
+ "y": 247,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 0,
+ "y": 247,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 0,
+ "y": 247,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 0,
+ "y": 247,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 83
+ },
+ "frame": {
+ "x": 85,
+ "y": 60,
+ "w": 100,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 83
+ },
+ "frame": {
+ "x": 85,
+ "y": 60,
+ "w": 100,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 83
+ },
+ "frame": {
+ "x": 85,
+ "y": 60,
+ "w": 100,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 142,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 142,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 142,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 90
+ },
+ "frame": {
+ "x": 285,
+ "y": 152,
+ "w": 85,
+ "h": 90
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 90
+ },
+ "frame": {
+ "x": 285,
+ "y": 152,
+ "w": 85,
+ "h": 90
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 90
+ },
+ "frame": {
+ "x": 285,
+ "y": 152,
+ "w": 85,
+ "h": 90
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 85
+ },
+ "frame": {
+ "x": 183,
+ "y": 224,
+ "w": 98,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 85
+ },
+ "frame": {
+ "x": 183,
+ "y": 224,
+ "w": 98,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 85
+ },
+ "frame": {
+ "x": 183,
+ "y": 224,
+ "w": 98,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 92,
+ "h": 59
+ },
+ "frame": {
+ "x": 281,
+ "y": 242,
+ "w": 92,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 92,
+ "h": 59
+ },
+ "frame": {
+ "x": 281,
+ "y": 242,
+ "w": 92,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:8b8d6d03a312eba698ea87517e9844bf:b60c9a98bb263ff5817de518ae4ef15f:23385807e5a48e0e0f88ef64f3e0b632$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/250_2.png b/public/images/pokemon/variant/250_2.png
new file mode 100644
index 00000000000..5c1d4828ebe
Binary files /dev/null and b/public/images/pokemon/variant/250_2.png differ
diff --git a/public/images/pokemon/variant/250_3.json b/public/images/pokemon/variant/250_3.json
new file mode 100644
index 00000000000..6d53dc9732a
--- /dev/null
+++ b/public/images/pokemon/variant/250_3.json
@@ -0,0 +1,2372 @@
+{
+ "textures": [
+ {
+ "image": "250_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 373,
+ "h": 373
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 214,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 214,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 107,
+ "h": 60
+ },
+ "frame": {
+ "x": 214,
+ "y": 0,
+ "w": 107,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 94
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 85,
+ "h": 94
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 94
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 85,
+ "h": 94
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 85,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 154,
+ "w": 85,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 0,
+ "y": 247,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 0,
+ "y": 247,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 0,
+ "y": 247,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 0,
+ "y": 247,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 0,
+ "y": 247,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 83
+ },
+ "frame": {
+ "x": 85,
+ "y": 60,
+ "w": 100,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 83
+ },
+ "frame": {
+ "x": 85,
+ "y": 60,
+ "w": 100,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 83
+ },
+ "frame": {
+ "x": 85,
+ "y": 60,
+ "w": 100,
+ "h": 83
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 13,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 60,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 92
+ },
+ "frame": {
+ "x": 285,
+ "y": 60,
+ "w": 85,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 142,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 142,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 82
+ },
+ "frame": {
+ "x": 185,
+ "y": 142,
+ "w": 100,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 18,
+ "w": 100,
+ "h": 81
+ },
+ "frame": {
+ "x": 85,
+ "y": 143,
+ "w": 100,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 90
+ },
+ "frame": {
+ "x": 285,
+ "y": 152,
+ "w": 85,
+ "h": 90
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 90
+ },
+ "frame": {
+ "x": 285,
+ "y": 152,
+ "w": 85,
+ "h": 90
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 85,
+ "h": 90
+ },
+ "frame": {
+ "x": 285,
+ "y": 152,
+ "w": 85,
+ "h": 90
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 87
+ },
+ "frame": {
+ "x": 85,
+ "y": 242,
+ "w": 98,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 85
+ },
+ "frame": {
+ "x": 183,
+ "y": 224,
+ "w": 98,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 85
+ },
+ "frame": {
+ "x": 183,
+ "y": 224,
+ "w": 98,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 98,
+ "h": 85
+ },
+ "frame": {
+ "x": 183,
+ "y": 224,
+ "w": 98,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 92,
+ "h": 59
+ },
+ "frame": {
+ "x": 281,
+ "y": 242,
+ "w": 92,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 39,
+ "w": 92,
+ "h": 59
+ },
+ "frame": {
+ "x": 281,
+ "y": 242,
+ "w": 92,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 47,
+ "w": 92,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 301,
+ "w": 92,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 107,
+ "h": 101
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 48,
+ "w": 92,
+ "h": 52
+ },
+ "frame": {
+ "x": 183,
+ "y": 309,
+ "w": 92,
+ "h": 52
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:8b8d6d03a312eba698ea87517e9844bf:b60c9a98bb263ff5817de518ae4ef15f:23385807e5a48e0e0f88ef64f3e0b632$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/250_3.png b/public/images/pokemon/variant/250_3.png
new file mode 100644
index 00000000000..90fb6bb0680
Binary files /dev/null and b/public/images/pokemon/variant/250_3.png differ
diff --git a/public/images/pokemon/variant/251.json b/public/images/pokemon/variant/251.json
new file mode 100644
index 00000000000..a26cc859cff
--- /dev/null
+++ b/public/images/pokemon/variant/251.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "73a531": "599b91",
+ "a5de52": "9cc6ae",
+ "528cad": "9b296f",
+ "101010": "101010",
+ "8cb5ce": "d763a0",
+ "0063b5": "681151",
+ "4a7321": "28696a",
+ "c5dee6": "d89ab0",
+ "ffffde": "f4e5d9",
+ "b5c55a": "cbc5af",
+ "deef94": "ddd7c2",
+ "ffffff": "fff5f5",
+ "6b7384": "6b7384"
+ },
+ "2": {
+ "73a531": "5f234e",
+ "a5de52": "8c387a",
+ "528cad": "b82053",
+ "101010": "101010",
+ "8cb5ce": "e33d69",
+ "0063b5": "640d3a",
+ "4a7321": "3f0e2a",
+ "c5dee6": "a76d8b",
+ "ffffde": "ba9aa9",
+ "b5c55a": "886580",
+ "deef94": "ac869c",
+ "ffffff": "eed9d9",
+ "6b7384": "64475e"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/263.json b/public/images/pokemon/variant/263.json
new file mode 100644
index 00000000000..f470554de32
--- /dev/null
+++ b/public/images/pokemon/variant/263.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "bdad9c": "be94bb",
+ "e6dece": "e1c7dc",
+ "73635a": "481f4e",
+ "000000": "000000",
+ "b59c8c": "8e588f",
+ "947b6b": "85355a",
+ "5a524a": "3c1332",
+ "424242": "52283f",
+ "ffffff": "ffffff",
+ "524231": "1795be",
+ "6b5231": "41f3ff",
+ "212129": "311737",
+ "a51900": "a51900",
+ "c5c5bd": "c5c5bd"
+ },
+ "2": {
+ "bdad9c": "3d2661",
+ "e6dece": "5f4e9c",
+ "73635a": "29155a",
+ "000000": "000000",
+ "b59c8c": "aebcff",
+ "947b6b": "7e86d2",
+ "5a524a": "1e133e",
+ "424242": "40236c",
+ "ffffff": "ffe6e2",
+ "524231": "d0037a",
+ "6b5231": "ff429b",
+ "212129": "31134d",
+ "a51900": "d0037a",
+ "c5c5bd": "c5c5bd"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/264.json b/public/images/pokemon/variant/264.json
new file mode 100644
index 00000000000..54bbcffec10
--- /dev/null
+++ b/public/images/pokemon/variant/264.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "6b6363": "481f4e",
+ "000000": "000000",
+ "846b5a": "85355a",
+ "ad9c8c": "be94bb",
+ "decebd": "e1c7dc",
+ "a58c7b": "8e588f",
+ "5a4a3a": "59193d",
+ "423a21": "423a21",
+ "296b94": "1795be",
+ "ffffff": "ffffff",
+ "6badc5": "41f3ff",
+ "94847b": "643369",
+ "737373": "737373"
+ },
+ "2": {
+ "6b6363": "1e133e",
+ "000000": "000000",
+ "846b5a": "90a2f4",
+ "ad9c8c": "3d2661",
+ "decebd": "5f4e9c",
+ "a58c7b": "535db9",
+ "5a4a3a": "465aab",
+ "423a21": "423a21",
+ "296b94": "d0037a",
+ "ffffff": "ffe6e2",
+ "6badc5": "ff429b",
+ "94847b": "210f4e",
+ "737373": "8e5cb0"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/303-mega_2.json b/public/images/pokemon/variant/303-mega_2.json
new file mode 100644
index 00000000000..72f5b72bfb7
--- /dev/null
+++ b/public/images/pokemon/variant/303-mega_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "303-mega_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 71,
+ "h": 71
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 71,
+ "h": 68
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 68
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:2d10e60122695a3f783df14c9a7935a1:d7b5ddc6da24f27369af566210d2b33b:766d7c57c0a0ceb3e322f87a608d6e58$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/303-mega_2.png b/public/images/pokemon/variant/303-mega_2.png
new file mode 100644
index 00000000000..9d14a13bbef
Binary files /dev/null and b/public/images/pokemon/variant/303-mega_2.png differ
diff --git a/public/images/pokemon/variant/303-mega_3.json b/public/images/pokemon/variant/303-mega_3.json
new file mode 100644
index 00000000000..4f47079c998
--- /dev/null
+++ b/public/images/pokemon/variant/303-mega_3.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "303-mega_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 71,
+ "h": 71
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 71,
+ "h": 68
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 68
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:2d10e60122695a3f783df14c9a7935a1:d7b5ddc6da24f27369af566210d2b33b:766d7c57c0a0ceb3e322f87a608d6e58$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/303-mega_3.png b/public/images/pokemon/variant/303-mega_3.png
new file mode 100644
index 00000000000..6e59b4b957f
Binary files /dev/null and b/public/images/pokemon/variant/303-mega_3.png differ
diff --git a/public/images/pokemon/variant/303.json b/public/images/pokemon/variant/303.json
new file mode 100644
index 00000000000..2ddd722ba4b
--- /dev/null
+++ b/public/images/pokemon/variant/303.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "000000": "101010",
+ "737373": "c14c82",
+ "9ca594": "e175b4",
+ "4a4a4a": "6f264f",
+ "de9442": "ad8867",
+ "ffc55a": "e4c997",
+ "525252": "944263",
+ "9c4a6b": "1f194c",
+ "7b5a29": "764d32",
+ "cecece": "cecece",
+ "ffde8c": "f3e1b5",
+ "bd638c": "3047e1",
+ "d684ad": "4542b1",
+ "ffffff": "ffffff"
+ },
+ "1": {
+ "000000": "101010",
+ "737373": "347c7d",
+ "9ca594": "4fa285",
+ "4a4a4a": "193e49",
+ "de9442": "a99372",
+ "ffc55a": "d6c491",
+ "525252": "285c66",
+ "9c4a6b": "b53a29",
+ "7b5a29": "6b5424",
+ "cecece": "cecece",
+ "ffde8c": "e9e1b5",
+ "bd638c": "de4a42",
+ "d684ad": "ff635a",
+ "ffffff": "ffffff"
+ },
+ "2": {
+ "000000": "101010",
+ "737373": "9d7cd6",
+ "9ca594": "c7a8eb",
+ "4a4a4a": "2a2279",
+ "de9442": "b1a3ca",
+ "ffc55a": "cfc8e4",
+ "525252": "5f43b1",
+ "9c4a6b": "b53a29",
+ "7b5a29": "706d80",
+ "cecece": "cecece",
+ "ffde8c": "f3e4f7",
+ "bd638c": "de4a42",
+ "d684ad": "ff635a",
+ "ffffff": "ffffff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/307.json b/public/images/pokemon/variant/307.json
new file mode 100644
index 00000000000..d3e6a2437f1
--- /dev/null
+++ b/public/images/pokemon/variant/307.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "7b6b6b": "7a5f5f",
+ "000000": "000000",
+ "e6dede": "deccc3",
+ "b5adad": "9f8383",
+ "4a4242": "4a4242",
+ "ffffff": "ffffff",
+ "3a4a5a": "5a2859",
+ "b5d6ff": "f4a8c8",
+ "6bcee6": "ce7bb0",
+ "d65252": "d65287",
+ "84424a": "84424a",
+ "3a84b5": "7e4377",
+ "5aa5ce": "b95ba1",
+ "d65273": "d65273"
+ },
+ "2": {
+ "7b6b6b": "314b76",
+ "000000": "000000",
+ "e6dede": "c2cfdb",
+ "b5adad": "6f89aa",
+ "4a4242": "1e2f52",
+ "ffffff": "ffffff",
+ "3a4a5a": "113926",
+ "b5d6ff": "7edfb7",
+ "6bcee6": "66c3a3",
+ "d65252": "c067c7",
+ "84424a": "84424a",
+ "3a84b5": "375a47",
+ "5aa5ce": "579578",
+ "d65273": "d65273"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/308-mega.json b/public/images/pokemon/variant/308-mega.json
new file mode 100644
index 00000000000..6e8e6fee4d3
--- /dev/null
+++ b/public/images/pokemon/variant/308-mega.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "83414a": "59141d",
+ "101010": "101010",
+ "8b838b": "5a4357",
+ "b44a5a": "83272c",
+ "e6738b": "a53835",
+ "dedede": "e0cdd9",
+ "aca4ac": "a5829d",
+ "52414a": "432641",
+ "cecece": "d6c0a4",
+ "f8f8f8": "fff4db",
+ "a47329": "722966",
+ "f6de83": "ee9bd5",
+ "eebd5a": "ce5cb6",
+ "00b4e0": "efa360",
+ "fcfcff": "fcfcff"
+ },
+ "2": {
+ "83414a": "461f5d",
+ "101010": "101010",
+ "8b838b": "445a7e",
+ "b44a5a": "633971",
+ "e6738b": "7d5187",
+ "dedede": "cbd0d6",
+ "aca4ac": "6c7d9e",
+ "52414a": "1f344a",
+ "cecece": "8aacd2",
+ "f8f8f8": "c4dff1",
+ "a47329": "205a9e",
+ "f6de83": "5abbef",
+ "eebd5a": "3a8dca",
+ "00b4e0": "3dc7b6",
+ "fcfcff": "fcfcff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/308.json b/public/images/pokemon/variant/308.json
new file mode 100644
index 00000000000..6f974743a6d
--- /dev/null
+++ b/public/images/pokemon/variant/308.json
@@ -0,0 +1,19 @@
+{
+ "2": {
+ "84424a": "461f5d",
+ "101010": "101010",
+ "e6738c": "7d5187",
+ "ef9ca5": "a37aac",
+ "ce5a73": "71467d",
+ "52424a": "1f344a",
+ "dedede": "cbd0d6",
+ "8c848c": "3b4e6c",
+ "ada5ad": "6c7d9e",
+ "c5c5c5": "9faab9",
+ "b54a5a": "633971",
+ "f7de84": "5abbef",
+ "efbd5a": "3a8dca",
+ "ffffff": "ffffff",
+ "a57329": "205a9e"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/308_2.json b/public/images/pokemon/variant/308_2.json
new file mode 100644
index 00000000000..e1d7adcfa30
--- /dev/null
+++ b/public/images/pokemon/variant/308_2.json
@@ -0,0 +1,2372 @@
+{
+ "textures": [
+ {
+ "image": "308_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 288,
+ "h": 288
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 43,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 43,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 43,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 43,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 43,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 43,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 43,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 43,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 43,
+ "y": 0,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 43,
+ "y": 0,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 43,
+ "y": 0,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 43,
+ "y": 0,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 134,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 134,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 134,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 134,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 67,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 67,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 67,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 42,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 67,
+ "w": 42,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 41,
+ "h": 67
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 41,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 41,
+ "h": 67
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 41,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 41,
+ "h": 67
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 41,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 41,
+ "h": 67
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 41,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 40,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 201,
+ "w": 40,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 201,
+ "w": 40,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 201,
+ "w": 40,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 40,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 201,
+ "w": 40,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 42,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 40,
+ "h": 68
+ },
+ "frame": {
+ "x": 40,
+ "y": 201,
+ "w": 40,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 84,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 84,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 84,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 84,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 84,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 84,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 84,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 84,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 82,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 82,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 82,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 82,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 80,
+ "y": 201,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 80,
+ "y": 201,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 80,
+ "y": 201,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 80,
+ "y": 201,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 124,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 124,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 124,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 124,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 166,
+ "y": 0,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 122,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 122,
+ "y": 134,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 120,
+ "y": 201,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 164,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 40,
+ "h": 67
+ },
+ "frame": {
+ "x": 164,
+ "y": 67,
+ "w": 40,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 206,
+ "y": 0,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 206,
+ "y": 0,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 206,
+ "y": 0,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 206,
+ "y": 0,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 42,
+ "h": 62
+ },
+ "frame": {
+ "x": 246,
+ "y": 0,
+ "w": 42,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 42,
+ "h": 62
+ },
+ "frame": {
+ "x": 246,
+ "y": 62,
+ "w": 42,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 162,
+ "y": 134,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 162,
+ "y": 134,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 162,
+ "y": 134,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 162,
+ "y": 134,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 206,
+ "y": 66,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 206,
+ "y": 66,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 206,
+ "y": 66,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 40,
+ "h": 66
+ },
+ "frame": {
+ "x": 206,
+ "y": 66,
+ "w": 40,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 8,
+ "w": 39,
+ "h": 66
+ },
+ "frame": {
+ "x": 160,
+ "y": 201,
+ "w": 39,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 8,
+ "w": 39,
+ "h": 66
+ },
+ "frame": {
+ "x": 160,
+ "y": 201,
+ "w": 39,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 8,
+ "w": 39,
+ "h": 66
+ },
+ "frame": {
+ "x": 160,
+ "y": 201,
+ "w": 39,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 8,
+ "w": 39,
+ "h": 66
+ },
+ "frame": {
+ "x": 160,
+ "y": 201,
+ "w": 39,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 43,
+ "h": 61
+ },
+ "frame": {
+ "x": 202,
+ "y": 134,
+ "w": 43,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 43,
+ "h": 61
+ },
+ "frame": {
+ "x": 202,
+ "y": 134,
+ "w": 43,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 43,
+ "h": 59
+ },
+ "frame": {
+ "x": 245,
+ "y": 132,
+ "w": 43,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 44,
+ "h": 60
+ },
+ "frame": {
+ "x": 199,
+ "y": 200,
+ "w": 44,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 74
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 45,
+ "h": 59
+ },
+ "frame": {
+ "x": 243,
+ "y": 195,
+ "w": 45,
+ "h": 59
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:0250d3d6f6fdc7a7bcfa5ee3a6e68c4b:ed8a70296a77c7bd8465b3d56dad6097:d369d065b4cd4eb2060d0b1944c59657$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/308_2.png b/public/images/pokemon/variant/308_2.png
new file mode 100644
index 00000000000..42a11414659
Binary files /dev/null and b/public/images/pokemon/variant/308_2.png differ
diff --git a/public/images/pokemon/variant/328.json b/public/images/pokemon/variant/328.json
new file mode 100644
index 00000000000..667a4f50828
--- /dev/null
+++ b/public/images/pokemon/variant/328.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "c55a4a": "8fad68",
+ "ff947b": "ffffbc",
+ "ef7342": "c9da97",
+ "734242": "254226",
+ "212121": "212121",
+ "292929": "292929",
+ "cecec5": "e99339",
+ "ffffff": "ffffff",
+ "a5ada5": "bc6427",
+ "848484": "89370b",
+ "424231": "424231"
+ },
+ "2": {
+ "c55a4a": "3e9cb7",
+ "ff947b": "84f6e4",
+ "ef7342": "5dd7db",
+ "734242": "17465e",
+ "212121": "212121",
+ "292929": "292929",
+ "cecec5": "e4a056",
+ "ffffff": "ffffff",
+ "a5ada5": "cd7537",
+ "848484": "a84e20",
+ "424231": "424231"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/329.json b/public/images/pokemon/variant/329.json
new file mode 100644
index 00000000000..48f3d8d04d6
--- /dev/null
+++ b/public/images/pokemon/variant/329.json
@@ -0,0 +1,17 @@
+{
+ "1": {
+ "3a3a42": "89370b",
+ "000000": "101010",
+ "6b7373": "e99339",
+ "4a524a": "bc6427",
+ "4a944a": "ddbe4c",
+ "6bc56b": "f6ea73",
+ "737352": "1e4320",
+ "bdad7b": "89af58",
+ "e6d68c": "b6cd74",
+ "bdbdde": "bdbdde",
+ "ffffff": "ffffff",
+ "ffffa5": "f0f088",
+ "94de84": "fdfb89"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/329_3.json b/public/images/pokemon/variant/329_3.json
new file mode 100644
index 00000000000..08d6cd6d75f
--- /dev/null
+++ b/public/images/pokemon/variant/329_3.json
@@ -0,0 +1,2519 @@
+{
+ "textures": [
+ {
+ "image": "329_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 238,
+ "h": 238
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 62,
+ "h": 46
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 62,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 62,
+ "y": 46,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 62,
+ "y": 46,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 62,
+ "y": 98,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 62,
+ "y": 98,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 62,
+ "y": 98,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 62,
+ "y": 98,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 62,
+ "y": 98,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 62,
+ "y": 98,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 62,
+ "y": 98,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 62,
+ "y": 98,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 62,
+ "y": 98,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 0,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 45,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 45,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 45,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 45,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 45,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 45,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 45,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 45,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 121,
+ "y": 45,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 61,
+ "h": 51
+ },
+ "frame": {
+ "x": 0,
+ "y": 99,
+ "w": 61,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 5,
+ "w": 58,
+ "h": 51
+ },
+ "frame": {
+ "x": 124,
+ "y": 90,
+ "w": 58,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 5,
+ "w": 58,
+ "h": 51
+ },
+ "frame": {
+ "x": 124,
+ "y": 90,
+ "w": 58,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 62,
+ "h": 45
+ },
+ "frame": {
+ "x": 124,
+ "y": 141,
+ "w": 62,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 56,
+ "h": 49
+ },
+ "frame": {
+ "x": 182,
+ "y": 90,
+ "w": 56,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 56,
+ "h": 49
+ },
+ "frame": {
+ "x": 182,
+ "y": 90,
+ "w": 56,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 57,
+ "h": 51
+ },
+ "frame": {
+ "x": 61,
+ "y": 143,
+ "w": 57,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 57,
+ "h": 51
+ },
+ "frame": {
+ "x": 61,
+ "y": 143,
+ "w": 57,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 57,
+ "h": 51
+ },
+ "frame": {
+ "x": 61,
+ "y": 143,
+ "w": 57,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 57,
+ "h": 51
+ },
+ "frame": {
+ "x": 61,
+ "y": 143,
+ "w": 57,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 61,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 150,
+ "w": 61,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 61,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 150,
+ "w": 61,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 61,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 150,
+ "w": 61,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 61,
+ "h": 50
+ },
+ "frame": {
+ "x": 0,
+ "y": 150,
+ "w": 61,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 59,
+ "h": 49
+ },
+ "frame": {
+ "x": 118,
+ "y": 186,
+ "w": 59,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 59,
+ "h": 49
+ },
+ "frame": {
+ "x": 118,
+ "y": 186,
+ "w": 59,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 59,
+ "h": 49
+ },
+ "frame": {
+ "x": 118,
+ "y": 186,
+ "w": 59,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 59,
+ "h": 49
+ },
+ "frame": {
+ "x": 118,
+ "y": 186,
+ "w": 59,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 177,
+ "y": 186,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 177,
+ "y": 186,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 177,
+ "y": 186,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 62,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 177,
+ "y": 186,
+ "w": 59,
+ "h": 48
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:8c42510b944a1b53b1f73aaf12c70bfd:78075b7a399d8684686e6657bdee0557:255984ccdee6994c916a325f5a7e8a03$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/329_3.png b/public/images/pokemon/variant/329_3.png
new file mode 100644
index 00000000000..45fad04068e
Binary files /dev/null and b/public/images/pokemon/variant/329_3.png differ
diff --git a/public/images/pokemon/variant/330.json b/public/images/pokemon/variant/330.json
new file mode 100644
index 00000000000..694a0c64ff3
--- /dev/null
+++ b/public/images/pokemon/variant/330.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "84293a": "89370b",
+ "315a5a": "7a5703",
+ "de6373": "e99339",
+ "101010": "101010",
+ "6ba573": "d8b430",
+ "5a7b52": "a07b0f",
+ "ce3a4a": "bc6427",
+ "94d69c": "f6e85f",
+ "b5de73": "90dd71",
+ "ffffff": "ffffff",
+ "ffa5b5": "f5cd2d",
+ "8ca552": "58af58",
+ "84bd63": "84bd63",
+ "deff8c": "d0f088",
+ "526321": "1e4320"
+ },
+ "2": {
+ "84293a": "a84e20",
+ "315a5a": "171997",
+ "de6373": "f79021",
+ "101010": "101010",
+ "6ba573": "465fd4",
+ "5a7b52": "2836af",
+ "ce3a4a": "cd7537",
+ "94d69c": "80a1f5",
+ "b5de73": "94e3ff",
+ "ffffff": "ffffff",
+ "ffa5b5": "ffd52c",
+ "8ca552": "4dabe8",
+ "84bd63": "3587a9",
+ "deff8c": "d7fff7",
+ "526321": "003c64"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/333.json b/public/images/pokemon/variant/333.json
new file mode 100644
index 00000000000..ca25669dfcb
--- /dev/null
+++ b/public/images/pokemon/variant/333.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "9c9cc5": "3f328d",
+ "5a94ce": "947dcf",
+ "3a6b84": "59377f",
+ "ffffff": "80a1f1",
+ "cecee6": "5251bd",
+ "7bceff": "e9d9fa",
+ "63ade6": "cab1ec",
+ "101010": "101010",
+ "848494": "392166",
+ "5a5a73": "5a5a73"
+ },
+ "2": {
+ "9c9cc5": "bf6744",
+ "5a94ce": "bc4e8b",
+ "3a6b84": "84265b",
+ "ffffff": "ffddb4",
+ "cecee6": "eb9d6a",
+ "7bceff": "ff9ebd",
+ "63ade6": "e677a5",
+ "101010": "101010",
+ "848494": "892f26",
+ "5a5a73": "5a5a73"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/334-mega.json b/public/images/pokemon/variant/334-mega.json
new file mode 100644
index 00000000000..9d4ec04f898
--- /dev/null
+++ b/public/images/pokemon/variant/334-mega.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "acb4c5": "312f8c",
+ "73739c": "391768",
+ "fcfcfc": "7c99df",
+ "dee6ee": "6362d3",
+ "cdcde6": "52459e",
+ "4b6973": "462a66",
+ "74a3b3": "947dcf",
+ "95d1e5": "cab1ec",
+ "c1e8f4": "e9d9fa",
+ "deadc4": "45256a",
+ "a4889f": "35134b",
+ "ffc5ee": "4d3084",
+ "101010": "101010"
+ },
+ "2": {
+ "acb4c5": "dd555a",
+ "73739c": "b22f3f",
+ "fcfcfc": "ffddb4",
+ "dee6ee": "ec996c",
+ "cdcde6": "dd766d",
+ "4b6973": "771743",
+ "74a3b3": "cb457d",
+ "95d1e5": "f3719a",
+ "c1e8f4": "ff93ac",
+ "deadc4": "c63057",
+ "a4889f": "7c103a",
+ "ffc5ee": "e7536d",
+ "101010": "101010"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/334_2.json b/public/images/pokemon/variant/334_2.json
new file mode 100644
index 00000000000..4472aca8b8d
--- /dev/null
+++ b/public/images/pokemon/variant/334_2.json
@@ -0,0 +1,3380 @@
+{
+ "textures": [
+ {
+ "image": "334_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 357,
+ "h": 357
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0153.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0154.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0155.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0156.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0157.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0158.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0159.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0160.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 64,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 64,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 64,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0150.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 64,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0151.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0152.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0148.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 255,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0149.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 255,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 63,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 63,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 63,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 126,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 126,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 60,
+ "y": 189,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0146.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0147.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 123,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 123,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 123,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 119,
+ "y": 184,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 119,
+ "y": 184,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 120,
+ "y": 245,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 121,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 121,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 179,
+ "y": 182,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 179,
+ "y": 182,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 179,
+ "y": 182,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 242,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 242,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0143.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 60,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0144.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 60,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0145.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 237,
+ "y": 120,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 179,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 179,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 179,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 240,
+ "y": 238,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 240,
+ "y": 238,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 240,
+ "y": 238,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 240,
+ "y": 238,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 240,
+ "y": 297,
+ "w": 60,
+ "h": 59
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:3f581df65b7dcf8984f961048fb9645f:67fb2fa9ab4447899b4eea6d258c1016:5a1a682f8dbfe0b157a698e77c269c7f$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/334_2.png b/public/images/pokemon/variant/334_2.png
new file mode 100644
index 00000000000..94457f721e3
Binary files /dev/null and b/public/images/pokemon/variant/334_2.png differ
diff --git a/public/images/pokemon/variant/334_3.json b/public/images/pokemon/variant/334_3.json
new file mode 100644
index 00000000000..1ce01c145bf
--- /dev/null
+++ b/public/images/pokemon/variant/334_3.json
@@ -0,0 +1,3380 @@
+{
+ "textures": [
+ {
+ "image": "334_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 357,
+ "h": 357
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0153.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0154.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0155.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0156.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0157.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0158.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0159.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0160.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 64,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 64,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 64,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0150.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 64,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0151.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0152.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 64
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 59,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 192,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0148.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 255,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0149.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 60,
+ "h": 63
+ },
+ "frame": {
+ "x": 0,
+ "y": 255,
+ "w": 60,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 63,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 63,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 63,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 126,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 126,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 59,
+ "h": 63
+ },
+ "frame": {
+ "x": 60,
+ "y": 189,
+ "w": 59,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 60,
+ "y": 252,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0146.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0147.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 60,
+ "h": 62
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 60,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 62,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 123,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 123,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 118,
+ "y": 123,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 119,
+ "y": 184,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 119,
+ "y": 184,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 60,
+ "h": 61
+ },
+ "frame": {
+ "x": 120,
+ "y": 245,
+ "w": 60,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 0,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 60,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 121,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 178,
+ "y": 121,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 179,
+ "y": 182,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 179,
+ "y": 182,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 179,
+ "y": 182,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 242,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 180,
+ "y": 242,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0143.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 60,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0144.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 240,
+ "y": 60,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0145.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 60,
+ "h": 60
+ },
+ "frame": {
+ "x": 237,
+ "y": 120,
+ "w": 60,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 120,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 179,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 179,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 297,
+ "y": 179,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 240,
+ "y": 238,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 240,
+ "y": 238,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 240,
+ "y": 238,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 240,
+ "y": 238,
+ "w": 60,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 60,
+ "h": 64
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 60,
+ "h": 59
+ },
+ "frame": {
+ "x": 240,
+ "y": 297,
+ "w": 60,
+ "h": 59
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:3f581df65b7dcf8984f961048fb9645f:67fb2fa9ab4447899b4eea6d258c1016:5a1a682f8dbfe0b157a698e77c269c7f$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/334_3.png b/public/images/pokemon/variant/334_3.png
new file mode 100644
index 00000000000..67fd670b3cb
Binary files /dev/null and b/public/images/pokemon/variant/334_3.png differ
diff --git a/public/images/pokemon/variant/352.json b/public/images/pokemon/variant/352.json
new file mode 100644
index 00000000000..a265711a49c
--- /dev/null
+++ b/public/images/pokemon/variant/352.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "8c7b5a": "824c0b",
+ "42635a": "296161",
+ "000000": "000000",
+ "f7ef7b": "f7dd7b",
+ "5abd73": "5db5a8",
+ "5a9473": "418b87",
+ "dec55a": "e5b740",
+ "bda552": "cd9a2b",
+ "c5de7b": "c5de7b",
+ "7bd684": "7bd6b4",
+ "a5ef9c": "9cefbc",
+ "a54284": "296389",
+ "73315a": "0e3354",
+ "d663ad": "54a3ca",
+ "ffffff": "ffffff"
+ },
+ "1": {
+ "8c7b5a": "7b2577",
+ "42635a": "762f0f",
+ "000000": "000000",
+ "f7ef7b": "ed7cd8",
+ "5abd73": "c98640",
+ "5a9473": "a7612a",
+ "dec55a": "cb57b6",
+ "bda552": "962c8d",
+ "c5de7b": "e05db6",
+ "7bd684": "e4ad46",
+ "a5ef9c": "ffd577",
+ "a54284": "3d48b2",
+ "73315a": "202065",
+ "d663ad": "8597d6",
+ "ffffff": "ffffff"
+ },
+ "2": {
+ "8c7b5a": "307855",
+ "42635a": "58214c",
+ "000000": "000000",
+ "f7ef7b": "affec6",
+ "5abd73": "d775b5",
+ "5a9473": "b45599",
+ "dec55a": "7edb9f",
+ "bda552": "66c18b",
+ "c5de7b": "8dd4c1",
+ "7bd684": "f2a8d6",
+ "a5ef9c": "ffd2ee",
+ "a54284": "64152b",
+ "73315a": "400e2a",
+ "d663ad": "ab2f43",
+ "ffffff": "ffffff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/358.json b/public/images/pokemon/variant/358.json
new file mode 100644
index 00000000000..fcca3087804
--- /dev/null
+++ b/public/images/pokemon/variant/358.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "a57352": "9f6f43",
+ "e6a54a": "cca375",
+ "ffe694": "faedcd",
+ "ffd65a": "ebd4b0",
+ "000000": "101010",
+ "ffffff": "ffffff",
+ "424a6b": "29346b",
+ "c5e6ff": "afadcd",
+ "9cc5e6": "888ab1",
+ "7b2942": "1b4b69",
+ "6b94b5": "424d83",
+ "f7527b": "2f6e8c",
+ "b5425a": "14404e",
+ "ce8cb5": "1f5472"
+ },
+ "2": {
+ "a57352": "934123",
+ "e6a54a": "c86b3e",
+ "ffe694": "f4c89d",
+ "ffd65a": "ee9b65",
+ "000000": "101010",
+ "ffffff": "ffffff",
+ "424a6b": "5b4950",
+ "c5e6ff": "e8d6d6",
+ "9cc5e6": "c29ea6",
+ "7b2942": "102837",
+ "6b94b5": "593a58",
+ "f7527b": "4d8891",
+ "b5425a": "27484c",
+ "ce8cb5": "3a656c"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/358_1.json b/public/images/pokemon/variant/358_1.json
new file mode 100644
index 00000000000..5484e49ef9e
--- /dev/null
+++ b/public/images/pokemon/variant/358_1.json
@@ -0,0 +1,2288 @@
+{
+ "textures": [
+ {
+ "image": "358_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 228,
+ "h": 228
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 3,
+ "w": 28,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 28,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 3,
+ "w": 28,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 28,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 3,
+ "w": 28,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 28,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 3,
+ "w": 28,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 28,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 4,
+ "w": 26,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 26,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 4,
+ "w": 26,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 26,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 4,
+ "w": 26,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 26,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 4,
+ "w": 26,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 26,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 5,
+ "w": 25,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 120,
+ "w": 25,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 5,
+ "w": 25,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 120,
+ "w": 25,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 24,
+ "h": 60
+ },
+ "frame": {
+ "x": 25,
+ "y": 120,
+ "w": 24,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 24,
+ "h": 60
+ },
+ "frame": {
+ "x": 25,
+ "y": 120,
+ "w": 24,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 24,
+ "h": 60
+ },
+ "frame": {
+ "x": 25,
+ "y": 120,
+ "w": 24,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 24,
+ "h": 60
+ },
+ "frame": {
+ "x": 25,
+ "y": 120,
+ "w": 24,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 23,
+ "h": 60
+ },
+ "frame": {
+ "x": 26,
+ "y": 60,
+ "w": 23,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 23,
+ "h": 60
+ },
+ "frame": {
+ "x": 26,
+ "y": 60,
+ "w": 23,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 23,
+ "h": 60
+ },
+ "frame": {
+ "x": 26,
+ "y": 60,
+ "w": 23,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 23,
+ "h": 60
+ },
+ "frame": {
+ "x": 26,
+ "y": 60,
+ "w": 23,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 3,
+ "w": 23,
+ "h": 60
+ },
+ "frame": {
+ "x": 28,
+ "y": 0,
+ "w": 23,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 3,
+ "w": 23,
+ "h": 60
+ },
+ "frame": {
+ "x": 28,
+ "y": 0,
+ "w": 23,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 3,
+ "w": 23,
+ "h": 60
+ },
+ "frame": {
+ "x": 28,
+ "y": 0,
+ "w": 23,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 3,
+ "w": 23,
+ "h": 60
+ },
+ "frame": {
+ "x": 28,
+ "y": 0,
+ "w": 23,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 4,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 51,
+ "y": 0,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 4,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 51,
+ "y": 0,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 120,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 120,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 120,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 49,
+ "y": 120,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 71,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 71,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 71,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 71,
+ "y": 60,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 73,
+ "y": 0,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 60
+ },
+ "frame": {
+ "x": 73,
+ "y": 0,
+ "w": 22,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 2,
+ "w": 26,
+ "h": 59
+ },
+ "frame": {
+ "x": 71,
+ "y": 120,
+ "w": 26,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 2,
+ "w": 26,
+ "h": 59
+ },
+ "frame": {
+ "x": 71,
+ "y": 120,
+ "w": 26,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 25,
+ "h": 59
+ },
+ "frame": {
+ "x": 93,
+ "y": 60,
+ "w": 25,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 25,
+ "h": 59
+ },
+ "frame": {
+ "x": 93,
+ "y": 60,
+ "w": 25,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 25,
+ "h": 59
+ },
+ "frame": {
+ "x": 93,
+ "y": 60,
+ "w": 25,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 25,
+ "h": 59
+ },
+ "frame": {
+ "x": 93,
+ "y": 60,
+ "w": 25,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 2,
+ "w": 25,
+ "h": 59
+ },
+ "frame": {
+ "x": 95,
+ "y": 0,
+ "w": 25,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 6,
+ "w": 25,
+ "h": 59
+ },
+ "frame": {
+ "x": 95,
+ "y": 0,
+ "w": 25,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 2,
+ "w": 25,
+ "h": 59
+ },
+ "frame": {
+ "x": 95,
+ "y": 0,
+ "w": 25,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 6,
+ "w": 25,
+ "h": 59
+ },
+ "frame": {
+ "x": 95,
+ "y": 0,
+ "w": 25,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 22,
+ "h": 59
+ },
+ "frame": {
+ "x": 97,
+ "y": 119,
+ "w": 22,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 22,
+ "h": 59
+ },
+ "frame": {
+ "x": 97,
+ "y": 119,
+ "w": 22,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 2,
+ "w": 22,
+ "h": 59
+ },
+ "frame": {
+ "x": 118,
+ "y": 59,
+ "w": 22,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 2,
+ "w": 22,
+ "h": 59
+ },
+ "frame": {
+ "x": 118,
+ "y": 59,
+ "w": 22,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 2,
+ "w": 22,
+ "h": 59
+ },
+ "frame": {
+ "x": 118,
+ "y": 59,
+ "w": 22,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 2,
+ "w": 22,
+ "h": 59
+ },
+ "frame": {
+ "x": 118,
+ "y": 59,
+ "w": 22,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 59
+ },
+ "frame": {
+ "x": 120,
+ "y": 0,
+ "w": 22,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 22,
+ "h": 59
+ },
+ "frame": {
+ "x": 120,
+ "y": 0,
+ "w": 22,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 22,
+ "h": 59
+ },
+ "frame": {
+ "x": 120,
+ "y": 0,
+ "w": 22,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 22,
+ "h": 59
+ },
+ "frame": {
+ "x": 120,
+ "y": 0,
+ "w": 22,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 27,
+ "h": 58
+ },
+ "frame": {
+ "x": 119,
+ "y": 118,
+ "w": 27,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 5,
+ "w": 27,
+ "h": 58
+ },
+ "frame": {
+ "x": 119,
+ "y": 118,
+ "w": 27,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 27,
+ "h": 58
+ },
+ "frame": {
+ "x": 119,
+ "y": 118,
+ "w": 27,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 5,
+ "w": 27,
+ "h": 58
+ },
+ "frame": {
+ "x": 119,
+ "y": 118,
+ "w": 27,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 26,
+ "h": 52
+ },
+ "frame": {
+ "x": 119,
+ "y": 176,
+ "w": 26,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 26,
+ "h": 52
+ },
+ "frame": {
+ "x": 119,
+ "y": 176,
+ "w": 26,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 24,
+ "h": 58
+ },
+ "frame": {
+ "x": 140,
+ "y": 59,
+ "w": 24,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 24,
+ "h": 58
+ },
+ "frame": {
+ "x": 140,
+ "y": 59,
+ "w": 24,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 24,
+ "h": 58
+ },
+ "frame": {
+ "x": 140,
+ "y": 59,
+ "w": 24,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 24,
+ "h": 58
+ },
+ "frame": {
+ "x": 140,
+ "y": 59,
+ "w": 24,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 22,
+ "h": 58
+ },
+ "frame": {
+ "x": 142,
+ "y": 0,
+ "w": 22,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 22,
+ "h": 58
+ },
+ "frame": {
+ "x": 142,
+ "y": 0,
+ "w": 22,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 22,
+ "h": 58
+ },
+ "frame": {
+ "x": 142,
+ "y": 0,
+ "w": 22,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 22,
+ "h": 58
+ },
+ "frame": {
+ "x": 142,
+ "y": 0,
+ "w": 22,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 30,
+ "h": 55
+ },
+ "frame": {
+ "x": 164,
+ "y": 0,
+ "w": 30,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 30,
+ "h": 55
+ },
+ "frame": {
+ "x": 164,
+ "y": 0,
+ "w": 30,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 30,
+ "h": 55
+ },
+ "frame": {
+ "x": 164,
+ "y": 0,
+ "w": 30,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 30,
+ "h": 55
+ },
+ "frame": {
+ "x": 164,
+ "y": 0,
+ "w": 30,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 30,
+ "h": 54
+ },
+ "frame": {
+ "x": 194,
+ "y": 0,
+ "w": 30,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 30,
+ "h": 54
+ },
+ "frame": {
+ "x": 194,
+ "y": 0,
+ "w": 30,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 29,
+ "h": 56
+ },
+ "frame": {
+ "x": 194,
+ "y": 54,
+ "w": 29,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 5,
+ "w": 29,
+ "h": 56
+ },
+ "frame": {
+ "x": 194,
+ "y": 54,
+ "w": 29,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 29,
+ "h": 56
+ },
+ "frame": {
+ "x": 194,
+ "y": 54,
+ "w": 29,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 5,
+ "w": 29,
+ "h": 56
+ },
+ "frame": {
+ "x": 194,
+ "y": 54,
+ "w": 29,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 3,
+ "w": 26,
+ "h": 54
+ },
+ "frame": {
+ "x": 164,
+ "y": 55,
+ "w": 26,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 26,
+ "h": 54
+ },
+ "frame": {
+ "x": 164,
+ "y": 55,
+ "w": 26,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 3,
+ "w": 26,
+ "h": 54
+ },
+ "frame": {
+ "x": 164,
+ "y": 55,
+ "w": 26,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 26,
+ "h": 54
+ },
+ "frame": {
+ "x": 164,
+ "y": 55,
+ "w": 26,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 2,
+ "w": 26,
+ "h": 54
+ },
+ "frame": {
+ "x": 164,
+ "y": 109,
+ "w": 26,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 26,
+ "h": 54
+ },
+ "frame": {
+ "x": 164,
+ "y": 109,
+ "w": 26,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 2,
+ "w": 26,
+ "h": 54
+ },
+ "frame": {
+ "x": 164,
+ "y": 109,
+ "w": 26,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 26,
+ "h": 54
+ },
+ "frame": {
+ "x": 164,
+ "y": 109,
+ "w": 26,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 23,
+ "h": 57
+ },
+ "frame": {
+ "x": 146,
+ "y": 163,
+ "w": 23,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 23,
+ "h": 57
+ },
+ "frame": {
+ "x": 146,
+ "y": 163,
+ "w": 23,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 23,
+ "h": 57
+ },
+ "frame": {
+ "x": 169,
+ "y": 163,
+ "w": 23,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 23,
+ "h": 57
+ },
+ "frame": {
+ "x": 169,
+ "y": 163,
+ "w": 23,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 23,
+ "h": 57
+ },
+ "frame": {
+ "x": 169,
+ "y": 163,
+ "w": 23,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 23,
+ "h": 57
+ },
+ "frame": {
+ "x": 169,
+ "y": 163,
+ "w": 23,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 4,
+ "w": 25,
+ "h": 56
+ },
+ "frame": {
+ "x": 192,
+ "y": 110,
+ "w": 25,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 25,
+ "h": 56
+ },
+ "frame": {
+ "x": 192,
+ "y": 110,
+ "w": 25,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 4,
+ "w": 25,
+ "h": 56
+ },
+ "frame": {
+ "x": 192,
+ "y": 110,
+ "w": 25,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 25,
+ "h": 56
+ },
+ "frame": {
+ "x": 192,
+ "y": 110,
+ "w": 25,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 22,
+ "h": 57
+ },
+ "frame": {
+ "x": 192,
+ "y": 166,
+ "w": 22,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 22,
+ "h": 57
+ },
+ "frame": {
+ "x": 192,
+ "y": 166,
+ "w": 22,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 22,
+ "h": 57
+ },
+ "frame": {
+ "x": 192,
+ "y": 166,
+ "w": 22,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 34,
+ "h": 66
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 22,
+ "h": 57
+ },
+ "frame": {
+ "x": 192,
+ "y": 166,
+ "w": 22,
+ "h": 57
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:26185da914334bc85bbb5208745be353:40062b0ad1fd322e891dab318d7d034f:f26ec199c087ca41369d1f7f6ba3e63c$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/358_1.png b/public/images/pokemon/variant/358_1.png
new file mode 100644
index 00000000000..369b9828261
Binary files /dev/null and b/public/images/pokemon/variant/358_1.png differ
diff --git a/public/images/pokemon/variant/384-mega.json b/public/images/pokemon/variant/384-mega.json
new file mode 100644
index 00000000000..d5e3456b6ea
--- /dev/null
+++ b/public/images/pokemon/variant/384-mega.json
@@ -0,0 +1,19 @@
+{
+ "2": {
+ "fbe27e": "17e2d6",
+ "fc9436": "098faf",
+ "836231": "003082",
+ "f6de00": "17e2d6",
+ "010101": "010101",
+ "22523e": "650f04",
+ "3d7d6d": "84120f",
+ "c5a400": "0db1b1",
+ "36b075": "ce3f2d",
+ "3f3f3f": "380100",
+ "60d293": "f1785e",
+ "e4b629": "036486",
+ "9c2952": "063f67",
+ "e65273": "2083e7",
+ "fcfcfc": "fcfcfc"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/384-mega_2.json b/public/images/pokemon/variant/384-mega_2.json
new file mode 100644
index 00000000000..a5748fc69f0
--- /dev/null
+++ b/public/images/pokemon/variant/384-mega_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "384-mega_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 96,
+ "h": 96
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 96,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 96,
+ "h": 96
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 96,
+ "h": 96
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:30501184e8274ace38df2f5d3380f163:f04557de6b8b7c9f59e02ae300538366:cf7a16daaa5962e1da39cbbb1392de14$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/384-mega_2.png b/public/images/pokemon/variant/384-mega_2.png
new file mode 100644
index 00000000000..a834d31418c
Binary files /dev/null and b/public/images/pokemon/variant/384-mega_2.png differ
diff --git a/public/images/pokemon/variant/384.json b/public/images/pokemon/variant/384.json
new file mode 100644
index 00000000000..cdd2e3bfbde
--- /dev/null
+++ b/public/images/pokemon/variant/384.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "295242": "333554",
+ "4a8473": "66637b",
+ "5abd8c": "b3aec1",
+ "94deb5": "e4e0ee",
+ "000000": "000000",
+ "9c2952": "1cb450",
+ "73293a": "0a642c",
+ "846331": "064c1e",
+ "c5a500": "27c750",
+ "f7de00": "4ff869",
+ "e65273": "4cd870",
+ "ffffff": "ffffff",
+ "bd638c": "98285b",
+ "ded6ef": "ded6ef"
+ },
+ "2": {
+ "295242": "540709",
+ "4a8473": "821815",
+ "5abd8c": "ca4636",
+ "94deb5": "f99365",
+ "000000": "000000",
+ "9c2952": "117a7a",
+ "73293a": "003082",
+ "846331": "380100",
+ "c5a500": "098faf",
+ "f7de00": "17e2d6",
+ "e65273": "17e2d6",
+ "ffffff": "ffffff",
+ "bd638c": "2083e7",
+ "ded6ef": "ded6ef"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/385.json b/public/images/pokemon/variant/385.json
new file mode 100644
index 00000000000..7d3f8636614
--- /dev/null
+++ b/public/images/pokemon/variant/385.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "ad8431": "925108",
+ "000000": "000000",
+ "ffff94": "f7e980",
+ "ffe65a": "f3bf5c",
+ "e6bd52": "db942d",
+ "52adce": "e43f54",
+ "317b8c": "c0173f",
+ "63d6de": "f87d82",
+ "c5cede": "cea9b3",
+ "e6eff7": "ddd4d6",
+ "ffffff": "ffffff",
+ "6b7373": "6e2d47",
+ "9ca5ad": "965771"
+ },
+ "1": {
+ "ad8431": "874100",
+ "000000": "000000",
+ "ffff94": "f7be5d",
+ "ffe65a": "de9128",
+ "e6bd52": "ba670d",
+ "52adce": "459c5f",
+ "317b8c": "194e2e",
+ "63d6de": "7dea9b",
+ "c5cede": "decbc5",
+ "e6eff7": "f7ece6",
+ "ffffff": "ffffff",
+ "6b7373": "816566",
+ "9ca5ad": "ad9d9c"
+ },
+ "2": {
+ "ad8431": "234664",
+ "000000": "000000",
+ "ffff94": "b1dbe8",
+ "ffe65a": "6fb6da",
+ "e6bd52": "427aa3",
+ "52adce": "d256b7",
+ "317b8c": "6f1b61",
+ "63d6de": "f6a5e0",
+ "c5cede": "d6c5de",
+ "e6eff7": "eee6f7",
+ "ffffff": "ffffff",
+ "6b7373": "7f6581",
+ "9ca5ad": "aa9cad"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/4263.json b/public/images/pokemon/variant/4263.json
new file mode 100644
index 00000000000..035d011d7a0
--- /dev/null
+++ b/public/images/pokemon/variant/4263.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "1b2627": "00312d",
+ "010101": "010101",
+ "3e4042": "01473a",
+ "60656a": "1c8155",
+ "5b5958": "397e4a",
+ "f5f5f6": "f5ffea",
+ "b2b3b2": "a3ce9e",
+ "d94a7f": "d414dd",
+ "fcfcfc": "fcfcfc",
+ "e2729a": "ff69fa",
+ "6e3b51": "9b00b4",
+ "9b4f69": "d414dd",
+ "ee96b2": "ff69fa"
+ },
+ "2": {
+ "1b2627": "080929",
+ "010101": "010101",
+ "3e4042": "412991",
+ "60656a": "8e5aef",
+ "5b5958": "100d2d",
+ "f5f5f6": "3c335d",
+ "b2b3b2": "201b47",
+ "d94a7f": "0099ce",
+ "fcfcfc": "fcfcfc",
+ "e2729a": "54f1ff",
+ "6e3b51": "004a8b",
+ "9b4f69": "0099ce",
+ "ee96b2": "54f1ff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/4264.json b/public/images/pokemon/variant/4264.json
new file mode 100644
index 00000000000..5c118e7edc8
--- /dev/null
+++ b/public/images/pokemon/variant/4264.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "322c29": "01473a",
+ "797570": "397e4a",
+ "414141": "1c8155",
+ "abadaf": "95c090",
+ "010101": "010101",
+ "f5f5f6": "f5ffea",
+ "1c1917": "1c1917",
+ "ff4e89": "ff69fa",
+ "bc3065": "d414dd",
+ "68696a": "27323a",
+ "949496": "3d494e"
+ },
+ "2": {
+ "322c29": "412991",
+ "797570": "080929",
+ "414141": "7c4cd6",
+ "abadaf": "1e1a3b",
+ "010101": "010101",
+ "f5f5f6": "342d4c",
+ "1c1917": "1c1917",
+ "ff4e89": "54f1ff",
+ "bc3065": "0099ce",
+ "68696a": "2a1b4e",
+ "949496": "554576"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/429.json b/public/images/pokemon/variant/429.json
new file mode 100644
index 00000000000..07e458a0baa
--- /dev/null
+++ b/public/images/pokemon/variant/429.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "5a4263": "9b490e",
+ "845284": "d3941a",
+ "b563b5": "ffdd67",
+ "31213a": "132443",
+ "101010": "101010",
+ "4a3a5a": "244260",
+ "6b4a94": "387fa7",
+ "ce9c00": "c08ecb",
+ "ffffff": "ffffff",
+ "943a5a": "71370f",
+ "f7de3a": "e5c9e9",
+ "ef3a10": "cc762f"
+ },
+ "1": {
+ "5a4263": "0c8086",
+ "845284": "1dbdb9",
+ "b563b5": "3df7ed",
+ "31213a": "244358",
+ "101010": "101010",
+ "4a3a5a": "7396b4",
+ "6b4a94": "a1c8db",
+ "ce9c00": "149c9d",
+ "ffffff": "ffffff",
+ "943a5a": "7b3c08",
+ "f7de3a": "55e6de",
+ "ef3a10": "e28c27"
+ },
+ "2": {
+ "5a4263": "5d4a2f",
+ "845284": "eece8c",
+ "b563b5": "fff7dd",
+ "31213a": "603305",
+ "101010": "101010",
+ "4a3a5a": "b56f2a",
+ "6b4a94": "e6aa47",
+ "ce9c00": "66d0e5",
+ "ffffff": "ffffff",
+ "943a5a": "7a1511",
+ "f7de3a": "a6f0f8",
+ "ef3a10": "b83a31"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/433.json b/public/images/pokemon/variant/433.json
new file mode 100644
index 00000000000..9f770cfc89d
--- /dev/null
+++ b/public/images/pokemon/variant/433.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "6b3a31": "631d61",
+ "ad5231": "a6459c",
+ "e66352": "f37cdf",
+ "d6d6f7": "e7d6e8",
+ "a5a5ce": "a189a6",
+ "000000": "000000",
+ "63524a": "7d492f",
+ "ffd65a": "ffce5a",
+ "bd9c4a": "e6a54a",
+ "ffe694": "ffd1a4",
+ "846b4a": "a6673b",
+ "ffffff": "ffffff"
+ },
+ "1": {
+ "6b3a31": "14404e",
+ "ad5231": "2f6e8c",
+ "e66352": "4a94ad",
+ "d6d6f7": "ebd4b0",
+ "a5a5ce": "cca375",
+ "000000": "000000",
+ "63524a": "404c85",
+ "ffd65a": "afadcd",
+ "bd9c4a": "888ab1",
+ "ffe694": "e0dbf5",
+ "846b4a": "5b6596",
+ "ffffff": "ffffff"
+ },
+ "2": {
+ "6b3a31": "102837",
+ "ad5231": "3a656c",
+ "e66352": "4d8891",
+ "d6d6f7": "f7e6e5",
+ "a5a5ce": "c29ea6",
+ "000000": "000000",
+ "63524a": "6d2018",
+ "ffd65a": "f0a878",
+ "bd9c4a": "c86b3e",
+ "ffe694": "ffd1a4",
+ "846b4a": "934123",
+ "ffffff": "ffffff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/440.json b/public/images/pokemon/variant/440.json
new file mode 100644
index 00000000000..090daa258ac
--- /dev/null
+++ b/public/images/pokemon/variant/440.json
@@ -0,0 +1,24 @@
+{
+ "0": {
+ "a55a7b": "925382",
+ "ffc5d6": "f6cae1",
+ "101010": "101010",
+ "c58ca5": "c57cad",
+ "73425a": "6c1f9e",
+ "ffffff": "fff4fb",
+ "de6b9c": "c164e4",
+ "a5527b": "953fc7",
+ "cebdc5": "d7c6d3"
+ },
+ "1": {
+ "a55a7b": "81256f",
+ "ffc5d6": "ebbada",
+ "101010": "101010",
+ "c58ca5": "bd61a4",
+ "73425a": "4f0e22",
+ "ffffff": "fff4fb",
+ "de6b9c": "d32218",
+ "a5527b": "8e0006",
+ "cebdc5": "d7c6d3"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/440_3.json b/public/images/pokemon/variant/440_3.json
new file mode 100644
index 00000000000..622c85d2b36
--- /dev/null
+++ b/public/images/pokemon/variant/440_3.json
@@ -0,0 +1,2414 @@
+{
+ "textures": [
+ {
+ "image": "440_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 150,
+ "h": 150
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 30,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 30,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 30,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 30,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 0,
+ "y": 87,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 30,
+ "y": 0,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 30,
+ "y": 0,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 60,
+ "y": 0,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 30,
+ "h": 43
+ },
+ "frame": {
+ "x": 60,
+ "y": 0,
+ "w": 30,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 90,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 90,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 90,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 90,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 90,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 90,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 90,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 90,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 120,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 120,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 30,
+ "h": 42
+ },
+ "frame": {
+ "x": 90,
+ "y": 42,
+ "w": 30,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 120,
+ "y": 42,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 120,
+ "y": 42,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 120,
+ "y": 42,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 120,
+ "y": 42,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 120,
+ "y": 42,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 120,
+ "y": 42,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 120,
+ "y": 42,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 120,
+ "y": 42,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 120,
+ "y": 42,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 120,
+ "y": 83,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 30,
+ "y": 43,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 30,
+ "h": 41
+ },
+ "frame": {
+ "x": 30,
+ "y": 43,
+ "w": 30,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 30,
+ "h": 40
+ },
+ "frame": {
+ "x": 60,
+ "y": 43,
+ "w": 30,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 30,
+ "h": 40
+ },
+ "frame": {
+ "x": 60,
+ "y": 43,
+ "w": 30,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 30,
+ "h": 40
+ },
+ "frame": {
+ "x": 60,
+ "y": 83,
+ "w": 30,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 30,
+ "h": 39
+ },
+ "frame": {
+ "x": 30,
+ "y": 84,
+ "w": 30,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 30,
+ "h": 39
+ },
+ "frame": {
+ "x": 30,
+ "y": 84,
+ "w": 30,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 30,
+ "h": 39
+ },
+ "frame": {
+ "x": 30,
+ "y": 84,
+ "w": 30,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 30,
+ "h": 39
+ },
+ "frame": {
+ "x": 30,
+ "y": 84,
+ "w": 30,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 30,
+ "h": 39
+ },
+ "frame": {
+ "x": 30,
+ "y": 84,
+ "w": 30,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 30,
+ "h": 39
+ },
+ "frame": {
+ "x": 30,
+ "y": 84,
+ "w": 30,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 30,
+ "h": 39
+ },
+ "frame": {
+ "x": 30,
+ "y": 84,
+ "w": 30,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 30,
+ "h": 39
+ },
+ "frame": {
+ "x": 30,
+ "y": 84,
+ "w": 30,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 30,
+ "h": 39
+ },
+ "frame": {
+ "x": 90,
+ "y": 84,
+ "w": 30,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 30,
+ "h": 50
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 30,
+ "h": 39
+ },
+ "frame": {
+ "x": 90,
+ "y": 84,
+ "w": 30,
+ "h": 39
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:03d8688abdd7b8926dfed47b8e61c68e:fe220b269b88b971ca63dee918390e14:558904acbb75cc7c7020d00b9e0cfa6b$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/440_3.png b/public/images/pokemon/variant/440_3.png
new file mode 100644
index 00000000000..6c0086945e1
Binary files /dev/null and b/public/images/pokemon/variant/440_3.png differ
diff --git a/public/images/pokemon/variant/443.json b/public/images/pokemon/variant/443.json
new file mode 100644
index 00000000000..2863290a668
--- /dev/null
+++ b/public/images/pokemon/variant/443.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "314252": "082963",
+ "5294ad": "1984c5",
+ "8cc5d6": "42a5f7",
+ "426b84": "085284",
+ "101010": "101921",
+ "42d6de": "42d6de",
+ "c5ced6": "c5ced6",
+ "3aadc5": "3aadc5",
+ "ffffff": "ffffff",
+ "5a6363": "5a6363",
+ "7b1910": "731029",
+ "ad3a10": "a57c10",
+ "de5a29": "e6c529",
+ "ce7373": "ce7373",
+ "5a1000": "524200"
+ },
+ "1": {
+ "314252": "400311",
+ "5294ad": "905647",
+ "8cc5d6": "e49f52",
+ "426b84": "522521",
+ "101010": "101921",
+ "42d6de": "54b0ff",
+ "c5ced6": "c5ced6",
+ "3aadc5": "2878e1",
+ "ffffff": "ffffff",
+ "5a6363": "5a6363",
+ "7b1910": "731029",
+ "ad3a10": "92a9b2",
+ "de5a29": "d9f0f1",
+ "ce7373": "ce7373",
+ "5a1000": "524200"
+ },
+ "2": {
+ "314252": "0e263c",
+ "5294ad": "4c5e66",
+ "8cc5d6": "8cb6bf",
+ "426b84": "223a4a",
+ "101010": "101921",
+ "42d6de": "6fe6a3",
+ "c5ced6": "c5ced6",
+ "3aadc5": "23b8a8",
+ "ffffff": "ffffff",
+ "5a6363": "5a6363",
+ "7b1910": "7b1a43",
+ "ad3a10": "be472f",
+ "de5a29": "dd845e",
+ "ce7373": "f17ec5",
+ "5a1000": "524200"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/444.json b/public/images/pokemon/variant/444.json
new file mode 100644
index 00000000000..e9a652ad8c2
--- /dev/null
+++ b/public/images/pokemon/variant/444.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "102952": "091f4e",
+ "3a4a8c": "1e4b77",
+ "5a6bbd": "307fb8",
+ "8c8cbd": "3aadc5",
+ "b5bdf7": "42d6de",
+ "738cce": "59aaed",
+ "101010": "101921",
+ "ffff19": "fa845a",
+ "de9c19": "e53d3f",
+ "5a1000": "502209",
+ "ad314a": "ad7b08",
+ "c5ced6": "c5ced6",
+ "ffffff": "ffffff",
+ "de5a29": "f7b834",
+ "737b84": "737b84"
+ },
+ "1": {
+ "102952": "3d0a17",
+ "3a4a8c": "6f3633",
+ "5a6bbd": "a96051",
+ "8c8cbd": "255dd7",
+ "b5bdf7": "4caaff",
+ "738cce": "e9a36b",
+ "101010": "101921",
+ "ffff19": "ffd177",
+ "de9c19": "d9900e",
+ "5a1000": "211e33",
+ "ad314a": "829ca6",
+ "c5ced6": "c5ced6",
+ "ffffff": "ffffff",
+ "de5a29": "c2dedf",
+ "737b84": "737b84"
+ },
+ "2": {
+ "102952": "092136",
+ "3a4a8c": "1a3140",
+ "5a6bbd": "3e5059",
+ "8c8cbd": "23b8a8",
+ "b5bdf7": "6fe6a3",
+ "738cce": "79a2ab",
+ "101010": "101921",
+ "ffff19": "62cbff",
+ "de9c19": "2c8bf7",
+ "5a1000": "521000",
+ "ad314a": "be472f",
+ "c5ced6": "c5ced6",
+ "ffffff": "ffffff",
+ "de5a29": "ee723e",
+ "737b84": "737b84"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/445-mega.json b/public/images/pokemon/variant/445-mega.json
new file mode 100644
index 00000000000..0e67f00ecd9
--- /dev/null
+++ b/public/images/pokemon/variant/445-mega.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "292952": "061638",
+ "5a62ac": "236696",
+ "41418b": "19446e",
+ "ffd518": "42d6de",
+ "c59410": "3aadc5",
+ "101010": "101010",
+ "7e2121": "502209",
+ "f5f5f5": "f5f5f5",
+ "bd3941": "9e5201",
+ "e64a31": "f7ac34",
+ "6a395a": "6a395a",
+ "bd737b": "bd737b",
+ "737b83": "737b83",
+ "c5cdd5": "c5cdd5"
+ },
+ "1": {
+ "292952": "632f1b",
+ "5a62ac": "deae7a",
+ "41418b": "b67252",
+ "ffd518": "4caaff",
+ "c59410": "255dd7",
+ "101010": "101010",
+ "7e2121": "393648",
+ "f5f5f5": "f5f5f5",
+ "bd3941": "9fb6bf",
+ "e64a31": "dce8e8",
+ "6a395a": "6a395a",
+ "bd737b": "bd737b",
+ "737b83": "737b83",
+ "c5cdd5": "c5cdd5"
+ },
+ "2": {
+ "292952": "051a2e",
+ "5a62ac": "2f434b",
+ "41418b": "152c3b",
+ "ffd518": "6fe6a3",
+ "c59410": "23b8a8",
+ "101010": "101010",
+ "7e2121": "521000",
+ "f5f5f5": "f5f5f5",
+ "bd3941": "b23219",
+ "e64a31": "ec642c",
+ "6a395a": "6a395a",
+ "bd737b": "bd737b",
+ "737b83": "737b83",
+ "c5cdd5": "c5cdd5"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/445.json b/public/images/pokemon/variant/445.json
new file mode 100644
index 00000000000..5e0b917b349
--- /dev/null
+++ b/public/images/pokemon/variant/445.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "42428c": "264074",
+ "7b7bce": "65a2d5",
+ "c59410": "3aadc5",
+ "292952": "0a1347",
+ "5a63ad": "226596",
+ "ffd619": "42d6de",
+ "737b84": "737b84",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "6b3a5a": "6b4a29",
+ "bd737b": "bd737b",
+ "e64a31": "f7ac34",
+ "5a1000": "502209",
+ "bd3a42": "b2630f"
+ },
+ "1": {
+ "42428c": "af6e55",
+ "7b7bce": "f2d8aa",
+ "c59410": "255dd7",
+ "292952": "3d0a17",
+ "5a63ad": "deae7a",
+ "ffd619": "4caaff",
+ "737b84": "737b84",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "6b3a5a": "6b4a29",
+ "bd737b": "bd737b",
+ "e64a31": "dce8e8",
+ "5a1000": "393648",
+ "bd3a42": "9fb6bf"
+ },
+ "2": {
+ "42428c": "152c3b",
+ "7b7bce": "689099",
+ "c59410": "23b8a8",
+ "292952": "051a2e",
+ "5a63ad": "2f434b",
+ "ffd619": "6fe6a3",
+ "737b84": "737b84",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "6b3a5a": "6b4a29",
+ "bd737b": "bd737b",
+ "e64a31": "ee723e",
+ "5a1000": "521000",
+ "bd3a42": "be472f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/46.json b/public/images/pokemon/variant/46.json
new file mode 100644
index 00000000000..d053c5e40b8
--- /dev/null
+++ b/public/images/pokemon/variant/46.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "bd4242": "9b7375",
+ "632929": "63484c",
+ "f76b6b": "d7b5b1",
+ "c5b521": "d9c9b9",
+ "ffd652": "f3e8dc",
+ "101010": "101010",
+ "734a19": "521e0a",
+ "3a2910": "311c07",
+ "e68429": "bc4b23",
+ "b56321": "85251b",
+ "ffad63": "cf6423",
+ "5a5a5a": "774718",
+ "fff7ff": "fff7ff",
+ "a5a5ce": "ddaf52",
+ "cecece": "f6dc7f"
+ },
+ "1": {
+ "bd4242": "b92532",
+ "632929": "760013",
+ "f76b6b": "e83557",
+ "c5b521": "e5d59c",
+ "ffd652": "fffedf",
+ "101010": "101010",
+ "734a19": "5a392d",
+ "3a2910": "3a2108",
+ "e68429": "d1afa3",
+ "b56321": "98655f",
+ "ffad63": "f3d8cb",
+ "5a5a5a": "312b68",
+ "fff7ff": "fff7ff",
+ "a5a5ce": "7070ea",
+ "cecece": "92a4f0"
+ },
+ "2": {
+ "bd4242": "4d3ae6",
+ "632929": "441fa9",
+ "f76b6b": "5668f8",
+ "c5b521": "b4c5d0",
+ "ffd652": "ddf1f8",
+ "101010": "101010",
+ "734a19": "3d2b4e",
+ "3a2910": "1e152d",
+ "e68429": "9779a6",
+ "b56321": "6a507b",
+ "ffad63": "bf9edd",
+ "5a5a5a": "760013",
+ "fff7ff": "fff7ff",
+ "a5a5ce": "e83557",
+ "cecece": "ff878d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/468.json b/public/images/pokemon/variant/468.json
new file mode 100644
index 00000000000..f29881dcb1b
--- /dev/null
+++ b/public/images/pokemon/variant/468.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "849cb5": "8b6467",
+ "733129": "0a454a",
+ "efefff": "eee0db",
+ "4a5a73": "593237",
+ "ce4a31": "1c7b7e",
+ "bdc5de": "ceacac",
+ "101010": "101010",
+ "4284ef": "d44779",
+ "94b5ff": "ff7986",
+ "bd8484": "28a6a5",
+ "525aad": "8d2f5c"
+ },
+ "1": {
+ "849cb5": "734350",
+ "733129": "ba711c",
+ "efefff": "f3cbcb",
+ "4a5a73": "452030",
+ "ce4a31": "f6bd58",
+ "bdc5de": "c2888c",
+ "101010": "101010",
+ "4284ef": "ef884d",
+ "94b5ff": "ffc490",
+ "bd8484": "ffdbaa",
+ "525aad": "cb5423"
+ },
+ "2": {
+ "849cb5": "477cb6",
+ "733129": "8b4021",
+ "efefff": "b3ddeb",
+ "4a5a73": "254985",
+ "ce4a31": "d97741",
+ "bdc5de": "81aaca",
+ "101010": "101010",
+ "4284ef": "db79db",
+ "94b5ff": "e89fe5",
+ "bd8484": "e48d41",
+ "525aad": "be52c9"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/47.json b/public/images/pokemon/variant/47.json
new file mode 100644
index 00000000000..4d953e02dcf
--- /dev/null
+++ b/public/images/pokemon/variant/47.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "bd3142": "9b7375",
+ "ff6b6b": "f3e1dc",
+ "ef3131": "d7b5b1",
+ "7b0808": "63484c",
+ "ffd652": "f3e8dc",
+ "ff8452": "e0843d",
+ "d6ce31": "d9c9b9",
+ "b5423a": "85251b",
+ "631000": "521e0a",
+ "de6b31": "bc4b23",
+ "101010": "101010",
+ "9c8ca5": "774718",
+ "fff7ff": "f6dc7f",
+ "d6d6d6": "ddaf52"
+ },
+ "1": {
+ "bd3142": "b92532",
+ "ff6b6b": "ff878d",
+ "ef3131": "e83557",
+ "7b0808": "760013",
+ "ffd652": "fffedf",
+ "ff8452": "f3d8cb",
+ "d6ce31": "b8a374",
+ "b5423a": "98655f",
+ "631000": "5a392d",
+ "de6b31": "d1afa3",
+ "101010": "101010",
+ "9c8ca5": "312b68",
+ "fff7ff": "92a4f0",
+ "d6d6d6": "7070ea"
+ },
+ "2": {
+ "bd3142": "4735d8",
+ "ff6b6b": "82b5ff",
+ "ef3131": "5566f2",
+ "7b0808": "361297",
+ "ffd652": "ddf1f8",
+ "ff8452": "bf9edd",
+ "d6ce31": "8b9eae",
+ "b5423a": "6a507b",
+ "631000": "3d2b4e",
+ "de6b31": "9779a6",
+ "101010": "101010",
+ "9c8ca5": "aa1810",
+ "fff7ff": "ee5a3b",
+ "d6d6d6": "cb381f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/470.json b/public/images/pokemon/variant/470.json
new file mode 100644
index 00000000000..227c74bb524
--- /dev/null
+++ b/public/images/pokemon/variant/470.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "31635a": "076849",
+ "319c73": "17b579",
+ "101010": "101010",
+ "6bbd8c": "6aec9e",
+ "635242": "736151",
+ "5a4221": "1c59a6",
+ "efd69c": "f7ecd1",
+ "bd9463": "c5a87a",
+ "946331": "1c85a7",
+ "3a2919": "0b1747",
+ "efffff": "efffff",
+ "846b42": "846b42",
+ "d6b573": "e8d09f",
+ "423a42": "423a42"
+ },
+ "1": {
+ "31635a": "024335",
+ "319c73": "67a27a",
+ "101010": "101010",
+ "6bbd8c": "a9d9ab",
+ "635242": "736151",
+ "5a4221": "541741",
+ "efd69c": "d8a682",
+ "bd9463": "975e45",
+ "946331": "7a2c56",
+ "3a2919": "0a2c33",
+ "efffff": "efffff",
+ "846b42": "824734",
+ "d6b573": "b78160",
+ "423a42": "4b2629"
+ },
+ "2": {
+ "31635a": "9f5d29",
+ "319c73": "d8a452",
+ "101010": "101010",
+ "6bbd8c": "edd898",
+ "635242": "4e230e",
+ "5a4221": "803825",
+ "efd69c": "b39671",
+ "bd9463": "6d4f33",
+ "946331": "a95c3e",
+ "3a2919": "552c12",
+ "efffff": "efffff",
+ "846b42": "4a391e",
+ "d6b573": "816242",
+ "423a42": "310f06"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/471.json b/public/images/pokemon/variant/471.json
new file mode 100644
index 00000000000..14cc5e429e8
--- /dev/null
+++ b/public/images/pokemon/variant/471.json
@@ -0,0 +1,15 @@
+{
+ "0": {
+ "101010": "101010",
+ "7b9cb5": "dad9ea",
+ "94e6ef": "f8f7ff",
+ "525a84": "636b94",
+ "52639c": "54bbd2",
+ "3a3a52": "1a6782",
+ "529cde": "a0e7f7",
+ "313a4a": "313a4a",
+ "425a6b": "3597ac",
+ "efffff": "efffff",
+ "94b5ce": "e6e3f3"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/471_2.json b/public/images/pokemon/variant/471_2.json
new file mode 100644
index 00000000000..93a4f2b290b
--- /dev/null
+++ b/public/images/pokemon/variant/471_2.json
@@ -0,0 +1,3632 @@
+{
+ "textures": [
+ {
+ "image": "471_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 347,
+ "h": 347
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0169.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 74,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 74,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0170.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 74,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 74,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 53,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 53,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 53,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 53,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0167.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 74,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0168.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 74,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0171.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 106,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0172.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 106,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 147,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 147,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 147,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 147,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0165.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 159,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0166.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 159,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0145.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0146.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0151.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0152.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 219,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 219,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 219,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 219,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 212,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 212,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 212,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 212,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 217,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 217,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 217,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 217,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 265,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 265,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 265,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 265,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0143.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0144.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0153.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0154.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0147.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0148.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0149.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0150.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 71,
+ "y": 260,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 71,
+ "y": 260,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 71,
+ "y": 260,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 71,
+ "y": 260,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0161.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 142,
+ "y": 209,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0162.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 142,
+ "y": 209,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0163.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 212,
+ "y": 211,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0164.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 212,
+ "y": 211,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0155.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 68,
+ "h": 53
+ },
+ "frame": {
+ "x": 210,
+ "y": 264,
+ "w": 68,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0156.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 68,
+ "h": 53
+ },
+ "frame": {
+ "x": 210,
+ "y": 264,
+ "w": 68,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0157.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 66,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 211,
+ "w": 66,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0158.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 66,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 211,
+ "w": 66,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0159.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 68,
+ "h": 53
+ },
+ "frame": {
+ "x": 278,
+ "y": 264,
+ "w": 68,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0160.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 68,
+ "h": 53
+ },
+ "frame": {
+ "x": 278,
+ "y": 264,
+ "w": 68,
+ "h": 53
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:6c7e4d20fd9a0d2ed518a64a06bdd102:82f34ffc1857ad90385c6ca648acb9c3:a2b2f0b075d38a7b536d5de09bb66194$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/471_2.png b/public/images/pokemon/variant/471_2.png
new file mode 100644
index 00000000000..62be05287c6
Binary files /dev/null and b/public/images/pokemon/variant/471_2.png differ
diff --git a/public/images/pokemon/variant/471_3.json b/public/images/pokemon/variant/471_3.json
new file mode 100644
index 00000000000..2af90060e31
--- /dev/null
+++ b/public/images/pokemon/variant/471_3.json
@@ -0,0 +1,3632 @@
+{
+ "textures": [
+ {
+ "image": "471_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 347,
+ "h": 347
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0169.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 74,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 74,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0170.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 74,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 74,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 53,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 53,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 53,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 53,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0167.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 74,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0168.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 74,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0171.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 106,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0172.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 73,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 106,
+ "w": 73,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 73,
+ "h": 52
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 73,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 147,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 147,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 147,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 147,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0165.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 159,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0166.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 72,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 159,
+ "w": 72,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0145.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0146.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 73,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 105,
+ "w": 73,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0151.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0152.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 146,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 219,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 219,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 219,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 219,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 212,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 212,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 212,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 212,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 217,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 217,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 217,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 217,
+ "y": 53,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 265,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 265,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 265,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 71,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 265,
+ "w": 71,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0143.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0144.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 146,
+ "y": 106,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0153.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0154.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 218,
+ "y": 106,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0147.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0148.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 72,
+ "h": 51
+ },
+ "frame": {
+ "x": 73,
+ "y": 156,
+ "w": 72,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 145,
+ "y": 157,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0149.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0150.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 71,
+ "h": 52
+ },
+ "frame": {
+ "x": 216,
+ "y": 159,
+ "w": 71,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 72,
+ "y": 207,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 71,
+ "y": 260,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 71,
+ "y": 260,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 71,
+ "y": 260,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 71,
+ "y": 260,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0161.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 142,
+ "y": 209,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0162.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 70,
+ "h": 53
+ },
+ "frame": {
+ "x": 142,
+ "y": 209,
+ "w": 70,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 141,
+ "y": 262,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0163.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 212,
+ "y": 211,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0164.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 69,
+ "h": 53
+ },
+ "frame": {
+ "x": 212,
+ "y": 211,
+ "w": 69,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0155.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 68,
+ "h": 53
+ },
+ "frame": {
+ "x": 210,
+ "y": 264,
+ "w": 68,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0156.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 68,
+ "h": 53
+ },
+ "frame": {
+ "x": 210,
+ "y": 264,
+ "w": 68,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0157.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 66,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 211,
+ "w": 66,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0158.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 66,
+ "h": 53
+ },
+ "frame": {
+ "x": 281,
+ "y": 211,
+ "w": 66,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0159.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 68,
+ "h": 53
+ },
+ "frame": {
+ "x": 278,
+ "y": 264,
+ "w": 68,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0160.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 68,
+ "h": 53
+ },
+ "frame": {
+ "x": 278,
+ "y": 264,
+ "w": 68,
+ "h": 53
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:6c7e4d20fd9a0d2ed518a64a06bdd102:82f34ffc1857ad90385c6ca648acb9c3:a2b2f0b075d38a7b536d5de09bb66194$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/471_3.png b/public/images/pokemon/variant/471_3.png
new file mode 100644
index 00000000000..0d2f5e2cfee
Binary files /dev/null and b/public/images/pokemon/variant/471_3.png differ
diff --git a/public/images/pokemon/variant/488.json b/public/images/pokemon/variant/488.json
new file mode 100644
index 00000000000..53e8b23da16
--- /dev/null
+++ b/public/images/pokemon/variant/488.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "6b5231": "5a3c2a",
+ "101010": "101010",
+ "ffefbd": "fdf0d6",
+ "ad945a": "bc977d",
+ "ffd673": "ddbfa4",
+ "c55a9c": "b33c12",
+ "d68cce": "dd8d2e",
+ "8c427b": "721e01",
+ "523a5a": "420600",
+ "ffffff": "ffffff",
+ "e6c5ef": "ffd28c",
+ "8494f7": "4863b6",
+ "526bb5": "304190",
+ "3a427b": "181d46",
+ "c5b5b5": "c5b5b5"
+ },
+ "2": {
+ "6b5231": "67858a",
+ "101010": "202025",
+ "ffefbd": "e0eceb",
+ "ad945a": "95a8aa",
+ "ffd673": "bacaca",
+ "c55a9c": "2cba5e",
+ "d68cce": "7fe14b",
+ "8c427b": "168557",
+ "523a5a": "084c38",
+ "ffffff": "ffffff",
+ "e6c5ef": "e0ff8c",
+ "8494f7": "4a4f5f",
+ "526bb5": "1f2435",
+ "3a427b": "111828",
+ "c5b5b5": "a6b6b6"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/489.json b/public/images/pokemon/variant/489.json
new file mode 100644
index 00000000000..f7e55dad2a7
--- /dev/null
+++ b/public/images/pokemon/variant/489.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "317bad": "399271",
+ "101010": "101010",
+ "3a529c": "185b4f",
+ "9ce6ff": "c3ffcd",
+ "6bc5f7": "9bf3b7",
+ "199cd6": "69c796",
+ "ceefff": "e3ffe3",
+ "196bde": "326260",
+ "ffffff": "ffffff",
+ "948c9c": "948c9c",
+ "4a526b": "4a526b",
+ "ad3a29": "c37a31",
+ "de849c": "ffcb68",
+ "e64210": "d19449"
+ },
+ "1": {
+ "317bad": "964d17",
+ "101010": "101010",
+ "3a529c": "682307",
+ "9ce6ff": "ffd289",
+ "6bc5f7": "f5a54e",
+ "199cd6": "c27138",
+ "ceefff": "ceefff",
+ "196bde": "23395b",
+ "ffffff": "ffffff",
+ "948c9c": "948c9c",
+ "4a526b": "4a526b",
+ "ad3a29": "3c68ad",
+ "de849c": "b9e6ff",
+ "e64210": "4d9ac4"
+ },
+ "2": {
+ "317bad": "a43b74",
+ "101010": "101010",
+ "3a529c": "84255f",
+ "9ce6ff": "efa0b2",
+ "6bc5f7": "e484a8",
+ "199cd6": "c65086",
+ "ceefff": "ceefff",
+ "196bde": "45135e",
+ "ffffff": "ffffff",
+ "948c9c": "948c9c",
+ "4a526b": "4a526b",
+ "ad3a29": "652386",
+ "de849c": "a884ff",
+ "e64210": "893ac2"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/490.json b/public/images/pokemon/variant/490.json
new file mode 100644
index 00000000000..2b0ca7f8c23
--- /dev/null
+++ b/public/images/pokemon/variant/490.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "317bad": "399271",
+ "199cd6": "69c796",
+ "101010": "101010",
+ "6bc5f7": "9bf3b7",
+ "294a84": "185b4f",
+ "9ce6ff": "cdffd7",
+ "ceefff": "eaffeb",
+ "ffde52": "215957",
+ "e6ad52": "143c3e",
+ "ffffff": "ffffff",
+ "ad3a29": "c37a31",
+ "de849c": "ffcb68",
+ "e64210": "d19449"
+ },
+ "1": {
+ "317bad": "964d17",
+ "199cd6": "c27138",
+ "101010": "101010",
+ "6bc5f7": "f5a54e",
+ "294a84": "682307",
+ "9ce6ff": "ffd289",
+ "ceefff": "ffeecc",
+ "ffde52": "38577c",
+ "e6ad52": "23395b",
+ "ffffff": "ffffff",
+ "ad3a29": "3c68ad",
+ "de849c": "b9e6ff",
+ "e64210": "4d9ac4"
+ },
+ "2": {
+ "317bad": "b8488c",
+ "199cd6": "cc659c",
+ "101010": "101010",
+ "6bc5f7": "de89b3",
+ "294a84": "912b6e",
+ "9ce6ff": "e7a6c3",
+ "ceefff": "ceefff",
+ "ffde52": "692a88",
+ "e6ad52": "45135e",
+ "ffffff": "ffffff",
+ "ad3a29": "652386",
+ "de849c": "a884ff",
+ "e64210": "893ac2"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/492-land.json b/public/images/pokemon/variant/492-land.json
new file mode 100644
index 00000000000..32deb188493
--- /dev/null
+++ b/public/images/pokemon/variant/492-land.json
@@ -0,0 +1,19 @@
+{
+ "2": {
+ "8cad63": "aa671e",
+ "5a7342": "743510",
+ "adde63": "f0a852",
+ "ffef7b": "ffef7b",
+ "844a6b": "326a9a",
+ "ef8ca5": "81bdd3",
+ "635a6b": "a7604e",
+ "bdc5d6": "e0bba1",
+ "ffffff": "fff4ea",
+ "101010": "101010",
+ "3a9442": "9f422a",
+ "ce6b8c": "67a9c6",
+ "31633a": "521605",
+ "8c8cad": "c78c76",
+ "294229": "7f330f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/492-land_2.json b/public/images/pokemon/variant/492-land_2.json
new file mode 100644
index 00000000000..4a595332da0
--- /dev/null
+++ b/public/images/pokemon/variant/492-land_2.json
@@ -0,0 +1,3002 @@
+{
+ "textures": [
+ {
+ "image": "492-land_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 180,
+ "h": 180
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 36,
+ "h": 34
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 36,
+ "h": 34
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 36,
+ "h": 34
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 36,
+ "h": 34
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 36,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 34,
+ "w": 36,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 36,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 34,
+ "w": 36,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 36,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 34,
+ "w": 36,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 36,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 34,
+ "w": 36,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 36,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 34,
+ "w": 36,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 36,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 34,
+ "w": 36,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 36,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 34,
+ "w": 36,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 36,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 34,
+ "w": 36,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 36,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 34,
+ "w": 36,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 36,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 34,
+ "w": 36,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 35,
+ "h": 34
+ },
+ "frame": {
+ "x": 36,
+ "y": 0,
+ "w": 35,
+ "h": 34
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 35,
+ "h": 34
+ },
+ "frame": {
+ "x": 36,
+ "y": 0,
+ "w": 35,
+ "h": 34
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 35,
+ "h": 34
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 35,
+ "h": 34
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 35,
+ "h": 34
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 35,
+ "h": 34
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 36,
+ "y": 34,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 0,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 144,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 144,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 144,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 144,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 144,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 144,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 144,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 144,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 144,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 144,
+ "y": 0,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 101,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 101,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 101,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 101,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 101,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 101,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 101,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 101,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 101,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 101,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 35,
+ "y": 67,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 36,
+ "h": 32
+ },
+ "frame": {
+ "x": 35,
+ "y": 67,
+ "w": 36,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 71,
+ "y": 32,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 71,
+ "y": 32,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 134,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 35,
+ "h": 33
+ },
+ "frame": {
+ "x": 0,
+ "y": 134,
+ "w": 35,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 34,
+ "h": 34
+ },
+ "frame": {
+ "x": 35,
+ "y": 99,
+ "w": 34,
+ "h": 34
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 34,
+ "h": 34
+ },
+ "frame": {
+ "x": 35,
+ "y": 99,
+ "w": 34,
+ "h": 34
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 35,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 65,
+ "w": 35,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 35,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 65,
+ "w": 35,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 35,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 65,
+ "w": 35,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 35,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 65,
+ "w": 35,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 35,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 65,
+ "w": 35,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 35,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 65,
+ "w": 35,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 35,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 65,
+ "w": 35,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 35,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 65,
+ "w": 35,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 35,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 65,
+ "w": 35,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 35,
+ "h": 32
+ },
+ "frame": {
+ "x": 71,
+ "y": 65,
+ "w": 35,
+ "h": 32
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 34,
+ "h": 33
+ },
+ "frame": {
+ "x": 35,
+ "y": 133,
+ "w": 34,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 34,
+ "h": 33
+ },
+ "frame": {
+ "x": 35,
+ "y": 133,
+ "w": 34,
+ "h": 33
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 31,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 31,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 31,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 31,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 31,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 31,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 31,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 31,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 31,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 107,
+ "y": 31,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 36,
+ "h": 31
+ },
+ "frame": {
+ "x": 144,
+ "y": 32,
+ "w": 36,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 36,
+ "h": 31
+ },
+ "frame": {
+ "x": 144,
+ "y": 32,
+ "w": 36,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 106,
+ "y": 62,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 37,
+ "h": 31
+ },
+ "frame": {
+ "x": 106,
+ "y": 62,
+ "w": 37,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 37,
+ "h": 30
+ },
+ "frame": {
+ "x": 143,
+ "y": 63,
+ "w": 37,
+ "h": 30
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 37,
+ "h": 30
+ },
+ "frame": {
+ "x": 143,
+ "y": 63,
+ "w": 37,
+ "h": 30
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 37,
+ "h": 29
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 37,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 37,
+ "h": 29
+ },
+ "frame": {
+ "x": 106,
+ "y": 93,
+ "w": 37,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 37,
+ "h": 30
+ },
+ "frame": {
+ "x": 143,
+ "y": 93,
+ "w": 37,
+ "h": 30
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 37,
+ "h": 30
+ },
+ "frame": {
+ "x": 143,
+ "y": 93,
+ "w": 37,
+ "h": 30
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 36,
+ "h": 31
+ },
+ "frame": {
+ "x": 69,
+ "y": 99,
+ "w": 36,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 36,
+ "h": 31
+ },
+ "frame": {
+ "x": 69,
+ "y": 99,
+ "w": 36,
+ "h": 31
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 36,
+ "h": 30
+ },
+ "frame": {
+ "x": 69,
+ "y": 130,
+ "w": 36,
+ "h": 30
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 36,
+ "h": 30
+ },
+ "frame": {
+ "x": 69,
+ "y": 130,
+ "w": 36,
+ "h": 30
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 36,
+ "h": 30
+ },
+ "frame": {
+ "x": 105,
+ "y": 122,
+ "w": 36,
+ "h": 30
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 36,
+ "h": 30
+ },
+ "frame": {
+ "x": 105,
+ "y": 122,
+ "w": 36,
+ "h": 30
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 36,
+ "h": 29
+ },
+ "frame": {
+ "x": 141,
+ "y": 123,
+ "w": 36,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 36,
+ "h": 29
+ },
+ "frame": {
+ "x": 141,
+ "y": 123,
+ "w": 36,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 36,
+ "h": 29
+ },
+ "frame": {
+ "x": 141,
+ "y": 123,
+ "w": 36,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 36,
+ "h": 29
+ },
+ "frame": {
+ "x": 141,
+ "y": 123,
+ "w": 36,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 36,
+ "h": 29
+ },
+ "frame": {
+ "x": 141,
+ "y": 123,
+ "w": 36,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 36,
+ "h": 29
+ },
+ "frame": {
+ "x": 141,
+ "y": 123,
+ "w": 36,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 36,
+ "h": 29
+ },
+ "frame": {
+ "x": 141,
+ "y": 123,
+ "w": 36,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 36,
+ "h": 29
+ },
+ "frame": {
+ "x": 141,
+ "y": 123,
+ "w": 36,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 36,
+ "h": 29
+ },
+ "frame": {
+ "x": 141,
+ "y": 123,
+ "w": 36,
+ "h": 29
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 37,
+ "h": 35
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 36,
+ "h": 29
+ },
+ "frame": {
+ "x": 141,
+ "y": 123,
+ "w": 36,
+ "h": 29
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:daf333ac31dc49b78056839f77202207:2fc92ab1dfc58976d4de525dbbd50c12:1f6db0a35fc2fdf30d03a931c1df4514$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/492-land_2.png b/public/images/pokemon/variant/492-land_2.png
new file mode 100644
index 00000000000..823678f5a05
Binary files /dev/null and b/public/images/pokemon/variant/492-land_2.png differ
diff --git a/public/images/pokemon/variant/492-sky.json b/public/images/pokemon/variant/492-sky.json
new file mode 100644
index 00000000000..5ca67b4871a
--- /dev/null
+++ b/public/images/pokemon/variant/492-sky.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "7bad21": "24493e",
+ "9494ad": "b18355",
+ "9cd621": "416556",
+ "3a6b10": "0f312b",
+ "52525a": "78492a",
+ "ffffff": "fffae9",
+ "ceced6": "e0cea9",
+ "101010": "101010",
+ "bd4a5a": "ce4626",
+ "7b3a52": "8f210d",
+ "f74a42": "ee7b56"
+ },
+ "2": {
+ "7bad21": "ad5a1b",
+ "9494ad": "a7604e",
+ "9cd621": "f09d52",
+ "3a6b10": "974a15",
+ "52525a": "7a3126",
+ "ffffff": "fff4ea",
+ "ceced6": "e0bba1",
+ "101010": "101010",
+ "bd4a5a": "7e399c",
+ "7b3a52": "531f72",
+ "f74a42": "b96bd2"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/494.json b/public/images/pokemon/variant/494.json
new file mode 100644
index 00000000000..78e5a04a275
--- /dev/null
+++ b/public/images/pokemon/variant/494.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "8c3110": "563a0a",
+ "ff6b19": "fff1ce",
+ "bd4a00": "706040",
+ "000000": "000000",
+ "c59c5a": "d96030",
+ "ffe6ad": "ee8e3e",
+ "6b4a10": "902300",
+ "3a3a3a": "3a3a3a",
+ "846b3a": "c43d21",
+ "3a5aad": "084f4c",
+ "ffffff": "ffffff",
+ "c5bdbd": "c5bdbd",
+ "73adff": "34a696",
+ "a55a5a": "a55a5a",
+ "c57373": "c57373"
+ },
+ "2": {
+ "8c3110": "813a61",
+ "ff6b19": "ffb7e0",
+ "bd4a00": "b9648d",
+ "000000": "000000",
+ "c59c5a": "45465d",
+ "ffe6ad": "72758a",
+ "6b4a10": "1e1b36",
+ "3a3a3a": "120d26",
+ "846b3a": "2b2a40",
+ "3a5aad": "710643",
+ "ffffff": "ffffff",
+ "c5bdbd": "c5bdbd",
+ "73adff": "cd5fa5",
+ "a55a5a": "a55a5a",
+ "c57373": "c57373"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/52-gigantamax.json b/public/images/pokemon/variant/52-gigantamax.json
new file mode 100644
index 00000000000..2910872ad30
--- /dev/null
+++ b/public/images/pokemon/variant/52-gigantamax.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "c89f8c": "816f5c",
+ "7f5745": "5b4a3b",
+ "fbf7e6": "ece3c7",
+ "f0dea2": "c7b497",
+ "101010": "101010",
+ "986100": "986100",
+ "d46140": "ac68b5",
+ "f9d400": "f9d400",
+ "f6f6f6": "f6f6f6",
+ "cca700": "cca700",
+ "fced87": "ffd156",
+ "944100": "751e7c",
+ "c5810b": "b146ac",
+ "ea9f38": "cb5fbd"
+ },
+ "1": {
+ "c89f8c": "915d2f",
+ "7f5745": "552e15",
+ "fbf7e6": "e5bc79",
+ "f0dea2": "c08647",
+ "101010": "101010",
+ "986100": "683700",
+ "d46140": "dd4c2a",
+ "f9d400": "ffbf3f",
+ "f6f6f6": "f6f6f6",
+ "cca700": "a96c00",
+ "fced87": "55d0eb",
+ "944100": "2948ad",
+ "c5810b": "52add6",
+ "ea9f38": "7bf7f7"
+ },
+ "2": {
+ "c89f8c": "322d28",
+ "7f5745": "2a221c",
+ "fbf7e6": "807d77",
+ "f0dea2": "524f4a",
+ "101010": "101010",
+ "986100": "986f00",
+ "d46140": "ffd0c5",
+ "f9d400": "f9e600",
+ "f6f6f6": "f6f6f6",
+ "cca700": "efc300",
+ "fced87": "77e84e",
+ "944100": "256a24",
+ "c5810b": "5dc352",
+ "ea9f38": "aeec97"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/52.json b/public/images/pokemon/variant/52.json
new file mode 100644
index 00000000000..622f878120b
--- /dev/null
+++ b/public/images/pokemon/variant/52.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "8c6b00": "5b4a3b",
+ "ffe684": "c7b497",
+ "101010": "101010",
+ "cea500": "cea500",
+ "ffd600": "ffd600",
+ "ffffff": "ffffff",
+ "d65a3a": "af4dbc",
+ "ff7352": "e177de",
+ "945a00": "945a00",
+ "debd3a": "816f5c",
+ "ffffb5": "ece3c7",
+ "e6e6e6": "e6e6e6",
+ "944200": "86358c",
+ "ef9c31": "d577c9",
+ "c57b08": "be5fba"
+ },
+ "1": {
+ "8c6b00": "552e15",
+ "ffe684": "c08647",
+ "101010": "101010",
+ "cea500": "a96c00",
+ "ffd600": "ffbf3f",
+ "ffffff": "ffffff",
+ "d65a3a": "b62315",
+ "ff7352": "dd4c2a",
+ "945a00": "945a00",
+ "debd3a": "915d2f",
+ "ffffb5": "e5bc79",
+ "e6e6e6": "e6e6e6",
+ "944200": "2948ad",
+ "ef9c31": "7bf7f7",
+ "c57b08": "52add6"
+ },
+ "2": {
+ "8c6b00": "241d18",
+ "ffe684": "524f4a",
+ "101010": "101010",
+ "cea500": "d2ac00",
+ "ffd600": "f9e600",
+ "ffffff": "ffffff",
+ "d65a3a": "d06e6b",
+ "ff7352": "fab2a1",
+ "945a00": "986f00",
+ "debd3a": "322d28",
+ "ffffb5": "807d77",
+ "e6e6e6": "e6e6e6",
+ "944200": "3c693b",
+ "ef9c31": "c1e8b2",
+ "c57b08": "88c082"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/53.json b/public/images/pokemon/variant/53.json
new file mode 100644
index 00000000000..af32e750d29
--- /dev/null
+++ b/public/images/pokemon/variant/53.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "101010": "101010",
+ "947b21": "af4dbc",
+ "bda54a": "e177de",
+ "845200": "5b4a3b",
+ "deb56b": "c7b497",
+ "ffe684": "ece3c7",
+ "735a10": "de6363",
+ "b58429": "816f5c",
+ "f75242": "e9bb00",
+ "ffffff": "ffffff",
+ "ffbd9c": "ffbd9c",
+ "a51000": "b56e00",
+ "dedede": "dedede"
+ },
+ "1": {
+ "101010": "101010",
+ "947b21": "b62315",
+ "bda54a": "dd4c2a",
+ "845200": "552e15",
+ "deb56b": "8d6038",
+ "ffe684": "c39564",
+ "735a10": "de6363",
+ "b58429": "431a0e",
+ "f75242": "52add6",
+ "ffffff": "ffffff",
+ "ffbd9c": "dd4c2a",
+ "a51000": "2948ad",
+ "dedede": "dedede"
+ },
+ "2": {
+ "101010": "101010",
+ "947b21": "d06e6b",
+ "bda54a": "fab2a1",
+ "845200": "241d18",
+ "deb56b": "322d28",
+ "ffe684": "524f4a",
+ "735a10": "de6363",
+ "b58429": "28221e",
+ "f75242": "5ed835",
+ "ffffff": "ffffff",
+ "ffbd9c": "ffbd9c",
+ "a51000": "3ba624",
+ "dedede": "dedede"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/538.json b/public/images/pokemon/variant/538.json
new file mode 100644
index 00000000000..e175460625d
--- /dev/null
+++ b/public/images/pokemon/variant/538.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "631919": "2a6045",
+ "de5a5a": "5fb55f",
+ "101010": "101010",
+ "ad3131": "348350",
+ "3a3a3a": "70543d",
+ "efe6d6": "d7b06a",
+ "292921": "3e2514",
+ "948c84": "8b6036",
+ "c5bdad": "a97745",
+ "f7f7f7": "f7f7f7"
+ },
+ "2": {
+ "631919": "194a63",
+ "de5a5a": "528cef",
+ "101010": "101010",
+ "ad3131": "195a9c",
+ "3a3a3a": "6c2020",
+ "efe6d6": "d14e4e",
+ "292921": "360b0b",
+ "948c84": "9d2e2e",
+ "c5bdad": "892424",
+ "f7f7f7": "f7f7f7"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/546.json b/public/images/pokemon/variant/546.json
new file mode 100644
index 00000000000..d4216c57f1e
--- /dev/null
+++ b/public/images/pokemon/variant/546.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "a5ad84": "bf7d61",
+ "dee6c5": "e4b397",
+ "7b846b": "914e3a",
+ "4a5a52": "663023",
+ "101010": "101010",
+ "ffffff": "e1cac5",
+ "ceced6": "d2a19a",
+ "427b42": "9d62bc",
+ "194a19": "4c2f6e",
+ "52a54a": "c690da",
+ "ad6b10": "137b7f",
+ "e68400": "35cac9"
+ },
+ "2": {
+ "a5ad84": "793c35",
+ "dee6c5": "bf7c6a",
+ "7b846b": "662c26",
+ "4a5a52": "521819",
+ "101010": "101010",
+ "ffffff": "f7dbd1",
+ "ceced6": "d89185",
+ "427b42": "559c7a",
+ "194a19": "2e6450",
+ "52a54a": "70be90",
+ "ad6b10": "c26e00",
+ "e68400": "ffb61b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/547.json b/public/images/pokemon/variant/547.json
new file mode 100644
index 00000000000..15e08aa18a7
--- /dev/null
+++ b/public/images/pokemon/variant/547.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "ad945a": "914e3a",
+ "6b5a42": "663023",
+ "e6dece": "dda585",
+ "c5b58c": "b77153",
+ "101010": "101010",
+ "194a19": "512143",
+ "427b42": "924a75",
+ "52a54a": "c27199",
+ "946b42": "834a43",
+ "523a29": "56191d",
+ "ad6b10": "127498",
+ "735242": "693535",
+ "ffffff": "ffffff",
+ "e68400": "28adc7",
+ "ad4a63": "ad4a63"
+ },
+ "2": {
+ "ad945a": "4b1918",
+ "6b5a42": "360e10",
+ "e6dece": "a86250",
+ "c5b58c": "70322b",
+ "101010": "101010",
+ "194a19": "a13618",
+ "427b42": "ec7441",
+ "52a54a": "ffa97c",
+ "946b42": "fdca95",
+ "523a29": "523a29",
+ "ad6b10": "c95d1a",
+ "735242": "e79e64",
+ "ffffff": "ffffff",
+ "e68400": "ffa34c",
+ "ad4a63": "ad4a63"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/548.json b/public/images/pokemon/variant/548.json
new file mode 100644
index 00000000000..ac7c564eeae
--- /dev/null
+++ b/public/images/pokemon/variant/548.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "315a31": "31425a",
+ "3aad3a": "76bfc7",
+ "3a844a": "307489",
+ "101010": "101010",
+ "9cbd4a": "adb563",
+ "637b31": "636329",
+ "c5ef7b": "d6ef7b",
+ "cecebd": "cecebd",
+ "ffffff": "ffffff",
+ "bd8c94": "bd8c94",
+ "7b313a": "7b313a"
+ },
+ "1": {
+ "315a31": "8c1d34",
+ "3aad3a": "ef5e55",
+ "3a844a": "bd2d40",
+ "101010": "101010",
+ "9cbd4a": "8e954d",
+ "637b31": "73733c",
+ "c5ef7b": "bfd17f",
+ "cecebd": "beb1a3",
+ "ffffff": "f6eaea",
+ "bd8c94": "bd8c94",
+ "7b313a": "7b313a"
+ },
+ "2": {
+ "315a31": "351c49",
+ "3aad3a": "8d57a4",
+ "3a844a": "663982",
+ "101010": "101010",
+ "9cbd4a": "b39436",
+ "637b31": "5c4510",
+ "c5ef7b": "ded26f",
+ "cecebd": "824c36",
+ "ffffff": "aa7550",
+ "bd8c94": "b4fff2",
+ "7b313a": "101010"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/549.json b/public/images/pokemon/variant/549.json
new file mode 100644
index 00000000000..8fb9272c5fa
--- /dev/null
+++ b/public/images/pokemon/variant/549.json
@@ -0,0 +1,19 @@
+{
+ "1": {
+ "101010": "101010",
+ "734221": "09445f",
+ "ff6b3a": "54c5eb",
+ "bd633a": "228ac5",
+ "bda552": "77909a",
+ "ffde42": "b6c7cc",
+ "ffb59c": "78e6f7",
+ "ffffff": "ffffff",
+ "315a31": "80152b",
+ "4a844a": "bd2d40",
+ "3aad3a": "ef5755",
+ "526329": "5a5a2c",
+ "c5ef7b": "bfd17f",
+ "9cb563": "8e954d",
+ "cec5bd": "cec5bd"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/549_3.json b/public/images/pokemon/variant/549_3.json
new file mode 100644
index 00000000000..adaf1df3c51
--- /dev/null
+++ b/public/images/pokemon/variant/549_3.json
@@ -0,0 +1,2750 @@
+{
+ "textures": [
+ {
+ "image": "549_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 364,
+ "h": 364
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 57,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 57,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 57,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 57,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 56,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 66,
+ "w": 56,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 56,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 66,
+ "w": 56,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 55,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 133,
+ "w": 55,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 55,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 133,
+ "w": 55,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 53,
+ "h": 70
+ },
+ "frame": {
+ "x": 0,
+ "y": 201,
+ "w": 53,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 53,
+ "h": 70
+ },
+ "frame": {
+ "x": 0,
+ "y": 201,
+ "w": 53,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 58,
+ "h": 64
+ },
+ "frame": {
+ "x": 57,
+ "y": 0,
+ "w": 58,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 58,
+ "h": 64
+ },
+ "frame": {
+ "x": 57,
+ "y": 0,
+ "w": 58,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 58,
+ "h": 64
+ },
+ "frame": {
+ "x": 115,
+ "y": 0,
+ "w": 58,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 6,
+ "w": 58,
+ "h": 64
+ },
+ "frame": {
+ "x": 115,
+ "y": 0,
+ "w": 58,
+ "h": 64
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 54,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 271,
+ "w": 54,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 54,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 271,
+ "w": 54,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 58,
+ "h": 62
+ },
+ "frame": {
+ "x": 173,
+ "y": 0,
+ "w": 58,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 58,
+ "h": 62
+ },
+ "frame": {
+ "x": 173,
+ "y": 0,
+ "w": 58,
+ "h": 62
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 55,
+ "h": 68
+ },
+ "frame": {
+ "x": 231,
+ "y": 0,
+ "w": 55,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 55,
+ "h": 68
+ },
+ "frame": {
+ "x": 231,
+ "y": 0,
+ "w": 55,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 55,
+ "h": 68
+ },
+ "frame": {
+ "x": 231,
+ "y": 0,
+ "w": 55,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 55,
+ "h": 68
+ },
+ "frame": {
+ "x": 231,
+ "y": 0,
+ "w": 55,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 286,
+ "y": 0,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 49,
+ "h": 70
+ },
+ "frame": {
+ "x": 53,
+ "y": 201,
+ "w": 49,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 49,
+ "h": 70
+ },
+ "frame": {
+ "x": 53,
+ "y": 201,
+ "w": 49,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 51,
+ "h": 69
+ },
+ "frame": {
+ "x": 54,
+ "y": 271,
+ "w": 51,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 51,
+ "h": 69
+ },
+ "frame": {
+ "x": 54,
+ "y": 271,
+ "w": 51,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 55,
+ "y": 133,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 55,
+ "y": 133,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 56,
+ "y": 66,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 56,
+ "y": 66,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 56,
+ "y": 66,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 109,
+ "y": 64,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 109,
+ "y": 64,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 49,
+ "h": 70
+ },
+ "frame": {
+ "x": 102,
+ "y": 201,
+ "w": 49,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 49,
+ "h": 70
+ },
+ "frame": {
+ "x": 102,
+ "y": 201,
+ "w": 49,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 51,
+ "h": 69
+ },
+ "frame": {
+ "x": 105,
+ "y": 271,
+ "w": 51,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 51,
+ "h": 69
+ },
+ "frame": {
+ "x": 105,
+ "y": 271,
+ "w": 51,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 108,
+ "y": 133,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 108,
+ "y": 133,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 108,
+ "y": 133,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 54,
+ "h": 68
+ },
+ "frame": {
+ "x": 108,
+ "y": 133,
+ "w": 54,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 151,
+ "y": 201,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 151,
+ "y": 201,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 151,
+ "y": 201,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 151,
+ "y": 201,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 156,
+ "y": 269,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 156,
+ "y": 269,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 156,
+ "y": 269,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 156,
+ "y": 269,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 163,
+ "y": 64,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 162,
+ "y": 132,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 162,
+ "y": 132,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 162,
+ "y": 132,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 5,
+ "w": 55,
+ "h": 65
+ },
+ "frame": {
+ "x": 216,
+ "y": 68,
+ "w": 55,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 5,
+ "w": 55,
+ "h": 65
+ },
+ "frame": {
+ "x": 216,
+ "y": 68,
+ "w": 55,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 5,
+ "w": 55,
+ "h": 65
+ },
+ "frame": {
+ "x": 216,
+ "y": 68,
+ "w": 55,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 5,
+ "w": 55,
+ "h": 65
+ },
+ "frame": {
+ "x": 216,
+ "y": 68,
+ "w": 55,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 5,
+ "w": 55,
+ "h": 65
+ },
+ "frame": {
+ "x": 216,
+ "y": 68,
+ "w": 55,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 5,
+ "w": 55,
+ "h": 65
+ },
+ "frame": {
+ "x": 216,
+ "y": 68,
+ "w": 55,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 215,
+ "y": 133,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 215,
+ "y": 133,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 215,
+ "y": 133,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 215,
+ "y": 133,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 215,
+ "y": 133,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 215,
+ "y": 133,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 271,
+ "y": 68,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 271,
+ "y": 68,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 271,
+ "y": 68,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 271,
+ "y": 68,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 271,
+ "y": 68,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 271,
+ "y": 68,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 268,
+ "y": 134,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 268,
+ "y": 134,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 268,
+ "y": 134,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 204,
+ "y": 201,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 204,
+ "y": 201,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 204,
+ "y": 201,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 52,
+ "h": 67
+ },
+ "frame": {
+ "x": 209,
+ "y": 268,
+ "w": 52,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 52,
+ "h": 67
+ },
+ "frame": {
+ "x": 209,
+ "y": 268,
+ "w": 52,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 52,
+ "h": 67
+ },
+ "frame": {
+ "x": 209,
+ "y": 268,
+ "w": 52,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 52,
+ "h": 67
+ },
+ "frame": {
+ "x": 209,
+ "y": 268,
+ "w": 52,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 52,
+ "h": 67
+ },
+ "frame": {
+ "x": 209,
+ "y": 268,
+ "w": 52,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 52,
+ "h": 67
+ },
+ "frame": {
+ "x": 209,
+ "y": 268,
+ "w": 52,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 257,
+ "y": 202,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 257,
+ "y": 202,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 257,
+ "y": 202,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 257,
+ "y": 202,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 257,
+ "y": 202,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 257,
+ "y": 202,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 311,
+ "y": 202,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 311,
+ "y": 202,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 311,
+ "y": 202,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 311,
+ "y": 202,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 311,
+ "y": 202,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 53,
+ "h": 67
+ },
+ "frame": {
+ "x": 311,
+ "y": 202,
+ "w": 53,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 52,
+ "h": 66
+ },
+ "frame": {
+ "x": 261,
+ "y": 269,
+ "w": 52,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 52,
+ "h": 66
+ },
+ "frame": {
+ "x": 261,
+ "y": 269,
+ "w": 52,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 52,
+ "h": 66
+ },
+ "frame": {
+ "x": 261,
+ "y": 269,
+ "w": 52,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 52,
+ "h": 66
+ },
+ "frame": {
+ "x": 261,
+ "y": 269,
+ "w": 52,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 52,
+ "h": 66
+ },
+ "frame": {
+ "x": 261,
+ "y": 269,
+ "w": 52,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 52,
+ "h": 66
+ },
+ "frame": {
+ "x": 261,
+ "y": 269,
+ "w": 52,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 51,
+ "h": 66
+ },
+ "frame": {
+ "x": 313,
+ "y": 269,
+ "w": 51,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 51,
+ "h": 66
+ },
+ "frame": {
+ "x": 313,
+ "y": 269,
+ "w": 51,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 51,
+ "h": 66
+ },
+ "frame": {
+ "x": 313,
+ "y": 269,
+ "w": 51,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 51,
+ "h": 66
+ },
+ "frame": {
+ "x": 313,
+ "y": 269,
+ "w": 51,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 51,
+ "h": 66
+ },
+ "frame": {
+ "x": 313,
+ "y": 269,
+ "w": 51,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 58,
+ "h": 70
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 51,
+ "h": 66
+ },
+ "frame": {
+ "x": 313,
+ "y": 269,
+ "w": 51,
+ "h": 66
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:ec00ca4a55dce5e8e175f50fc07a61b8:ac7954a8b8d4012b22b6858be67a3910:342c52cb859b7cfd423a30f5638b8474$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/549_3.png b/public/images/pokemon/variant/549_3.png
new file mode 100644
index 00000000000..b7f2244e373
Binary files /dev/null and b/public/images/pokemon/variant/549_3.png differ
diff --git a/public/images/pokemon/variant/559.json b/public/images/pokemon/variant/559.json
new file mode 100644
index 00000000000..d844e2314af
--- /dev/null
+++ b/public/images/pokemon/variant/559.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "b52931": "c855a9",
+ "732129": "64195b",
+ "7b6308": "66470e",
+ "e63a42": "e18abd",
+ "bd9c00": "896b14",
+ "ffce00": "d7c475",
+ "212121": "212121",
+ "424242": "424242",
+ "ffffff": "ffffff",
+ "63635a": "63635a",
+ "adada5": "adada5",
+ "7b7352": "5f533d",
+ "c5bd84": "c7bea5",
+ "fff7b5": "ecead9"
+ },
+ "1": {
+ "b52931": "4f4967",
+ "732129": "251c34",
+ "7b6308": "8b8352",
+ "e63a42": "82809f",
+ "bd9c00": "bdbc82",
+ "ffce00": "fffcdd",
+ "212121": "212121",
+ "424242": "424242",
+ "ffffff": "ffffff",
+ "63635a": "63635a",
+ "adada5": "adada5",
+ "7b7352": "7b7352",
+ "c5bd84": "c5bd84",
+ "fff7b5": "fff7b5"
+ },
+ "2": {
+ "b52931": "2d852b",
+ "732129": "17541a",
+ "7b6308": "6f9d3d",
+ "e63a42": "7cce68",
+ "bd9c00": "98c053",
+ "ffce00": "e5ff87",
+ "212121": "212121",
+ "424242": "424242",
+ "ffffff": "ffffff",
+ "63635a": "63635a",
+ "adada5": "adada5",
+ "7b7352": "7b7352",
+ "c5bd84": "c5bd84",
+ "fff7b5": "fff7b5"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/560.json b/public/images/pokemon/variant/560.json
new file mode 100644
index 00000000000..7c5a1841d70
--- /dev/null
+++ b/public/images/pokemon/variant/560.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "7b3a29": "5c392e",
+ "e66373": "e18abd",
+ "212121": "212121",
+ "de293a": "b1578c",
+ "c55a19": "aea489",
+ "f77b21": "d9d7bf",
+ "4a4a4a": "652f56",
+ "949494": "949494",
+ "ffffff": "ffffff",
+ "e6e6e6": "e6e6e6",
+ "bdbdbd": "bdbdbd",
+ "636363": "b8749c",
+ "6b5229": "66470e",
+ "f7ce10": "d7c475",
+ "b59419": "8f7939"
+ },
+ "1": {
+ "7b3a29": "251c34",
+ "e66373": "82809f",
+ "212121": "212121",
+ "de293a": "4f4967",
+ "c55a19": "988658",
+ "f77b21": "c3b889",
+ "4a4a4a": "4a4a4a",
+ "949494": "949494",
+ "ffffff": "ffffff",
+ "e6e6e6": "e6e6e6",
+ "bdbdbd": "bdbdbd",
+ "636363": "636363",
+ "6b5229": "8b8352",
+ "f7ce10": "fffcdd",
+ "b59419": "bdbc82"
+ },
+ "2": {
+ "7b3a29": "24360d",
+ "e66373": "8bb089",
+ "212121": "212121",
+ "de293a": "3f5d3e",
+ "c55a19": "c5bd84",
+ "f77b21": "fff7b5",
+ "4a4a4a": "1c342e",
+ "949494": "949494",
+ "ffffff": "ffffff",
+ "e6e6e6": "e6e6e6",
+ "bdbdbd": "bdbdbd",
+ "636363": "3b6253",
+ "6b5229": "627f2e",
+ "f7ce10": "d8f769",
+ "b59419": "a8c458"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/570.json b/public/images/pokemon/variant/570.json
new file mode 100644
index 00000000000..5c9acf9b3fc
--- /dev/null
+++ b/public/images/pokemon/variant/570.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "6b213a": "4f025a",
+ "ad1042": "c359e6",
+ "5a5a73": "475378",
+ "212131": "1b1b47",
+ "101010": "101010",
+ "424252": "2f375a",
+ "19b5b5": "19b5b5",
+ "318484": "318484",
+ "ffffff": "ffffff",
+ "313142": "283766"
+ },
+ "2": {
+ "6b213a": "006867",
+ "ad1042": "01d5bb",
+ "5a5a73": "a1a1c0",
+ "212131": "163956",
+ "101010": "101010",
+ "424252": "746a98",
+ "19b5b5": "e879d6",
+ "318484": "bd3eb8",
+ "ffffff": "ffffff",
+ "313142": "60808f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/571.json b/public/images/pokemon/variant/571.json
new file mode 100644
index 00000000000..d69b017886b
--- /dev/null
+++ b/public/images/pokemon/variant/571.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "101010": "101010",
+ "293142": "283766",
+ "212131": "0a133f",
+ "7b2942": "8e2270",
+ "4a1029": "540548",
+ "ad1042": "cc2f94",
+ "7b7b84": "7b7b84",
+ "63636b": "4e4664",
+ "4a4a52": "2d2b43",
+ "cecece": "cecece",
+ "318484": "00766a",
+ "19b5b5": "0ab5b3",
+ "ce4a5a": "ce4a5a"
+ },
+ "2": {
+ "101010": "101010",
+ "293142": "283766",
+ "212131": "121b47",
+ "7b2942": "125091",
+ "4a1029": "061a3e",
+ "ad1042": "2f8cdb",
+ "7b7b84": "b2afd5",
+ "63636b": "938aae",
+ "4a4a52": "5e5277",
+ "cecece": "e6e6e6",
+ "318484": "7e248c",
+ "19b5b5": "9c58ca",
+ "ce4a5a": "24558c"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/572.json b/public/images/pokemon/variant/572.json
new file mode 100644
index 00000000000..87200b60097
--- /dev/null
+++ b/public/images/pokemon/variant/572.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "8c847b": "b2af6e",
+ "524a42": "525042",
+ "ffffff": "ffffff",
+ "decec5": "decec5",
+ "bdb5a5": "dad7a1",
+ "bd2929": "f28989",
+ "101010": "101010",
+ "d65252": "f8c1c1",
+ "ef8484": "fab7b7"
+ },
+ "2": {
+ "8c847b": "5f807e",
+ "524a42": "5f807e",
+ "ffffff": "d7e8e6",
+ "decec5": "cbdcda",
+ "bdb5a5": "aec8c6",
+ "bd2929": "b08631",
+ "101010": "101010",
+ "d65252": "e6c88d",
+ "ef8484": "dab977"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/577.json b/public/images/pokemon/variant/577.json
new file mode 100644
index 00000000000..cd19056738d
--- /dev/null
+++ b/public/images/pokemon/variant/577.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "428c5a": "7d52ad",
+ "5ab57b": "a78cd6",
+ "ffffff": "fbf9ff",
+ "94e6ad": "cab8f1",
+ "6b6329": "597070",
+ "5a845a": "5e2c58",
+ "101010": "101010",
+ "e6de73": "afdfce",
+ "cee6bd": "ebc7d9",
+ "a59c31": "88aca5",
+ "9cad8c": "975b88",
+ "316342": "442e7a",
+ "94314a": "84197e",
+ "c54252": "c54252",
+ "b5cea5": "c696b4"
+ },
+ "1": {
+ "428c5a": "6f0b2c",
+ "5ab57b": "b43a50",
+ "ffffff": "fff3f3",
+ "94e6ad": "ee8c91",
+ "6b6329": "522849",
+ "5a845a": "961d3c",
+ "101010": "101010",
+ "e6de73": "9d65b1",
+ "cee6bd": "dfab9f",
+ "a59c31": "824885",
+ "9cad8c": "b86d6a",
+ "316342": "3b031b",
+ "94314a": "94314a",
+ "c54252": "c54252",
+ "b5cea5": "cd9790"
+ },
+ "2": {
+ "428c5a": "a968a4",
+ "5ab57b": "ce8ec2",
+ "ffffff": "ffffff",
+ "94e6ad": "f7c6e5",
+ "6b6329": "3e8c82",
+ "5a845a": "9d4e4c",
+ "101010": "101010",
+ "e6de73": "74d6b3",
+ "cee6bd": "f0c9ba",
+ "a59c31": "5ab3a2",
+ "9cad8c": "ba7066",
+ "316342": "713c85",
+ "94314a": "94314a",
+ "c54252": "c54252",
+ "b5cea5": "d69887"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/578.json b/public/images/pokemon/variant/578.json
new file mode 100644
index 00000000000..83db4394938
--- /dev/null
+++ b/public/images/pokemon/variant/578.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "429c63": "744ab5",
+ "5ab57b": "928cd6",
+ "637b63": "834783",
+ "c5deb5": "ebc7e1",
+ "317b4a": "6b2981",
+ "9cbd8c": "9b65ac",
+ "101010": "101010",
+ "e6ffde": "fff9fb",
+ "84dea5": "c3b8f1",
+ "b54242": "ad4252",
+ "733a3a": "84197e"
+ },
+ "1": {
+ "429c63": "6f0b2c",
+ "5ab57b": "b43a50",
+ "637b63": "862f2d",
+ "c5deb5": "d69289",
+ "317b4a": "3b031b",
+ "9cbd8c": "b0605c",
+ "101010": "101010",
+ "e6ffde": "fff3f3",
+ "84dea5": "ee8c91",
+ "b54242": "ad4252",
+ "733a3a": "84194a"
+ },
+ "2": {
+ "429c63": "a5489e",
+ "5ab57b": "d080b8",
+ "637b63": "9d4e4c",
+ "c5deb5": "f0c9ba",
+ "317b4a": "732971",
+ "9cbd8c": "d69887",
+ "101010": "101010",
+ "e6ffde": "ffffff",
+ "84dea5": "f7c6e5",
+ "b54242": "ad4252",
+ "733a3a": "84194a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/579.json b/public/images/pokemon/variant/579.json
new file mode 100644
index 00000000000..168a4470b9c
--- /dev/null
+++ b/public/images/pokemon/variant/579.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "428c5a": "316b8c",
+ "5ab57b": "8c9cd6",
+ "316342": "31427b",
+ "4a8c63": "40516c",
+ "d6efc5": "bfdadd",
+ "9cbd8c": "7f9fb5",
+ "101010": "101010",
+ "ffffff": "f1feff",
+ "de6363": "7bfff7",
+ "a55252": "4aad8c",
+ "debd7b": "a5d67b",
+ "c5a563": "63b519",
+ "733a3a": "84197e",
+ "c55252": "ad4252"
+ },
+ "1": {
+ "428c5a": "6f0b2c",
+ "5ab57b": "b43a50",
+ "316342": "3b031b",
+ "4a8c63": "862f2d",
+ "d6efc5": "d69289",
+ "9cbd8c": "b0605c",
+ "101010": "101010",
+ "ffffff": "fff3f3",
+ "de6363": "e39744",
+ "a55252": "bb6620",
+ "debd7b": "9d65b1",
+ "c5a563": "844386",
+ "733a3a": "84194a",
+ "c55252": "ad4252"
+ },
+ "2": {
+ "428c5a": "a5489e",
+ "5ab57b": "df7fb6",
+ "316342": "732971",
+ "4a8c63": "9d4e4c",
+ "d6efc5": "e8baac",
+ "9cbd8c": "c5887f",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "de6363": "74d6b3",
+ "a55252": "5ab3a2",
+ "debd7b": "a29fbd",
+ "c5a563": "6d648a",
+ "733a3a": "84194a",
+ "c55252": "ad4252"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/641-incarnate.json b/public/images/pokemon/variant/641-incarnate.json
new file mode 100644
index 00000000000..973f983d2cd
--- /dev/null
+++ b/public/images/pokemon/variant/641-incarnate.json
@@ -0,0 +1,18 @@
+{
+ "0": {
+ "737373": "737373",
+ "ffffff": "ffffff",
+ "101010": "101010",
+ "b5b5bd": "b5b5bd",
+ "8442ad": "282828",
+ "5a3173": "121212",
+ "294a31": "294a31",
+ "4a9c42": "5fd054",
+ "422152": "000000",
+ "ffc500": "ffc500",
+ "42733a": "317c25",
+ "6b4229": "6b4229",
+ "ad7b4a": "ad7b4a",
+ "deb56b": "deb56b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/641-therian.json b/public/images/pokemon/variant/641-therian.json
new file mode 100644
index 00000000000..5b43a3d7fbf
--- /dev/null
+++ b/public/images/pokemon/variant/641-therian.json
@@ -0,0 +1,18 @@
+{
+ "0": {
+ "5a3a73": "121212",
+ "8442ad": "282828",
+ "101010": "101010",
+ "422152": "000000",
+ "737373": "737373",
+ "ffffff": "ffffff",
+ "b5b5bd": "b5b5bd",
+ "294a31": "294a31",
+ "4a9c42": "5fd054",
+ "deb56b": "ffc500",
+ "42733a": "317c25",
+ "ad7b4a": "ad7b4a",
+ "6b4229": "6b4229",
+ "de3a29": "deb56b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/642-incarnate.json b/public/images/pokemon/variant/642-incarnate.json
new file mode 100644
index 00000000000..6c247996481
--- /dev/null
+++ b/public/images/pokemon/variant/642-incarnate.json
@@ -0,0 +1,19 @@
+{
+ "0": {
+ "737373": "737373",
+ "101010": "101010",
+ "b5b5bd": "878787",
+ "ffffff": "ffffff",
+ "102152": "521010",
+ "5a42ad": "992828",
+ "29426b": "6b2929",
+ "5284a5": "952f2f",
+ "63c5ff": "ff6363",
+ "313131": "313131",
+ "31317b": "3a1111",
+ "4a4a4a": "4a4a4a",
+ "212121": "212121",
+ "ffc55a": "ffc55a",
+ "d69431": "d69431"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/642-therian.json b/public/images/pokemon/variant/642-therian.json
new file mode 100644
index 00000000000..c53d2dbc0fc
--- /dev/null
+++ b/public/images/pokemon/variant/642-therian.json
@@ -0,0 +1,18 @@
+{
+ "0": {
+ "192952": "521010",
+ "737373": "6a0d0d",
+ "ffffff": "ffffff",
+ "101010": "101010",
+ "5a4aad": "952f2f",
+ "b5b5bd": "a49696",
+ "3a3a84": "3a1111",
+ "5284a5": "7c0b0b",
+ "29426b": "6b2929",
+ "63c5ff": "c83f3f",
+ "d69431": "ffc55a",
+ "ffc55a": "d69431",
+ "313131": "313131",
+ "212121": "212121"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/645-incarnate.json b/public/images/pokemon/variant/645-incarnate.json
new file mode 100644
index 00000000000..01a6c034b19
--- /dev/null
+++ b/public/images/pokemon/variant/645-incarnate.json
@@ -0,0 +1,18 @@
+{
+ "0": {
+ "b5b5bd": "999999",
+ "737373": "737373",
+ "101010": "101010",
+ "ffffff": "d0d0d0",
+ "6b213a": "838383",
+ "bd4a52": "380d5f",
+ "a55a3a": "451c6a",
+ "f77b42": "69418e",
+ "633110": "2c2c2c",
+ "ffce63": "9386ff",
+ "4a2919": "191919",
+ "634231": "2c143a",
+ "84634a": "311e42",
+ "943142": "0b0b0b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/645-therian.json b/public/images/pokemon/variant/645-therian.json
new file mode 100644
index 00000000000..b18f38dcfab
--- /dev/null
+++ b/public/images/pokemon/variant/645-therian.json
@@ -0,0 +1,18 @@
+{
+ "0": {
+ "634231": "2c143a",
+ "101010": "101010",
+ "bd4a52": "380d5f",
+ "84634a": "311e42",
+ "4a2919": "191919",
+ "737373": "737373",
+ "ffffff": "d0d0d0",
+ "b5b5bd": "999999",
+ "73313a": "838383",
+ "633110": "2c2c2c",
+ "f77b42": "69418e",
+ "a55a3a": "451c6a",
+ "943142": "0b0b0b",
+ "ffce63": "9386ff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/6549.json b/public/images/pokemon/variant/6549.json
new file mode 100644
index 00000000000..30afb7ebadf
--- /dev/null
+++ b/public/images/pokemon/variant/6549.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "70365a": "29547d",
+ "bd59a2": "5094c0",
+ "101010": "101010",
+ "315a31": "5a5a2c",
+ "ff84bd": "73bad9",
+ "39ac39": "bfd17f",
+ "bda452": "77909a",
+ "ffbbdb": "b5ddea",
+ "fdfdfd": "fffafa",
+ "ffde41": "b6c7cc",
+ "526229": "80152b",
+ "4a834a": "8e954d",
+ "c5ee7b": "ef5755",
+ "9cb462": "bd2d40",
+ "cdc5bd": "cdc5bd"
+ },
+ "2": {
+ "70365a": "8a1a3c",
+ "bd59a2": "d64065",
+ "101010": "101010",
+ "315a31": "643312",
+ "ff84bd": "e8617a",
+ "39ac39": "ebc460",
+ "bda452": "78412b",
+ "ffbbdb": "f38e9c",
+ "fdfdfd": "f3dccc",
+ "ffde41": "9f6a45",
+ "526229": "351c49",
+ "4a834a": "9d7d45",
+ "c5ee7b": "834c9b",
+ "9cb462": "5d3576",
+ "cdc5bd": "c79e86"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/6570.json b/public/images/pokemon/variant/6570.json
new file mode 100644
index 00000000000..0cb91cc3490
--- /dev/null
+++ b/public/images/pokemon/variant/6570.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "942429": "9e111f",
+ "d53a3e": "e8512a",
+ "5f0002": "5d0019",
+ "f07376": "ff6d26",
+ "4a4d53": "4a4d53",
+ "f7acae": "fdc9a2",
+ "fafafa": "f3dac4",
+ "101010": "101010",
+ "b3b3bb": "d6b7b1",
+ "cbcfd8": "7b7897",
+ "6d4d62": "e1d2d3",
+ "928d96": "303443",
+ "a7484f": "9e111f",
+ "ffae1a": "ffae1a",
+ "df7806": "df7806"
+ },
+ "2": {
+ "942429": "09523d",
+ "d53a3e": "1c7b4f",
+ "5f0002": "033431",
+ "f07376": "3cbc5f",
+ "4a4d53": "6f4332",
+ "f7acae": "79d38d",
+ "fafafa": "f0decd",
+ "101010": "101010",
+ "b3b3bb": "c6ab99",
+ "cbcfd8": "d79568",
+ "6d4d62": "813059",
+ "928d96": "995d3e",
+ "a7484f": "1c7f54",
+ "ffae1a": "22b5b4",
+ "df7806": "0c5b66"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/6571.json b/public/images/pokemon/variant/6571.json
new file mode 100644
index 00000000000..c87a105447a
--- /dev/null
+++ b/public/images/pokemon/variant/6571.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "942429": "4a1921",
+ "d53a3e": "782d41",
+ "101010": "101010",
+ "928d96": "4a4759",
+ "fafafa": "e1d2d2",
+ "f7acae": "ce646c",
+ "f07376": "b44d63",
+ "b3b3bb": "c3a5a8",
+ "5f0002": "330814",
+ "a7484f": "883955",
+ "4a4d53": "262231",
+ "cbcfd8": "737185",
+ "4b163b": "6a4a4f",
+ "6d4d62": "e1d2d3",
+ "f6ee6c": "49ffff"
+ },
+ "2": {
+ "942429": "143130",
+ "d53a3e": "2e625a",
+ "101010": "101010",
+ "928d96": "885f49",
+ "fafafa": "f0decd",
+ "f7acae": "6aa899",
+ "f07376": "4e867b",
+ "b3b3bb": "c6ab99",
+ "5f0002": "082226",
+ "a7484f": "2a6062",
+ "4a4d53": "411c1a",
+ "cbcfd8": "bc9072",
+ "4b163b": "4b163b",
+ "6d4d62": "c2589c",
+ "f6ee6c": "98f25f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/6705.json b/public/images/pokemon/variant/6705.json
new file mode 100644
index 00000000000..87efeef5278
--- /dev/null
+++ b/public/images/pokemon/variant/6705.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "807380": "b93f84",
+ "bfacbf": "e56ca6",
+ "f2daf2": "fbb3d2",
+ "4d454d": "8a2166",
+ "367456": "197497",
+ "50ab89": "3aa8c4",
+ "101010": "101010",
+ "60606c": "1f1233",
+ "c5cce0": "513981",
+ "aeb5c6": "442967",
+ "949aab": "301848",
+ "665980": "8b69c3",
+ "b8a1e5": "c7a1e5",
+ "e3e8f4": "cfd6f7",
+ "8f7db3": "8f7db3"
+ },
+ "2": {
+ "807380": "2b736f",
+ "bfacbf": "3ebda7",
+ "f2daf2": "99f7e2",
+ "4d454d": "194f51",
+ "367456": "a34205",
+ "50ab89": "d27e26",
+ "101010": "101010",
+ "60606c": "042329",
+ "c5cce0": "176463",
+ "aeb5c6": "0d484a",
+ "949aab": "073338",
+ "665980": "274159",
+ "b8a1e5": "4a9699",
+ "e3e8f4": "e7fff4",
+ "8f7db3": "2f667c"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/6706_2.json b/public/images/pokemon/variant/6706_2.json
new file mode 100644
index 00000000000..f6bbf20116e
--- /dev/null
+++ b/public/images/pokemon/variant/6706_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "6706_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 82,
+ "h": 82
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 82,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:02eb46aa66ac70df612e129b7801a85c:a77cca14b23f4f3aece64d1a82449a0f:d60cc2e5ae2bd18de8ee3ab0649593ee$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/6706_2.png b/public/images/pokemon/variant/6706_2.png
new file mode 100644
index 00000000000..7cf1495d1a3
Binary files /dev/null and b/public/images/pokemon/variant/6706_2.png differ
diff --git a/public/images/pokemon/variant/6706_3.json b/public/images/pokemon/variant/6706_3.json
new file mode 100644
index 00000000000..615ca90e004
--- /dev/null
+++ b/public/images/pokemon/variant/6706_3.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "6706_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 82,
+ "h": 82
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 82,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:02eb46aa66ac70df612e129b7801a85c:a77cca14b23f4f3aece64d1a82449a0f:d60cc2e5ae2bd18de8ee3ab0649593ee$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/6706_3.png b/public/images/pokemon/variant/6706_3.png
new file mode 100644
index 00000000000..001cab641f1
Binary files /dev/null and b/public/images/pokemon/variant/6706_3.png differ
diff --git a/public/images/pokemon/variant/69_2.json b/public/images/pokemon/variant/69_2.json
new file mode 100644
index 00000000000..b9bbdf15acb
--- /dev/null
+++ b/public/images/pokemon/variant/69_2.json
@@ -0,0 +1,2120 @@
+{
+ "textures": [
+ {
+ "image": "69_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 128,
+ "h": 128
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 44
+ },
+ "frame": {
+ "x": 0,
+ "y": 44,
+ "w": 41,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 41,
+ "h": 40
+ },
+ "frame": {
+ "x": 0,
+ "y": 88,
+ "w": 41,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 41,
+ "h": 40
+ },
+ "frame": {
+ "x": 0,
+ "y": 88,
+ "w": 41,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 41,
+ "h": 40
+ },
+ "frame": {
+ "x": 0,
+ "y": 88,
+ "w": 41,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 41,
+ "h": 40
+ },
+ "frame": {
+ "x": 0,
+ "y": 88,
+ "w": 41,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 41,
+ "h": 40
+ },
+ "frame": {
+ "x": 0,
+ "y": 88,
+ "w": 41,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 41,
+ "h": 40
+ },
+ "frame": {
+ "x": 0,
+ "y": 88,
+ "w": 41,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 41,
+ "h": 40
+ },
+ "frame": {
+ "x": 0,
+ "y": 88,
+ "w": 41,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 41,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 0,
+ "w": 41,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 40,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 41,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 43,
+ "w": 41,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 85,
+ "w": 40,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 41,
+ "h": 44
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 38,
+ "h": 44
+ },
+ "frame": {
+ "x": 82,
+ "y": 44,
+ "w": 38,
+ "h": 44
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:c5ca39213997becaac9f7c56b6f31c20:1a6ca0c19930c64cc5b781c00cd038a0:1043fbd00aeb6f75a998a3a69bbb8d10$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/69_2.png b/public/images/pokemon/variant/69_2.png
new file mode 100644
index 00000000000..2f2a713de27
Binary files /dev/null and b/public/images/pokemon/variant/69_2.png differ
diff --git a/public/images/pokemon/variant/70.json b/public/images/pokemon/variant/70.json
new file mode 100644
index 00000000000..7240349abfc
--- /dev/null
+++ b/public/images/pokemon/variant/70.json
@@ -0,0 +1,19 @@
+{
+ "1": {
+ "634a31": "4f0537",
+ "a57b31": "781649",
+ "000000": "320819",
+ "085a31": "b6483e",
+ "3a9c52": "d36a52",
+ "9cde84": "f3a978",
+ "ffe66b": "f1968a",
+ "d6c552": "ca4f59",
+ "6bc552": "e59266",
+ "fff7ad": "f9bfa6",
+ "ffffff": "ffffff",
+ "b5424a": "5b284a",
+ "ef9cad": "aa6172",
+ "7b2929": "3d1138",
+ "ce6b84": "7e4460"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/700.json b/public/images/pokemon/variant/700.json
new file mode 100644
index 00000000000..dd61b5d1dc4
--- /dev/null
+++ b/public/images/pokemon/variant/700.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "8a2843": "452f89",
+ "235a99": "a63071",
+ "fa8caa": "c7a6ee",
+ "64c8f3": "e974db",
+ "101010": "101010",
+ "528fcc": "d648b7",
+ "d85a7a": "996cd2",
+ "895c72": "5c6889",
+ "fff5f5": "f7f5ff",
+ "d9c3c3": "c3c5d9",
+ "f18a78": "b52d27",
+ "a88d8c": "8c8fa8"
+ },
+ "2": {
+ "8a2843": "0e6134",
+ "235a99": "900d1b",
+ "fa8caa": "7dec9d",
+ "64c8f3": "ff9a68",
+ "101010": "101010",
+ "528fcc": "dd3d4f",
+ "d85a7a": "5dae7d",
+ "895c72": "7f5c89",
+ "fff5f5": "fff5fc",
+ "d9c3c3": "d9c3d6",
+ "f18a78": "d14ea4",
+ "a88d8c": "a38ca8"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/704.json b/public/images/pokemon/variant/704.json
new file mode 100644
index 00000000000..7c6e384891c
--- /dev/null
+++ b/public/images/pokemon/variant/704.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "807380": "b93f84",
+ "f2daf2": "fbb3d2",
+ "bfacbf": "e56ca6",
+ "4d454d": "8a2166",
+ "101010": "101010",
+ "4d993d": "197497",
+ "66cc52": "3aa8c4",
+ "b8a1e5": "c7a1e5",
+ "8f7db3": "8b69c3",
+ "665980": "4e4094"
+ },
+ "2": {
+ "807380": "237e7f",
+ "f2daf2": "92d8c8",
+ "bfacbf": "63a99e",
+ "4d454d": "134557",
+ "101010": "101010",
+ "4d993d": "a34205",
+ "66cc52": "d27e26",
+ "b8a1e5": "4a9699",
+ "8f7db3": "2f667c",
+ "665980": "274159"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/705.json b/public/images/pokemon/variant/705.json
new file mode 100644
index 00000000000..26e5d5527fd
--- /dev/null
+++ b/public/images/pokemon/variant/705.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "807380": "b93f84",
+ "bfacbf": "e56ca6",
+ "f2daf2": "fbb3d2",
+ "4d454d": "8a2166",
+ "307922": "aa6a00",
+ "46b030": "ffd047",
+ "101010": "101010",
+ "98bd51": "197497",
+ "d2e79e": "3aa8c4",
+ "647543": "0c5474",
+ "b8a1e5": "c7a1e5",
+ "665980": "4e4094",
+ "8f7db3": "8b69c3"
+ },
+ "2": {
+ "807380": "2b736f",
+ "bfacbf": "5db6a9",
+ "f2daf2": "9cead8",
+ "4d454d": "194f51",
+ "307922": "007d61",
+ "46b030": "49ffbf",
+ "101010": "101010",
+ "98bd51": "a34205",
+ "d2e79e": "d27e26",
+ "647543": "842401",
+ "b8a1e5": "4a9699",
+ "665980": "274159",
+ "8f7db3": "2f667c"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/706.json b/public/images/pokemon/variant/706.json
new file mode 100644
index 00000000000..5ede613c3cc
--- /dev/null
+++ b/public/images/pokemon/variant/706.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "4d454d": "6f1357",
+ "807380": "8a2166",
+ "bfacbf": "da75a5",
+ "e6d4e7": "f1a4c5",
+ "f8f8f8": "f8f8f8",
+ "101010": "101010",
+ "998a99": "b24c86",
+ "307922": "0c5474",
+ "46b030": "197497",
+ "8e71bb": "7654b3",
+ "b791f0": "bea1e5",
+ "665185": "543898",
+ "98bd51": "3aa8c4",
+ "647543": "0e6296",
+ "d2e79e": "63cee1"
+ },
+ "2": {
+ "4d454d": "0e4043",
+ "807380": "194f51",
+ "bfacbf": "5db6a9",
+ "e6d4e7": "9cead8",
+ "f8f8f8": "f8f8f8",
+ "101010": "101010",
+ "998a99": "2b736f",
+ "307922": "842401",
+ "46b030": "a34205",
+ "8e71bb": "274159",
+ "b791f0": "2f667c",
+ "665185": "172f46",
+ "98bd51": "d27e26",
+ "647543": "8e480b",
+ "d2e79e": "f7af58"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/708.json b/public/images/pokemon/variant/708.json
new file mode 100644
index 00000000000..a92a69f34c1
--- /dev/null
+++ b/public/images/pokemon/variant/708.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "2b303c": "722023",
+ "101010": "101010",
+ "494e5b": "a14743",
+ "174d3b": "4d362e",
+ "56372f": "36384f",
+ "36b389": "907f76",
+ "a87651": "7c808c",
+ "775943": "575a6a",
+ "9e6876": "5996d2",
+ "ffb2c5": "87deff"
+ },
+ "2": {
+ "2b303c": "6f5f80",
+ "101010": "101010",
+ "494e5b": "9c92a4",
+ "174d3b": "a94079",
+ "56372f": "31161d",
+ "36b389": "da7ea8",
+ "a87651": "7e5658",
+ "775943": "56323a",
+ "9e6876": "e18933",
+ "ffb2c5": "ffc875"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/709.json b/public/images/pokemon/variant/709.json
new file mode 100644
index 00000000000..21d5e210162
--- /dev/null
+++ b/public/images/pokemon/variant/709.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "2d241b": "17182f",
+ "a37a4c": "575a6a",
+ "101010": "101010",
+ "004321": "361f1b",
+ "1ea762": "907f76",
+ "007541": "4d362e",
+ "735738": "36384f",
+ "503d29": "262741",
+ "262626": "a14743",
+ "ff4c4c": "5996d2",
+ "ffa6a6": "87d1ff"
+ },
+ "2": {
+ "2d241b": "47232b",
+ "a37a4c": "7e5658",
+ "101010": "101010",
+ "004321": "761d52",
+ "1ea762": "da7ea8",
+ "007541": "a94079",
+ "735738": "56323a",
+ "503d29": "31161d",
+ "262626": "9e87b1",
+ "ff4c4c": "e18933",
+ "ffa6a6": "ffc875"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/71.json b/public/images/pokemon/variant/71.json
new file mode 100644
index 00000000000..25f85813575
--- /dev/null
+++ b/public/images/pokemon/variant/71.json
@@ -0,0 +1,18 @@
+{
+ "1": {
+ "4aa57b": "e28e58",
+ "635229": "4f0537",
+ "000000": "000000",
+ "10633a": "b0552e",
+ "8cc57b": "f9be81",
+ "a57b31": "781649",
+ "841900": "50155e",
+ "c55a21": "8d2f89",
+ "ef8c52": "b352a5",
+ "ffffff": "ffffff",
+ "bdc5c5": "bdc5c5",
+ "debd52": "983b3d",
+ "efd66b": "b6514d",
+ "f7ef94": "d37763"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/710.json b/public/images/pokemon/variant/710.json
new file mode 100644
index 00000000000..599076fba4b
--- /dev/null
+++ b/public/images/pokemon/variant/710.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "101010": "101010",
+ "332721": "213a22",
+ "664e42": "72a966",
+ "4d3b32": "478243",
+ "fff2b2": "ffb571",
+ "f2b63d": "d27238",
+ "f8f8f8": "ffe0d3",
+ "d98777": "404040",
+ "ffb5a6": "595959",
+ "b36859": "262626"
+ },
+ "2": {
+ "101010": "101010",
+ "332721": "0e2218",
+ "664e42": "425947",
+ "4d3b32": "2a4031",
+ "fff2b2": "fff298",
+ "f2b63d": "e1af37",
+ "f8f8f8": "ffe0d3",
+ "d98777": "ad3b33",
+ "ffb5a6": "e56146",
+ "b36859": "861613"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/711.json b/public/images/pokemon/variant/711.json
new file mode 100644
index 00000000000..aab77e6eebf
--- /dev/null
+++ b/public/images/pokemon/variant/711.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "261d0e": "311835",
+ "61532d": "805380",
+ "4c3a1b": "593a59",
+ "894331": "171717",
+ "bf634c": "262626",
+ "101010": "101010",
+ "f49670": "404040",
+ "ac733e": "aa7e43",
+ "7b4425": "673b1b",
+ "e09935": "b7b538",
+ "ffda43": "c4f663",
+ "deac5b": "cea971",
+ "aa6b22": "8c8421",
+ "fcefbf": "ecfed2"
+ },
+ "1": {
+ "261d0e": "17171e",
+ "61532d": "434348",
+ "4c3a1b": "2c2c30",
+ "894331": "153f18",
+ "bf634c": "325b34",
+ "101010": "101010",
+ "f49670": "4d7d4b",
+ "ac733e": "baa78d",
+ "7b4425": "5c4831",
+ "e09935": "b76a38",
+ "ffda43": "ffa858",
+ "deac5b": "ddcfb1",
+ "aa6b22": "8a4421",
+ "fcefbf": "ffd495"
+ },
+ "2": {
+ "261d0e": "5e0b09",
+ "61532d": "e56146",
+ "4c3a1b": "ad3b33",
+ "894331": "102316",
+ "bf634c": "213c28",
+ "101010": "101010",
+ "f49670": "36593d",
+ "ac733e": "9b613a",
+ "7b4425": "4a2618",
+ "e09935": "d97d3e",
+ "ffda43": "f1c353",
+ "deac5b": "b57d52",
+ "aa6b22": "aa5835",
+ "fcefbf": "fff3b0"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/720-unbound.json b/public/images/pokemon/variant/720-unbound.json
new file mode 100644
index 00000000000..8fc7ab07db3
--- /dev/null
+++ b/public/images/pokemon/variant/720-unbound.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "582840": "701507",
+ "cf4f8f": "cb5e23",
+ "9f3f6f": "902c0d",
+ "101010": "101010",
+ "446475": "513b29",
+ "302c2c": "3e162b",
+ "afcfdf": "c6bba8",
+ "86a5b4": "958672",
+ "504c4c": "684252",
+ "6b8b98": "725f4d",
+ "7f5f1f": "414a79",
+ "ffdf3f": "becef5",
+ "bf9f3f": "9ca7d5",
+ "fefefe": "fefefe"
+ },
+ "1": {
+ "582840": "280d46",
+ "cf4f8f": "753f9b",
+ "9f3f6f": "471c6b",
+ "101010": "101010",
+ "446475": "4d244e",
+ "302c2c": "632373",
+ "afcfdf": "c3aabe",
+ "86a5b4": "997392",
+ "504c4c": "a947b4",
+ "6b8b98": "72496e",
+ "7f5f1f": "853015",
+ "ffdf3f": "ffc26a",
+ "bf9f3f": "e2885a",
+ "fefefe": "fefefe"
+ },
+ "2": {
+ "582840": "150933",
+ "cf4f8f": "35387c",
+ "9f3f6f": "1d1a4b",
+ "101010": "101010",
+ "446475": "1a3f35",
+ "302c2c": "1c2433",
+ "afcfdf": "a1c4c3",
+ "86a5b4": "5c827d",
+ "504c4c": "304757",
+ "6b8b98": "345a54",
+ "7f5f1f": "682b16",
+ "ffdf3f": "ed9b42",
+ "bf9f3f": "b05d2d",
+ "fefefe": "fefefe"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/720.json b/public/images/pokemon/variant/720.json
new file mode 100644
index 00000000000..e2d1409fbe3
--- /dev/null
+++ b/public/images/pokemon/variant/720.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "8c3f59": "620d00",
+ "ff73a2": "cb5e23",
+ "cc5c81": "902c0d",
+ "676773": "3e162b",
+ "8a8a99": "684252",
+ "101010": "101010",
+ "dadaf2": "ffdb73",
+ "807126": "414a79",
+ "b8b8cc": "cc923c",
+ "fdfdfd": "f3feff",
+ "ffe14c": "becef5",
+ "ccb43d": "6577a5",
+ "47991f": "99331f",
+ "5fcc29": "cc4429",
+ "ffb2d9": "d65749"
+ },
+ "1": {
+ "8c3f59": "280d46",
+ "ff73a2": "753f9b",
+ "cc5c81": "471c6b",
+ "676773": "632373",
+ "8a8a99": "a947b4",
+ "101010": "101010",
+ "dadaf2": "f7bae9",
+ "807126": "853015",
+ "b8b8cc": "ca79bd",
+ "fdfdfd": "fff0e8",
+ "ffe14c": "ffc26a",
+ "ccb43d": "eb7037",
+ "47991f": "000862",
+ "5fcc29": "062591",
+ "ffb2d9": "ba43af"
+ },
+ "2": {
+ "8c3f59": "150933",
+ "ff73a2": "35387c",
+ "cc5c81": "1d1a4b",
+ "676773": "1c2433",
+ "8a8a99": "304757",
+ "101010": "101010",
+ "dadaf2": "d5cce5",
+ "807126": "682b16",
+ "b8b8cc": "9e8fbb",
+ "fdfdfd": "ffffde",
+ "ffe14c": "ed9b42",
+ "ccb43d": "b05d2d",
+ "47991f": "7e0016",
+ "5fcc29": "a8070d",
+ "ffb2d9": "636d9b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/747.json b/public/images/pokemon/variant/747.json
new file mode 100644
index 00000000000..8c4b94e9149
--- /dev/null
+++ b/public/images/pokemon/variant/747.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "be7c34": "614da4",
+ "f9e07d": "e3e2ff",
+ "753e7b": "9b6459",
+ "ba8dbe": "edd5ca",
+ "daac23": "aca5f3",
+ "9265a3": "d29784",
+ "101010": "101010",
+ "335780": "490a26",
+ "6098b7": "b24b34",
+ "dcafd6": "a21f90",
+ "9fd9d6": "e07b53",
+ "fdfdfd": "fdfdfd"
+ },
+ "2": {
+ "be7c34": "9f4354",
+ "f9e07d": "ffebed",
+ "753e7b": "113c3a",
+ "ba8dbe": "2b6157",
+ "daac23": "efa2ad",
+ "9265a3": "1c524b",
+ "101010": "101010",
+ "335780": "186443",
+ "6098b7": "359d5d",
+ "dcafd6": "ff3f5a",
+ "9fd9d6": "5bd97f",
+ "fdfdfd": "fdfdfd"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/748.json b/public/images/pokemon/variant/748.json
new file mode 100644
index 00000000000..280c676293a
--- /dev/null
+++ b/public/images/pokemon/variant/748.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "943732": "490a3c",
+ "101010": "101010",
+ "f28c4f": "a21f90",
+ "e25025": "91138c",
+ "6f97c4": "be583d",
+ "455b85": "892e20",
+ "93d1d7": "df7b52",
+ "711a6a": "81463e",
+ "d76fa5": "edd5ca",
+ "171539": "171539",
+ "3a3f6d": "462952",
+ "525898": "6c3776",
+ "b7429a": "d29784",
+ "863c79": "9b6459",
+ "ddac02": "ff71ec"
+ },
+ "2": {
+ "943732": "c30e49",
+ "101010": "101010",
+ "f28c4f": "ff3f5a",
+ "e25025": "e12350",
+ "6f97c4": "359d5d",
+ "455b85": "186443",
+ "93d1d7": "5bd97f",
+ "711a6a": "082b29",
+ "d76fa5": "2b6157",
+ "171539": "490c06",
+ "3a3f6d": "862916",
+ "525898": "d75b3c",
+ "b7429a": "1c524b",
+ "863c79": "104445",
+ "ddac02": "ff5068"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/802.json b/public/images/pokemon/variant/802.json
new file mode 100644
index 00000000000..841bb430fad
--- /dev/null
+++ b/public/images/pokemon/variant/802.json
@@ -0,0 +1,38 @@
+{
+ "0": {
+ "2c3e30": "111c12",
+ "6a806d": "526555",
+ "536155": "29352b",
+ "101010": "101010",
+ "2d3137": "084434",
+ "747778": "76bc8f",
+ "4e5356": "3a7e5d",
+ "f8f592": "f8f592",
+ "ff4506": "ff4506",
+ "f2a455": "f2a455"
+ },
+ "1": {
+ "2c3e30": "7a758d",
+ "6a806d": "cbc9e8",
+ "536155": "b5b1ce",
+ "101010": "101010",
+ "2d3137": "17145e",
+ "747778": "515aad",
+ "4e5356": "2f3079",
+ "f8f592": "f8e592",
+ "ff4506": "ff2006",
+ "f2a455": "ff9a50"
+ },
+ "2": {
+ "2c3e30": "5a0423",
+ "6a806d": "ce3e63",
+ "536155": "97123b",
+ "101010": "101010",
+ "2d3137": "5a0423",
+ "747778": "ce3e63",
+ "4e5356": "97123b",
+ "f8f592": "4bf6ff",
+ "ff4506": "2d8eff",
+ "f2a455": "27dced"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/856.json b/public/images/pokemon/variant/856.json
new file mode 100644
index 00000000000..3d245b74324
--- /dev/null
+++ b/public/images/pokemon/variant/856.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "727ab1": "1d4a3b",
+ "c8e9ff": "5ec183",
+ "181818": "181818",
+ "acbfdf": "3b9665",
+ "bb6a99": "043232",
+ "f9d5da": "298675",
+ "fbe6e9": "60b581",
+ "fefefe": "a5e8be",
+ "dca5bd": "125a51"
+ },
+ "2": {
+ "727ab1": "6b0124",
+ "c8e9ff": "cb304d",
+ "181818": "181818",
+ "acbfdf": "a11437",
+ "bb6a99": "30163d",
+ "f9d5da": "523f73",
+ "fbe6e9": "b53859",
+ "fefefe": "e8627b",
+ "dca5bd": "3b2351"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/857_2.json b/public/images/pokemon/variant/857_2.json
new file mode 100644
index 00000000000..fb3fd2b5ed2
--- /dev/null
+++ b/public/images/pokemon/variant/857_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "857_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 57,
+ "h": 57
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 57,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 57,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 57,
+ "h": 53
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:1d503a7a18ff508c161830929dd03563:7cef9e90249f932531439d791db453c9:76d73294e4ff7ab8f96a631810e2dc62$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/857_2.png b/public/images/pokemon/variant/857_2.png
new file mode 100644
index 00000000000..6395590c758
Binary files /dev/null and b/public/images/pokemon/variant/857_2.png differ
diff --git a/public/images/pokemon/variant/857_3.json b/public/images/pokemon/variant/857_3.json
new file mode 100644
index 00000000000..2bca74d3d34
--- /dev/null
+++ b/public/images/pokemon/variant/857_3.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "857_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 57,
+ "h": 57
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 57,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 57,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 57,
+ "h": 53
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:1d503a7a18ff508c161830929dd03563:7cef9e90249f932531439d791db453c9:76d73294e4ff7ab8f96a631810e2dc62$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/857_3.png b/public/images/pokemon/variant/857_3.png
new file mode 100644
index 00000000000..c2a1b95c337
Binary files /dev/null and b/public/images/pokemon/variant/857_3.png differ
diff --git a/public/images/pokemon/variant/858.json b/public/images/pokemon/variant/858.json
new file mode 100644
index 00000000000..97e35677ec3
--- /dev/null
+++ b/public/images/pokemon/variant/858.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "727ab1": "1d4a3b",
+ "c8e9ff": "5ec183",
+ "acbfdf": "3b9665",
+ "101010": "101010",
+ "948fc2": "287b59",
+ "d9cedb": "dec1c2",
+ "e5e4ef": "f7e4e4",
+ "fefefe": "f7e4e4",
+ "e489a0": "125a51",
+ "c15974": "043232",
+ "b4a2b7": "bf9ca0",
+ "856d8b": "9c7a81",
+ "f5bac2": "298675",
+ "f9d5da": "f9d5da"
+ },
+ "2": {
+ "727ab1": "6b0124",
+ "c8e9ff": "cb304d",
+ "acbfdf": "a11437",
+ "101010": "101010",
+ "948fc2": "8c0e32",
+ "d9cedb": "e4bcde",
+ "e5e4ef": "ffecf9",
+ "fefefe": "fee9fa",
+ "e489a0": "3b2351",
+ "c15974": "30163d",
+ "b4a2b7": "bc93b7",
+ "856d8b": "976c95",
+ "f5bac2": "523f73",
+ "f9d5da": "f9d5da"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/86.json b/public/images/pokemon/variant/86.json
new file mode 100644
index 00000000000..e24d4c5c672
--- /dev/null
+++ b/public/images/pokemon/variant/86.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "425284": "895044",
+ "e6e6f7": "f3c7aa",
+ "949cb5": "a86f5b",
+ "d6ceef": "c78f72",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "6b5a10": "6b3410",
+ "b59442": "a4622f",
+ "f7e6bd": "f7e3bd",
+ "dec573": "bb9451",
+ "d6735a": "d6735a",
+ "8c3121": "8c3121",
+ "ffadad": "ffadad"
+ },
+ "1": {
+ "425284": "414e63",
+ "e6e6f7": "b2c3d1",
+ "949cb5": "5e6d7c",
+ "d6ceef": "91a0ac",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "6b5a10": "847b73",
+ "b59442": "b5ada5",
+ "f7e6bd": "efefe6",
+ "dec573": "d6d6ce",
+ "d6735a": "b55286",
+ "8c3121": "74425c",
+ "ffadad": "d280ab"
+ },
+ "2": {
+ "425284": "1b2b3b",
+ "e6e6f7": "7ecdca",
+ "949cb5": "325062",
+ "d6ceef": "558a98",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "6b5a10": "5f3e2e",
+ "b59442": "81604a",
+ "f7e6bd": "d9caa5",
+ "dec573": "ad8f6f",
+ "d6735a": "d55a67",
+ "8c3121": "90243e",
+ "ffadad": "f98a8a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/87.json b/public/images/pokemon/variant/87.json
new file mode 100644
index 00000000000..e32cf4fe2b9
--- /dev/null
+++ b/public/images/pokemon/variant/87.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "9ca5bd": "b76a43",
+ "6b7ba5": "8f5641",
+ "e6e6f7": "f0b28a",
+ "425263": "773630",
+ "d6ceef": "bc7855",
+ "101010": "101010",
+ "ffffff": "ffecd8",
+ "847b7b": "5328a6",
+ "d6cece": "d6cece",
+ "9c0000": "b03f2f",
+ "d62921": "f68484"
+ },
+ "1": {
+ "9ca5bd": "5e6d7c",
+ "6b7ba5": "465264",
+ "e6e6f7": "96adbe",
+ "425263": "2f3b50",
+ "d6ceef": "5a7286",
+ "101010": "101010",
+ "ffffff": "beeaf8",
+ "847b7b": "847b7b",
+ "d6cece": "d6cece",
+ "9c0000": "9e3d77",
+ "d62921": "d280ab"
+ },
+ "2": {
+ "9ca5bd": "305f7d",
+ "6b7ba5": "20354a",
+ "e6e6f7": "86dfe2",
+ "425263": "171d3f",
+ "d6ceef": "5493ac",
+ "101010": "101010",
+ "ffffff": "d4fffc",
+ "847b7b": "125889",
+ "d6cece": "d6cece",
+ "9c0000": "c74351",
+ "d62921": "f37171"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/872.json b/public/images/pokemon/variant/872.json
new file mode 100644
index 00000000000..1576f560018
--- /dev/null
+++ b/public/images/pokemon/variant/872.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "7b8b9b": "345f5c",
+ "acc3cc": "669a8c",
+ "d8e9f0": "b7f1d6",
+ "f5fdff": "f5fdff",
+ "695e77": "275e43",
+ "101010": "101010",
+ "edeae0": "a6d6a6",
+ "b3a7c2": "73a878",
+ "fdfdfb": "fdfdfb"
+ },
+ "1": {
+ "7b8b9b": "22504c",
+ "acc3cc": "548e8f",
+ "d8e9f0": "b6e7df",
+ "f5fdff": "f5fdff",
+ "695e77": "354b63",
+ "101010": "101010",
+ "edeae0": "c1ebf3",
+ "b3a7c2": "89a9be",
+ "fdfdfb": "fdfdfb"
+ },
+ "2": {
+ "7b8b9b": "5a3993",
+ "acc3cc": "a66ac2",
+ "d8e9f0": "d5c3ff",
+ "f5fdff": "f5fdff",
+ "695e77": "5f3465",
+ "101010": "101010",
+ "edeae0": "e5a2da",
+ "b3a7c2": "a060a0",
+ "fdfdfb": "fdfdfb"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/873.json b/public/images/pokemon/variant/873.json
new file mode 100644
index 00000000000..5ea93b1c3bb
--- /dev/null
+++ b/public/images/pokemon/variant/873.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "747489": "27532f",
+ "fdfdfd": "b7f1d7",
+ "e7e0e6": "a6d6a6",
+ "b3b4bd": "73a878",
+ "8f8f9f": "547b58",
+ "101010": "101010",
+ "758174": "497e7a",
+ "c0e4c2": "eefffc",
+ "a0baa8": "aae3d9",
+ "4662ce": "c71e87",
+ "8e9fe1": "f158a3",
+ "3f4474": "6a3f74",
+ "c0df86": "e5ffdc"
+ },
+ "1": {
+ "747489": "415366",
+ "fdfdfd": "eefffb",
+ "e7e0e6": "c1ebf3",
+ "b3b4bd": "8ebbca",
+ "8f8f9f": "648397",
+ "101010": "101010",
+ "758174": "428586",
+ "c0e4c2": "d7fff8",
+ "a0baa8": "7bcbc0",
+ "4662ce": "0fa5bd",
+ "8e9fe1": "2dd3e0",
+ "3f4474": "3f4474",
+ "c0df86": "eefffb"
+ },
+ "2": {
+ "747489": "512d52",
+ "fdfdfd": "d5c3ff",
+ "e7e0e6": "d78dcb",
+ "b3b4bd": "864c86",
+ "8f8f9f": "5f3465",
+ "101010": "101010",
+ "758174": "795a9e",
+ "c0e4c2": "e1e3ff",
+ "a0baa8": "9f87ca",
+ "4662ce": "2b2dcf",
+ "8e9fe1": "7289eb",
+ "3f4474": "5b1268",
+ "c0df86": "e1e3ff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/877-hangry.json b/public/images/pokemon/variant/877-hangry.json
new file mode 100644
index 00000000000..100665220df
--- /dev/null
+++ b/public/images/pokemon/variant/877-hangry.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "101010": "101010",
+ "383634": "540606",
+ "6c6c6c": "952222",
+ "4f4b47": "3a1010",
+ "9958ce": "cebb58",
+ "6b3d96": "967f3d",
+ "ff151c": "ff151c",
+ "f38bb7": "f38bb7",
+ "9f9f9f": "9f9f9f",
+ "fbfbfb": "fbfbfb",
+ "493061": "615e30"
+ },
+ "1": {
+ "101010": "101010",
+ "383634": "212020",
+ "6c6c6c": "3a3a3a",
+ "4f4b47": "161514",
+ "9958ce": "cb6333",
+ "6b3d96": "a2512c",
+ "ff151c": "ff6b00",
+ "f38bb7": "f3a18b",
+ "9f9f9f": "9f9f9f",
+ "fbfbfb": "fbfbfb",
+ "493061": "753e25"
+ },
+ "2": {
+ "101010": "101010",
+ "383634": "383634",
+ "6c6c6c": "6c6c6c",
+ "4f4b47": "4f4b47",
+ "9958ce": "7fba7f",
+ "6b3d96": "568351",
+ "ff151c": "065b06",
+ "f38bb7": "468e46",
+ "9f9f9f": "9f9f9f",
+ "fbfbfb": "fbfbfb",
+ "493061": "306135"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/877.json b/public/images/pokemon/variant/877.json
new file mode 100644
index 00000000000..1708b129eb0
--- /dev/null
+++ b/public/images/pokemon/variant/877.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "101010": "101010",
+ "8a5e48": "383634",
+ "cf9c66": "6c6c6c",
+ "383634": "383634",
+ "6c6c6c": "6c6c6c",
+ "af7044": "4f4b47",
+ "4f4b47": "4f4b47",
+ "f4f489": "b689f4",
+ "d3b351": "8851d3",
+ "fbfbfb": "fbfbfb",
+ "5c5c5c": "5c5c5c",
+ "f38bb7": "f38bb7",
+ "b24244": "b24244",
+ "e76961": "e76961",
+ "785b23": "8851d3"
+ },
+ "1": {
+ "101010": "101010",
+ "8a5e48": "2c439d",
+ "cf9c66": "86aaff",
+ "383634": "383634",
+ "6c6c6c": "6c6c6c",
+ "af7044": "2c439d",
+ "4f4b47": "4f4b47",
+ "f4f489": "fff98f",
+ "d3b351": "8b8853",
+ "fbfbfb": "fbfbfb",
+ "5c5c5c": "5c5c5c",
+ "f38bb7": "1010b3",
+ "b24244": "424eb2",
+ "e76961": "61b6e7",
+ "785b23": "8b8853"
+ },
+ "2": {
+ "101010": "101010",
+ "8a5e48": "4f8a48",
+ "cf9c66": "71cf66",
+ "383634": "383634",
+ "6c6c6c": "6c6c6c",
+ "af7044": "44af5b",
+ "4f4b47": "4f4b47",
+ "f4f489": "f8f8f8",
+ "d3b351": "b6b6b6",
+ "fbfbfb": "fbfbfb",
+ "5c5c5c": "5c5c5c",
+ "f38bb7": "a1f38b",
+ "b24244": "388040",
+ "e76961": "95e69d",
+ "785b23": "4f8a48"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/885.json b/public/images/pokemon/variant/885.json
new file mode 100644
index 00000000000..046b01e6625
--- /dev/null
+++ b/public/images/pokemon/variant/885.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "3a583c": "133056",
+ "101010": "101010",
+ "fa5494": "efa93f",
+ "cc4066": "cc8225",
+ "476b48": "20486e",
+ "5f875a": "2f6c89",
+ "78aa84": "479bb6",
+ "eb4972": "ac7508",
+ "c4264e": "9c5f05",
+ "e6ea40": "ffcc48",
+ "b1842e": "d48007",
+ "822d44": "824100",
+ "addcbc": "6accd6"
+ },
+ "1": {
+ "3a583c": "2f040d",
+ "101010": "101010",
+ "fa5494": "4590da",
+ "cc4066": "3261b7",
+ "476b48": "4e0e17",
+ "5f875a": "6b242e",
+ "78aa84": "b13b42",
+ "eb4972": "234582",
+ "c4264e": "213464",
+ "e6ea40": "4fffa4",
+ "b1842e": "09bb6f",
+ "822d44": "071d61",
+ "addcbc": "da6151"
+ },
+ "2": {
+ "3a583c": "1f0c2c",
+ "101010": "101010",
+ "fa5494": "68c7c4",
+ "cc4066": "2a8286",
+ "476b48": "231234",
+ "5f875a": "3c2750",
+ "78aa84": "624c6f",
+ "eb4972": "126f79",
+ "c4264e": "08586a",
+ "e6ea40": "87ff46",
+ "b1842e": "22c561",
+ "822d44": "00405b",
+ "addcbc": "927fa1"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/886.json b/public/images/pokemon/variant/886.json
new file mode 100644
index 00000000000..521ce4e84b7
--- /dev/null
+++ b/public/images/pokemon/variant/886.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "444e62": "2d365a",
+ "addcbc": "6accd6",
+ "101010": "101010",
+ "5f875a": "2f6c89",
+ "2c323f": "192250",
+ "566f89": "465272",
+ "fa5494": "efa93f",
+ "822d44": "8d5200",
+ "eb4972": "ac7508",
+ "ffe322": "ffcc48",
+ "7fb3b1": "78c3cb",
+ "5b878c": "4c90a6",
+ "d5fffb": "9dfffa",
+ "b5a36a": "c7bcb6",
+ "dbd39d": "f7eee9"
+ },
+ "1": {
+ "444e62": "4a1621",
+ "addcbc": "da6151",
+ "101010": "101010",
+ "5f875a": "6b242e",
+ "2c323f": "2e080d",
+ "566f89": "602034",
+ "fa5494": "3f97ee",
+ "822d44": "1977ce",
+ "eb4972": "4fbff7",
+ "ffe322": "4fffa4",
+ "7fb3b1": "a94046",
+ "5b878c": "7e2833",
+ "d5fffb": "ffb853",
+ "b5a36a": "e3a755",
+ "dbd39d": "ffd696"
+ },
+ "2": {
+ "444e62": "231b45",
+ "addcbc": "927fa1",
+ "101010": "101010",
+ "5f875a": "3c2750",
+ "2c323f": "251b31",
+ "566f89": "3b2e5d",
+ "fa5494": "60d1cd",
+ "822d44": "186670",
+ "eb4972": "2a8286",
+ "ffe322": "87ff46",
+ "7fb3b1": "8b659f",
+ "5b878c": "6c4d85",
+ "d5fffb": "d67ae7",
+ "b5a36a": "b5a36a",
+ "dbd39d": "dbd39d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/887.json b/public/images/pokemon/variant/887.json
new file mode 100644
index 00000000000..9858e270bc0
--- /dev/null
+++ b/public/images/pokemon/variant/887.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "2c323f": "2e080d",
+ "566f89": "6c273d",
+ "444e62": "4a1621",
+ "101010": "101010",
+ "fa5494": "4590da",
+ "cc4066": "244f9f",
+ "48a9b0": "8a212f",
+ "308b86": "690f1b",
+ "ffe322": "4fffa4",
+ "eb4972": "307cc7",
+ "b5a36a": "e3a755",
+ "78d4cb": "b13b42",
+ "d5fffb": "ffb853",
+ "dbd39d": "ffd696",
+ "386a70": "490711"
+ },
+ "2": {
+ "2c323f": "1b163f",
+ "566f89": "4c3f6f",
+ "444e62": "332a59",
+ "101010": "101010",
+ "fa5494": "68c7c4",
+ "cc4066": "2a8286",
+ "48a9b0": "482962",
+ "308b86": "231234",
+ "ffe322": "87ff46",
+ "eb4972": "218aa0",
+ "b5a36a": "8c8fb0",
+ "78d4cb": "744e89",
+ "d5fffb": "b389fb",
+ "dbd39d": "bbbfcf",
+ "386a70": "1d0e33"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/887_1.json b/public/images/pokemon/variant/887_1.json
new file mode 100644
index 00000000000..4b788a9224f
--- /dev/null
+++ b/public/images/pokemon/variant/887_1.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "887_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 78,
+ "h": 78
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 71,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 78
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 78
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:7aef300ed4a1e0b484eb3fa5be0e1861:e15dd709470d0e4feaf482190d0f0b08:28ff7ddb94fdb836a70098ffd76d50f5$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/887_1.png b/public/images/pokemon/variant/887_1.png
new file mode 100644
index 00000000000..8348e95c664
Binary files /dev/null and b/public/images/pokemon/variant/887_1.png differ
diff --git a/public/images/pokemon/variant/92_1.json b/public/images/pokemon/variant/92_1.json
new file mode 100644
index 00000000000..ed0d1cb4a2b
--- /dev/null
+++ b/public/images/pokemon/variant/92_1.json
@@ -0,0 +1,2330 @@
+{
+ "textures": [
+ {
+ "image": "92_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 526,
+ "h": 526
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 57,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 57,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 66,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 66,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 66,
+ "y": 57,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 132,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 0,
+ "w": 67,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 0,
+ "w": 67,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 171,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 171,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 114,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 57,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 56,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 265,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 265,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 228,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 170,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 332,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 332,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 113,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 112,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 399,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 399,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 284,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 226,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 169,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 169,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 340,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 282,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 225,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 225,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 396,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 452,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 21,
+ "w": 52,
+ "h": 50
+ },
+ "frame": {
+ "x": 466,
+ "y": 0,
+ "w": 52,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 265,
+ "y": 55,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 265,
+ "y": 55,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 264,
+ "y": 108,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 264,
+ "y": 108,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 332,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 332,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 399,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 399,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 331,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 331,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 398,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 398,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 24,
+ "w": 52,
+ "h": 50
+ },
+ "frame": {
+ "x": 466,
+ "y": 50,
+ "w": 52,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 163,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 163,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 331,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 331,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 198,
+ "y": 168,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 198,
+ "y": 168,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 197,
+ "y": 222,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 197,
+ "y": 222,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 216,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 216,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 52
+ },
+ "frame": {
+ "x": 331,
+ "y": 217,
+ "w": 67,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 52
+ },
+ "frame": {
+ "x": 331,
+ "y": 217,
+ "w": 67,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 217,
+ "w": 66,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 217,
+ "w": 66,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 6,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 262,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 9,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 262,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 6,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 328,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 328,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 54
+ },
+ "frame": {
+ "x": 394,
+ "y": 270,
+ "w": 65,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 54
+ },
+ "frame": {
+ "x": 197,
+ "y": 278,
+ "w": 65,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 52
+ },
+ "frame": {
+ "x": 132,
+ "y": 281,
+ "w": 65,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 52
+ },
+ "frame": {
+ "x": 262,
+ "y": 323,
+ "w": 66,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 52
+ },
+ "frame": {
+ "x": 262,
+ "y": 323,
+ "w": 66,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 52
+ },
+ "frame": {
+ "x": 328,
+ "y": 323,
+ "w": 65,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 393,
+ "y": 324,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 197,
+ "y": 332,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 262,
+ "y": 375,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 327,
+ "y": 375,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 19,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 392,
+ "y": 380,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 19,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 392,
+ "y": 380,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 65,
+ "h": 55
+ },
+ "frame": {
+ "x": 131,
+ "y": 333,
+ "w": 65,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 338,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 65,
+ "y": 394,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 65,
+ "y": 394,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 65,
+ "y": 450,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 131,
+ "y": 388,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 130,
+ "y": 441,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 196,
+ "y": 388,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 51
+ },
+ "frame": {
+ "x": 195,
+ "y": 441,
+ "w": 65,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 51
+ },
+ "frame": {
+ "x": 261,
+ "y": 428,
+ "w": 65,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 10,
+ "w": 51,
+ "h": 47
+ },
+ "frame": {
+ "x": 260,
+ "y": 479,
+ "w": 51,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 51,
+ "h": 47
+ },
+ "frame": {
+ "x": 260,
+ "y": 479,
+ "w": 51,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 25,
+ "w": 52,
+ "h": 48
+ },
+ "frame": {
+ "x": 326,
+ "y": 428,
+ "w": 52,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 25,
+ "w": 52,
+ "h": 48
+ },
+ "frame": {
+ "x": 326,
+ "y": 428,
+ "w": 52,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 326,
+ "y": 476,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 10,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 375,
+ "y": 476,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 13,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 466,
+ "y": 100,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 20,
+ "w": 47,
+ "h": 53
+ },
+ "frame": {
+ "x": 465,
+ "y": 146,
+ "w": 47,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 17,
+ "w": 47,
+ "h": 53
+ },
+ "frame": {
+ "x": 465,
+ "y": 199,
+ "w": 47,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 20,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 464,
+ "y": 252,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 13,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 459,
+ "y": 301,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 20,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 458,
+ "y": 347,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 20,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 457,
+ "y": 396,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 23,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 457,
+ "y": 396,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 17,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 424,
+ "y": 445,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 17,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 424,
+ "y": 445,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 11,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 470,
+ "y": 445,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 14,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 470,
+ "y": 445,
+ "w": 49,
+ "h": 49
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:b94ea03e33978b1acfa443487dab5ed5:505403ea6e08d8f47707dca3e030c7c7:940f904821041481572d765abbc53d9e$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/92_1.png b/public/images/pokemon/variant/92_1.png
new file mode 100644
index 00000000000..a47bf334486
Binary files /dev/null and b/public/images/pokemon/variant/92_1.png differ
diff --git a/public/images/pokemon/variant/92_2.json b/public/images/pokemon/variant/92_2.json
new file mode 100644
index 00000000000..097bc18e713
--- /dev/null
+++ b/public/images/pokemon/variant/92_2.json
@@ -0,0 +1,2330 @@
+{
+ "textures": [
+ {
+ "image": "92_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 526,
+ "h": 526
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 57,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 57,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 66,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 66,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 66,
+ "y": 57,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 132,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 0,
+ "w": 67,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 0,
+ "w": 67,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 171,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 171,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 114,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 57,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 56,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 265,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 265,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 228,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 170,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 332,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 332,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 113,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 112,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 399,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 399,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 284,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 226,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 169,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 169,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 340,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 282,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 225,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 225,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 396,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 452,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 21,
+ "w": 52,
+ "h": 50
+ },
+ "frame": {
+ "x": 466,
+ "y": 0,
+ "w": 52,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 265,
+ "y": 55,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 265,
+ "y": 55,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 264,
+ "y": 108,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 264,
+ "y": 108,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 332,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 332,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 399,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 399,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 331,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 331,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 398,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 398,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 24,
+ "w": 52,
+ "h": 50
+ },
+ "frame": {
+ "x": 466,
+ "y": 50,
+ "w": 52,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 163,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 163,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 331,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 331,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 198,
+ "y": 168,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 198,
+ "y": 168,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 197,
+ "y": 222,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 197,
+ "y": 222,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 216,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 216,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 52
+ },
+ "frame": {
+ "x": 331,
+ "y": 217,
+ "w": 67,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 52
+ },
+ "frame": {
+ "x": 331,
+ "y": 217,
+ "w": 67,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 217,
+ "w": 66,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 217,
+ "w": 66,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 6,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 262,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 9,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 262,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 6,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 328,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 328,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 54
+ },
+ "frame": {
+ "x": 394,
+ "y": 270,
+ "w": 65,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 54
+ },
+ "frame": {
+ "x": 197,
+ "y": 278,
+ "w": 65,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 52
+ },
+ "frame": {
+ "x": 132,
+ "y": 281,
+ "w": 65,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 52
+ },
+ "frame": {
+ "x": 262,
+ "y": 323,
+ "w": 66,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 52
+ },
+ "frame": {
+ "x": 262,
+ "y": 323,
+ "w": 66,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 52
+ },
+ "frame": {
+ "x": 328,
+ "y": 323,
+ "w": 65,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 393,
+ "y": 324,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 197,
+ "y": 332,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 262,
+ "y": 375,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 327,
+ "y": 375,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 19,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 392,
+ "y": 380,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 19,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 392,
+ "y": 380,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 65,
+ "h": 55
+ },
+ "frame": {
+ "x": 131,
+ "y": 333,
+ "w": 65,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 338,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 65,
+ "y": 394,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 65,
+ "y": 394,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 65,
+ "y": 450,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 131,
+ "y": 388,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 130,
+ "y": 441,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 196,
+ "y": 388,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 51
+ },
+ "frame": {
+ "x": 195,
+ "y": 441,
+ "w": 65,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 51
+ },
+ "frame": {
+ "x": 261,
+ "y": 428,
+ "w": 65,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 10,
+ "w": 51,
+ "h": 47
+ },
+ "frame": {
+ "x": 260,
+ "y": 479,
+ "w": 51,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 51,
+ "h": 47
+ },
+ "frame": {
+ "x": 260,
+ "y": 479,
+ "w": 51,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 25,
+ "w": 52,
+ "h": 48
+ },
+ "frame": {
+ "x": 326,
+ "y": 428,
+ "w": 52,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 25,
+ "w": 52,
+ "h": 48
+ },
+ "frame": {
+ "x": 326,
+ "y": 428,
+ "w": 52,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 326,
+ "y": 476,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 10,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 375,
+ "y": 476,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 13,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 466,
+ "y": 100,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 20,
+ "w": 47,
+ "h": 53
+ },
+ "frame": {
+ "x": 465,
+ "y": 146,
+ "w": 47,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 17,
+ "w": 47,
+ "h": 53
+ },
+ "frame": {
+ "x": 465,
+ "y": 199,
+ "w": 47,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 20,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 464,
+ "y": 252,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 13,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 459,
+ "y": 301,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 20,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 458,
+ "y": 347,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 20,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 457,
+ "y": 396,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 23,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 457,
+ "y": 396,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 17,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 424,
+ "y": 445,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 17,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 424,
+ "y": 445,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 11,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 470,
+ "y": 445,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 14,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 470,
+ "y": 445,
+ "w": 49,
+ "h": 49
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:b94ea03e33978b1acfa443487dab5ed5:505403ea6e08d8f47707dca3e030c7c7:940f904821041481572d765abbc53d9e$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/92_2.png b/public/images/pokemon/variant/92_2.png
new file mode 100644
index 00000000000..a6bff69023f
Binary files /dev/null and b/public/images/pokemon/variant/92_2.png differ
diff --git a/public/images/pokemon/variant/92_3.json b/public/images/pokemon/variant/92_3.json
new file mode 100644
index 00000000000..fdd654eccc0
--- /dev/null
+++ b/public/images/pokemon/variant/92_3.json
@@ -0,0 +1,2330 @@
+{
+ "textures": [
+ {
+ "image": "92_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 526,
+ "h": 526
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 57,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 57,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 66,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 66,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 114,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 66,
+ "y": 57,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 132,
+ "y": 0,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 0,
+ "w": 67,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 0,
+ "w": 67,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 171,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 66,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 171,
+ "w": 66,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 114,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 57,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 56,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 265,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 265,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 228,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 170,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 332,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 332,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 113,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 198,
+ "y": 112,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 399,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 399,
+ "y": 0,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 284,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 66,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 226,
+ "w": 66,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 169,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 169,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 340,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 282,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 7,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 225,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 132,
+ "y": 225,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 396,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 0,
+ "y": 452,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 21,
+ "w": 52,
+ "h": 50
+ },
+ "frame": {
+ "x": 466,
+ "y": 0,
+ "w": 52,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 265,
+ "y": 55,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 265,
+ "y": 55,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 264,
+ "y": 108,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 264,
+ "y": 108,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 332,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 332,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 399,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 54
+ },
+ "frame": {
+ "x": 399,
+ "y": 55,
+ "w": 67,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 331,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 331,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 398,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 67,
+ "h": 55
+ },
+ "frame": {
+ "x": 398,
+ "y": 109,
+ "w": 67,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 24,
+ "w": 52,
+ "h": 50
+ },
+ "frame": {
+ "x": 466,
+ "y": 50,
+ "w": 52,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 9,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 163,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 163,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 12,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 331,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 331,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 164,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 198,
+ "y": 168,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 198,
+ "y": 168,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 197,
+ "y": 222,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 197,
+ "y": 222,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 216,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 53
+ },
+ "frame": {
+ "x": 264,
+ "y": 216,
+ "w": 67,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 52
+ },
+ "frame": {
+ "x": 331,
+ "y": 217,
+ "w": 67,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 67,
+ "h": 52
+ },
+ "frame": {
+ "x": 331,
+ "y": 217,
+ "w": 67,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 217,
+ "w": 66,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 53
+ },
+ "frame": {
+ "x": 398,
+ "y": 217,
+ "w": 66,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 6,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 262,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 9,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 262,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 6,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 328,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 66,
+ "h": 54
+ },
+ "frame": {
+ "x": 328,
+ "y": 269,
+ "w": 66,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 54
+ },
+ "frame": {
+ "x": 394,
+ "y": 270,
+ "w": 65,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 54
+ },
+ "frame": {
+ "x": 197,
+ "y": 278,
+ "w": 65,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 52
+ },
+ "frame": {
+ "x": 132,
+ "y": 281,
+ "w": 65,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 52
+ },
+ "frame": {
+ "x": 262,
+ "y": 323,
+ "w": 66,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 66,
+ "h": 52
+ },
+ "frame": {
+ "x": 262,
+ "y": 323,
+ "w": 66,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 65,
+ "h": 52
+ },
+ "frame": {
+ "x": 328,
+ "y": 323,
+ "w": 65,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 393,
+ "y": 324,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 197,
+ "y": 332,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 262,
+ "y": 375,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 327,
+ "y": 375,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 19,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 392,
+ "y": 380,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 19,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 392,
+ "y": 380,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 65,
+ "h": 55
+ },
+ "frame": {
+ "x": 131,
+ "y": 333,
+ "w": 65,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 66,
+ "y": 338,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 65,
+ "y": 394,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 13,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 65,
+ "y": 394,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 65,
+ "y": 450,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 131,
+ "y": 388,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 65,
+ "h": 56
+ },
+ "frame": {
+ "x": 130,
+ "y": 441,
+ "w": 65,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 65,
+ "h": 53
+ },
+ "frame": {
+ "x": 196,
+ "y": 388,
+ "w": 65,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 51
+ },
+ "frame": {
+ "x": 195,
+ "y": 441,
+ "w": 65,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 65,
+ "h": 51
+ },
+ "frame": {
+ "x": 261,
+ "y": 428,
+ "w": 65,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 10,
+ "w": 51,
+ "h": 47
+ },
+ "frame": {
+ "x": 260,
+ "y": 479,
+ "w": 51,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 51,
+ "h": 47
+ },
+ "frame": {
+ "x": 260,
+ "y": 479,
+ "w": 51,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 25,
+ "w": 52,
+ "h": 48
+ },
+ "frame": {
+ "x": 326,
+ "y": 428,
+ "w": 52,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 25,
+ "w": 52,
+ "h": 48
+ },
+ "frame": {
+ "x": 326,
+ "y": 428,
+ "w": 52,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 326,
+ "y": 476,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 10,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 375,
+ "y": 476,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 13,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 466,
+ "y": 100,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 20,
+ "w": 47,
+ "h": 53
+ },
+ "frame": {
+ "x": 465,
+ "y": 146,
+ "w": 47,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 17,
+ "w": 47,
+ "h": 53
+ },
+ "frame": {
+ "x": 465,
+ "y": 199,
+ "w": 47,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 20,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 464,
+ "y": 252,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 13,
+ "w": 52,
+ "h": 46
+ },
+ "frame": {
+ "x": 459,
+ "y": 301,
+ "w": 52,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 20,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 458,
+ "y": 347,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 20,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 457,
+ "y": 396,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 23,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 457,
+ "y": 396,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 17,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 424,
+ "y": 445,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 17,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 424,
+ "y": 445,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 11,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 470,
+ "y": 445,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 67,
+ "h": 75
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 14,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 470,
+ "y": 445,
+ "w": 49,
+ "h": 49
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:b94ea03e33978b1acfa443487dab5ed5:505403ea6e08d8f47707dca3e030c7c7:940f904821041481572d765abbc53d9e$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/92_3.png b/public/images/pokemon/variant/92_3.png
new file mode 100644
index 00000000000..4839b2d4ce6
Binary files /dev/null and b/public/images/pokemon/variant/92_3.png differ
diff --git a/public/images/pokemon/variant/93.json b/public/images/pokemon/variant/93.json
new file mode 100644
index 00000000000..21243b8f93d
--- /dev/null
+++ b/public/images/pokemon/variant/93.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "845a6b": "8e699a",
+ "524263": "52426b",
+ "ad6bce": "caaddf",
+ "101010": "101010",
+ "c58cce": "dfcaee",
+ "b51919": "2963d6",
+ "de4a31": "5a94ff",
+ "d6d6d6": "d6d6d6",
+ "ffffff": "ffffff",
+ "d6a5de": "d6a5e6",
+ "6b0000": "0831a5"
+ },
+ "1": {
+ "845a6b": "631b3f",
+ "524263": "380508",
+ "ad6bce": "8e395f",
+ "101010": "101010",
+ "c58cce": "c06380",
+ "b51919": "7ee75c",
+ "de4a31": "e4f67c",
+ "d6d6d6": "d6d6d6",
+ "ffffff": "ffffff",
+ "d6a5de": "ef8d9f",
+ "6b0000": "2eb063"
+ },
+ "2": {
+ "845a6b": "302433",
+ "524263": "1a1320",
+ "ad6bce": "4c4354",
+ "101010": "101010",
+ "c58cce": "82748c",
+ "b51919": "e47750",
+ "de4a31": "fae277",
+ "d6d6d6": "d6d6d6",
+ "ffffff": "ffffff",
+ "d6a5de": "d6a5e6",
+ "6b0000": "b72b47"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/94-gigantamax.json b/public/images/pokemon/variant/94-gigantamax.json
new file mode 100644
index 00000000000..2e9d2f5824c
--- /dev/null
+++ b/public/images/pokemon/variant/94-gigantamax.json
@@ -0,0 +1,19 @@
+{
+ "0": {
+ "5a4a9c": "a89dc4",
+ "4a294a": "091659",
+ "b48bbd": "fefefe",
+ "101010": "101010",
+ "9473b4": "fcf4fc",
+ "7b62a4": "d1bcd6",
+ "ff8337": "010202",
+ "ffff00": "21252a",
+ "cc1e5b": "2963d6",
+ "fff6ff": "fff6ff",
+ "bdacbd": "bdacbd",
+ "ba325a": "352936",
+ "920634": "143e92",
+ "743a5b": "7492d5",
+ "963e80": "8aabe6"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/94-gigantamax_2.json b/public/images/pokemon/variant/94-gigantamax_2.json
new file mode 100644
index 00000000000..fd060ba3f8f
--- /dev/null
+++ b/public/images/pokemon/variant/94-gigantamax_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "94-gigantamax_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 94,
+ "h": 94
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 96,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 94,
+ "h": 90
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 94,
+ "h": 90
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:693c7aaecf54514d636ef3204a582580:ce78e7fb6122afd536d03487542768e9:aceaa58c9b70b96e94517e8c8d918eb7$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/94-gigantamax_2.png b/public/images/pokemon/variant/94-gigantamax_2.png
new file mode 100644
index 00000000000..008536206d1
Binary files /dev/null and b/public/images/pokemon/variant/94-gigantamax_2.png differ
diff --git a/public/images/pokemon/variant/94-gigantamax_3.json b/public/images/pokemon/variant/94-gigantamax_3.json
new file mode 100644
index 00000000000..2101ac6b22f
--- /dev/null
+++ b/public/images/pokemon/variant/94-gigantamax_3.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "94-gigantamax_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 94,
+ "h": 94
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 96,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 94,
+ "h": 90
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 94,
+ "h": 90
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:693c7aaecf54514d636ef3204a582580:ce78e7fb6122afd536d03487542768e9:aceaa58c9b70b96e94517e8c8d918eb7$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/94-gigantamax_3.png b/public/images/pokemon/variant/94-gigantamax_3.png
new file mode 100644
index 00000000000..91247d2373b
Binary files /dev/null and b/public/images/pokemon/variant/94-gigantamax_3.png differ
diff --git a/public/images/pokemon/variant/94-mega_1.json b/public/images/pokemon/variant/94-mega_1.json
new file mode 100644
index 00000000000..7b4fa4a42d3
--- /dev/null
+++ b/public/images/pokemon/variant/94-mega_1.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "94-mega_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 70,
+ "h": 70
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 70,
+ "h": 62
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 62
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 62
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:2625ff5b05664622225606759cdbda20:602cd604eb13f02d090d4c1dd30b531c:304b53f4bd4197620ff0b30b83d929a9$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/94-mega_1.png b/public/images/pokemon/variant/94-mega_1.png
new file mode 100644
index 00000000000..5484a0b7f61
Binary files /dev/null and b/public/images/pokemon/variant/94-mega_1.png differ
diff --git a/public/images/pokemon/variant/94-mega_2.json b/public/images/pokemon/variant/94-mega_2.json
new file mode 100644
index 00000000000..72da651ab64
--- /dev/null
+++ b/public/images/pokemon/variant/94-mega_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "94-mega_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 70,
+ "h": 70
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 70,
+ "h": 62
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 62
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 62
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:2625ff5b05664622225606759cdbda20:602cd604eb13f02d090d4c1dd30b531c:304b53f4bd4197620ff0b30b83d929a9$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/94-mega_2.png b/public/images/pokemon/variant/94-mega_2.png
new file mode 100644
index 00000000000..12890419db2
Binary files /dev/null and b/public/images/pokemon/variant/94-mega_2.png differ
diff --git a/public/images/pokemon/variant/94-mega_3.json b/public/images/pokemon/variant/94-mega_3.json
new file mode 100644
index 00000000000..493d3e39cbd
--- /dev/null
+++ b/public/images/pokemon/variant/94-mega_3.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "94-mega_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 70,
+ "h": 70
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 70,
+ "h": 62
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 62
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 70,
+ "h": 62
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:2625ff5b05664622225606759cdbda20:602cd604eb13f02d090d4c1dd30b531c:304b53f4bd4197620ff0b30b83d929a9$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/94-mega_3.png b/public/images/pokemon/variant/94-mega_3.png
new file mode 100644
index 00000000000..7abb2c15a6f
Binary files /dev/null and b/public/images/pokemon/variant/94-mega_3.png differ
diff --git a/public/images/pokemon/variant/94.json b/public/images/pokemon/variant/94.json
new file mode 100644
index 00000000000..c1d7c6358ae
--- /dev/null
+++ b/public/images/pokemon/variant/94.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "5a4a9c": "9e85a6",
+ "4a294a": "634b63",
+ "b58cbd": "ebdbf7",
+ "101010": "101010",
+ "9473b5": "cbb7da",
+ "7b63a5": "d1bcd6",
+ "ff5a5a": "2963d6",
+ "ff9494": "5a94ff",
+ "bdadbd": "bdadbd",
+ "fff7ff": "ffffff",
+ "6b637b": "6b637b",
+ "ded6de": "dedede"
+ },
+ "1": {
+ "5a4a9c": "4a1f36",
+ "4a294a": "1b0917",
+ "b58cbd": "c56f8a",
+ "101010": "101010",
+ "9473b5": "8d3e61",
+ "7b63a5": "6f284a",
+ "ff5a5a": "e79c39",
+ "ff9494": "ffd96b",
+ "bdadbd": "5ed244",
+ "fff7ff": "e4f67c",
+ "6b637b": "2eb063",
+ "ded6de": "7ee75c"
+ },
+ "2": {
+ "5a4a9c": "302433",
+ "4a294a": "1a1320",
+ "b58cbd": "7b6888",
+ "101010": "101010",
+ "9473b5": "3f324a",
+ "7b63a5": "3b2b3e",
+ "ff5a5a": "a9223d",
+ "ff9494": "f4855d",
+ "bdadbd": "e47750",
+ "fff7ff": "fae277",
+ "6b637b": "b72b47",
+ "ded6de": "d06843"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/962.json b/public/images/pokemon/variant/962.json
new file mode 100644
index 00000000000..53dfdb4f11b
--- /dev/null
+++ b/public/images/pokemon/variant/962.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "342930": "3e1d26",
+ "4a3942": "60354a",
+ "0f0f0f": "0f0f0f",
+ "665b60": "924f57",
+ "b9aaaf": "dd9f9d",
+ "efe3e1": "f6cbc4",
+ "937d85": "b1686b",
+ "501d25": "1f3078",
+ "4d4a4b": "982b39",
+ "993e49": "4473d2",
+ "e64c62": "4592c0",
+ "fffbff": "fceff1",
+ "a7aba7": "ddcac6",
+ "7b827b": "998482"
+ },
+ "1": {
+ "342930": "1e382a",
+ "4a3942": "395740",
+ "0f0f0f": "0f0f0f",
+ "665b60": "404b22",
+ "b9aaaf": "c6ca8e",
+ "efe3e1": "e8e8c0",
+ "937d85": "6b7e50",
+ "501d25": "3e1e1d",
+ "4d4a4b": "aa2233",
+ "993e49": "79433f",
+ "e64c62": "b37e6f",
+ "fffbff": "edf8e6",
+ "a7aba7": "98a798",
+ "7b827b": "6a856a"
+ },
+ "2": {
+ "342930": "754156",
+ "4a3942": "a5777f",
+ "0f0f0f": "0f0f0f",
+ "665b60": "211f45",
+ "b9aaaf": "453863",
+ "efe3e1": "67548a",
+ "937d85": "2f2655",
+ "501d25": "545151",
+ "4d4a4b": "c84800",
+ "993e49": "797877",
+ "e64c62": "aba7a8",
+ "fffbff": "f7e5d0",
+ "a7aba7": "ddac84",
+ "7b827b": "a96c4b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/967.json b/public/images/pokemon/variant/967.json
new file mode 100644
index 00000000000..749a838584f
--- /dev/null
+++ b/public/images/pokemon/variant/967.json
@@ -0,0 +1,18 @@
+{
+ "1": {
+ "384a35": "464354",
+ "1c2916": "272431",
+ "54654e": "67637a",
+ "b9b7b3": "b9b7b3",
+ "0f0f0f": "0f0f0f",
+ "f16b32": "bead9d",
+ "607d6d": "6e76a9",
+ "75b07d": "9299c7",
+ "fcfcfc": "fcfcfc",
+ "34453d": "444a71",
+ "323943": "323943",
+ "222328": "222328",
+ "4b565c": "4b565c",
+ "e2e9d7": "e2e9d7"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/973_1.json b/public/images/pokemon/variant/973_1.json
new file mode 100644
index 00000000000..abfde94f9a8
--- /dev/null
+++ b/public/images/pokemon/variant/973_1.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "973_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 75,
+ "h": 75
+ },
+ "scale": 0.5,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 96,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 31,
+ "y": 10,
+ "w": 34,
+ "h": 75
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 34,
+ "h": 75
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:d342b803d73821d411f8988513e0d121:5fb42ccf70a7b8a4da70f89012187d63:472dc53f35b95906d428729ab78e115f$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/973_1.png b/public/images/pokemon/variant/973_1.png
new file mode 100644
index 00000000000..cb10f82b4e5
Binary files /dev/null and b/public/images/pokemon/variant/973_1.png differ
diff --git a/public/images/pokemon/variant/973_2.json b/public/images/pokemon/variant/973_2.json
new file mode 100644
index 00000000000..9f037f36128
--- /dev/null
+++ b/public/images/pokemon/variant/973_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "973_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 75,
+ "h": 75
+ },
+ "scale": 0.5,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 96,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 31,
+ "y": 10,
+ "w": 34,
+ "h": 75
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 34,
+ "h": 75
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:d342b803d73821d411f8988513e0d121:5fb42ccf70a7b8a4da70f89012187d63:472dc53f35b95906d428729ab78e115f$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/973_2.png b/public/images/pokemon/variant/973_2.png
new file mode 100644
index 00000000000..0e0ed775104
Binary files /dev/null and b/public/images/pokemon/variant/973_2.png differ
diff --git a/public/images/pokemon/variant/973_3.json b/public/images/pokemon/variant/973_3.json
new file mode 100644
index 00000000000..cbb71cca945
--- /dev/null
+++ b/public/images/pokemon/variant/973_3.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "973_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 75,
+ "h": 75
+ },
+ "scale": 0.5,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 96,
+ "h": 96
+ },
+ "spriteSourceSize": {
+ "x": 31,
+ "y": 10,
+ "w": 34,
+ "h": 75
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 34,
+ "h": 75
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:d342b803d73821d411f8988513e0d121:5fb42ccf70a7b8a4da70f89012187d63:472dc53f35b95906d428729ab78e115f$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/973_3.png b/public/images/pokemon/variant/973_3.png
new file mode 100644
index 00000000000..07c09415b98
Binary files /dev/null and b/public/images/pokemon/variant/973_3.png differ
diff --git a/public/images/pokemon/variant/987.json b/public/images/pokemon/variant/987.json
new file mode 100644
index 00000000000..d05c49d8f07
--- /dev/null
+++ b/public/images/pokemon/variant/987.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "8a378a": "9b490e",
+ "ee93e8": "ffdd67",
+ "0f0f0f": "0f0f0f",
+ "314a62": "244260",
+ "182941": "132443",
+ "b36cc1": "d3941a",
+ "70bbb4": "5bb6ef",
+ "4a83a4": "387fa7",
+ "621841": "71370f",
+ "de62a4": "ffc668",
+ "a4295a": "cc762f",
+ "bd9431": "cb79dd",
+ "eee662": "ffc7ff",
+ "f9f9f9": "f9f9f9"
+ },
+ "1": {
+ "8a378a": "0c8086",
+ "ee93e8": "3df7ed",
+ "0f0f0f": "0f0f0f",
+ "314a62": "7396b4",
+ "182941": "2c384d",
+ "b36cc1": "1dbdb9",
+ "70bbb4": "eefff8",
+ "4a83a4": "a1c8db",
+ "621841": "7b3c08",
+ "de62a4": "ffdf90",
+ "a4295a": "e28c27",
+ "bd9431": "66d0e5",
+ "eee662": "a6f0f8",
+ "f9f9f9": "f9f9f9"
+ },
+ "2": {
+ "8a378a": "5d4a2f",
+ "ee93e8": "fff7dd",
+ "0f0f0f": "0f0f0f",
+ "314a62": "b56f2a",
+ "182941": "603305",
+ "b36cc1": "eece8c",
+ "70bbb4": "f8d371",
+ "4a83a4": "e6aa47",
+ "621841": "5a0a05",
+ "de62a4": "e25038",
+ "a4295a": "a62a21",
+ "bd9431": "66d0e5",
+ "eee662": "a6f0f8",
+ "f9f9f9": "f9f9f9"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/999.json b/public/images/pokemon/variant/999.json
new file mode 100644
index 00000000000..a0cbb5f322a
--- /dev/null
+++ b/public/images/pokemon/variant/999.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "323437": "531f03",
+ "836c54": "8d0341",
+ "4f4333": "38001c",
+ "545b6b": "1e2e60",
+ "ddc126": "d52d70",
+ "783a52": "4b0f01",
+ "0f0f0f": "0f0f0f",
+ "ac4454": "ab461e",
+ "bfa33e": "bc1457",
+ "8a8f9f": "34497e",
+ "b9becd": "5e86c2",
+ "bac4d8": "757a8b",
+ "7a82a9": "5e647a",
+ "a59227": "da8259",
+ "745527": "a44418"
+ },
+ "1": {
+ "323437": "1d2c54",
+ "836c54": "29354e",
+ "4f4333": "131c3b",
+ "545b6b": "415073",
+ "ddc126": "728295",
+ "783a52": "4f2e5c",
+ "0f0f0f": "0f0f0f",
+ "ac4454": "794e83",
+ "bfa33e": "485466",
+ "8a8f9f": "8bb0ab",
+ "b9becd": "afd2ca",
+ "bac4d8": "bac4d8",
+ "7a82a9": "7a82a9",
+ "a59227": "9c9cbe",
+ "745527": "302d62"
+ },
+ "2": {
+ "323437": "212857",
+ "836c54": "152848",
+ "4f4333": "0c1b40",
+ "545b6b": "6467a8",
+ "ddc126": "4e85bf",
+ "783a52": "6d6594",
+ "0f0f0f": "0f0f0f",
+ "ac4454": "bcb9d6",
+ "bfa33e": "294f7e",
+ "8a8f9f": "a5ace8",
+ "b9becd": "dae0f3",
+ "bac4d8": "bac4d8",
+ "7a82a9": "7a82a9",
+ "a59227": "b6d0d7",
+ "745527": "1c394d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/_masterlist.json b/public/images/pokemon/variant/_masterlist.json
new file mode 100644
index 00000000000..740e0120f13
--- /dev/null
+++ b/public/images/pokemon/variant/_masterlist.json
@@ -0,0 +1,1773 @@
+{
+ "46": [
+ 1,
+ 1,
+ 1
+ ],
+ "47": [
+ 1,
+ 1,
+ 1
+ ],
+ "52-gigantamax": [
+ 1,
+ 1,
+ 1
+ ],
+ "52": [
+ 1,
+ 1,
+ 1
+ ],
+ "53": [
+ 1,
+ 1,
+ 1
+ ],
+ "69": [
+ 0,
+ 2,
+ 0
+ ],
+ "70": [
+ 0,
+ 1,
+ 0
+ ],
+ "71": [
+ 0,
+ 1,
+ 0
+ ],
+ "86": [
+ 1,
+ 1,
+ 1
+ ],
+ "87": [
+ 1,
+ 1,
+ 1
+ ],
+ "92": [
+ 2,
+ 2,
+ 2
+ ],
+ "93": [
+ 1,
+ 1,
+ 1
+ ],
+ "94-gigantamax": [
+ 1,
+ 2,
+ 2
+ ],
+ "94-mega": [
+ 2,
+ 2,
+ 2
+ ],
+ "94": [
+ 1,
+ 1,
+ 1
+ ],
+ "113": [
+ 2,
+ 2,
+ 2
+ ],
+ "131-gigantamax": [
+ 0,
+ 1,
+ 1
+ ],
+ "131": [
+ 0,
+ 1,
+ 1
+ ],
+ "133": [
+ 0,
+ 1,
+ 1
+ ],
+ "134": [
+ 0,
+ 1,
+ 1
+ ],
+ "135": [
+ 1,
+ 1,
+ 1
+ ],
+ "136": [
+ 1,
+ 1,
+ 1
+ ],
+ "144": [
+ 1,
+ 2,
+ 2
+ ],
+ "145": [
+ 1,
+ 1,
+ 1
+ ],
+ "146": [
+ 1,
+ 1,
+ 1
+ ],
+ "147": [
+ 0,
+ 1,
+ 1
+ ],
+ "148": [
+ 0,
+ 1,
+ 1
+ ],
+ "149": [
+ 0,
+ 1,
+ 1
+ ],
+ "151": [
+ 0,
+ 1,
+ 1
+ ],
+ "175": [
+ 1,
+ 1,
+ 1
+ ],
+ "176": [
+ 1,
+ 1,
+ 1
+ ],
+ "179": [
+ 0,
+ 1,
+ 1
+ ],
+ "180": [
+ 0,
+ 2,
+ 2
+ ],
+ "181-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "181": [
+ 0,
+ 1,
+ 1
+ ],
+ "196": [
+ 1,
+ 1,
+ 1
+ ],
+ "200": [
+ 1,
+ 1,
+ 1
+ ],
+ "242": [
+ 2,
+ 2,
+ 2
+ ],
+ "243": [
+ 0,
+ 1,
+ 1
+ ],
+ "244": [
+ 0,
+ 2,
+ 2
+ ],
+ "245": [
+ 0,
+ 1,
+ 1
+ ],
+ "249": [
+ 0,
+ 2,
+ 2
+ ],
+ "250": [
+ 0,
+ 2,
+ 2
+ ],
+ "251": [
+ 0,
+ 1,
+ 1
+ ],
+ "263": [
+ 0,
+ 1,
+ 1
+ ],
+ "264": [
+ 0,
+ 1,
+ 1
+ ],
+ "303-mega": [
+ 0,
+ 2,
+ 2
+ ],
+ "303": [
+ 1,
+ 1,
+ 1
+ ],
+ "307": [
+ 0,
+ 1,
+ 1
+ ],
+ "308-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "308": [
+ 0,
+ 2,
+ 1
+ ],
+ "328": [
+ 0,
+ 1,
+ 1
+ ],
+ "329": [
+ 0,
+ 1,
+ 2
+ ],
+ "330": [
+ 0,
+ 1,
+ 1
+ ],
+ "333": [
+ 0,
+ 1,
+ 1
+ ],
+ "334-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "334": [
+ 0,
+ 2,
+ 2
+ ],
+ "352": [
+ 1,
+ 1,
+ 1
+ ],
+ "358": [
+ 2,
+ 1,
+ 1
+ ],
+ "384-mega": [
+ 0,
+ 2,
+ 1
+ ],
+ "384": [
+ 0,
+ 1,
+ 1
+ ],
+ "385": [
+ 1,
+ 1,
+ 1
+ ],
+ "429": [
+ 1,
+ 1,
+ 1
+ ],
+ "433": [
+ 1,
+ 1,
+ 1
+ ],
+ "440": [
+ 1,
+ 1,
+ 2
+ ],
+ "443": [
+ 1,
+ 1,
+ 1
+ ],
+ "444": [
+ 1,
+ 1,
+ 1
+ ],
+ "445-mega": [
+ 1,
+ 1,
+ 1
+ ],
+ "445": [
+ 1,
+ 1,
+ 1
+ ],
+ "468": [
+ 1,
+ 1,
+ 1
+ ],
+ "470": [
+ 1,
+ 1,
+ 1
+ ],
+ "471": [
+ 1,
+ 2,
+ 2
+ ],
+ "488": [
+ 0,
+ 1,
+ 1
+ ],
+ "489": [
+ 1,
+ 1,
+ 1
+ ],
+ "490": [
+ 1,
+ 1,
+ 1
+ ],
+ "492-land": [
+ 0,
+ 2,
+ 1
+ ],
+ "492-sky": [
+ 0,
+ 1,
+ 1
+ ],
+ "494": [
+ 0,
+ 1,
+ 1
+ ],
+ "538": [
+ 0,
+ 1,
+ 1
+ ],
+ "546": [
+ 0,
+ 1,
+ 1
+ ],
+ "547": [
+ 0,
+ 1,
+ 1
+ ],
+ "548": [
+ 1,
+ 1,
+ 1
+ ],
+ "549": [
+ 0,
+ 1,
+ 2
+ ],
+ "559": [
+ 1,
+ 1,
+ 1
+ ],
+ "560": [
+ 1,
+ 1,
+ 1
+ ],
+ "570": [
+ 0,
+ 1,
+ 1
+ ],
+ "571": [
+ 0,
+ 1,
+ 1
+ ],
+ "572": [
+ 0,
+ 1,
+ 1
+ ],
+ "577": [
+ 1,
+ 1,
+ 1
+ ],
+ "578": [
+ 1,
+ 1,
+ 1
+ ],
+ "579": [
+ 1,
+ 1,
+ 1
+ ],
+ "641-incarnate": [
+ 1,
+ 0,
+ 0
+ ],
+ "641-therian": [
+ 1,
+ 0,
+ 0
+ ],
+ "642-incarnate": [
+ 1,
+ 0,
+ 0
+ ],
+ "642-therian": [
+ 1,
+ 0,
+ 0
+ ],
+ "645-incarnate": [
+ 1,
+ 0,
+ 0
+ ],
+ "645-therian": [
+ 1,
+ 0,
+ 0
+ ],
+ "700": [
+ 0,
+ 1,
+ 1
+ ],
+ "704": [
+ 0,
+ 1,
+ 1
+ ],
+ "705": [
+ 0,
+ 1,
+ 1
+ ],
+ "706": [
+ 0,
+ 1,
+ 1
+ ],
+ "708": [
+ 0,
+ 1,
+ 1
+ ],
+ "709": [
+ 0,
+ 1,
+ 1
+ ],
+ "710": [
+ 0,
+ 1,
+ 1
+ ],
+ "711": [
+ 1,
+ 1,
+ 1
+ ],
+ "720-unbound": [
+ 1,
+ 1,
+ 1
+ ],
+ "720": [
+ 1,
+ 1,
+ 1
+ ],
+ "747": [
+ 0,
+ 1,
+ 1
+ ],
+ "748": [
+ 0,
+ 1,
+ 1
+ ],
+ "802": [
+ 1,
+ 1,
+ 1
+ ],
+ "856": [
+ 0,
+ 1,
+ 1
+ ],
+ "857": [
+ 0,
+ 2,
+ 2
+ ],
+ "858": [
+ 0,
+ 1,
+ 1
+ ],
+ "872": [
+ 1,
+ 1,
+ 1
+ ],
+ "873": [
+ 1,
+ 1,
+ 1
+ ],
+ "877-hangry": [
+ 1,
+ 1,
+ 1
+ ],
+ "877": [
+ 1,
+ 1,
+ 1
+ ],
+ "885": [
+ 1,
+ 1,
+ 1
+ ],
+ "886": [
+ 1,
+ 1,
+ 1
+ ],
+ "887": [
+ 2,
+ 1,
+ 1
+ ],
+ "962": [
+ 1,
+ 1,
+ 1
+ ],
+ "967": [
+ 0,
+ 1,
+ 0
+ ],
+ "973": [
+ 2,
+ 2,
+ 2
+ ],
+ "987": [
+ 1,
+ 1,
+ 1
+ ],
+ "999": [
+ 1,
+ 1,
+ 1
+ ],
+ "1000": [
+ 1,
+ 1,
+ 1
+ ],
+ "4263": [
+ 0,
+ 1,
+ 1
+ ],
+ "4264": [
+ 0,
+ 1,
+ 1
+ ],
+ "6549": [
+ 0,
+ 1,
+ 1
+ ],
+ "6570": [
+ 0,
+ 1,
+ 1
+ ],
+ "6571": [
+ 0,
+ 1,
+ 1
+ ],
+ "6705": [
+ 0,
+ 1,
+ 1
+ ],
+ "6706": [
+ 0,
+ 2,
+ 2
+ ],
+ "female": {
+ "308": [
+ 0,
+ 1,
+ 1
+ ],
+ "443": [
+ 1,
+ 1,
+ 1
+ ],
+ "444": [
+ 1,
+ 1,
+ 1
+ ],
+ "445": [
+ 1,
+ 1,
+ 1
+ ]
+ },
+ "back": {
+ "46": [
+ 1,
+ 1,
+ 1
+ ],
+ "47": [
+ 1,
+ 1,
+ 1
+ ],
+ "52-gigantamax": [
+ 1,
+ 1,
+ 1
+ ],
+ "52": [
+ 1,
+ 1,
+ 1
+ ],
+ "53": [
+ 1,
+ 1,
+ 1
+ ],
+ "69": [
+ 0,
+ 1,
+ 0
+ ],
+ "70": [
+ 0,
+ 1,
+ 0
+ ],
+ "71": [
+ 0,
+ 1,
+ 0
+ ],
+ "86": [
+ 1,
+ 1,
+ 1
+ ],
+ "87": [
+ 1,
+ 1,
+ 1
+ ],
+ "92": [
+ 2,
+ 2,
+ 2
+ ],
+ "93": [
+ 1,
+ 1,
+ 1
+ ],
+ "94-gigantamax": [
+ 1,
+ 1,
+ 1
+ ],
+ "94-mega": [
+ 1,
+ 1,
+ 1
+ ],
+ "94": [
+ 1,
+ 1,
+ 1
+ ],
+ "113": [
+ 1,
+ 1,
+ 1
+ ],
+ "131-gigantamax": [
+ 0,
+ 1,
+ 1
+ ],
+ "131": [
+ 0,
+ 1,
+ 1
+ ],
+ "133": [
+ 0,
+ 1,
+ 1
+ ],
+ "134": [
+ 0,
+ 1,
+ 1
+ ],
+ "136": [
+ 1,
+ 1,
+ 1
+ ],
+ "144": [
+ 1,
+ 1,
+ 1
+ ],
+ "145": [
+ 1,
+ 1,
+ 1
+ ],
+ "146": [
+ 1,
+ 1,
+ 1
+ ],
+ "147": [
+ 0,
+ 1,
+ 1
+ ],
+ "148": [
+ 0,
+ 1,
+ 1
+ ],
+ "149": [
+ 0,
+ 1,
+ 1
+ ],
+ "151": [
+ 0,
+ 1,
+ 1
+ ],
+ "175": [
+ 1,
+ 1,
+ 1
+ ],
+ "176": [
+ 1,
+ 1,
+ 1
+ ],
+ "179": [
+ 0,
+ 1,
+ 1
+ ],
+ "180": [
+ 0,
+ 1,
+ 1
+ ],
+ "181-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "181": [
+ 0,
+ 1,
+ 1
+ ],
+ "196": [
+ 1,
+ 1,
+ 1
+ ],
+ "200": [
+ 1,
+ 2,
+ 2
+ ],
+ "242": [
+ 1,
+ 1,
+ 1
+ ],
+ "243": [
+ 0,
+ 1,
+ 1
+ ],
+ "244": [
+ 0,
+ 2,
+ 2
+ ],
+ "245": [
+ 0,
+ 1,
+ 1
+ ],
+ "249": [
+ 0,
+ 1,
+ 1
+ ],
+ "250": [
+ 0,
+ 1,
+ 1
+ ],
+ "251": [
+ 0,
+ 1,
+ 1
+ ],
+ "263": [
+ 0,
+ 1,
+ 1
+ ],
+ "264": [
+ 0,
+ 1,
+ 1
+ ],
+ "303-mega": [
+ 1,
+ 1,
+ 1
+ ],
+ "303": [
+ 1,
+ 1,
+ 1
+ ],
+ "307": [
+ 0,
+ 1,
+ 1
+ ],
+ "308-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "308": [
+ 0,
+ 1,
+ 1
+ ],
+ "328": [
+ 0,
+ 1,
+ 1
+ ],
+ "329": [
+ 0,
+ 1,
+ 1
+ ],
+ "330": [
+ 0,
+ 1,
+ 1
+ ],
+ "333": [
+ 0,
+ 1,
+ 1
+ ],
+ "334-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "334": [
+ 0,
+ 1,
+ 1
+ ],
+ "352": [
+ 1,
+ 1,
+ 1
+ ],
+ "358": [
+ 1,
+ 1,
+ 1
+ ],
+ "384-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "384": [
+ 0,
+ 1,
+ 1
+ ],
+ "385": [
+ 1,
+ 1,
+ 1
+ ],
+ "429": [
+ 1,
+ 1,
+ 1
+ ],
+ "433": [
+ 1,
+ 1,
+ 1
+ ],
+ "440": [
+ 1,
+ 1,
+ 1
+ ],
+ "443": [
+ 1,
+ 1,
+ 1
+ ],
+ "444": [
+ 1,
+ 1,
+ 1
+ ],
+ "445-mega": [
+ 1,
+ 1,
+ 1
+ ],
+ "445": [
+ 1,
+ 1,
+ 1
+ ],
+ "468": [
+ 1,
+ 1,
+ 1
+ ],
+ "470": [
+ 2,
+ 2,
+ 1
+ ],
+ "471": [
+ 1,
+ 1,
+ 1
+ ],
+ "488": [
+ 0,
+ 1,
+ 1
+ ],
+ "489": [
+ 1,
+ 1,
+ 1
+ ],
+ "490": [
+ 1,
+ 1,
+ 1
+ ],
+ "492-land": [
+ 0,
+ 1,
+ 1
+ ],
+ "492-sky": [
+ 0,
+ 1,
+ 1
+ ],
+ "494": [
+ 0,
+ 1,
+ 1
+ ],
+ "538": [
+ 0,
+ 1,
+ 1
+ ],
+ "546": [
+ 0,
+ 1,
+ 1
+ ],
+ "547": [
+ 0,
+ 1,
+ 1
+ ],
+ "548": [
+ 1,
+ 1,
+ 1
+ ],
+ "549": [
+ 0,
+ 1,
+ 1
+ ],
+ "559": [
+ 1,
+ 1,
+ 1
+ ],
+ "560": [
+ 1,
+ 1,
+ 1
+ ],
+ "570": [
+ 0,
+ 1,
+ 1
+ ],
+ "571": [
+ 0,
+ 1,
+ 1
+ ],
+ "572": [
+ 0,
+ 1,
+ 1
+ ],
+ "577": [
+ 1,
+ 1,
+ 1
+ ],
+ "578": [
+ 1,
+ 1,
+ 1
+ ],
+ "579": [
+ 1,
+ 1,
+ 1
+ ],
+ "641-incarnate": [
+ 1,
+ 0,
+ 0
+ ],
+ "641-therian": [
+ 1,
+ 0,
+ 0
+ ],
+ "642-incarnate": [
+ 1,
+ 0,
+ 0
+ ],
+ "642-therian": [
+ 1,
+ 0,
+ 0
+ ],
+ "645-incarnate": [
+ 1,
+ 0,
+ 0
+ ],
+ "645-therian": [
+ 1,
+ 0,
+ 0
+ ],
+ "700": [
+ 0,
+ 1,
+ 1
+ ],
+ "704": [
+ 0,
+ 1,
+ 1
+ ],
+ "705": [
+ 0,
+ 1,
+ 1
+ ],
+ "706": [
+ 0,
+ 1,
+ 1
+ ],
+ "708": [
+ 0,
+ 1,
+ 1
+ ],
+ "709": [
+ 0,
+ 1,
+ 1
+ ],
+ "710": [
+ 0,
+ 1,
+ 1
+ ],
+ "711": [
+ 1,
+ 1,
+ 1
+ ],
+ "720-unbound": [
+ 1,
+ 1,
+ 1
+ ],
+ "720": [
+ 1,
+ 1,
+ 1
+ ],
+ "747": [
+ 0,
+ 1,
+ 1
+ ],
+ "748": [
+ 0,
+ 1,
+ 1
+ ],
+ "802": [
+ 1,
+ 1,
+ 1
+ ],
+ "856": [
+ 0,
+ 1,
+ 1
+ ],
+ "857": [
+ 0,
+ 2,
+ 2
+ ],
+ "858": [
+ 0,
+ 1,
+ 1
+ ],
+ "872": [
+ 1,
+ 1,
+ 1
+ ],
+ "873": [
+ 1,
+ 1,
+ 1
+ ],
+ "877-hangry": [
+ 1,
+ 1,
+ 1
+ ],
+ "877": [
+ 1,
+ 1,
+ 1
+ ],
+ "885": [
+ 1,
+ 1,
+ 1
+ ],
+ "886": [
+ 1,
+ 1,
+ 1
+ ],
+ "887": [
+ 1,
+ 1,
+ 1
+ ],
+ "962": [
+ 1,
+ 1,
+ 1
+ ],
+ "967": [
+ 0,
+ 1,
+ 0
+ ],
+ "973": [
+ 1,
+ 1,
+ 1
+ ],
+ "987": [
+ 1,
+ 1,
+ 1
+ ],
+ "999": [
+ 1,
+ 1,
+ 1
+ ],
+ "1000": [
+ 1,
+ 1,
+ 1
+ ],
+ "4263": [
+ 0,
+ 1,
+ 1
+ ],
+ "4264": [
+ 0,
+ 1,
+ 1
+ ],
+ "6549": [
+ 0,
+ 1,
+ 1
+ ],
+ "6570": [
+ 0,
+ 1,
+ 1
+ ],
+ "6571": [
+ 0,
+ 1,
+ 1
+ ],
+ "6705": [
+ 0,
+ 1,
+ 1
+ ],
+ "6706": [
+ 0,
+ 2,
+ 2
+ ],
+ "female": {
+ "308": [
+ 0,
+ 1,
+ 1
+ ],
+ "443": [
+ 1,
+ 1,
+ 1
+ ],
+ "444": [
+ 1,
+ 1,
+ 1
+ ],
+ "445": [
+ 1,
+ 1,
+ 1
+ ]
+ }
+ },
+ "exp": {
+ "94-mega": [
+ 2,
+ 2,
+ 2
+ ],
+ "181-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "303-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "334-mega": [
+ 0,
+ 2,
+ 1
+ ],
+ "384-mega": [
+ 0,
+ 2,
+ 1
+ ],
+ "445-mega": [
+ 1,
+ 1,
+ 1
+ ],
+ "700": [
+ 0,
+ 1,
+ 1
+ ],
+ "704": [
+ 0,
+ 1,
+ 1
+ ],
+ "705": [
+ 0,
+ 2,
+ 2
+ ],
+ "706": [
+ 0,
+ 1,
+ 1
+ ],
+ "708": [
+ 0,
+ 1,
+ 1
+ ],
+ "709": [
+ 0,
+ 1,
+ 1
+ ],
+ "710": [
+ 0,
+ 1,
+ 1
+ ],
+ "711": [
+ 1,
+ 1,
+ 1
+ ],
+ "720-unbound": [
+ 1,
+ 1,
+ 1
+ ],
+ "720": [
+ 1,
+ 1,
+ 1
+ ],
+ "802": [
+ 1,
+ 1,
+ 1
+ ],
+ "856": [
+ 0,
+ 1,
+ 1
+ ],
+ "857": [
+ 0,
+ 2,
+ 2
+ ],
+ "858": [
+ 0,
+ 1,
+ 1
+ ],
+ "872": [
+ 1,
+ 1,
+ 1
+ ],
+ "873": [
+ 1,
+ 1,
+ 1
+ ],
+ "877-hangry": [
+ 1,
+ 1,
+ 1
+ ],
+ "877": [
+ 1,
+ 1,
+ 1
+ ],
+ "885": [
+ 1,
+ 1,
+ 1
+ ],
+ "886": [
+ 1,
+ 1,
+ 1
+ ],
+ "887": [
+ 1,
+ 1,
+ 1
+ ],
+ "962": [
+ 1,
+ 1,
+ 1
+ ],
+ "967": [
+ 0,
+ 1,
+ 0
+ ],
+ "973": [
+ 1,
+ 1,
+ 1
+ ],
+ "987": [
+ 1,
+ 1,
+ 1
+ ],
+ "999": [
+ 1,
+ 1,
+ 1
+ ],
+ "1000": [
+ 1,
+ 1,
+ 1
+ ],
+ "4263": [
+ 0,
+ 1,
+ 1
+ ],
+ "4264": [
+ 0,
+ 1,
+ 1
+ ],
+ "6549": [
+ 0,
+ 1,
+ 1
+ ],
+ "6570": [
+ 0,
+ 1,
+ 1
+ ],
+ "6571": [
+ 0,
+ 1,
+ 1
+ ],
+ "6705": [
+ 0,
+ 1,
+ 1
+ ],
+ "6706": [
+ 0,
+ 2,
+ 2
+ ],
+ "female": {},
+ "back": {
+ "94-mega": [
+ 1,
+ 1,
+ 1
+ ],
+ "181-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "303-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "334-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "384-mega": [
+ 0,
+ 1,
+ 1
+ ],
+ "445-mega": [
+ 1,
+ 1,
+ 1
+ ],
+ "700": [
+ 0,
+ 1,
+ 1
+ ],
+ "704": [
+ 0,
+ 1,
+ 1
+ ],
+ "705": [
+ 0,
+ 1,
+ 1
+ ],
+ "706": [
+ 0,
+ 1,
+ 1
+ ],
+ "708": [
+ 1,
+ 1,
+ 1
+ ],
+ "709": [
+ 1,
+ 1,
+ 1
+ ],
+ "710": [
+ 0,
+ 1,
+ 1
+ ],
+ "711": [
+ 1,
+ 1,
+ 1
+ ],
+ "720-unbound": [
+ 1,
+ 1,
+ 1
+ ],
+ "720": [
+ 1,
+ 1,
+ 1
+ ],
+ "802": [
+ 1,
+ 1,
+ 1
+ ],
+ "856": [
+ 0,
+ 1,
+ 1
+ ],
+ "857": [
+ 0,
+ 2,
+ 2
+ ],
+ "858": [
+ 0,
+ 1,
+ 1
+ ],
+ "872": [
+ 1,
+ 1,
+ 1
+ ],
+ "873": [
+ 1,
+ 1,
+ 1
+ ],
+ "877-hangry": [
+ 1,
+ 1,
+ 1
+ ],
+ "877": [
+ 1,
+ 1,
+ 1
+ ],
+ "885": [
+ 1,
+ 1,
+ 1
+ ],
+ "886": [
+ 1,
+ 1,
+ 1
+ ],
+ "887": [
+ 1,
+ 1,
+ 1
+ ],
+ "962": [
+ 1,
+ 1,
+ 2
+ ],
+ "967": [
+ 0,
+ 1,
+ 0
+ ],
+ "973": [
+ 1,
+ 1,
+ 1
+ ],
+ "987": [
+ 1,
+ 1,
+ 1
+ ],
+ "999": [
+ 1,
+ 1,
+ 1
+ ],
+ "1000": [
+ 1,
+ 1,
+ 1
+ ],
+ "4264": [
+ 0,
+ 1,
+ 1
+ ],
+ "6549": [
+ 0,
+ 1,
+ 1
+ ],
+ "6570": [
+ 1,
+ 1,
+ 0
+ ],
+ "6571": [
+ 0,
+ 1,
+ 1
+ ],
+ "6705": [
+ 0,
+ 1,
+ 1
+ ],
+ "6706": [
+ 0,
+ 2,
+ 2
+ ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/1000.json b/public/images/pokemon/variant/back/1000.json
new file mode 100644
index 00000000000..8149392d9b6
--- /dev/null
+++ b/public/images/pokemon/variant/back/1000.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "b78234": "a64700",
+ "121212": "121212",
+ "e0b81a": "d05c31",
+ "f9d95b": "ee883f",
+ "623c20": "6d1906",
+ "ffffff": "ffb667",
+ "b4a45e": "ad283f",
+ "918344": "601030",
+ "762534": "5d0d05",
+ "9c3e43": "6d1906",
+ "323437": "531f03",
+ "545b6b": "8f4a14",
+ "0f0f0f": "0f0f0f"
+ },
+ "1": {
+ "b78234": "7a4e5d",
+ "121212": "121212",
+ "e0b81a": "96747e",
+ "f9d95b": "e1ced1",
+ "623c20": "622f43",
+ "ffffff": "f3e3e4",
+ "b4a45e": "485466",
+ "918344": "29354e",
+ "762534": "513a59",
+ "9c3e43": "7f6086",
+ "323437": "1d2c54",
+ "545b6b": "415073",
+ "0f0f0f": "0f0f0f"
+ },
+ "2": {
+ "b78234": "5a9aa3",
+ "121212": "121212",
+ "e0b81a": "89d1d6",
+ "f9d95b": "e5fffc",
+ "623c20": "3d717b",
+ "ffffff": "ffffff",
+ "b4a45e": "36465f",
+ "918344": "1f3149",
+ "762534": "547995",
+ "9c3e43": "7e93b0",
+ "323437": "212857",
+ "545b6b": "495890",
+ "0f0f0f": "0f0f0f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/113.json b/public/images/pokemon/variant/back/113.json
new file mode 100644
index 00000000000..1d1a74731c7
--- /dev/null
+++ b/public/images/pokemon/variant/back/113.json
@@ -0,0 +1,29 @@
+{
+ "0": {
+ "e6737b": "ad65b0",
+ "ffd6d6": "f6caec",
+ "ffadad": "cc96c5",
+ "8c4242": "6b279e",
+ "101010": "101010",
+ "ff845a": "c164e4",
+ "ef5a31": "953fc7"
+ },
+ "1": {
+ "e6737b": "bd77ab",
+ "ffd6d6": "f8c8e3",
+ "ffadad": "e5a5ce",
+ "8c4242": "61020c",
+ "101010": "101010",
+ "ff845a": "d33128",
+ "ef5a31": "a3091a"
+ },
+ "2": {
+ "e6737b": "755b94",
+ "ffd6d6": "d7baec",
+ "ffadad": "ac8fc4",
+ "8c4242": "204b7d",
+ "101010": "101010",
+ "ff845a": "567bbf",
+ "ef5a31": "204b7d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/131-gigantamax.json b/public/images/pokemon/variant/back/131-gigantamax.json
new file mode 100644
index 00000000000..99ccd7f45d5
--- /dev/null
+++ b/public/images/pokemon/variant/back/131-gigantamax.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "184152": "133363",
+ "41a4e6": "85cfef",
+ "73c5f6": "ffc0e7",
+ "101010": "101010",
+ "397ba4": "3989b0",
+ "fffad6": "fffad6",
+ "51fffb": "ff8de5",
+ "8ba494": "a7b2ab",
+ "52526a": "3c1838",
+ "dec583": "dac99e",
+ "fefefe": "fefefe",
+ "d5cdc5": "cb88b0",
+ "a49494": "844a73",
+ "807573": "6b3768",
+ "f6deac": "f1e9d9"
+ },
+ "2": {
+ "184152": "06383e",
+ "41a4e6": "49b18c",
+ "73c5f6": "8bd3b6",
+ "101010": "101010",
+ "397ba4": "3a8770",
+ "fffad6": "fffad6",
+ "51fffb": "0085b2",
+ "8ba494": "8ca594",
+ "52526a": "282548",
+ "dec583": "baafaa",
+ "fefefe": "fefefe",
+ "d5cdc5": "969dbc",
+ "a49494": "666b8b",
+ "807573": "454565",
+ "f6deac": "e8e3e0"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/131.json b/public/images/pokemon/variant/back/131.json
new file mode 100644
index 00000000000..fc364e9a423
--- /dev/null
+++ b/public/images/pokemon/variant/back/131.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "194252": "133363",
+ "73c5f7": "c4f6ff",
+ "000000": "000000",
+ "42a5e6": "85cfef",
+ "3a7ba5": "408aaf",
+ "f7efe6": "f7efe6",
+ "6b5219": "b83e94",
+ "d6cec5": "cb88b0",
+ "8ca594": "a7b2ab",
+ "dec584": "dac99e",
+ "5a4a42": "5a4a42",
+ "52526b": "51264d",
+ "a59494": "844a73",
+ "f7dead": "f1e9d9"
+ },
+ "2": {
+ "194252": "06383e",
+ "73c5f7": "8bd3b6",
+ "000000": "000000",
+ "42a5e6": "49b18c",
+ "3a7ba5": "3a8770",
+ "f7efe6": "f7efe6",
+ "6b5219": "256fc4",
+ "d6cec5": "8289a9",
+ "8ca594": "8ca594",
+ "dec584": "baafaa",
+ "5a4a42": "574e49",
+ "52526b": "262641",
+ "a59494": "555a79",
+ "f7dead": "e8e3e0"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/133.json b/public/images/pokemon/variant/back/133.json
new file mode 100644
index 00000000000..d48eaad4364
--- /dev/null
+++ b/public/images/pokemon/variant/back/133.json
@@ -0,0 +1,22 @@
+{
+ "1": {
+ "734a4a": "13235c",
+ "523121": "0b1145",
+ "d69c4a": "90c1f1",
+ "a5634a": "5982b7",
+ "000000": "000000",
+ "ffe6ad": "d7ebff",
+ "bd9c7b": "5f6f94",
+ "e6c594": "8ca8d2"
+ },
+ "2": {
+ "734a4a": "5e3372",
+ "523121": "461144",
+ "d69c4a": "bf88cb",
+ "a5634a": "915ea3",
+ "000000": "000000",
+ "ffe6ad": "f3e6e3",
+ "bd9c7b": "a07c83",
+ "e6c594": "cfa7a9"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/134.json b/public/images/pokemon/variant/back/134.json
new file mode 100644
index 00000000000..736a9262847
--- /dev/null
+++ b/public/images/pokemon/variant/back/134.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "101010": "101010",
+ "104a63": "26185f",
+ "bdad5a": "a26b30",
+ "107394": "372194",
+ "6b6321": "663a18",
+ "ffe6a5": "f4cb60",
+ "429cbd": "6d4ca3",
+ "5ac5e6": "9c73d2",
+ "84deff": "c497e5"
+ },
+ "2": {
+ "101010": "101010",
+ "104a63": "742921",
+ "bdad5a": "7d2f67",
+ "107394": "983930",
+ "6b6321": "4a1642",
+ "ffe6a5": "a65687",
+ "429cbd": "b06b25",
+ "5ac5e6": "d9a34e",
+ "84deff": "e1c66e"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/136.json b/public/images/pokemon/variant/back/136.json
new file mode 100644
index 00000000000..41987721533
--- /dev/null
+++ b/public/images/pokemon/variant/back/136.json
@@ -0,0 +1,32 @@
+{
+ "0": {
+ "732119": "64391a",
+ "000000": "000000",
+ "f7734a": "e6af4a",
+ "d64252": "b1772e",
+ "735a42": "5e4828",
+ "ffefa5": "f5f4e2",
+ "debd8c": "e5d9c3",
+ "c5a56b": "ac9276"
+ },
+ "1": {
+ "732119": "1b5255",
+ "000000": "000000",
+ "f7734a": "5dde9d",
+ "d64252": "3aad8b",
+ "735a42": "766a5b",
+ "ffefa5": "f5f3df",
+ "debd8c": "d9c9ac",
+ "c5a56b": "b1a58c"
+ },
+ "2": {
+ "732119": "4c0013",
+ "000000": "000000",
+ "f7734a": "b54144",
+ "d64252": "8c2426",
+ "735a42": "2d252a",
+ "ffefa5": "a89da0",
+ "debd8c": "82787c",
+ "c5a56b": "564c51"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/144.json b/public/images/pokemon/variant/back/144.json
new file mode 100644
index 00000000000..b7d8968da76
--- /dev/null
+++ b/public/images/pokemon/variant/back/144.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "005273": "461660",
+ "6badf7": "d7adff",
+ "94c5ff": "f1dfff",
+ "000000": "000000",
+ "4a84d6": "7b42ab",
+ "003152": "461660",
+ "007bbd": "a142c8",
+ "ffffff": "ffffff",
+ "cecece": "cecece",
+ "5a3a19": "221531",
+ "bd293a": "2d6cb0",
+ "b59473": "736581",
+ "8c6b52": "372841",
+ "cee6ff": "f1dfff",
+ "525252": "525252"
+ },
+ "1": {
+ "005273": "4d0a3e",
+ "6badf7": "ae5290",
+ "94c5ff": "ffbee5",
+ "000000": "000000",
+ "4a84d6": "6a1657",
+ "003152": "380334",
+ "007bbd": "ad6297",
+ "ffffff": "ffffff",
+ "cecece": "cecece",
+ "5a3a19": "652b0f",
+ "bd293a": "bd293a",
+ "b59473": "d99c5e",
+ "8c6b52": "a9652f",
+ "cee6ff": "ffd4e9",
+ "525252": "525252"
+ },
+ "2": {
+ "005273": "904d00",
+ "6badf7": "ffe67c",
+ "94c5ff": "ffecbd",
+ "000000": "000000",
+ "4a84d6": "e9b93f",
+ "003152": "552b01",
+ "007bbd": "fdc44c",
+ "ffffff": "ffffff",
+ "cecece": "cecece",
+ "5a3a19": "492a11",
+ "bd293a": "bd293a",
+ "b59473": "a08d74",
+ "8c6b52": "7d6447",
+ "cee6ff": "fff8d7",
+ "525252": "525252"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/145.json b/public/images/pokemon/variant/back/145.json
new file mode 100644
index 00000000000..cd1b65a8cb7
--- /dev/null
+++ b/public/images/pokemon/variant/back/145.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "9c7b10": "972a06",
+ "101010": "000000",
+ "ffd642": "ff914f",
+ "523a10": "700700",
+ "d6ad08": "cc4e17",
+ "c56b19": "513131",
+ "7b6b19": "2f1517",
+ "6b6b6b": "6b6b6b",
+ "ffffff": "ffffff",
+ "9c8c31": "643738",
+ "f79419": "6c4645"
+ },
+ "1": {
+ "9c7b10": "c0814c",
+ "101010": "000000",
+ "ffd642": "ffead3",
+ "523a10": "753d1a",
+ "d6ad08": "e3b68e",
+ "c56b19": "dd6b10",
+ "7b6b19": "885024",
+ "6b6b6b": "6b6b6b",
+ "ffffff": "ffffff",
+ "9c8c31": "a06532",
+ "f79419": "ff9a33"
+ },
+ "2": {
+ "9c7b10": "660065",
+ "101010": "000000",
+ "ffd642": "fe66ed",
+ "523a10": "400045",
+ "d6ad08": "a32a71",
+ "c56b19": "c992cb",
+ "7b6b19": "970083",
+ "6b6b6b": "6b6b6b",
+ "ffffff": "ffffff",
+ "9c8c31": "ce24a8",
+ "f79419": "ffdeff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/146.json b/public/images/pokemon/variant/back/146.json
new file mode 100644
index 00000000000..55f5cd03506
--- /dev/null
+++ b/public/images/pokemon/variant/back/146.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "ef633a": "b60437",
+ "734210": "431d43",
+ "d60808": "7f010b",
+ "ffa54a": "e01291",
+ "ffc54a": "512d4e",
+ "ffd663": "ff3bac",
+ "de9410": "431d43",
+ "ffef63": "755c73",
+ "000000": "000000",
+ "523a29": "57004d",
+ "8c634a": "8c0c75",
+ "ffffff": "ffffff",
+ "b58c63": "dd2559",
+ "cecece": "cecece",
+ "636363": "636363"
+ },
+ "1": {
+ "ef633a": "0ab10c",
+ "734210": "706127",
+ "d60808": "00877f",
+ "ffa54a": "90e932",
+ "ffc54a": "f1eca3",
+ "ffd663": "fffa4c",
+ "de9410": "c2b562",
+ "ffef63": "feffe1",
+ "000000": "000000",
+ "523a29": "840000",
+ "8c634a": "ad1910",
+ "ffffff": "ffffff",
+ "b58c63": "de423a",
+ "cecece": "cecece",
+ "636363": "636363"
+ },
+ "2": {
+ "ef633a": "1377b3",
+ "734210": "0c4f6b",
+ "d60808": "053889",
+ "ffa54a": "26b1e1",
+ "ffc54a": "9dd5ff",
+ "ffd663": "68fffd",
+ "de9410": "58abdb",
+ "ffef63": "dae9ff",
+ "000000": "000000",
+ "523a29": "3e0b03",
+ "8c634a": "78230b",
+ "ffffff": "ffffff",
+ "b58c63": "b05329",
+ "cecece": "cecece",
+ "636363": "636363"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/147.json b/public/images/pokemon/variant/back/147.json
new file mode 100644
index 00000000000..3373e281cc0
--- /dev/null
+++ b/public/images/pokemon/variant/back/147.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "5a5a5a": "54787d",
+ "9c948c": "79a2a3",
+ "000000": "000000",
+ "ffffff": "def1ef",
+ "ded6de": "a2c7c7",
+ "5a63bd": "b24729",
+ "8c9cf7": "eca340",
+ "293184": "a82d17",
+ "7384d6": "cb6933"
+ },
+ "2": {
+ "5a5a5a": "8c7270",
+ "9c948c": "c2a7a3",
+ "000000": "000000",
+ "ffffff": "fff5f0",
+ "ded6de": "dfc8c2",
+ "5a63bd": "328f97",
+ "8c9cf7": "74e3be",
+ "293184": "1b5f6f",
+ "7384d6": "44b7a9"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/148.json b/public/images/pokemon/variant/back/148.json
new file mode 100644
index 00000000000..db6cfd69857
--- /dev/null
+++ b/public/images/pokemon/variant/back/148.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "5a525a": "54787d",
+ "a59ca5": "79a2a3",
+ "ffffff": "def1ef",
+ "ded6de": "a2c7c7",
+ "4a6bc5": "ce4736",
+ "193173": "90150c",
+ "7badff": "ffad67",
+ "5a8cef": "f48c59",
+ "000000": "000000",
+ "425aff": "359bbd",
+ "7bceff": "61cce2",
+ "19297b": "1b6794"
+ },
+ "2": {
+ "5a525a": "895e5c",
+ "a59ca5": "c29490",
+ "ffffff": "ffedde",
+ "ded6de": "deb8ab",
+ "4a6bc5": "3c8289",
+ "193173": "1b5f6f",
+ "7badff": "90eacc",
+ "5a8cef": "4aab9f",
+ "000000": "000000",
+ "425aff": "b930bc",
+ "7bceff": "f86ebf",
+ "19297b": "971f7d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/149.json b/public/images/pokemon/variant/back/149.json
new file mode 100644
index 00000000000..ff4a7a77a21
--- /dev/null
+++ b/public/images/pokemon/variant/back/149.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "5a3a21": "102908",
+ "ffefbd": "def1ef",
+ "f7bd5a": "f8b58f",
+ "000000": "000000",
+ "ef9c3a": "e9917b",
+ "de733a": "d15b67",
+ "9c5a4a": "5a394e",
+ "efbd8c": "a2c7c7",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "ad8c42": "79a2a3",
+ "636363": "636363"
+ },
+ "2": {
+ "5a3a21": "102908",
+ "ffefbd": "f8dfce",
+ "f7bd5a": "8ed9c4",
+ "000000": "000000",
+ "ef9c3a": "56a29e",
+ "de733a": "35656d",
+ "9c5a4a": "134050",
+ "efbd8c": "c0a59d",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "ad8c42": "895e5c",
+ "636363": "636363"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/151.json b/public/images/pokemon/variant/back/151.json
new file mode 100644
index 00000000000..822e201bc18
--- /dev/null
+++ b/public/images/pokemon/variant/back/151.json
@@ -0,0 +1,20 @@
+{
+ "1": {
+ "5a2952": "5c2da1",
+ "ef84b5": "ab87cf",
+ "b56394": "895ac3",
+ "000000": "000000",
+ "ffb5d6": "d3b8e8",
+ "ffd6ef": "eed7fa",
+ "f7b584": "e86140"
+ },
+ "2": {
+ "5a2952": "884c17",
+ "ef84b5": "edaf5b",
+ "b56394": "ba7324",
+ "000000": "000000",
+ "ffb5d6": "ffdd98",
+ "ffd6ef": "ffeeb6",
+ "f7b584": "55716f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/175.json b/public/images/pokemon/variant/back/175.json
new file mode 100644
index 00000000000..897a5189daf
--- /dev/null
+++ b/public/images/pokemon/variant/back/175.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "94735a": "844466",
+ "734a4a": "5b2847",
+ "000000": "000000",
+ "ce9c73": "a7738f",
+ "f7d6a5": "e4b2bb",
+ "f7efc5": "f7c9c5",
+ "7b8c94": "9c8c84",
+ "d6dede": "ded6d6",
+ "b5b5c5": "c5b5b5",
+ "ffffff": "ffffff",
+ "de736b": "8ee4be",
+ "c54242": "409e80",
+ "4a84c5": "d05887",
+ "3163ad": "9e4065"
+ },
+ "1": {
+ "94735a": "734350",
+ "734a4a": "452030",
+ "000000": "000000",
+ "ce9c73": "a26867",
+ "f7d6a5": "be868a",
+ "f7efc5": "f7c5ce",
+ "7b8c94": "9c8c84",
+ "d6dede": "c8afaf",
+ "b5b5c5": "a68a8c",
+ "ffffff": "ead3cb",
+ "de736b": "f5b55e",
+ "c54242": "d08d39",
+ "4a84c5": "f19a4e",
+ "3163ad": "d26425"
+ },
+ "2": {
+ "94735a": "404d5b",
+ "734a4a": "1f293b",
+ "000000": "000000",
+ "ce9c73": "8093a5",
+ "f7d6a5": "afc2d1",
+ "f7efc5": "ddeaef",
+ "7b8c94": "9c8c84",
+ "d6dede": "e7c5bb",
+ "b5b5c5": "c3a5a1",
+ "ffffff": "ffeae3",
+ "de736b": "f39a4c",
+ "c54242": "d97741",
+ "4a84c5": "e89fe5",
+ "3163ad": "db79db"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/176.json b/public/images/pokemon/variant/back/176.json
new file mode 100644
index 00000000000..43e27a02cda
--- /dev/null
+++ b/public/images/pokemon/variant/back/176.json
@@ -0,0 +1,29 @@
+{
+ "0": {
+ "737b84": "6b3552",
+ "000000": "000000",
+ "ffffff": "eee0db",
+ "adc5bd": "b58f8f",
+ "d6efef": "d2bcb7",
+ "2994e6": "9e4065",
+ "1063bd": "8d2f5c"
+ },
+ "1": {
+ "737b84": "734350",
+ "000000": "000000",
+ "ffffff": "f3cbcb",
+ "adc5bd": "ae7675",
+ "d6efef": "c79397",
+ "2994e6": "c35c21",
+ "1063bd": "ad3d14"
+ },
+ "2": {
+ "737b84": "404d5b",
+ "000000": "000000",
+ "ffffff": "ddeaef",
+ "adc5bd": "8093a5",
+ "d6efef": "afc2d1",
+ "2994e6": "bb55bb",
+ "1063bd": "994ba3"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/179.json b/public/images/pokemon/variant/back/179.json
new file mode 100644
index 00000000000..e69e753ff93
--- /dev/null
+++ b/public/images/pokemon/variant/back/179.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "847352": "2e4663",
+ "101010": "101010",
+ "ceb58c": "5886a1",
+ "e6cea5": "6ab1b7",
+ "ffe6bd": "9adddd",
+ "e6ad00": "d53691",
+ "ffde00": "ee74c1",
+ "ffffff": "ffffff",
+ "a5a5a5": "a5a5a5",
+ "525252": "525252",
+ "b57b00": "b12173",
+ "004a94": "71396a",
+ "73c5f7": "f0c6dd",
+ "2194bd": "9f618f",
+ "42ade6": "d99bc2"
+ },
+ "2": {
+ "847352": "7c4012",
+ "101010": "101010",
+ "ceb58c": "c07f47",
+ "e6cea5": "cf9e50",
+ "ffe6bd": "efce80",
+ "e6ad00": "d26b00",
+ "ffde00": "fdba5b",
+ "ffffff": "ffffff",
+ "a5a5a5": "496491",
+ "525252": "263964",
+ "b57b00": "a23c00",
+ "004a94": "5d2615",
+ "73c5f7": "cd895d",
+ "2194bd": "884626",
+ "42ade6": "af673b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/180.json b/public/images/pokemon/variant/back/180.json
new file mode 100644
index 00000000000..2268bb3217a
--- /dev/null
+++ b/public/images/pokemon/variant/back/180.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "bdbdd6": "43747f",
+ "84738c": "2e4663",
+ "ffffff": "7ee3e3",
+ "dee6f7": "439ead",
+ "101010": "101010",
+ "4a4a5a": "17253b",
+ "de4263": "71396a",
+ "ff7373": "9f618f",
+ "ffa5a5": "d99bc2",
+ "a50010": "421c40",
+ "5284c5": "5284c5",
+ "84c5ff": "84c5ff",
+ "29428c": "29428c",
+ "ffbdbd": "ffbdbd"
+ },
+ "2": {
+ "bdbdd6": "9f6e39",
+ "84738c": "693806",
+ "ffffff": "ffe6aa",
+ "dee6f7": "ebbb78",
+ "101010": "101010",
+ "4a4a5a": "4d2102",
+ "de4263": "884626",
+ "ff7373": "9a5328",
+ "ffa5a5": "cd895d",
+ "a50010": "412101",
+ "5284c5": "d26b00",
+ "84c5ff": "fdba5b",
+ "29428c": "a23c00",
+ "ffbdbd": "dfa580"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/181-mega.json b/public/images/pokemon/variant/back/181-mega.json
new file mode 100644
index 00000000000..f2e844a67b4
--- /dev/null
+++ b/public/images/pokemon/variant/back/181-mega.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "737373": "39585d",
+ "f8f8f8": "baebeb",
+ "101010": "101010",
+ "bfbfbf": "8ebabe",
+ "bf370a": "d53691",
+ "734b22": "553168",
+ "b38324": "74418f",
+ "ff490d": "ee74c1",
+ "e5b82e": "9f62b0",
+ "ffe14c": "d19bd8",
+ "802506": "b12173"
+ },
+ "2": {
+ "737373": "5d412a",
+ "f8f8f8": "fff1d0",
+ "101010": "101010",
+ "bfbfbf": "ebbb78",
+ "bf370a": "d26b00",
+ "734b22": "49200d",
+ "b38324": "884626",
+ "ff490d": "ffab34",
+ "e5b82e": "af673b",
+ "ffe14c": "cd895d",
+ "802506": "a23c00"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/181.json b/public/images/pokemon/variant/back/181.json
new file mode 100644
index 00000000000..b0e8a220fd9
--- /dev/null
+++ b/public/images/pokemon/variant/back/181.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "101010": "101010",
+ "636b6b": "65383a",
+ "c54200": "d53691",
+ "ce8c10": "74418f",
+ "ffc510": "9f62b0",
+ "ff6300": "ee74c1",
+ "845a31": "553168",
+ "ffef4a": "d19bd8",
+ "adadad": "b38582",
+ "e6e6e6": "e6e6e6",
+ "ffffff": "ffffff",
+ "8c2100": "b12173"
+ },
+ "2": {
+ "101010": "101010",
+ "636b6b": "693806",
+ "c54200": "d26b00",
+ "ce8c10": "884626",
+ "ffc510": "af673b",
+ "ff6300": "fdba5b",
+ "845a31": "412101",
+ "ffef4a": "cd895d",
+ "adadad": "ebbb78",
+ "e6e6e6": "ffe6aa",
+ "ffffff": "ffffff",
+ "8c2100": "a23c00"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/196.json b/public/images/pokemon/variant/back/196.json
new file mode 100644
index 00000000000..fd930465c7f
--- /dev/null
+++ b/public/images/pokemon/variant/back/196.json
@@ -0,0 +1,29 @@
+{
+ "0": {
+ "7b4a7b": "204024",
+ "b57bb5": "416240",
+ "e6a5d6": "6c9e63",
+ "efbdef": "bddd9e",
+ "101010": "101010",
+ "314273": "a86a2c",
+ "4a73b5": "ffb554"
+ },
+ "1": {
+ "7b4a7b": "581747",
+ "b57bb5": "d1759c",
+ "e6a5d6": "e99eae",
+ "efbdef": "d2a2b5",
+ "101010": "101010",
+ "314273": "537fde",
+ "4a73b5": "90b7f9"
+ },
+ "2": {
+ "7b4a7b": "9b5250",
+ "b57bb5": "ce987a",
+ "e6a5d6": "ded0af",
+ "efbdef": "f5f3e1",
+ "101010": "101010",
+ "314273": "194540",
+ "4a73b5": "39816d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/200.json b/public/images/pokemon/variant/back/200.json
new file mode 100644
index 00000000000..2e11c0eeb76
--- /dev/null
+++ b/public/images/pokemon/variant/back/200.json
@@ -0,0 +1,12 @@
+{
+ "0": {
+ "9c3a4a": "cc762f",
+ "631942": "71370f",
+ "de63a5": "f6b557",
+ "101010": "101010",
+ "192942": "432e69",
+ "3a6384": "8366ab",
+ "314a63": "603f90",
+ "a5295a": "d3941a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/200_2.json b/public/images/pokemon/variant/back/200_2.json
new file mode 100644
index 00000000000..312495f34f3
--- /dev/null
+++ b/public/images/pokemon/variant/back/200_2.json
@@ -0,0 +1,2036 @@
+{
+ "textures": [
+ {
+ "image": "200_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 213,
+ "h": 213
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 42,
+ "y": 45,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 42,
+ "y": 45,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 42,
+ "y": 45,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 88,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 88,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 88,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 83,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 83,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 83,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 86,
+ "y": 163,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 86,
+ "y": 163,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 86,
+ "y": 163,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 130,
+ "y": 45,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 130,
+ "y": 45,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 130,
+ "y": 45,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:078e69c27acb6c62ba85961d35bd1060:b2cf7204026e5b19faa165eb9103e415:8913e1da983bf3973b5300963e92c3e6$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/200_2.png b/public/images/pokemon/variant/back/200_2.png
new file mode 100644
index 00000000000..0702c2596e1
Binary files /dev/null and b/public/images/pokemon/variant/back/200_2.png differ
diff --git a/public/images/pokemon/variant/back/200_3.json b/public/images/pokemon/variant/back/200_3.json
new file mode 100644
index 00000000000..e52675c83dd
--- /dev/null
+++ b/public/images/pokemon/variant/back/200_3.json
@@ -0,0 +1,2036 @@
+{
+ "textures": [
+ {
+ "image": "200_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 213,
+ "h": 213
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 3,
+ "w": 42,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 42,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 14,
+ "w": 43,
+ "h": 45
+ },
+ "frame": {
+ "x": 42,
+ "y": 0,
+ "w": 43,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 47,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 94,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 5,
+ "w": 41,
+ "h": 47
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 41,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 85,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 43,
+ "h": 44
+ },
+ "frame": {
+ "x": 128,
+ "y": 0,
+ "w": 43,
+ "h": 44
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 10,
+ "w": 42,
+ "h": 45
+ },
+ "frame": {
+ "x": 171,
+ "y": 0,
+ "w": 42,
+ "h": 45
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 24,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 44,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 42,
+ "y": 45,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 42,
+ "y": 45,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 42,
+ "y": 45,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 88,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 88,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 43,
+ "h": 43
+ },
+ "frame": {
+ "x": 41,
+ "y": 88,
+ "w": 43,
+ "h": 43
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 41,
+ "y": 131,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 23,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 41,
+ "y": 173,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 83,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 83,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 85,
+ "y": 83,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 16,
+ "w": 45,
+ "h": 41
+ },
+ "frame": {
+ "x": 85,
+ "y": 122,
+ "w": 45,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 86,
+ "y": 163,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 86,
+ "y": 163,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 86,
+ "y": 163,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 130,
+ "y": 45,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 130,
+ "y": 45,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 44,
+ "h": 42
+ },
+ "frame": {
+ "x": 130,
+ "y": 45,
+ "w": 44,
+ "h": 42
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 45,
+ "h": 40
+ },
+ "frame": {
+ "x": 130,
+ "y": 87,
+ "w": 45,
+ "h": 40
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 22,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 45,
+ "h": 63
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 21,
+ "w": 45,
+ "h": 39
+ },
+ "frame": {
+ "x": 130,
+ "y": 127,
+ "w": 45,
+ "h": 39
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:078e69c27acb6c62ba85961d35bd1060:b2cf7204026e5b19faa165eb9103e415:8913e1da983bf3973b5300963e92c3e6$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/200_3.png b/public/images/pokemon/variant/back/200_3.png
new file mode 100644
index 00000000000..0f7b4a5fd05
Binary files /dev/null and b/public/images/pokemon/variant/back/200_3.png differ
diff --git a/public/images/pokemon/variant/back/242.json b/public/images/pokemon/variant/back/242.json
new file mode 100644
index 00000000000..9333afa8335
--- /dev/null
+++ b/public/images/pokemon/variant/back/242.json
@@ -0,0 +1,38 @@
+{
+ "0": {
+ "8c3a42": "5d2c5c",
+ "c55a63": "a25f9c",
+ "ffadc5": "f6caec",
+ "de84a5": "cc96c5",
+ "ffc5ce": "ffdef4",
+ "101010": "101010",
+ "6b6b6b": "521259",
+ "b5b5b5": "6a1e76",
+ "ded6d6": "a462c4",
+ "ffffff": "df9ef7"
+ },
+ "1": {
+ "8c3a42": "572554",
+ "c55a63": "6d3666",
+ "ffadc5": "e5a5ce",
+ "de84a5": "bd77ab",
+ "ffc5ce": "ffd0eb",
+ "101010": "101010",
+ "6b6b6b": "48050c",
+ "b5b5b5": "60071d",
+ "ded6d6": "8b2d4e",
+ "ffffff": "b54e63"
+ },
+ "2": {
+ "8c3a42": "523a78",
+ "c55a63": "523a78",
+ "ffadc5": "ddbcf5",
+ "de84a5": "be98dd",
+ "ffc5ce": "f4daff",
+ "101010": "101010",
+ "6b6b6b": "201a4f",
+ "b5b5b5": "3f377f",
+ "ded6d6": "52489c",
+ "ffffff": "6b6fd2"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/243.json b/public/images/pokemon/variant/back/243.json
new file mode 100644
index 00000000000..ce3d36b9db3
--- /dev/null
+++ b/public/images/pokemon/variant/back/243.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "846ba5": "732c40",
+ "bd8cc5": "b74f57",
+ "101010": "101010",
+ "52296b": "481532",
+ "6b6b6b": "3c3c4e",
+ "ffffff": "f3dfdf",
+ "d6d6d6": "c7b0b2",
+ "9cd6ff": "ffb260",
+ "a5a5a5": "9b7b81",
+ "d69c29": "c55d3b",
+ "8c6310": "833000",
+ "c50000": "c50000",
+ "ffce42": "ff945c"
+ },
+ "2": {
+ "846ba5": "dc9779",
+ "bd8cc5": "f5d4c0",
+ "101010": "101010",
+ "52296b": "994d3d",
+ "6b6b6b": "3c3c4e",
+ "ffffff": "eed7cd",
+ "d6d6d6": "d0b0a7",
+ "9cd6ff": "ffb23a",
+ "a5a5a5": "ac8982",
+ "d69c29": "5278c7",
+ "8c6310": "2a4083",
+ "c50000": "c50000",
+ "ffce42": "8aade5"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/244_2.json b/public/images/pokemon/variant/back/244_2.json
new file mode 100644
index 00000000000..f0341f715d5
--- /dev/null
+++ b/public/images/pokemon/variant/back/244_2.json
@@ -0,0 +1,3170 @@
+{
+ "textures": [
+ {
+ "image": "244_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 358,
+ "h": 358
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 83,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 83,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 81,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 81,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 81,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 162,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 162,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 72,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 72,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 72,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 245,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 245,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 245,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0148.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0149.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0150.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0143.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 162,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0144.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 162,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 79,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 216,
+ "w": 79,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 79,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 216,
+ "w": 79,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 79,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 216,
+ "w": 79,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0145.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0146.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0147.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 80,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 287,
+ "w": 80,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 80,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 287,
+ "w": 80,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 80,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 287,
+ "w": 80,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 80,
+ "h": 71
+ },
+ "frame": {
+ "x": 161,
+ "y": 287,
+ "w": 80,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 80,
+ "h": 71
+ },
+ "frame": {
+ "x": 161,
+ "y": 287,
+ "w": 80,
+ "h": 71
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:59daf08637c0090a5c6cdba90a7d84b9:b0a80e3fdc0b35b52df415b02e6ae624:62b0725a7cb86a9ff140f99ac6e2af84$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/244_2.png b/public/images/pokemon/variant/back/244_2.png
new file mode 100644
index 00000000000..6244b6eb74c
Binary files /dev/null and b/public/images/pokemon/variant/back/244_2.png differ
diff --git a/public/images/pokemon/variant/back/244_3.json b/public/images/pokemon/variant/back/244_3.json
new file mode 100644
index 00000000000..9bcd10c635f
--- /dev/null
+++ b/public/images/pokemon/variant/back/244_3.json
@@ -0,0 +1,3170 @@
+{
+ "textures": [
+ {
+ "image": "244_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 358,
+ "h": 358
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 82,
+ "y": 72,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 83,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 83,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 81,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 81,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 81,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 162,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 162,
+ "y": 144,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 72,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 72,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 72
+ },
+ "frame": {
+ "x": 164,
+ "y": 72,
+ "w": 81,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 144,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 245,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 245,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ },
+ "frame": {
+ "x": 245,
+ "y": 0,
+ "w": 80,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0148.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0149.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0150.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 245,
+ "y": 72,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0143.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 162,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0144.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 162,
+ "y": 216,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 79,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 216,
+ "w": 79,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 79,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 216,
+ "w": 79,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 0,
+ "w": 79,
+ "h": 72
+ },
+ "frame": {
+ "x": 243,
+ "y": 216,
+ "w": 79,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0145.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0146.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0147.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 80,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 287,
+ "w": 80,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 80,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 287,
+ "w": 80,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 80,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 287,
+ "w": 80,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 80,
+ "h": 71
+ },
+ "frame": {
+ "x": 161,
+ "y": 287,
+ "w": 80,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 87,
+ "h": 72
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 80,
+ "h": 71
+ },
+ "frame": {
+ "x": 161,
+ "y": 287,
+ "w": 80,
+ "h": 71
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:59daf08637c0090a5c6cdba90a7d84b9:b0a80e3fdc0b35b52df415b02e6ae624:62b0725a7cb86a9ff140f99ac6e2af84$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/244_3.png b/public/images/pokemon/variant/back/244_3.png
new file mode 100644
index 00000000000..7e04e3d6086
Binary files /dev/null and b/public/images/pokemon/variant/back/244_3.png differ
diff --git a/public/images/pokemon/variant/back/245.json b/public/images/pokemon/variant/back/245.json
new file mode 100644
index 00000000000..638bfa96065
--- /dev/null
+++ b/public/images/pokemon/variant/back/245.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "31428c": "271a56",
+ "5a7bd6": "4c4097",
+ "7bbdff": "6b62c0",
+ "7b5ab5": "bd4530",
+ "101010": "101010",
+ "ad6bd6": "e56444",
+ "523a7b": "892015",
+ "c594de": "ff8e67",
+ "525252": "50224a",
+ "bdbdbd": "bb89a9",
+ "ffffff": "f7dfec",
+ "848484": "65395c",
+ "dedede": "e0b4ce",
+ "d61010": "d61010",
+ "bdefff": "9795d1"
+ },
+ "2": {
+ "31428c": "853e07",
+ "5a7bd6": "d67617",
+ "7bbdff": "f5ae42",
+ "7b5ab5": "863062",
+ "101010": "101010",
+ "ad6bd6": "c16792",
+ "523a7b": "40163c",
+ "c594de": "e8a0d2",
+ "525252": "48335b",
+ "bdbdbd": "b29cc0",
+ "ffffff": "fbecff",
+ "848484": "856c98",
+ "dedede": "dedede",
+ "d61010": "d61010",
+ "bdefff": "ffdf85"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/249.json b/public/images/pokemon/variant/back/249.json
new file mode 100644
index 00000000000..309f1d77b6b
--- /dev/null
+++ b/public/images/pokemon/variant/back/249.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "63737b": "1d3e41",
+ "9cade6": "326460",
+ "101010": "101010",
+ "ffffff": "bad8c9",
+ "b5c5f7": "447a6c",
+ "004284": "214f5f",
+ "0063bd": "0b202d",
+ "d6e6f7": "659c89",
+ "29318c": "1a3849",
+ "525aad": "438d9d",
+ "5a73ff": "1b3643"
+ },
+ "2": {
+ "63737b": "101010",
+ "9cade6": "18162b",
+ "101010": "101010",
+ "ffffff": "353043",
+ "b5c5f7": "211d33",
+ "004284": "7a7291",
+ "0063bd": "a39db5",
+ "d6e6f7": "292538",
+ "29318c": "7a7291",
+ "525aad": "a39db5",
+ "5a73ff": "b8b2c7"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/250.json b/public/images/pokemon/variant/back/250.json
new file mode 100644
index 00000000000..b9e8aa51ae7
--- /dev/null
+++ b/public/images/pokemon/variant/back/250.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "109410": "983912",
+ "940800": "340b27",
+ "ff5a10": "843974",
+ "9c6300": "592964",
+ "101010": "101010",
+ "42d652": "d6541f",
+ "ffde00": "e4bcef",
+ "dead00": "d28cda",
+ "b5ffbd": "ed8543",
+ "bd4210": "5b214b",
+ "ffef84": "f4deff",
+ "c5c5c5": "c5c5c5",
+ "ffffff": "ffffff",
+ "6b6b6b": "6b6b6b"
+ },
+ "2": {
+ "109410": "365869",
+ "940800": "0f0c3a",
+ "ff5a10": "222e57",
+ "9c6300": "95532c",
+ "101010": "101010",
+ "42d652": "3e95c9",
+ "ffde00": "e7aa6e",
+ "dead00": "c68046",
+ "b5ffbd": "77d7dd",
+ "bd4210": "1a2053",
+ "ffef84": "ffd59f",
+ "c5c5c5": "c5c5c5",
+ "ffffff": "ffffff",
+ "6b6b6b": "6b6b6b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/251.json b/public/images/pokemon/variant/back/251.json
new file mode 100644
index 00000000000..e5f01223e07
--- /dev/null
+++ b/public/images/pokemon/variant/back/251.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "73a531": "599b91",
+ "528cad": "9b296f",
+ "8cb5ce": "d763a0",
+ "a5de52": "9cc6ae",
+ "0063b5": "681151",
+ "c5dee6": "d89ab0",
+ "deef94": "f4e5d9",
+ "4a7321": "28696a",
+ "ffffde": "fff5f5",
+ "101010": "101010",
+ "b5c55a": "cbc5af",
+ "6b7384": "6b7384",
+ "ffffff": "ffffff"
+ },
+ "2": {
+ "73a531": "5f234e",
+ "528cad": "b52455",
+ "8cb5ce": "d8426a",
+ "a5de52": "8c387a",
+ "0063b5": "81144c",
+ "c5dee6": "a76d8b",
+ "deef94": "ba9aa9",
+ "4a7321": "3f0e2a",
+ "ffffde": "ffedf3",
+ "101010": "101010",
+ "b5c55a": "886580",
+ "6b7384": "64475e",
+ "ffffff": "eed9d9"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/263.json b/public/images/pokemon/variant/back/263.json
new file mode 100644
index 00000000000..782b8284aab
--- /dev/null
+++ b/public/images/pokemon/variant/back/263.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "424242": "481f4e",
+ "000000": "000000",
+ "73635a": "481f4e",
+ "b59c8c": "8e588f",
+ "bdad9c": "be94bb",
+ "947b6b": "85355a",
+ "e6dece": "e1c7dc",
+ "5a524a": "3c1332",
+ "ffffff": "ffffff",
+ "524231": "1795be",
+ "a51900": "a51900"
+ },
+ "2": {
+ "424242": "29155a",
+ "000000": "000000",
+ "73635a": "29155a",
+ "b59c8c": "aebcff",
+ "bdad9c": "3d2661",
+ "947b6b": "7e86d2",
+ "e6dece": "5f4e9c",
+ "5a524a": "40236c",
+ "ffffff": "ffffff",
+ "524231": "d0037a",
+ "a51900": "d0037a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/264.json b/public/images/pokemon/variant/back/264.json
new file mode 100644
index 00000000000..b6edee70ea4
--- /dev/null
+++ b/public/images/pokemon/variant/back/264.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "000000": "000000",
+ "ad9c8c": "be94bb",
+ "6b6363": "481f4e",
+ "5a4a3a": "59193d",
+ "decebd": "e1c7dc",
+ "846b5a": "85355a",
+ "a58c7b": "8e588f",
+ "296b94": "1795be",
+ "6badc5": "41f3ff",
+ "ffffff": "ffffff",
+ "423a21": "423a21",
+ "737373": "643369",
+ "94847b": "643369"
+ },
+ "2": {
+ "000000": "000000",
+ "ad9c8c": "3d2661",
+ "6b6363": "1e133e",
+ "5a4a3a": "465aab",
+ "decebd": "5f4e9c",
+ "846b5a": "90a2f4",
+ "a58c7b": "535db9",
+ "296b94": "d0037a",
+ "6badc5": "ff429b",
+ "ffffff": "ffffff",
+ "423a21": "423a21",
+ "737373": "210f4e",
+ "94847b": "210f4e"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/303-mega.json b/public/images/pokemon/variant/back/303-mega.json
new file mode 100644
index 00000000000..c09acab0335
--- /dev/null
+++ b/public/images/pokemon/variant/back/303-mega.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "000000": "000000",
+ "9ca494": "e175b4",
+ "737373": "c14c82",
+ "212121": "212121",
+ "4a4a4a": "6f264f",
+ "7b5a29": "7b5a29",
+ "ffc55a": "e4c997",
+ "cdcdcd": "cdcdcd",
+ "f8f8f8": "f8f8f8",
+ "984868": "1f194c",
+ "b86088": "31296a",
+ "de9441": "ad8867",
+ "9c4a6a": "34224e",
+ "bd628b": "4d3c71",
+ "732041": "201434"
+ },
+ "1": {
+ "000000": "000000",
+ "9ca494": "4fa285",
+ "737373": "347c7d",
+ "212121": "212121",
+ "4a4a4a": "193e49",
+ "7b5a29": "7b5a29",
+ "ffc55a": "d6c491",
+ "cdcdcd": "cdcdcd",
+ "f8f8f8": "f8f8f8",
+ "984868": "b53a29",
+ "b86088": "ff625a",
+ "de9441": "bc8a52",
+ "9c4a6a": "23445e",
+ "bd628b": "397189",
+ "732041": "162843"
+ },
+ "2": {
+ "000000": "000000",
+ "9ca494": "ba94e6",
+ "737373": "8a62d0",
+ "212121": "212121",
+ "4a4a4a": "332c76",
+ "7b5a29": "706d80",
+ "ffc55a": "cfc8e4",
+ "cdcdcd": "cdcdcd",
+ "f8f8f8": "f8f8f8",
+ "984868": "b53a29",
+ "b86088": "ff635a",
+ "de9441": "b1a3ca",
+ "9c4a6a": "4c3767",
+ "bd628b": "694c84",
+ "732041": "2b1c3f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/303-mega_1.json b/public/images/pokemon/variant/back/303-mega_1.json
new file mode 100644
index 00000000000..90f3e40d12c
--- /dev/null
+++ b/public/images/pokemon/variant/back/303-mega_1.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "303-mega_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 71,
+ "h": 71
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 71,
+ "h": 68
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 68
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:2d10e60122695a3f783df14c9a7935a1:d7b5ddc6da24f27369af566210d2b33b:766d7c57c0a0ceb3e322f87a608d6e58$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/303-mega_1.png b/public/images/pokemon/variant/back/303-mega_1.png
new file mode 100644
index 00000000000..833414c7fd7
Binary files /dev/null and b/public/images/pokemon/variant/back/303-mega_1.png differ
diff --git a/public/images/pokemon/variant/back/303-mega_2.json b/public/images/pokemon/variant/back/303-mega_2.json
new file mode 100644
index 00000000000..72f5b72bfb7
--- /dev/null
+++ b/public/images/pokemon/variant/back/303-mega_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "303-mega_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 71,
+ "h": 71
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 71,
+ "h": 68
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 68
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:2d10e60122695a3f783df14c9a7935a1:d7b5ddc6da24f27369af566210d2b33b:766d7c57c0a0ceb3e322f87a608d6e58$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/303-mega_2.png b/public/images/pokemon/variant/back/303-mega_2.png
new file mode 100644
index 00000000000..ebc335f8c60
Binary files /dev/null and b/public/images/pokemon/variant/back/303-mega_2.png differ
diff --git a/public/images/pokemon/variant/back/303-mega_3.json b/public/images/pokemon/variant/back/303-mega_3.json
new file mode 100644
index 00000000000..4f47079c998
--- /dev/null
+++ b/public/images/pokemon/variant/back/303-mega_3.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "303-mega_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 71,
+ "h": 71
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 71,
+ "h": 68
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 71,
+ "h": 68
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:2d10e60122695a3f783df14c9a7935a1:d7b5ddc6da24f27369af566210d2b33b:766d7c57c0a0ceb3e322f87a608d6e58$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/303-mega_3.png b/public/images/pokemon/variant/back/303-mega_3.png
new file mode 100644
index 00000000000..f1315b476c4
Binary files /dev/null and b/public/images/pokemon/variant/back/303-mega_3.png differ
diff --git a/public/images/pokemon/variant/back/303.json b/public/images/pokemon/variant/back/303.json
new file mode 100644
index 00000000000..477efdfbaa4
--- /dev/null
+++ b/public/images/pokemon/variant/back/303.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "4a4a4a": "6f264f",
+ "9ca594": "e175b4",
+ "000000": "101010",
+ "737373": "c14c82",
+ "9c4a6b": "1f194c",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "de9442": "ad8867",
+ "7b5a29": "764d32",
+ "ffc55a": "e4c997",
+ "d684ad": "4542b1"
+ },
+ "1": {
+ "4a4a4a": "193e49",
+ "9ca594": "4fa285",
+ "000000": "101010",
+ "737373": "347c7d",
+ "9c4a6b": "b53a29",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "de9442": "a99372",
+ "7b5a29": "6b5424",
+ "ffc55a": "d6c491",
+ "d684ad": "ff635a"
+ },
+ "2": {
+ "4a4a4a": "2a2279",
+ "9ca594": "c7a8eb",
+ "000000": "101010",
+ "737373": "9d7cd6",
+ "9c4a6b": "b53a29",
+ "cecece": "cecece",
+ "ffffff": "ffffff",
+ "de9442": "b1a3ca",
+ "7b5a29": "706d80",
+ "ffc55a": "cfc8e4",
+ "d684ad": "ff635a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/307.json b/public/images/pokemon/variant/back/307.json
new file mode 100644
index 00000000000..3c2ef92171c
--- /dev/null
+++ b/public/images/pokemon/variant/back/307.json
@@ -0,0 +1,22 @@
+{
+ "1": {
+ "7b6b6b": "314b76",
+ "b5adad": "677d98",
+ "e6dede": "c2cfdb",
+ "000000": "000000",
+ "3a84b5": "51876e",
+ "3a4a5a": "113926",
+ "6bcee6": "7edfb7",
+ "5aa5ce": "66c3a3"
+ },
+ "2": {
+ "7b6b6b": "7a5f5f",
+ "b5adad": "9f8383",
+ "e6dede": "deccc3",
+ "000000": "000000",
+ "3a84b5": "7e4377",
+ "3a4a5a": "5a2859",
+ "6bcee6": "f4a8c8",
+ "5aa5ce": "ce7bb0"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/308-mega.json b/public/images/pokemon/variant/back/308-mega.json
new file mode 100644
index 00000000000..3517d7853a9
--- /dev/null
+++ b/public/images/pokemon/variant/back/308-mega.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "101010": "101010",
+ "83414a": "59141d",
+ "8b838b": "5a4357",
+ "e6738b": "a53835",
+ "b44a5a": "83272c",
+ "bdafad": "a5829d",
+ "52414a": "432641",
+ "e7e3e7": "e0cdd9",
+ "f9f8f7": "f9f8f7",
+ "a47329": "722966",
+ "eebd5a": "a25793",
+ "f6de83": "ee9bd5",
+ "164b5d": "a6571b",
+ "42a2bd": "efa360"
+ },
+ "2": {
+ "101010": "101010",
+ "83414a": "461f5d",
+ "8b838b": "445a7e",
+ "e6738b": "7d5187",
+ "b44a5a": "633971",
+ "bdafad": "7988a6",
+ "52414a": "1f344a",
+ "e7e3e7": "abb7c6",
+ "f9f8f7": "c4dff1",
+ "a47329": "285181",
+ "eebd5a": "4983ad",
+ "f6de83": "5abbef",
+ "164b5d": "107270",
+ "42a2bd": "3dc7b6"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/308.json b/public/images/pokemon/variant/back/308.json
new file mode 100644
index 00000000000..d8a8e696541
--- /dev/null
+++ b/public/images/pokemon/variant/back/308.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "101010": "101010",
+ "84424a": "59141d",
+ "e6738c": "a53835",
+ "ce5a73": "8b2e2b",
+ "52424a": "5a4357",
+ "dedede": "e0cdd9",
+ "b54a5a": "83272c",
+ "8c848c": "966f8d",
+ "ada5ad": "a88da0",
+ "c5c5c5": "d1b6c7",
+ "a57329": "722966",
+ "efbd5a": "ce5cb6",
+ "f7de84": "ee9bd5"
+ },
+ "2": {
+ "101010": "101010",
+ "84424a": "311548",
+ "e6738c": "7d5187",
+ "ce5a73": "633971",
+ "52424a": "1f344a",
+ "dedede": "cbd0d6",
+ "b54a5a": "461f5d",
+ "8c848c": "576787",
+ "ada5ad": "7e8daa",
+ "c5c5c5": "c5c5c5",
+ "a57329": "205a9e",
+ "efbd5a": "3a8dca",
+ "f7de84": "5abbef"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/328.json b/public/images/pokemon/variant/back/328.json
new file mode 100644
index 00000000000..354371495b7
--- /dev/null
+++ b/public/images/pokemon/variant/back/328.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "c55a4a": "8fad68",
+ "734242": "254226",
+ "ef7342": "c9da97",
+ "ff947b": "ffffbc",
+ "212121": "212121",
+ "cecec5": "e99339",
+ "ffffff": "ffffff",
+ "a5ada5": "bc6427",
+ "848484": "89370b"
+ },
+ "2": {
+ "c55a4a": "3e9cb7",
+ "734242": "17465e",
+ "ef7342": "5dd7db",
+ "ff947b": "84f6e4",
+ "212121": "212121",
+ "cecec5": "e4a056",
+ "ffffff": "ffffff",
+ "a5ada5": "cd7537",
+ "848484": "a84e20"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/329.json b/public/images/pokemon/variant/back/329.json
new file mode 100644
index 00000000000..38397678f36
--- /dev/null
+++ b/public/images/pokemon/variant/back/329.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "000000": "101010",
+ "3a3a42": "89370b",
+ "6bc56b": "f6ea73",
+ "4a944a": "ddbe4c",
+ "4a524a": "bc6427",
+ "737352": "1e4320",
+ "bdad7b": "89af58",
+ "e6d68c": "b6cd74",
+ "bdbdde": "bdbdde",
+ "ffffff": "ffffff",
+ "ffffa5": "ffffb5"
+ },
+ "2": {
+ "000000": "101010",
+ "3a3a42": "a84e20",
+ "6bc56b": "5dd7db",
+ "4a944a": "3e9cb7",
+ "4a524a": "cd7537",
+ "737352": "2a658b",
+ "bdad7b": "69b0c8",
+ "e6d68c": "92ddf2",
+ "bdbdde": "bdbdde",
+ "ffffff": "ffffff",
+ "ffffa5": "ffffb5"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/330.json b/public/images/pokemon/variant/back/330.json
new file mode 100644
index 00000000000..9969647119d
--- /dev/null
+++ b/public/images/pokemon/variant/back/330.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "315a5a": "7a5703",
+ "84293a": "89370b",
+ "6ba573": "d8b430",
+ "ce3a4a": "bc6427",
+ "101010": "101010",
+ "5a7b52": "a07b0f",
+ "de6373": "e99339",
+ "94d69c": "f6e85f",
+ "b5de73": "90dd71",
+ "ffffff": "ffffff",
+ "8ca552": "58af58",
+ "526321": "426b31",
+ "deff8c": "d0f088"
+ },
+ "2": {
+ "315a5a": "171997",
+ "84293a": "a84e20",
+ "6ba573": "465fd4",
+ "ce3a4a": "cd7537",
+ "101010": "101010",
+ "5a7b52": "2836af",
+ "de6373": "f79021",
+ "94d69c": "80a1f5",
+ "b5de73": "94e3ff",
+ "ffffff": "ffffff",
+ "8ca552": "4dabe8",
+ "526321": "003c64",
+ "deff8c": "d7fff7"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/333.json b/public/images/pokemon/variant/back/333.json
new file mode 100644
index 00000000000..64d67f5b282
--- /dev/null
+++ b/public/images/pokemon/variant/back/333.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "5a94ce": "947dcf",
+ "3a6b84": "59377f",
+ "7bceff": "e9d9fa",
+ "63ade6": "cab1ec",
+ "101010": "101010",
+ "9c9cc5": "3f328d",
+ "ffffff": "80a1f1",
+ "cecee6": "5251bd",
+ "848494": "392166",
+ "5a5a73": "5a5a73"
+ },
+ "2": {
+ "5a94ce": "bc4e8b",
+ "3a6b84": "84265b",
+ "7bceff": "ff9ebd",
+ "63ade6": "e677a5",
+ "101010": "101010",
+ "9c9cc5": "bf6744",
+ "ffffff": "ffddb4",
+ "cecee6": "eb9d6a",
+ "848494": "892f26",
+ "5a5a73": "5a5a73"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/334-mega.json b/public/images/pokemon/variant/back/334-mega.json
new file mode 100644
index 00000000000..93a67bca961
--- /dev/null
+++ b/public/images/pokemon/variant/back/334-mega.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "73739c": "391768",
+ "acb4c5": "312f8c",
+ "fcfcfc": "7c99df",
+ "cdcde6": "52459e",
+ "dee6ee": "6362d3",
+ "ffc5ee": "4d3084",
+ "a4889f": "35134b",
+ "deadc4": "45256a",
+ "95d1e5": "e9d9fa",
+ "4b6973": "462a66",
+ "101010": "101010",
+ "74a3b3": "947dcf"
+ },
+ "2": {
+ "73739c": "b22f3f",
+ "acb4c5": "dd555a",
+ "fcfcfc": "ffddb4",
+ "cdcde6": "dd766d",
+ "dee6ee": "ec996c",
+ "ffc5ee": "e7536d",
+ "a4889f": "7c103a",
+ "deadc4": "c63057",
+ "95d1e5": "ff93ac",
+ "4b6973": "771743",
+ "101010": "101010",
+ "74a3b3": "cb457d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/334.json b/public/images/pokemon/variant/back/334.json
new file mode 100644
index 00000000000..fb032bb4190
--- /dev/null
+++ b/public/images/pokemon/variant/back/334.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "000000": "000000",
+ "4a6394": "59377f",
+ "109cce": "947dcf",
+ "5ac5ff": "dbc4fa",
+ "293a5a": "402359",
+ "9cdeff": "e9d9fa",
+ "ffffff": "80a1f1",
+ "cecee6": "5251bd",
+ "73739c": "301b65",
+ "dee6ef": "6463d8"
+ },
+ "2": {
+ "000000": "000000",
+ "4a6394": "84265b",
+ "109cce": "bc4e8b",
+ "5ac5ff": "ff9ebd",
+ "293a5a": "651447",
+ "9cdeff": "ffbbca",
+ "ffffff": "f5ce9e",
+ "cecee6": "ca714f",
+ "73739c": "a93926",
+ "dee6ef": "df9d63"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/352.json b/public/images/pokemon/variant/back/352.json
new file mode 100644
index 00000000000..565b4cf87d3
--- /dev/null
+++ b/public/images/pokemon/variant/back/352.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "a54284": "296389",
+ "73315a": "0e3354",
+ "8c7b5a": "824c0b",
+ "d663ad": "54a3ca",
+ "000000": "000000",
+ "f7ef7b": "f7dd7b",
+ "dec55a": "e5b740",
+ "bda552": "cd9a2b",
+ "42635a": "296161",
+ "5a9473": "418b87",
+ "5abd73": "5db5a8",
+ "7bd684": "9cefbc",
+ "ffffff": "ffffff"
+ },
+ "1": {
+ "a54284": "3d48b2",
+ "73315a": "202065",
+ "8c7b5a": "7b2577",
+ "d663ad": "8597d6",
+ "000000": "000000",
+ "f7ef7b": "ed7cd8",
+ "dec55a": "cb57b6",
+ "bda552": "962c8d",
+ "42635a": "762f0f",
+ "5a9473": "bd7932",
+ "5abd73": "e4ad46",
+ "7bd684": "ffd577",
+ "ffffff": "ffffff"
+ },
+ "2": {
+ "a54284": "64152b",
+ "73315a": "400e2a",
+ "8c7b5a": "307855",
+ "d663ad": "ab2f43",
+ "000000": "000000",
+ "f7ef7b": "affec6",
+ "dec55a": "7edb9f",
+ "bda552": "52b57a",
+ "42635a": "58214c",
+ "5a9473": "b45599",
+ "5abd73": "d775b5",
+ "7bd684": "f2a8d6",
+ "ffffff": "ffffff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/358.json b/public/images/pokemon/variant/back/358.json
new file mode 100644
index 00000000000..e0ad4916ffd
--- /dev/null
+++ b/public/images/pokemon/variant/back/358.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "a57352": "a57352",
+ "000000": "101010",
+ "e6a54a": "e6a54a",
+ "ffd65a": "ffce5a",
+ "ffe694": "ffe694",
+ "ffffff": "ffffff",
+ "424a6b": "3a1837",
+ "c5e6ff": "d8c8d9",
+ "9cc5e6": "c3b5c6",
+ "b5425a": "9b3587",
+ "f7527b": "e466ba",
+ "7b2942": "631d61",
+ "6b94b5": "8f7894"
+ },
+ "1": {
+ "a57352": "9f6f43",
+ "000000": "101010",
+ "e6a54a": "cca375",
+ "ffd65a": "ebd4b0",
+ "ffe694": "faedcd",
+ "ffffff": "ffffff",
+ "424a6b": "29346b",
+ "c5e6ff": "c5c2dc",
+ "9cc5e6": "afadcd",
+ "b5425a": "2f6e8c",
+ "f7527b": "4a94ad",
+ "7b2942": "1b4b69",
+ "6b94b5": "888ab1"
+ },
+ "2": {
+ "a57352": "934123",
+ "000000": "101010",
+ "e6a54a": "c86b3e",
+ "ffd65a": "ee9b65",
+ "ffe694": "f4c89d",
+ "ffffff": "ffffff",
+ "424a6b": "593a58",
+ "c5e6ff": "f7e6e5",
+ "9cc5e6": "e8d6d6",
+ "b5425a": "3a656c",
+ "f7527b": "4d8891",
+ "7b2942": "102837",
+ "6b94b5": "c29ea6"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/384-mega.json b/public/images/pokemon/variant/back/384-mega.json
new file mode 100644
index 00000000000..016c044b27f
--- /dev/null
+++ b/public/images/pokemon/variant/back/384-mega.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "fbe27e": "90f25d",
+ "fc9436": "3dc62f",
+ "836231": "064c1e",
+ "010101": "010101",
+ "f6de00": "4ff869",
+ "c5a400": "27c750",
+ "3d7d6d": "66637b",
+ "36b075": "b3aec1",
+ "22523e": "333554",
+ "e4b629": "27c750",
+ "60d293": "e4e0ee",
+ "3f3f3f": "333554",
+ "fcfcfc": "fcfcfc"
+ },
+ "2": {
+ "fbe27e": "17e2d6",
+ "fc9436": "098faf",
+ "836231": "121d31",
+ "010101": "010101",
+ "f6de00": "17e2d6",
+ "c5a400": "098faf",
+ "3d7d6d": "84120f",
+ "36b075": "ce3f2d",
+ "22523e": "650f04",
+ "e4b629": "098faf",
+ "60d293": "f18c5e",
+ "3f3f3f": "380100",
+ "fcfcfc": "fcfcfc"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/384.json b/public/images/pokemon/variant/back/384.json
new file mode 100644
index 00000000000..f4fc7855474
--- /dev/null
+++ b/public/images/pokemon/variant/back/384.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "295242": "333554",
+ "4a8473": "66637b",
+ "000000": "000000",
+ "5abd8c": "b3aec1",
+ "73293a": "064c1e",
+ "9c2952": "27c750",
+ "f7de00": "90f25d",
+ "c5a500": "4ebc28",
+ "846331": "188c0f",
+ "e65273": "4ff869",
+ "94deb5": "e4e0ee",
+ "ffffff": "ffffff",
+ "ded6ef": "ded6ef"
+ },
+ "2": {
+ "295242": "540709",
+ "4a8473": "821815",
+ "000000": "000000",
+ "5abd8c": "ca4636",
+ "73293a": "003b53",
+ "9c2952": "098faf",
+ "f7de00": "17e2d6",
+ "c5a500": "098faf",
+ "846331": "003082",
+ "e65273": "e65273",
+ "94deb5": "f18c5e",
+ "ffffff": "ffffff",
+ "ded6ef": "ded6ef"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/385.json b/public/images/pokemon/variant/back/385.json
new file mode 100644
index 00000000000..1bb728fe3d2
--- /dev/null
+++ b/public/images/pokemon/variant/back/385.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "ad8431": "925108",
+ "000000": "000000",
+ "ffff94": "f7e980",
+ "e6bd52": "db942d",
+ "ffe65a": "f3bf5c",
+ "317b8c": "c0173f",
+ "52adce": "e43f54",
+ "c5cede": "cea9b3",
+ "6b7373": "6e2d47",
+ "e6eff7": "ddd4d6",
+ "9ca5ad": "965771"
+ },
+ "1": {
+ "ad8431": "874100",
+ "000000": "000000",
+ "ffff94": "f7be5d",
+ "e6bd52": "ba670d",
+ "ffe65a": "de9128",
+ "317b8c": "194e2e",
+ "52adce": "459c5f",
+ "c5cede": "decbc5",
+ "6b7373": "816566",
+ "e6eff7": "f7ece6",
+ "9ca5ad": "ad9d9c"
+ },
+ "2": {
+ "ad8431": "234664",
+ "000000": "000000",
+ "ffff94": "b1dbe8",
+ "e6bd52": "427aa3",
+ "ffe65a": "6fb6da",
+ "317b8c": "6f1b61",
+ "52adce": "d256b7",
+ "c5cede": "d6c5de",
+ "6b7373": "7f6581",
+ "e6eff7": "eee6f7",
+ "9ca5ad": "aa9cad"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/4263.json b/public/images/pokemon/variant/back/4263.json
new file mode 100644
index 00000000000..c9d11566864
--- /dev/null
+++ b/public/images/pokemon/variant/back/4263.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "5b5958": "397e4a",
+ "010101": "010101",
+ "b2b3b2": "a3ce9e",
+ "f5f5f6": "f5ffea",
+ "3e4042": "01473a",
+ "60656a": "1c8155",
+ "1b2627": "002121",
+ "d94a7f": "d94a7f",
+ "fcfcfc": "fcfcfc",
+ "ee96b2": "ee96b2",
+ "6e3b51": "6e3b51",
+ "9b4f69": "9b4f69"
+ },
+ "2": {
+ "5b5958": "100d2d",
+ "010101": "010101",
+ "b2b3b2": "201b47",
+ "f5f5f6": "3c335d",
+ "3e4042": "412991",
+ "60656a": "8e5aef",
+ "1b2627": "201b47",
+ "d94a7f": "0099ce",
+ "fcfcfc": "fcfcfc",
+ "ee96b2": "54f1ff",
+ "6e3b51": "004a8b",
+ "9b4f69": "0099ce"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/4264.json b/public/images/pokemon/variant/back/4264.json
new file mode 100644
index 00000000000..ed5b3343df0
--- /dev/null
+++ b/public/images/pokemon/variant/back/4264.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "010101": "010101",
+ "abadaf": "95c090",
+ "797570": "579666",
+ "414141": "1c8155",
+ "1c1917": "1c1917",
+ "f5f5f6": "f5ffea",
+ "bc3065": "d414dd",
+ "322c29": "01473a",
+ "ff4e89": "ff69fa",
+ "68696a": "27323a",
+ "949496": "3d494e"
+ },
+ "2": {
+ "010101": "010101",
+ "abadaf": "1e1a3b",
+ "797570": "302373",
+ "414141": "7c4cd6",
+ "1c1917": "1c1917",
+ "f5f5f6": "342d4c",
+ "bc3065": "0099ce",
+ "322c29": "412991",
+ "ff4e89": "54f1ff",
+ "68696a": "2a1b4e",
+ "949496": "554576"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/429.json b/public/images/pokemon/variant/back/429.json
new file mode 100644
index 00000000000..77530e81c00
--- /dev/null
+++ b/public/images/pokemon/variant/back/429.json
@@ -0,0 +1,38 @@
+{
+ "0": {
+ "101010": "101010",
+ "b563b5": "ffdd67",
+ "5a4263": "9b490e",
+ "845284": "d3941a",
+ "4a3a5a": "244260",
+ "6b4a94": "387fa7",
+ "31213a": "112048",
+ "ef3a10": "cc762f",
+ "943a5a": "71370f",
+ "ffffff": "ffffff"
+ },
+ "1": {
+ "101010": "101010",
+ "b563b5": "3df7ed",
+ "5a4263": "0c8086",
+ "845284": "1dbdb9",
+ "4a3a5a": "7396b4",
+ "6b4a94": "a1c8db",
+ "31213a": "244358",
+ "ef3a10": "e28c27",
+ "943a5a": "7b3c08",
+ "ffffff": "ffffff"
+ },
+ "2": {
+ "101010": "101010",
+ "b563b5": "fff7dd",
+ "5a4263": "5d4a2f",
+ "845284": "eece8c",
+ "4a3a5a": "b56f2a",
+ "6b4a94": "e6aa47",
+ "31213a": "603305",
+ "ef3a10": "c33126",
+ "943a5a": "7a1511",
+ "ffffff": "ffffff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/433.json b/public/images/pokemon/variant/back/433.json
new file mode 100644
index 00000000000..59f6d4e7b0f
--- /dev/null
+++ b/public/images/pokemon/variant/back/433.json
@@ -0,0 +1,38 @@
+{
+ "0": {
+ "6b3a31": "631d61",
+ "000000": "000000",
+ "d6d6f7": "f7e6e5",
+ "e66352": "f37cdf",
+ "ad5231": "a6459c",
+ "a5a5ce": "c29ea6",
+ "63524a": "7d492f",
+ "bd9c4a": "dda245",
+ "ffd65a": "ffce5a",
+ "846b4a": "e6a54a"
+ },
+ "1": {
+ "6b3a31": "14404e",
+ "000000": "000000",
+ "d6d6f7": "ebd4b0",
+ "e66352": "4a94ad",
+ "ad5231": "2f6e8c",
+ "a5a5ce": "cca375",
+ "63524a": "404c85",
+ "bd9c4a": "888ab1",
+ "ffd65a": "afadcd",
+ "846b4a": "5b6596"
+ },
+ "2": {
+ "6b3a31": "102837",
+ "000000": "000000",
+ "d6d6f7": "f7e6e5",
+ "e66352": "4d8891",
+ "ad5231": "3a656c",
+ "a5a5ce": "c29ea6",
+ "63524a": "6d2018",
+ "bd9c4a": "c86b3e",
+ "ffd65a": "f0a878",
+ "846b4a": "934123"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/440.json b/public/images/pokemon/variant/back/440.json
new file mode 100644
index 00000000000..f89500aa28f
--- /dev/null
+++ b/public/images/pokemon/variant/back/440.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "a55a7b": "925382",
+ "101010": "101010",
+ "ffc5d6": "f6cae1",
+ "c58ca5": "c57cad",
+ "73425a": "6c1f9e",
+ "ffffff": "ffffff",
+ "a5527b": "953fc7",
+ "de6b9c": "c164e4",
+ "cebdc5": "d6bdde"
+ },
+ "1": {
+ "a55a7b": "81256f",
+ "101010": "101010",
+ "ffc5d6": "ebbada",
+ "c58ca5": "bd61a4",
+ "73425a": "61020c",
+ "ffffff": "fff4fb",
+ "a5527b": "a3091a",
+ "de6b9c": "d33128",
+ "cebdc5": "d9b3d0"
+ },
+ "2": {
+ "a55a7b": "6a3981",
+ "101010": "101010",
+ "ffc5d6": "e2bfef",
+ "c58ca5": "b377c6",
+ "73425a": "132f5d",
+ "ffffff": "f0fdff",
+ "a5527b": "204b7d",
+ "de6b9c": "3a78a7",
+ "cebdc5": "c0ceda"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/443.json b/public/images/pokemon/variant/back/443.json
new file mode 100644
index 00000000000..4a65daecb4b
--- /dev/null
+++ b/public/images/pokemon/variant/back/443.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "426b84": "085284",
+ "101010": "101921",
+ "314252": "082963",
+ "8cc5d6": "42a5f7",
+ "5294ad": "1984c5",
+ "42d6de": "42d6de",
+ "3aadc5": "3aadc5",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "5a6363": "5a6363",
+ "ad3a10": "a57c10",
+ "de5a29": "e6c529",
+ "7b1910": "731029"
+ },
+ "1": {
+ "426b84": "522521",
+ "101010": "101921",
+ "314252": "400311",
+ "8cc5d6": "e49f52",
+ "5294ad": "905647",
+ "42d6de": "54b0ff",
+ "3aadc5": "2878e1",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "5a6363": "5a6363",
+ "ad3a10": "92a9b2",
+ "de5a29": "d9f0f1",
+ "7b1910": "731029"
+ },
+ "2": {
+ "426b84": "223a4a",
+ "101010": "101921",
+ "314252": "0e263c",
+ "8cc5d6": "8cb6bf",
+ "5294ad": "4c5e66",
+ "42d6de": "6fe6a3",
+ "3aadc5": "23b8a8",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "5a6363": "5a6363",
+ "ad3a10": "92a9b2",
+ "de5a29": "d9f0f1",
+ "7b1910": "3e3a52"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/444.json b/public/images/pokemon/variant/back/444.json
new file mode 100644
index 00000000000..287f0c4050c
--- /dev/null
+++ b/public/images/pokemon/variant/back/444.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "3a4a8c": "1e4b77",
+ "102952": "091f4e",
+ "5a6bbd": "307fb8",
+ "738cce": "59aaed",
+ "b5bdf7": "42d6de",
+ "8c8cbd": "3aadc5",
+ "101010": "101921",
+ "de9c19": "e53d3f",
+ "5a1000": "502209",
+ "ffff19": "fa845a",
+ "ad314a": "ad7b08",
+ "c5ced6": "c5ced6",
+ "de5a29": "f7b834",
+ "ffffff": "ffffff",
+ "737b84": "737b84"
+ },
+ "1": {
+ "3a4a8c": "6f3633",
+ "102952": "3d0a17",
+ "5a6bbd": "a96051",
+ "738cce": "e9a36b",
+ "b5bdf7": "4caaff",
+ "8c8cbd": "255dd7",
+ "101010": "101921",
+ "de9c19": "d9900e",
+ "5a1000": "211e33",
+ "ffff19": "ffd177",
+ "ad314a": "829ca6",
+ "c5ced6": "c5ced6",
+ "de5a29": "c2dedf",
+ "ffffff": "ffffff",
+ "737b84": "737b84"
+ },
+ "2": {
+ "3a4a8c": "223a4a",
+ "102952": "092136",
+ "5a6bbd": "3e5059",
+ "738cce": "79a2ab",
+ "b5bdf7": "6fe6a3",
+ "8c8cbd": "23b8a8",
+ "101010": "101921",
+ "de9c19": "2c8bf7",
+ "5a1000": "521000",
+ "ffff19": "62cbff",
+ "ad314a": "be472f",
+ "c5ced6": "c5ced6",
+ "de5a29": "ee723e",
+ "ffffff": "ffffff",
+ "737b84": "737b84"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/445-mega.json b/public/images/pokemon/variant/back/445-mega.json
new file mode 100644
index 00000000000..68c374cc43f
--- /dev/null
+++ b/public/images/pokemon/variant/back/445-mega.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "202040": "061638",
+ "6060c0": "236696",
+ "404080": "19446e",
+ "8080c0": "65a2d5",
+ "000000": "000000",
+ "c0a000": "3aadc5",
+ "e0e000": "42d6de",
+ "c04040": "9e5201",
+ "ffffff": "ffffff",
+ "808080": "808080",
+ "c0c0c0": "c0c0c0",
+ "e04040": "f7ac34",
+ "602000": "502209"
+ },
+ "1": {
+ "202040": "632f1b",
+ "6060c0": "deae7a",
+ "404080": "b67252",
+ "8080c0": "f2d8aa",
+ "000000": "000000",
+ "c0a000": "255dd7",
+ "e0e000": "4caaff",
+ "c04040": "9fb6bf",
+ "ffffff": "ffffff",
+ "808080": "808080",
+ "c0c0c0": "c0c0c0",
+ "e04040": "dce8e8",
+ "602000": "393648"
+ },
+ "2": {
+ "202040": "051a2e",
+ "6060c0": "2f434b",
+ "404080": "152c3b",
+ "8080c0": "689099",
+ "000000": "000000",
+ "c0a000": "23b8a8",
+ "e0e000": "6fe6a3",
+ "c04040": "b23219",
+ "ffffff": "ffffff",
+ "808080": "808080",
+ "c0c0c0": "c0c0c0",
+ "e04040": "ec642c",
+ "602000": "521000"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/445.json b/public/images/pokemon/variant/back/445.json
new file mode 100644
index 00000000000..c5b10066d10
--- /dev/null
+++ b/public/images/pokemon/variant/back/445.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "292952": "091f4e",
+ "5a63ad": "33719e",
+ "42428c": "1e4b77",
+ "7b7bce": "65a2d5",
+ "101010": "101010",
+ "c59410": "3aadc5",
+ "ffd619": "42d6de",
+ "ffffff": "ffffff",
+ "737b84": "737b84",
+ "c5ced6": "c5ced6",
+ "bd3a42": "b2630f",
+ "5a1000": "502209",
+ "e64a31": "f7ac34"
+ },
+ "1": {
+ "292952": "3d0a17",
+ "5a63ad": "deae7a",
+ "42428c": "af6e55",
+ "7b7bce": "f2d8aa",
+ "101010": "101010",
+ "c59410": "255dd7",
+ "ffd619": "4caaff",
+ "ffffff": "ffffff",
+ "737b84": "737b84",
+ "c5ced6": "c5ced6",
+ "bd3a42": "9fb6bf",
+ "5a1000": "393648",
+ "e64a31": "c8c8c8"
+ },
+ "2": {
+ "292952": "051a2e",
+ "5a63ad": "2f434b",
+ "42428c": "152c3b",
+ "7b7bce": "689099",
+ "101010": "101010",
+ "c59410": "23b8a8",
+ "ffd619": "6fe6a3",
+ "ffffff": "ffffff",
+ "737b84": "737b84",
+ "c5ced6": "c5ced6",
+ "bd3a42": "be472f",
+ "5a1000": "521000",
+ "e64a31": "c8c8c8"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/46.json b/public/images/pokemon/variant/back/46.json
new file mode 100644
index 00000000000..1062e915d76
--- /dev/null
+++ b/public/images/pokemon/variant/back/46.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "bd4242": "9b7375",
+ "b56321": "85251b",
+ "f76b6b": "d7b5b1",
+ "ffd652": "f3e8dc",
+ "632929": "63484c",
+ "c5b521": "d9c9b9",
+ "3a2910": "3a2108",
+ "734a19": "521e0a",
+ "101010": "101010",
+ "ffad63": "cf6423",
+ "e68429": "bc4b23"
+ },
+ "1": {
+ "bd4242": "b92532",
+ "b56321": "98655f",
+ "f76b6b": "e83557",
+ "ffd652": "fffedf",
+ "632929": "760013",
+ "c5b521": "e5d59c",
+ "3a2910": "3a2108",
+ "734a19": "5a392d",
+ "101010": "101010",
+ "ffad63": "f3d8cb",
+ "e68429": "d1afa3"
+ },
+ "2": {
+ "bd4242": "4d3ae6",
+ "b56321": "6a507b",
+ "f76b6b": "5668f8",
+ "ffd652": "fffedf",
+ "632929": "441fa9",
+ "c5b521": "e5d59c",
+ "3a2910": "1e152d",
+ "734a19": "3d2b4e",
+ "101010": "101010",
+ "ffad63": "bf9edd",
+ "e68429": "9779a6"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/468.json b/public/images/pokemon/variant/back/468.json
new file mode 100644
index 00000000000..1c0c54973d1
--- /dev/null
+++ b/public/images/pokemon/variant/back/468.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "733129": "0a454a",
+ "849cb5": "8b6467",
+ "ce4a31": "409e80",
+ "4a5a73": "593237",
+ "efefff": "eee0db",
+ "101010": "101010",
+ "bdc5de": "ceacac",
+ "4284ef": "d05887",
+ "bd8484": "8ee4be",
+ "94b5ff": "9e4065",
+ "525aad": "8d2f5c"
+ },
+ "1": {
+ "733129": "ba711c",
+ "849cb5": "734350",
+ "ce4a31": "c48330",
+ "4a5a73": "452030",
+ "efefff": "f3cbcb",
+ "101010": "101010",
+ "bdc5de": "c2888c",
+ "4284ef": "f19a4e",
+ "bd8484": "f5b55e",
+ "94b5ff": "d26425",
+ "525aad": "cb5423"
+ },
+ "2": {
+ "733129": "8b4021",
+ "849cb5": "477cb6",
+ "ce4a31": "d97741",
+ "4a5a73": "254985",
+ "efefff": "b3ddeb",
+ "101010": "101010",
+ "bdc5de": "81aaca",
+ "4284ef": "db79db",
+ "bd8484": "f39a4c",
+ "94b5ff": "e89fe5",
+ "525aad": "a940b4"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/47.json b/public/images/pokemon/variant/back/47.json
new file mode 100644
index 00000000000..141a046e34e
--- /dev/null
+++ b/public/images/pokemon/variant/back/47.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "ef3131": "d7b5b1",
+ "bd3142": "9b7375",
+ "ff6b6b": "f3e1dc",
+ "7b0808": "7b4208",
+ "d6ce31": "d9c9b9",
+ "ffd652": "f3e8dc",
+ "de6b31": "bc4b23",
+ "631000": "521e0a",
+ "ff8452": "e0843d",
+ "101010": "101010",
+ "b5423a": "85251b"
+ },
+ "1": {
+ "ef3131": "e83557",
+ "bd3142": "b92532",
+ "ff6b6b": "ff878d",
+ "7b0808": "760013",
+ "d6ce31": "e5d59c",
+ "ffd652": "fffedf",
+ "de6b31": "d1afa3",
+ "631000": "5a392d",
+ "ff8452": "f3d8cb",
+ "101010": "101010",
+ "b5423a": "98655f"
+ },
+ "2": {
+ "ef3131": "5566f2",
+ "bd3142": "4735d8",
+ "ff6b6b": "82b5ff",
+ "7b0808": "361297",
+ "d6ce31": "b4c5d0",
+ "ffd652": "ddf1f8",
+ "de6b31": "9779a6",
+ "631000": "3d2b4e",
+ "ff8452": "bf9edd",
+ "101010": "101010",
+ "b5423a": "6a507b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/470.json b/public/images/pokemon/variant/back/470.json
new file mode 100644
index 00000000000..22912bc961c
--- /dev/null
+++ b/public/images/pokemon/variant/back/470.json
@@ -0,0 +1,18 @@
+{
+ "2": {
+ "31635a": "9f5d29",
+ "6bbd8c": "edd898",
+ "101010": "101010",
+ "319c73": "d8a452",
+ "efd69c": "b39671",
+ "d6b573": "816242",
+ "846b42": "4e230e",
+ "bd9463": "6d4f33",
+ "8cad7b": "dbb974",
+ "635242": "552c12",
+ "5a4221": "5a5221",
+ "946331": "948431",
+ "3a2919": "310f06",
+ "423a42": "4e230e"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/470_1.json b/public/images/pokemon/variant/back/470_1.json
new file mode 100644
index 00000000000..79587fbb654
--- /dev/null
+++ b/public/images/pokemon/variant/back/470_1.json
@@ -0,0 +1,3275 @@
+{
+ "textures": [
+ {
+ "image": "470_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 343,
+ "h": 343
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 1,
+ "w": 56,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 1,
+ "w": 56,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 70,
+ "h": 46
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 70,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 70,
+ "h": 46
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 70,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 2,
+ "w": 56,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 56,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 2,
+ "w": 56,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 56,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 0,
+ "w": 53,
+ "h": 61
+ },
+ "frame": {
+ "x": 56,
+ "y": 46,
+ "w": 53,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 0,
+ "w": 53,
+ "h": 61
+ },
+ "frame": {
+ "x": 56,
+ "y": 46,
+ "w": 53,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 68,
+ "h": 46
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 68,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 68,
+ "h": 46
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 68,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 68,
+ "h": 46
+ },
+ "frame": {
+ "x": 109,
+ "y": 46,
+ "w": 68,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 68,
+ "h": 46
+ },
+ "frame": {
+ "x": 109,
+ "y": 46,
+ "w": 68,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 1,
+ "w": 52,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 119,
+ "w": 52,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 1,
+ "w": 52,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 119,
+ "w": 52,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 2,
+ "w": 52,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 179,
+ "w": 52,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 2,
+ "w": 52,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 179,
+ "w": 52,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 14,
+ "w": 64,
+ "h": 47
+ },
+ "frame": {
+ "x": 194,
+ "y": 0,
+ "w": 64,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 14,
+ "w": 64,
+ "h": 47
+ },
+ "frame": {
+ "x": 194,
+ "y": 0,
+ "w": 64,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 14,
+ "w": 64,
+ "h": 47
+ },
+ "frame": {
+ "x": 258,
+ "y": 0,
+ "w": 64,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 14,
+ "w": 64,
+ "h": 47
+ },
+ "frame": {
+ "x": 258,
+ "y": 0,
+ "w": 64,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 4,
+ "w": 53,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 238,
+ "w": 53,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 4,
+ "w": 53,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 238,
+ "w": 53,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 60,
+ "h": 49
+ },
+ "frame": {
+ "x": 228,
+ "y": 97,
+ "w": 60,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 60,
+ "h": 49
+ },
+ "frame": {
+ "x": 228,
+ "y": 97,
+ "w": 60,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 4,
+ "w": 55,
+ "h": 57
+ },
+ "frame": {
+ "x": 288,
+ "y": 97,
+ "w": 55,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 4,
+ "w": 55,
+ "h": 57
+ },
+ "frame": {
+ "x": 288,
+ "y": 97,
+ "w": 55,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 52,
+ "y": 171,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 52,
+ "y": 171,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0146.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 52,
+ "y": 171,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0147.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 52,
+ "y": 171,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0148.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 52,
+ "y": 171,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 53,
+ "y": 226,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 53,
+ "y": 226,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 6,
+ "w": 54,
+ "h": 55
+ },
+ "frame": {
+ "x": 61,
+ "y": 281,
+ "w": 54,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 6,
+ "w": 54,
+ "h": 55
+ },
+ "frame": {
+ "x": 61,
+ "y": 281,
+ "w": 54,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 60,
+ "h": 49
+ },
+ "frame": {
+ "x": 109,
+ "y": 144,
+ "w": 60,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 60,
+ "h": 49
+ },
+ "frame": {
+ "x": 109,
+ "y": 144,
+ "w": 60,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0144.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 287,
+ "y": 154,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0145.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 287,
+ "y": 154,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 109,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 109,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 109,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0151.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 109,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0152.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 109,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 165,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 165,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0149.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 165,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0150.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 165,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 9,
+ "w": 58,
+ "h": 52
+ },
+ "frame": {
+ "x": 221,
+ "y": 198,
+ "w": 58,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 9,
+ "w": 58,
+ "h": 52
+ },
+ "frame": {
+ "x": 221,
+ "y": 198,
+ "w": 58,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 9,
+ "w": 58,
+ "h": 52
+ },
+ "frame": {
+ "x": 279,
+ "y": 209,
+ "w": 58,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0143.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 9,
+ "w": 58,
+ "h": 52
+ },
+ "frame": {
+ "x": 279,
+ "y": 209,
+ "w": 58,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 228,
+ "y": 261,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 228,
+ "y": 261,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0153.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 228,
+ "y": 261,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0154.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 228,
+ "y": 261,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0155.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 228,
+ "y": 261,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 6,
+ "w": 54,
+ "h": 55
+ },
+ "frame": {
+ "x": 284,
+ "y": 261,
+ "w": 54,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 6,
+ "w": 54,
+ "h": 55
+ },
+ "frame": {
+ "x": 284,
+ "y": 261,
+ "w": 54,
+ "h": 55
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:2c4180402dbbc7ecebd5840d8dd9a109:b4a9f472194d7c52ec7b115b06f8ea45:93b3f81a70badffbda4d1b43e5231ed9$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/470_1.png b/public/images/pokemon/variant/back/470_1.png
new file mode 100644
index 00000000000..a156101f2cf
Binary files /dev/null and b/public/images/pokemon/variant/back/470_1.png differ
diff --git a/public/images/pokemon/variant/back/470_2.json b/public/images/pokemon/variant/back/470_2.json
new file mode 100644
index 00000000000..b2fe1d54a17
--- /dev/null
+++ b/public/images/pokemon/variant/back/470_2.json
@@ -0,0 +1,3275 @@
+{
+ "textures": [
+ {
+ "image": "470_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 343,
+ "h": 343
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0112.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 1,
+ "w": 56,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0113.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 1,
+ "w": 56,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 56,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0134.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 70,
+ "h": 46
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 70,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0135.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 15,
+ "w": 70,
+ "h": 46
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 70,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0118.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 2,
+ "w": 56,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 56,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0119.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 2,
+ "w": 56,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 56,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0114.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 0,
+ "w": 53,
+ "h": 61
+ },
+ "frame": {
+ "x": 56,
+ "y": 46,
+ "w": 53,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0115.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 0,
+ "w": 53,
+ "h": 61
+ },
+ "frame": {
+ "x": 56,
+ "y": 46,
+ "w": 53,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0132.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 68,
+ "h": 46
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 68,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0133.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 68,
+ "h": 46
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 68,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0136.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 68,
+ "h": 46
+ },
+ "frame": {
+ "x": 109,
+ "y": 46,
+ "w": 68,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0137.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 68,
+ "h": 46
+ },
+ "frame": {
+ "x": 109,
+ "y": 46,
+ "w": 68,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0116.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 1,
+ "w": 52,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 119,
+ "w": 52,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0117.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 1,
+ "w": 52,
+ "h": 60
+ },
+ "frame": {
+ "x": 0,
+ "y": 119,
+ "w": 52,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 2,
+ "w": 52,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 179,
+ "w": 52,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0111.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 2,
+ "w": 52,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 179,
+ "w": 52,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0130.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 14,
+ "w": 64,
+ "h": 47
+ },
+ "frame": {
+ "x": 194,
+ "y": 0,
+ "w": 64,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0131.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 14,
+ "w": 64,
+ "h": 47
+ },
+ "frame": {
+ "x": 194,
+ "y": 0,
+ "w": 64,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0138.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 14,
+ "w": 64,
+ "h": 47
+ },
+ "frame": {
+ "x": 258,
+ "y": 0,
+ "w": 64,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0139.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 14,
+ "w": 64,
+ "h": 47
+ },
+ "frame": {
+ "x": 258,
+ "y": 0,
+ "w": 64,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 4,
+ "w": 53,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 238,
+ "w": 53,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 4,
+ "w": 53,
+ "h": 57
+ },
+ "frame": {
+ "x": 0,
+ "y": 238,
+ "w": 53,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 13,
+ "w": 61,
+ "h": 48
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 61,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 62,
+ "h": 47
+ },
+ "frame": {
+ "x": 177,
+ "y": 47,
+ "w": 62,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 11,
+ "w": 60,
+ "h": 50
+ },
+ "frame": {
+ "x": 239,
+ "y": 47,
+ "w": 60,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 9,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 109,
+ "y": 92,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 59,
+ "h": 51
+ },
+ "frame": {
+ "x": 169,
+ "y": 94,
+ "w": 59,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0128.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 60,
+ "h": 49
+ },
+ "frame": {
+ "x": 228,
+ "y": 97,
+ "w": 60,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0129.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 60,
+ "h": 49
+ },
+ "frame": {
+ "x": 228,
+ "y": 97,
+ "w": 60,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0120.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 4,
+ "w": 55,
+ "h": 57
+ },
+ "frame": {
+ "x": 288,
+ "y": 97,
+ "w": 55,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0121.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 4,
+ "w": 55,
+ "h": 57
+ },
+ "frame": {
+ "x": 288,
+ "y": 97,
+ "w": 55,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 9,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 52,
+ "y": 119,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 52,
+ "y": 171,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 52,
+ "y": 171,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0146.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 52,
+ "y": 171,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0147.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 52,
+ "y": 171,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0148.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 52,
+ "y": 171,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0124.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 53,
+ "y": 226,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0125.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 53,
+ "y": 226,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 6,
+ "w": 54,
+ "h": 55
+ },
+ "frame": {
+ "x": 61,
+ "y": 281,
+ "w": 54,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 6,
+ "w": 54,
+ "h": 55
+ },
+ "frame": {
+ "x": 61,
+ "y": 281,
+ "w": 54,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0140.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 60,
+ "h": 49
+ },
+ "frame": {
+ "x": 109,
+ "y": 144,
+ "w": 60,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0141.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 60,
+ "h": 49
+ },
+ "frame": {
+ "x": 109,
+ "y": 144,
+ "w": 60,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 13,
+ "w": 59,
+ "h": 48
+ },
+ "frame": {
+ "x": 169,
+ "y": 145,
+ "w": 59,
+ "h": 48
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 228,
+ "y": 146,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0144.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 287,
+ "y": 154,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0145.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 56,
+ "h": 55
+ },
+ "frame": {
+ "x": 287,
+ "y": 154,
+ "w": 56,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 109,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 109,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 109,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0151.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 109,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0152.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 109,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 165,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 165,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0149.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 165,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0150.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 7,
+ "w": 56,
+ "h": 54
+ },
+ "frame": {
+ "x": 165,
+ "y": 193,
+ "w": 56,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0126.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 9,
+ "w": 58,
+ "h": 52
+ },
+ "frame": {
+ "x": 221,
+ "y": 198,
+ "w": 58,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0127.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 9,
+ "w": 58,
+ "h": 52
+ },
+ "frame": {
+ "x": 221,
+ "y": 198,
+ "w": 58,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0142.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 9,
+ "w": 58,
+ "h": 52
+ },
+ "frame": {
+ "x": 279,
+ "y": 209,
+ "w": 58,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0143.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 9,
+ "w": 58,
+ "h": 52
+ },
+ "frame": {
+ "x": 279,
+ "y": 209,
+ "w": 58,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 115,
+ "y": 247,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 17,
+ "y": 11,
+ "w": 57,
+ "h": 50
+ },
+ "frame": {
+ "x": 171,
+ "y": 250,
+ "w": 57,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 228,
+ "y": 261,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 228,
+ "y": 261,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0153.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 228,
+ "y": 261,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0154.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 228,
+ "y": 261,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0155.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 8,
+ "w": 56,
+ "h": 53
+ },
+ "frame": {
+ "x": 228,
+ "y": 261,
+ "w": 56,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0122.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 6,
+ "w": 54,
+ "h": 55
+ },
+ "frame": {
+ "x": 284,
+ "y": 261,
+ "w": 54,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0123.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 77,
+ "h": 61
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 6,
+ "w": 54,
+ "h": 55
+ },
+ "frame": {
+ "x": 284,
+ "y": 261,
+ "w": 54,
+ "h": 55
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:2c4180402dbbc7ecebd5840d8dd9a109:b4a9f472194d7c52ec7b115b06f8ea45:93b3f81a70badffbda4d1b43e5231ed9$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/470_2.png b/public/images/pokemon/variant/back/470_2.png
new file mode 100644
index 00000000000..69e75827b0a
Binary files /dev/null and b/public/images/pokemon/variant/back/470_2.png differ
diff --git a/public/images/pokemon/variant/back/471.json b/public/images/pokemon/variant/back/471.json
new file mode 100644
index 00000000000..b5332dd5597
--- /dev/null
+++ b/public/images/pokemon/variant/back/471.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "101010": "101010",
+ "94e6ef": "f8f7ff",
+ "94b5ce": "e6e3f3",
+ "7b9cb5": "dad9ea",
+ "525a84": "636b94",
+ "3a3a52": "3a3a52",
+ "313a4a": "313a4a",
+ "529cde": "a0e7f7",
+ "425a6b": "3597ac",
+ "52639c": "54bbd2",
+ "efffff": "efffff"
+ },
+ "1": {
+ "101010": "101010",
+ "94e6ef": "c0aebd",
+ "94b5ce": "a1899e",
+ "7b9cb5": "865d86",
+ "525a84": "6d3a73",
+ "3a3a52": "53205d",
+ "313a4a": "53205d",
+ "529cde": "c6b9ff",
+ "425a6b": "835ad1",
+ "52639c": "997aea",
+ "efffff": "efffff"
+ },
+ "2": {
+ "101010": "101010",
+ "94e6ef": "63d1e9",
+ "94b5ce": "3b9abe",
+ "7b9cb5": "28769f",
+ "525a84": "134e7b",
+ "3a3a52": "09234b",
+ "313a4a": "09234b",
+ "529cde": "3aceef",
+ "425a6b": "edfcff",
+ "52639c": "2984d6",
+ "efffff": "efffff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/488.json b/public/images/pokemon/variant/back/488.json
new file mode 100644
index 00000000000..4d302553deb
--- /dev/null
+++ b/public/images/pokemon/variant/back/488.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "6b5231": "5a3c2a",
+ "ffefbd": "fdf0d6",
+ "101010": "101010",
+ "ad945a": "bc977d",
+ "ffd673": "ddbfa4",
+ "8c427b": "721e01",
+ "d68cce": "dd8d2e",
+ "c55a9c": "b33c12",
+ "523a5a": "420600",
+ "ffffff": "ffffff",
+ "e6c5ef": "ffd28c",
+ "3a427b": "181d46",
+ "526bb5": "304190",
+ "8494f7": "4863b6"
+ },
+ "2": {
+ "6b5231": "485e63",
+ "ffefbd": "e0eceb",
+ "101010": "101010",
+ "ad945a": "7a9294",
+ "ffd673": "bacaca",
+ "8c427b": "168557",
+ "d68cce": "7fe14b",
+ "c55a9c": "2cba5e",
+ "523a5a": "084c38",
+ "ffffff": "ffffff",
+ "e6c5ef": "e0ff8c",
+ "3a427b": "111828",
+ "526bb5": "2f3345",
+ "8494f7": "4a4f5f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/489.json b/public/images/pokemon/variant/back/489.json
new file mode 100644
index 00000000000..53c68ee6184
--- /dev/null
+++ b/public/images/pokemon/variant/back/489.json
@@ -0,0 +1,26 @@
+{
+ "0": {
+ "317bad": "399271",
+ "3a529c": "185b4f",
+ "6bc5f7": "9bf3b7",
+ "9ce6ff": "c3ffcd",
+ "101010": "101010",
+ "199cd6": "69c796"
+ },
+ "1": {
+ "317bad": "964d17",
+ "3a529c": "682307",
+ "6bc5f7": "f5a54e",
+ "9ce6ff": "ffd289",
+ "101010": "101010",
+ "199cd6": "c27138"
+ },
+ "2": {
+ "317bad": "a43b74",
+ "3a529c": "84255f",
+ "6bc5f7": "e484a8",
+ "9ce6ff": "efa0b2",
+ "101010": "101010",
+ "199cd6": "c65086"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/490.json b/public/images/pokemon/variant/back/490.json
new file mode 100644
index 00000000000..4ae1ca03db1
--- /dev/null
+++ b/public/images/pokemon/variant/back/490.json
@@ -0,0 +1,26 @@
+{
+ "0": {
+ "317bad": "399271",
+ "101010": "101010",
+ "199cd6": "69c796",
+ "6bc5f7": "9bf3b7",
+ "294a84": "185b4f",
+ "9ce6ff": "cdffd7"
+ },
+ "1": {
+ "317bad": "c27138",
+ "101010": "101010",
+ "199cd6": "c27138",
+ "6bc5f7": "f5a54e",
+ "294a84": "964d17",
+ "9ce6ff": "ffd289"
+ },
+ "2": {
+ "317bad": "b8488c",
+ "101010": "101010",
+ "199cd6": "cc659c",
+ "6bc5f7": "de89b3",
+ "294a84": "912b6e",
+ "9ce6ff": "e7a6c3"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/492-land.json b/public/images/pokemon/variant/back/492-land.json
new file mode 100644
index 00000000000..3f0b8dda84f
--- /dev/null
+++ b/public/images/pokemon/variant/back/492-land.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "8cad63": "2a5045",
+ "adde63": "416556",
+ "101010": "101010",
+ "5a7342": "0f312b",
+ "ffef7b": "cb9373",
+ "844a6b": "b22519",
+ "ef8ca5": "ee7b56",
+ "ce6b8c": "d24d2f",
+ "635a6b": "8c5833",
+ "ffffff": "eedca8",
+ "bdc5d6": "d2ae83",
+ "8c8cad": "c99762",
+ "294229": "53867a",
+ "3a9442": "c4e1d3",
+ "31633a": "8cafa3"
+ },
+ "2": {
+ "8cad63": "aa671e",
+ "adde63": "f0a852",
+ "101010": "101010",
+ "5a7342": "743510",
+ "ffef7b": "f0d962",
+ "844a6b": "326a9a",
+ "ef8ca5": "81bdd3",
+ "ce6b8c": "67a9c6",
+ "635a6b": "8b4939",
+ "ffffff": "fff4ea",
+ "bdc5d6": "e0bba1",
+ "8c8cad": "c78c76",
+ "294229": "521605",
+ "3a9442": "9f422a",
+ "31633a": "7f330f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/492-sky.json b/public/images/pokemon/variant/back/492-sky.json
new file mode 100644
index 00000000000..3830a053162
--- /dev/null
+++ b/public/images/pokemon/variant/back/492-sky.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "7bad21": "24493e",
+ "9cd621": "416556",
+ "3a6b10": "103129",
+ "101010": "101010",
+ "9494ad": "b18355",
+ "ffffff": "fffae9",
+ "52525a": "78492a",
+ "ceced6": "e0c6a9",
+ "bd4a5a": "ce4626",
+ "f74a42": "ee7b56",
+ "7b3a52": "8f210d"
+ },
+ "2": {
+ "7bad21": "ad5a1b",
+ "9cd621": "f09d52",
+ "3a6b10": "974a15",
+ "101010": "101010",
+ "9494ad": "a7604e",
+ "ffffff": "fff4ea",
+ "52525a": "7a3126",
+ "ceced6": "e0bba1",
+ "bd4a5a": "7e399c",
+ "f74a42": "b96bd2",
+ "7b3a52": "531f72"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/494.json b/public/images/pokemon/variant/back/494.json
new file mode 100644
index 00000000000..79cbc752102
--- /dev/null
+++ b/public/images/pokemon/variant/back/494.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "8c3110": "563a0a",
+ "ff6b19": "fff1ce",
+ "846b3a": "c43d21",
+ "c59c5a": "d96030",
+ "ffe6ad": "ee8e3e",
+ "000000": "000000",
+ "6b4a10": "902300",
+ "3a3a3a": "3a3a3a",
+ "bd4a00": "706040"
+ },
+ "2": {
+ "8c3110": "813a61",
+ "ff6b19": "ffb7e0",
+ "846b3a": "2b2a40",
+ "c59c5a": "45465d",
+ "ffe6ad": "72758a",
+ "000000": "000000",
+ "6b4a10": "1e1b36",
+ "3a3a3a": "3a3a3a",
+ "bd4a00": "b9648d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/52-gigantamax.json b/public/images/pokemon/variant/back/52-gigantamax.json
new file mode 100644
index 00000000000..9837323ddab
--- /dev/null
+++ b/public/images/pokemon/variant/back/52-gigantamax.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "7f5745": "5b4a3b",
+ "c89f8c": "816f5c",
+ "fbf7e6": "ece3c7",
+ "f0dea2": "c7b497",
+ "101010": "101010",
+ "986100": "986100",
+ "cca700": "cca700",
+ "f6f6f6": "f6f6f6",
+ "f9d400": "f9d400",
+ "944100": "751e7c",
+ "ea9f38": "cb5fbd",
+ "c5810b": "b146ac"
+ },
+ "1": {
+ "7f5745": "552e15",
+ "c89f8c": "915d2f",
+ "fbf7e6": "e5bc79",
+ "f0dea2": "c08647",
+ "101010": "101010",
+ "986100": "683700",
+ "cca700": "a96c00",
+ "f6f6f6": "f6f6f6",
+ "f9d400": "ffbf3f",
+ "944100": "2948ad",
+ "ea9f38": "7bf7f7",
+ "c5810b": "52add6"
+ },
+ "2": {
+ "7f5745": "2a221c",
+ "c89f8c": "322d28",
+ "fbf7e6": "807d77",
+ "f0dea2": "524f4a",
+ "101010": "101010",
+ "986100": "986f00",
+ "cca700": "efc300",
+ "f6f6f6": "f6f6f6",
+ "f9d400": "f9e600",
+ "944100": "256a24",
+ "ea9f38": "aeec97",
+ "c5810b": "5dc352"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/52.json b/public/images/pokemon/variant/back/52.json
new file mode 100644
index 00000000000..4bb9cb30ec9
--- /dev/null
+++ b/public/images/pokemon/variant/back/52.json
@@ -0,0 +1,38 @@
+{
+ "0": {
+ "8c6b00": "5b4a3b",
+ "ffe684": "c7b497",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "ffd600": "cea500",
+ "debd3a": "816f5c",
+ "cea500": "945a00",
+ "944200": "86358c",
+ "ef9c31": "d577c9",
+ "c57b08": "be5fba"
+ },
+ "1": {
+ "8c6b00": "552e15",
+ "ffe684": "c08647",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "ffd600": "ffd600",
+ "debd3a": "915d2f",
+ "cea500": "cea500",
+ "944200": "2948ad",
+ "ef9c31": "7bf7f7",
+ "c57b08": "52add6"
+ },
+ "2": {
+ "8c6b00": "241d18",
+ "ffe684": "524f4a",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "ffd600": "d2ac00",
+ "debd3a": "322d28",
+ "cea500": "986f00",
+ "944200": "2a3f29",
+ "ef9c31": "c1e8b2",
+ "c57b08": "88c082"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/53.json b/public/images/pokemon/variant/back/53.json
new file mode 100644
index 00000000000..2a3d338fccf
--- /dev/null
+++ b/public/images/pokemon/variant/back/53.json
@@ -0,0 +1,23 @@
+{
+ "0": {
+ "101010": "101010",
+ "845200": "5b4a3b",
+ "deb56b": "c7b497",
+ "ffe684": "ece3c7",
+ "b58429": "816f5c"
+ },
+ "1": {
+ "101010": "101010",
+ "845200": "431a0e",
+ "deb56b": "8d6038",
+ "ffe684": "c39564",
+ "b58429": "552e15"
+ },
+ "2": {
+ "101010": "101010",
+ "845200": "241d18",
+ "deb56b": "322d28",
+ "ffe684": "524f4a",
+ "b58429": "28221e"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/538.json b/public/images/pokemon/variant/back/538.json
new file mode 100644
index 00000000000..fb872ff8526
--- /dev/null
+++ b/public/images/pokemon/variant/back/538.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "631919": "2a6045",
+ "101010": "3e2514",
+ "de5a5a": "5fb55f",
+ "ad3131": "348350",
+ "292921": "4a3323",
+ "efe6d6": "d7b06a",
+ "948c84": "8b6036",
+ "3a3a3a": "70543d",
+ "c5bdad": "a97745"
+ },
+ "2": {
+ "631919": "194a63",
+ "101010": "360b0b",
+ "de5a5a": "528cef",
+ "ad3131": "195a9c",
+ "292921": "522424",
+ "efe6d6": "d14e4e",
+ "948c84": "9d2e2e",
+ "3a3a3a": "6c2020",
+ "c5bdad": "892424"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/546.json b/public/images/pokemon/variant/back/546.json
new file mode 100644
index 00000000000..9c45ddf2bd1
--- /dev/null
+++ b/public/images/pokemon/variant/back/546.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "7b846b": "914e3a",
+ "a5ad84": "bf7d61",
+ "dee6c5": "e4b397",
+ "4a5a52": "663023",
+ "194a19": "4c2f6e",
+ "101010": "101010",
+ "52a54a": "c690da",
+ "427b42": "9d62bc",
+ "ffffff": "f2d2cb",
+ "ceced6": "d2a19a"
+ },
+ "2": {
+ "7b846b": "521819",
+ "a5ad84": "793c35",
+ "dee6c5": "bf7c6a",
+ "4a5a52": "5c1e1f",
+ "194a19": "2e6450",
+ "101010": "101010",
+ "52a54a": "70be90",
+ "427b42": "559c7a",
+ "ffffff": "f7dbd1",
+ "ceced6": "d89185"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/547.json b/public/images/pokemon/variant/back/547.json
new file mode 100644
index 00000000000..44fb5bb86da
--- /dev/null
+++ b/public/images/pokemon/variant/back/547.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "ad945a": "914e3a",
+ "6b5a42": "663023",
+ "e6dece": "dda585",
+ "101010": "101010",
+ "c5b58c": "b77153",
+ "194a19": "422258",
+ "427b42": "8750a3",
+ "52a54a": "b07cc3",
+ "523a29": "523a29",
+ "735242": "693535"
+ },
+ "2": {
+ "ad945a": "4b1918",
+ "6b5a42": "360e10",
+ "e6dece": "a86250",
+ "101010": "101010",
+ "c5b58c": "70322b",
+ "194a19": "1c523e",
+ "427b42": "428565",
+ "52a54a": "5bab7c",
+ "523a29": "523a29",
+ "735242": "d79057"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/548.json b/public/images/pokemon/variant/back/548.json
new file mode 100644
index 00000000000..9dc8f3e868a
--- /dev/null
+++ b/public/images/pokemon/variant/back/548.json
@@ -0,0 +1,32 @@
+{
+ "0": {
+ "315a31": "31425a",
+ "3aad3a": "76bfc7",
+ "101010": "101010",
+ "3a844a": "307489",
+ "9cbd4a": "a3b02e",
+ "637b31": "646412",
+ "b5d663": "bdca4c",
+ "c5ef7b": "c7e460"
+ },
+ "1": {
+ "315a31": "731629",
+ "3aad3a": "ef5755",
+ "101010": "101010",
+ "3a844a": "bd2d40",
+ "9cbd4a": "8e954d",
+ "637b31": "4e4e25",
+ "b5d663": "afb555",
+ "c5ef7b": "bfd17f"
+ },
+ "2": {
+ "315a31": "351c49",
+ "3aad3a": "8d57a4",
+ "101010": "101010",
+ "3a844a": "663982",
+ "9cbd4a": "9f802c",
+ "637b31": "5c4510",
+ "b5d663": "b39436",
+ "c5ef7b": "ded26f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/549.json b/public/images/pokemon/variant/back/549.json
new file mode 100644
index 00000000000..bb81411e8d7
--- /dev/null
+++ b/public/images/pokemon/variant/back/549.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "734221": "09445f",
+ "101010": "101010",
+ "bd633a": "228ac5",
+ "ffb59c": "78e6f7",
+ "ff6b3a": "54c5eb",
+ "bda552": "77909a",
+ "ffde42": "b6c7cc",
+ "ffffff": "ffffff",
+ "315a31": "80152b",
+ "4a844a": "bd2d40",
+ "3aad3a": "ef5755",
+ "9cb563": "8e954d",
+ "526329": "5a5a2c",
+ "c5ef7b": "bfd17f"
+ },
+ "2": {
+ "734221": "540f26",
+ "101010": "101010",
+ "bd633a": "a62540",
+ "ffb59c": "fe8e95",
+ "ff6b3a": "de6475",
+ "bda552": "d1b18c",
+ "ffde42": "efddc1",
+ "ffffff": "ffffff",
+ "315a31": "351c49",
+ "4a844a": "5d3576",
+ "3aad3a": "834c9b",
+ "9cb563": "9d7d45",
+ "526329": "643312",
+ "c5ef7b": "ebc460"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/559.json b/public/images/pokemon/variant/back/559.json
new file mode 100644
index 00000000000..1fd00baef27
--- /dev/null
+++ b/public/images/pokemon/variant/back/559.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "732129": "64195b",
+ "b52931": "c855a9",
+ "e63a42": "e18abd",
+ "212121": "212121",
+ "7b6308": "66470e",
+ "ffce00": "d7c475",
+ "bd9c00": "8a7127",
+ "424242": "424242",
+ "adada5": "adada5",
+ "ffffff": "ffffff",
+ "63635a": "63635a",
+ "7b7352": "5f533d",
+ "c5bd84": "c7bea5",
+ "fff7b5": "ecead9"
+ },
+ "1": {
+ "732129": "251c34",
+ "b52931": "4f4967",
+ "e63a42": "82809f",
+ "212121": "212121",
+ "7b6308": "8b8352",
+ "ffce00": "fffcdd",
+ "bd9c00": "bdbc82",
+ "424242": "424242",
+ "adada5": "adada5",
+ "ffffff": "ffffff",
+ "63635a": "63635a",
+ "7b7352": "7b7352",
+ "c5bd84": "c5bd84",
+ "fff7b5": "fff7b5"
+ },
+ "2": {
+ "732129": "17541a",
+ "b52931": "2d852b",
+ "e63a42": "7cce68",
+ "212121": "212121",
+ "7b6308": "6f9d3d",
+ "ffce00": "e5ff87",
+ "bd9c00": "98c053",
+ "424242": "424242",
+ "adada5": "adada5",
+ "ffffff": "ffffff",
+ "63635a": "63635a",
+ "7b7352": "7b7352",
+ "c5bd84": "c5bd84",
+ "fff7b5": "fff7b5"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/560.json b/public/images/pokemon/variant/back/560.json
new file mode 100644
index 00000000000..bf75cf1eed2
--- /dev/null
+++ b/public/images/pokemon/variant/back/560.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "212121": "212121",
+ "7b3a29": "5f533d",
+ "de293a": "b1578c",
+ "f77b21": "d9d7bf",
+ "c55a19": "aea489",
+ "4a4a4a": "4a4a4a",
+ "949494": "949494",
+ "ffffff": "ffffff",
+ "bdbdbd": "bdbdbd",
+ "636363": "636363",
+ "6b5229": "66470e",
+ "f7ce10": "d7c475",
+ "b59419": "8f7939",
+ "e66373": "e18abd"
+ },
+ "1": {
+ "212121": "212121",
+ "7b3a29": "251c34",
+ "de293a": "4f4967",
+ "f77b21": "c3b889",
+ "c55a19": "988658",
+ "4a4a4a": "4a4a4a",
+ "949494": "949494",
+ "ffffff": "ffffff",
+ "bdbdbd": "bdbdbd",
+ "636363": "636363",
+ "6b5229": "8b8352",
+ "f7ce10": "fffcdd",
+ "b59419": "bdbc82",
+ "e66373": "82809f"
+ },
+ "2": {
+ "212121": "212121",
+ "7b3a29": "24360d",
+ "de293a": "3f5d3e",
+ "f77b21": "fff7b5",
+ "c55a19": "c5bd84",
+ "4a4a4a": "4a4a4a",
+ "949494": "949494",
+ "ffffff": "ffffff",
+ "bdbdbd": "bdbdbd",
+ "636363": "636363",
+ "6b5229": "627f2e",
+ "f7ce10": "d8f769",
+ "b59419": "a8c458",
+ "e66373": "8bb089"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/570.json b/public/images/pokemon/variant/back/570.json
new file mode 100644
index 00000000000..db0ddc9ae8d
--- /dev/null
+++ b/public/images/pokemon/variant/back/570.json
@@ -0,0 +1,22 @@
+{
+ "1": {
+ "6b213a": "4f025a",
+ "ad1042": "c359e6",
+ "101010": "101010",
+ "424252": "2f375a",
+ "5a5a73": "475378",
+ "212131": "1b1b47",
+ "313142": "283766",
+ "420810": "30003b"
+ },
+ "2": {
+ "6b213a": "006867",
+ "ad1042": "01d5bb",
+ "101010": "101010",
+ "424252": "746a98",
+ "5a5a73": "a1a1c0",
+ "212131": "163956",
+ "313142": "60808f",
+ "420810": "003c3f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/571.json b/public/images/pokemon/variant/back/571.json
new file mode 100644
index 00000000000..5f18c3b6e51
--- /dev/null
+++ b/public/images/pokemon/variant/back/571.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "101010": "101010",
+ "293142": "283766",
+ "212131": "0a133f",
+ "4a1029": "540548",
+ "7b2942": "8e2270",
+ "ad1042": "cc2f94",
+ "4a4a52": "2d2b43",
+ "63636b": "4e4664",
+ "cecece": "cecece",
+ "318484": "318484",
+ "19b5b5": "19b5b5"
+ },
+ "2": {
+ "101010": "101010",
+ "293142": "283766",
+ "212131": "121b47",
+ "4a1029": "061a3e",
+ "7b2942": "125091",
+ "ad1042": "2f8cdb",
+ "4a4a52": "5e5277",
+ "63636b": "938aae",
+ "cecece": "cecece",
+ "318484": "7e248c",
+ "19b5b5": "9c58ca"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/572.json b/public/images/pokemon/variant/back/572.json
new file mode 100644
index 00000000000..e305e231ec0
--- /dev/null
+++ b/public/images/pokemon/variant/back/572.json
@@ -0,0 +1,18 @@
+{
+ "1": {
+ "8c847b": "b2af6e",
+ "524a42": "524a42",
+ "ffffff": "feffd9",
+ "decec5": "decec5",
+ "bdb5a5": "dad7a1",
+ "101010": "101010"
+ },
+ "2": {
+ "8c847b": "86aaa7",
+ "524a42": "5f807e",
+ "ffffff": "ffffff",
+ "decec5": "d7e8e6",
+ "bdb5a5": "aec8c6",
+ "101010": "101010"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/577.json b/public/images/pokemon/variant/back/577.json
new file mode 100644
index 00000000000..d31bf54a381
--- /dev/null
+++ b/public/images/pokemon/variant/back/577.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "428c5a": "7d52ad",
+ "5ab57b": "a78cd6",
+ "94e6ad": "cab8f1",
+ "ffffff": "fbf9ff",
+ "a59c31": "88aca5",
+ "e6de73": "afdfce",
+ "5a845a": "5e2c58",
+ "6b6329": "597070",
+ "101010": "101010",
+ "cee6bd": "ebc7d9",
+ "316342": "442e7a",
+ "9cad8c": "975b88",
+ "b5cea5": "c696b4"
+ },
+ "1": {
+ "428c5a": "6f0b2c",
+ "5ab57b": "b43a50",
+ "94e6ad": "ee8c91",
+ "ffffff": "fff3f3",
+ "a59c31": "824885",
+ "e6de73": "9d65b1",
+ "5a845a": "961d3c",
+ "6b6329": "522849",
+ "101010": "101010",
+ "cee6bd": "dfab9f",
+ "316342": "3b031b",
+ "9cad8c": "b86d6a",
+ "b5cea5": "cd9790"
+ },
+ "2": {
+ "428c5a": "a968a4",
+ "5ab57b": "ce8ec2",
+ "94e6ad": "f7c6e5",
+ "ffffff": "ffffff",
+ "a59c31": "5ab3a2",
+ "e6de73": "74d6b3",
+ "5a845a": "ba7066",
+ "6b6329": "3e8c82",
+ "101010": "101010",
+ "cee6bd": "f0c9ba",
+ "316342": "713c85",
+ "9cad8c": "ba7066",
+ "b5cea5": "d69887"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/578.json b/public/images/pokemon/variant/back/578.json
new file mode 100644
index 00000000000..b1a55c50158
--- /dev/null
+++ b/public/images/pokemon/variant/back/578.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "429c63": "744ab5",
+ "5ab57b": "928cd6",
+ "317b4a": "6b2981",
+ "637b63": "834783",
+ "c5deb5": "ebc7e1",
+ "9cbd8c": "9b65ac",
+ "101010": "101010",
+ "84dea5": "c3b8f1",
+ "e6ffde": "ffffff"
+ },
+ "1": {
+ "429c63": "6f0b2c",
+ "5ab57b": "b43a50",
+ "317b4a": "3b031b",
+ "637b63": "862f2d",
+ "c5deb5": "d69289",
+ "9cbd8c": "b0605c",
+ "101010": "101010",
+ "84dea5": "ee8c91",
+ "e6ffde": "fff3f3"
+ },
+ "2": {
+ "429c63": "a5489e",
+ "5ab57b": "d080b8",
+ "317b4a": "732971",
+ "637b63": "ba7066",
+ "c5deb5": "f0c9ba",
+ "9cbd8c": "d69887",
+ "101010": "101010",
+ "84dea5": "d080b8",
+ "e6ffde": "ffffff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/579.json b/public/images/pokemon/variant/back/579.json
new file mode 100644
index 00000000000..2b7c7cadec0
--- /dev/null
+++ b/public/images/pokemon/variant/back/579.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "428c5a": "316b8c",
+ "5ab57b": "8c9cd6",
+ "316342": "31427b",
+ "4a8c63": "40516c",
+ "d6efc5": "bfdadd",
+ "9cbd8c": "7f9fb5",
+ "101010": "101010",
+ "de6363": "7bfff7",
+ "a55252": "4aad8c",
+ "c5a563": "63b519",
+ "debd7b": "a5d67b"
+ },
+ "1": {
+ "428c5a": "6f0b2c",
+ "5ab57b": "b43a50",
+ "316342": "3b031b",
+ "4a8c63": "862f2d",
+ "d6efc5": "d69289",
+ "9cbd8c": "b0605c",
+ "101010": "101010",
+ "de6363": "e39744",
+ "a55252": "bb6620",
+ "c5a563": "844386",
+ "debd7b": "9d65b1"
+ },
+ "2": {
+ "428c5a": "a5489e",
+ "5ab57b": "d080c1",
+ "316342": "732971",
+ "4a8c63": "9d4e4c",
+ "d6efc5": "e8baac",
+ "9cbd8c": "c5887f",
+ "101010": "101010",
+ "de6363": "74d6b3",
+ "a55252": "5ab3a2",
+ "c5a563": "6d648a",
+ "debd7b": "a29fbd"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/641-incarnate.json b/public/images/pokemon/variant/back/641-incarnate.json
new file mode 100644
index 00000000000..200c2bbd112
--- /dev/null
+++ b/public/images/pokemon/variant/back/641-incarnate.json
@@ -0,0 +1,17 @@
+{
+ "0": {
+ "737373": "737373",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "b5b5bd": "b5b5bd",
+ "6b4229": "6b4229",
+ "deb56b": "deb56b",
+ "ad7b4a": "ad7b4a",
+ "5a3173": "121212",
+ "8442ad": "282828",
+ "4a9c42": "5fd054",
+ "294a31": "294a31",
+ "42733a": "317c25",
+ "422152": "000000"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/641-therian.json b/public/images/pokemon/variant/back/641-therian.json
new file mode 100644
index 00000000000..b4ecb861ac8
--- /dev/null
+++ b/public/images/pokemon/variant/back/641-therian.json
@@ -0,0 +1,17 @@
+{
+ "0": {
+ "422152": "000000",
+ "5a3a73": "121212",
+ "8442ad": "282828",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "b5b5bd": "b5b5bd",
+ "737373": "737373",
+ "294a31": "294a31",
+ "42733a": "317c25",
+ "4a9c42": "5fd054",
+ "ad7b4a": "ad7b4a",
+ "deb56b": "deb56b",
+ "6b4229": "6b4229"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/642-incarnate.json b/public/images/pokemon/variant/back/642-incarnate.json
new file mode 100644
index 00000000000..10125a512ee
--- /dev/null
+++ b/public/images/pokemon/variant/back/642-incarnate.json
@@ -0,0 +1,17 @@
+{
+ "0": {
+ "737373": "737373",
+ "b5b5bd": "878787",
+ "ffffff": "ffffff",
+ "101010": "101010",
+ "31317b": "3a1111",
+ "5a42ad": "992828",
+ "102152": "521010",
+ "5284a5": "952f2f",
+ "63c5ff": "ff6363",
+ "313131": "313131",
+ "4a4a4a": "4a4a4a",
+ "212121": "212121",
+ "29426b": "6b2929"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/642-therian.json b/public/images/pokemon/variant/back/642-therian.json
new file mode 100644
index 00000000000..181321289c6
--- /dev/null
+++ b/public/images/pokemon/variant/back/642-therian.json
@@ -0,0 +1,18 @@
+{
+ "0": {
+ "737373": "6a0d0d",
+ "ffffff": "ffffff",
+ "101010": "101010",
+ "192952": "521010",
+ "5a4aad": "952f2f",
+ "3a3a84": "3a1111",
+ "b5b5bd": "a49696",
+ "29426b": "6b2929",
+ "63c5ff": "c83f3f",
+ "5284a5": "7c0b0b",
+ "ffc55a": "d69431",
+ "d69431": "ffc55a",
+ "313131": "313131",
+ "212121": "212121"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/645-incarnate.json b/public/images/pokemon/variant/back/645-incarnate.json
new file mode 100644
index 00000000000..c3e0980c7eb
--- /dev/null
+++ b/public/images/pokemon/variant/back/645-incarnate.json
@@ -0,0 +1,17 @@
+{
+ "0": {
+ "101010": "101010",
+ "ffffff": "d0d0d0",
+ "737373": "737373",
+ "4a2919": "191919",
+ "bd4a52": "380d5f",
+ "943142": "0b0b0b",
+ "b5b5bd": "999999",
+ "84634a": "311e42",
+ "634231": "2c143a",
+ "6b213a": "838383",
+ "a55a3a": "451c6a",
+ "633110": "2c2c2c",
+ "f77b42": "69418e"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/645-therian.json b/public/images/pokemon/variant/back/645-therian.json
new file mode 100644
index 00000000000..7b38aaeb747
--- /dev/null
+++ b/public/images/pokemon/variant/back/645-therian.json
@@ -0,0 +1,19 @@
+{
+ "0": {
+ "101010": "101010",
+ "634231": "531975",
+ "84634a": "311e42",
+ "4a2919": "191919",
+ "bd4a52": "380d5f",
+ "737373": "737373",
+ "b5b5bd": "999999",
+ "ffffff": "d0d0d0",
+ "73313a": "2c143a",
+ "943142": "311e42",
+ "633110": "2c2c2c",
+ "a55a3a": "451c6a",
+ "ad8c3a": "380d5f",
+ "f77b42": "69418e",
+ "ffce63": "9386ff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/6549.json b/public/images/pokemon/variant/back/6549.json
new file mode 100644
index 00000000000..230d54b1777
--- /dev/null
+++ b/public/images/pokemon/variant/back/6549.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "70365a": "29547d",
+ "ff84bd": "73bad9",
+ "101010": "101010",
+ "bd59a2": "5094c0",
+ "bda452": "77909a",
+ "ffde41": "b6c7cc",
+ "526229": "80152b",
+ "ffbbdb": "b5ddea",
+ "fdfdfd": "fdfdfd",
+ "315a31": "5a5a2c",
+ "39ac39": "bfd17f",
+ "4a834a": "8e954d",
+ "9cb462": "bd2d40",
+ "c5ee7b": "ef5755",
+ "cdc5bd": "cdc5bd"
+ },
+ "2": {
+ "70365a": "8a1a3c",
+ "ff84bd": "e8617a",
+ "101010": "101010",
+ "bd59a2": "d64065",
+ "bda452": "bda452",
+ "ffde41": "ffde41",
+ "526229": "351c49",
+ "ffbbdb": "f38e9c",
+ "fdfdfd": "fdfdfd",
+ "315a31": "643312",
+ "39ac39": "ebc460",
+ "4a834a": "9d7d45",
+ "9cb462": "5d3576",
+ "c5ee7b": "834c9b",
+ "cdc5bd": "cdc5bd"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/6570.json b/public/images/pokemon/variant/back/6570.json
new file mode 100644
index 00000000000..b42d9780a3b
--- /dev/null
+++ b/public/images/pokemon/variant/back/6570.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "942429": "9e111f",
+ "d53a3e": "e8512a",
+ "5f0002": "5d0019",
+ "f07376": "ff6d26",
+ "f7acae": "ffd291",
+ "4a4d53": "3b2b4f",
+ "fafafa": "efd9d9",
+ "101010": "101010",
+ "b3b3bb": "d6b7b1",
+ "928d96": "504b6a",
+ "cbcfd8": "7b7897",
+ "a7484f": "b2282d",
+ "6d4d62": "bfa9ab"
+ },
+ "2": {
+ "942429": "09523d",
+ "d53a3e": "1c7f54",
+ "5f0002": "033431",
+ "f07376": "3cbc5f",
+ "f7acae": "79d38d",
+ "4a4d53": "6f4332",
+ "fafafa": "f0decd",
+ "101010": "101010",
+ "b3b3bb": "c6ab99",
+ "928d96": "995d3e",
+ "cbcfd8": "d79568",
+ "a7484f": "176b4c",
+ "6d4d62": "813059"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/6571.json b/public/images/pokemon/variant/back/6571.json
new file mode 100644
index 00000000000..fe8a33a5133
--- /dev/null
+++ b/public/images/pokemon/variant/back/6571.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "942429": "4a1921",
+ "101010": "101010",
+ "d53a3e": "782d41",
+ "928d96": "4a4759",
+ "f07376": "b44d63",
+ "f7acae": "ce646c",
+ "fafafa": "e1d2d2",
+ "b3b3bb": "c3a5a8",
+ "4a4d53": "262231",
+ "a7484f": "883955",
+ "5f0002": "4a1921",
+ "cbcfd8": "737185",
+ "6d4d62": "e1d2d3",
+ "4b163b": "6a4a4f"
+ },
+ "2": {
+ "942429": "143130",
+ "101010": "101010",
+ "d53a3e": "265a52",
+ "928d96": "885f49",
+ "f07376": "4e867b",
+ "f7acae": "6aa899",
+ "fafafa": "f0decd",
+ "b3b3bb": "c6ab99",
+ "4a4d53": "411c1a",
+ "a7484f": "2a6062",
+ "5f0002": "072222",
+ "cbcfd8": "bc9072",
+ "6d4d62": "c2589c",
+ "4b163b": "4b163b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/6705.json b/public/images/pokemon/variant/back/6705.json
new file mode 100644
index 00000000000..5cc27fb033d
--- /dev/null
+++ b/public/images/pokemon/variant/back/6705.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "807380": "b93f84",
+ "f2daf2": "fbb3d2",
+ "4d454d": "8a2166",
+ "bfacbf": "e56ca6",
+ "367456": "0c5474",
+ "50ab89": "197497",
+ "101010": "101010",
+ "60606c": "1f1233",
+ "c5cce0": "513981",
+ "aeb5c6": "442967",
+ "949aab": "301848",
+ "e3e8f4": "f2e4ff"
+ },
+ "2": {
+ "807380": "2b736f",
+ "f2daf2": "9cead8",
+ "4d454d": "194f51",
+ "bfacbf": "5db6a9",
+ "367456": "367456",
+ "50ab89": "50ab89",
+ "101010": "101010",
+ "60606c": "042329",
+ "c5cce0": "176463",
+ "aeb5c6": "0d484a",
+ "949aab": "073338",
+ "e3e8f4": "e3e8f4"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/6706_2.json b/public/images/pokemon/variant/back/6706_2.json
new file mode 100644
index 00000000000..dccfbce60c5
--- /dev/null
+++ b/public/images/pokemon/variant/back/6706_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "6706_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 79,
+ "h": 79
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 79,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 79,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 79,
+ "h": 73
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:64f7e6dfa489012922487e45ba53d557:4d24652b372939abe499497c4b6647b0:d60cc2e5ae2bd18de8ee3ab0649593ee$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/6706_2.png b/public/images/pokemon/variant/back/6706_2.png
new file mode 100644
index 00000000000..e52f1af4ba5
Binary files /dev/null and b/public/images/pokemon/variant/back/6706_2.png differ
diff --git a/public/images/pokemon/variant/back/6706_3.json b/public/images/pokemon/variant/back/6706_3.json
new file mode 100644
index 00000000000..9a97ce27059
--- /dev/null
+++ b/public/images/pokemon/variant/back/6706_3.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "6706_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 79,
+ "h": 79
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 79,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 79,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 79,
+ "h": 73
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:64f7e6dfa489012922487e45ba53d557:4d24652b372939abe499497c4b6647b0:d60cc2e5ae2bd18de8ee3ab0649593ee$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/6706_3.png b/public/images/pokemon/variant/back/6706_3.png
new file mode 100644
index 00000000000..fb780d01499
Binary files /dev/null and b/public/images/pokemon/variant/back/6706_3.png differ
diff --git a/public/images/pokemon/variant/back/69.json b/public/images/pokemon/variant/back/69.json
new file mode 100644
index 00000000000..7943a59aee4
--- /dev/null
+++ b/public/images/pokemon/variant/back/69.json
@@ -0,0 +1,18 @@
+{
+ "1": {
+ "ad7b42": "841d4a",
+ "ffffff": "ffffff",
+ "f7e673": "d97076",
+ "d6bd63": "b04d64",
+ "5a3a00": "3b0239",
+ "000000": "1d0015",
+ "946b42": "4f0537",
+ "b54231": "b54231",
+ "d6636b": "d6636b",
+ "732100": "732100",
+ "426b10": "b3273e",
+ "7bc552": "f3a480",
+ "63a542": "d0735b",
+ "adef94": "f3c9a2"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/70.json b/public/images/pokemon/variant/back/70.json
new file mode 100644
index 00000000000..cec6f32aae0
--- /dev/null
+++ b/public/images/pokemon/variant/back/70.json
@@ -0,0 +1,17 @@
+{
+ "1": {
+ "634a31": "4f0537",
+ "a57b31": "781649",
+ "000000": "320819",
+ "3a9c52": "d36a52",
+ "9cde84": "f3a978",
+ "085a31": "b6483e",
+ "d6c552": "ca4f59",
+ "ffe66b": "f1968a",
+ "6bc552": "e59266",
+ "fff7ad": "f9bfa6",
+ "7b2929": "5b284a",
+ "ef9cad": "aa6172",
+ "ce6b84": "7e4460"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/700.json b/public/images/pokemon/variant/back/700.json
new file mode 100644
index 00000000000..a7d41e68dd6
--- /dev/null
+++ b/public/images/pokemon/variant/back/700.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "101010": "101010",
+ "8a2843": "452f89",
+ "235a99": "a63071",
+ "d85a7a": "996cd2",
+ "fa8caa": "c7a6ee",
+ "64c8f3": "e974db",
+ "895c72": "5c6889",
+ "fff5f5": "f7f5ff",
+ "d9c3c3": "c3c5d9",
+ "528fcc": "d648b7",
+ "a88d8c": "8c8fa8"
+ },
+ "2": {
+ "101010": "101010",
+ "8a2843": "0e6134",
+ "235a99": "900d1b",
+ "d85a7a": "5dae7d",
+ "fa8caa": "95f0af",
+ "64c8f3": "ff9a68",
+ "895c72": "5c6889",
+ "fff5f5": "f7f5ff",
+ "d9c3c3": "c3c5d9",
+ "528fcc": "dd3d4f",
+ "a88d8c": "8c8fa8"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/704.json b/public/images/pokemon/variant/back/704.json
new file mode 100644
index 00000000000..be52dd71a83
--- /dev/null
+++ b/public/images/pokemon/variant/back/704.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "807380": "b93f84",
+ "4d454d": "8a2166",
+ "f2daf2": "fbb3d2",
+ "bfacbf": "c77da0",
+ "101010": "101010",
+ "66cc52": "348fa6",
+ "4d993d": "185d83",
+ "8f7db3": "7d699d",
+ "b8a1e5": "c7a1e5",
+ "665980": "4e4094"
+ },
+ "2": {
+ "807380": "237e7f",
+ "4d454d": "134557",
+ "f2daf2": "92d8c8",
+ "bfacbf": "5f8d86",
+ "101010": "101010",
+ "66cc52": "bb7935",
+ "4d993d": "a34205",
+ "8f7db3": "2f5d6f",
+ "b8a1e5": "4a9699",
+ "665980": "274159"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/705.json b/public/images/pokemon/variant/back/705.json
new file mode 100644
index 00000000000..7d0e856616d
--- /dev/null
+++ b/public/images/pokemon/variant/back/705.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "807380": "b93f84",
+ "f2daf2": "fbb3d2",
+ "4d454d": "8a2166",
+ "bfacbf": "ca719c",
+ "647543": "0c5474",
+ "98bd51": "197497",
+ "101010": "101010",
+ "665980": "4e4094",
+ "8f7db3": "8b69c3",
+ "b8a1e5": "c7a1e5"
+ },
+ "2": {
+ "807380": "20615e",
+ "f2daf2": "9cead8",
+ "4d454d": "124143",
+ "bfacbf": "4e9b8f",
+ "647543": "842401",
+ "98bd51": "a34205",
+ "101010": "101010",
+ "665980": "274159",
+ "8f7db3": "2f667c",
+ "b8a1e5": "4a9699"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/706.json b/public/images/pokemon/variant/back/706.json
new file mode 100644
index 00000000000..ff21462bf22
--- /dev/null
+++ b/public/images/pokemon/variant/back/706.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "807380": "b24c86",
+ "e6d4e7": "f1a4c5",
+ "4d454d": "8a2166",
+ "bfacbf": "cd7aa1",
+ "f8f8f8": "f8f8f8",
+ "101010": "101010",
+ "998a99": "b24c86",
+ "307922": "0c5474",
+ "46b030": "197497",
+ "8e71bb": "8b69c3",
+ "665185": "4e4094",
+ "b791f0": "c7a1e5",
+ "98bd51": "3aa8c4",
+ "d2e79e": "63cee1",
+ "647543": "0e6296"
+ },
+ "2": {
+ "807380": "194f51",
+ "e6d4e7": "9cead8",
+ "4d454d": "0e4043",
+ "bfacbf": "559b91",
+ "f8f8f8": "f8f8f8",
+ "101010": "101010",
+ "998a99": "2b736f",
+ "307922": "842401",
+ "46b030": "a34205",
+ "8e71bb": "273b4e",
+ "665185": "172f46",
+ "b791f0": "2f667c",
+ "98bd51": "d27e26",
+ "d2e79e": "f7af58",
+ "647543": "8e480b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/708.json b/public/images/pokemon/variant/back/708.json
new file mode 100644
index 00000000000..e3ffaa6e659
--- /dev/null
+++ b/public/images/pokemon/variant/back/708.json
@@ -0,0 +1,22 @@
+{
+ "1": {
+ "101010": "101010",
+ "2b303c": "722023",
+ "494e5b": "a14743",
+ "56372f": "36384f",
+ "174d3b": "4d362e",
+ "a87651": "7c808c",
+ "36b389": "907f76",
+ "775943": "575a6a"
+ },
+ "2": {
+ "101010": "101010",
+ "2b303c": "6f5f80",
+ "494e5b": "9c92a4",
+ "56372f": "31161d",
+ "174d3b": "a94079",
+ "a87651": "7e5658",
+ "36b389": "da7ea8",
+ "775943": "56323a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/709.json b/public/images/pokemon/variant/back/709.json
new file mode 100644
index 00000000000..51b5ea55f48
--- /dev/null
+++ b/public/images/pokemon/variant/back/709.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "4d361f": "36384f",
+ "174d3b": "361f1b",
+ "101010": "101010",
+ "cc8f52": "7c808c",
+ "36b389": "907f76",
+ "268062": "4d362e",
+ "996b3d": "575a6a",
+ "73502e": "262741",
+ "262626": "722023"
+ },
+ "2": {
+ "4d361f": "47232b",
+ "174d3b": "761d52",
+ "101010": "101010",
+ "cc8f52": "7e5658",
+ "36b389": "da7ea8",
+ "268062": "a94079",
+ "996b3d": "56323a",
+ "73502e": "31161d",
+ "262626": "6f5f80"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/71.json b/public/images/pokemon/variant/back/71.json
new file mode 100644
index 00000000000..1a29fe7b405
--- /dev/null
+++ b/public/images/pokemon/variant/back/71.json
@@ -0,0 +1,19 @@
+{
+ "1": {
+ "635229": "4f0537",
+ "a57b31": "781649",
+ "000000": "000000",
+ "4aa57b": "e28e58",
+ "10633a": "b0552e",
+ "8cc57b": "e28e58",
+ "841900": "50155e",
+ "c55a21": "8d2f89",
+ "debd52": "983b3d",
+ "ef8c52": "b352a5",
+ "efd66b": "b6514d",
+ "f7ef94": "d37763",
+ "bdc5c5": "bdc5c5",
+ "ffffff": "ffffff",
+ "b5e69c": "f9be81"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/710.json b/public/images/pokemon/variant/back/710.json
new file mode 100644
index 00000000000..63492302b69
--- /dev/null
+++ b/public/images/pokemon/variant/back/710.json
@@ -0,0 +1,20 @@
+{
+ "1": {
+ "101010": "101010",
+ "664e42": "72a966",
+ "332721": "213a22",
+ "4d3b32": "478243",
+ "ffb5a6": "595959",
+ "b36859": "262626",
+ "d98777": "404040"
+ },
+ "2": {
+ "101010": "101010",
+ "664e42": "425947",
+ "332721": "0e2218",
+ "4d3b32": "2a4031",
+ "ffb5a6": "e56146",
+ "b36859": "861613",
+ "d98777": "ad3b33"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/711.json b/public/images/pokemon/variant/back/711.json
new file mode 100644
index 00000000000..dfa0005fa7d
--- /dev/null
+++ b/public/images/pokemon/variant/back/711.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "070707": "070707",
+ "605347": "593a59",
+ "34281d": "291431",
+ "4a4127": "311835",
+ "b96a5a": "262626",
+ "674128": "171717",
+ "faab9b": "646464",
+ "d78c7f": "404040",
+ "7a5a41": "673b1b",
+ "fcddbe": "cea971",
+ "c99c6b": "b98e55"
+ },
+ "1": {
+ "070707": "070707",
+ "605347": "353631",
+ "34281d": "0f1014",
+ "4a4127": "202423",
+ "b96a5a": "325b34",
+ "674128": "153f18",
+ "faab9b": "71b269",
+ "d78c7f": "4d7d4b",
+ "7a5a41": "5c4831",
+ "fcddbe": "ddcfb1",
+ "c99c6b": "baa78d"
+ },
+ "2": {
+ "070707": "070707",
+ "605347": "e56146",
+ "34281d": "5e0b09",
+ "4a4127": "ad3b33",
+ "b96a5a": "213c28",
+ "674128": "102316",
+ "faab9b": "3e6842",
+ "d78c7f": "36593d",
+ "7a5a41": "4a2618",
+ "fcddbe": "ac764c",
+ "c99c6b": "9b613a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/720-unbound.json b/public/images/pokemon/variant/back/720-unbound.json
new file mode 100644
index 00000000000..61c6c599b5d
--- /dev/null
+++ b/public/images/pokemon/variant/back/720-unbound.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "6a1d52": "620d00",
+ "cd5484": "cb5e23",
+ "af3067": "902c0d",
+ "4e586b": "725f4d",
+ "a6c0ca": "c6bba8",
+ "7b91a3": "958672",
+ "925b0f": "414a79",
+ "2c2c2c": "3e162b",
+ "010101": "010101",
+ "dba423": "9ca7d5",
+ "e0ca61": "becef5",
+ "4f4f4f": "684252"
+ },
+ "1": {
+ "6a1d52": "280d46",
+ "cd5484": "753f9b",
+ "af3067": "471c6b",
+ "4e586b": "72496e",
+ "a6c0ca": "c3aabe",
+ "7b91a3": "997392",
+ "925b0f": "853015",
+ "2c2c2c": "632373",
+ "010101": "010101",
+ "dba423": "e2885a",
+ "e0ca61": "ffc26a",
+ "4f4f4f": "a947b4"
+ },
+ "2": {
+ "6a1d52": "150933",
+ "cd5484": "35387c",
+ "af3067": "1d1a4b",
+ "4e586b": "345a54",
+ "a6c0ca": "a1c4c3",
+ "7b91a3": "5c827d",
+ "925b0f": "682b16",
+ "2c2c2c": "1c2433",
+ "010101": "010101",
+ "dba423": "b05d2d",
+ "e0ca61": "ed9b42",
+ "4f4f4f": "304757"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/720.json b/public/images/pokemon/variant/back/720.json
new file mode 100644
index 00000000000..49f525d94b0
--- /dev/null
+++ b/public/images/pokemon/variant/back/720.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "8c3f59": "620d00",
+ "ff73a2": "cb5e23",
+ "cc5c81": "902c0d",
+ "676773": "3e162b",
+ "8a8a99": "684252",
+ "807126": "414a79",
+ "ffe14c": "c5deec",
+ "fdfdfd": "f3feff",
+ "101010": "101010",
+ "ccb43d": "9cafdd",
+ "b8b8cc": "cc9b3c",
+ "dadaf2": "ffdb73"
+ },
+ "1": {
+ "8c3f59": "280d46",
+ "ff73a2": "753f9b",
+ "cc5c81": "471c6b",
+ "676773": "632373",
+ "8a8a99": "a947b4",
+ "807126": "853015",
+ "ffe14c": "ffc26a",
+ "fdfdfd": "fff0e8",
+ "101010": "101010",
+ "ccb43d": "eb7037",
+ "b8b8cc": "ca79bd",
+ "dadaf2": "f7bae9"
+ },
+ "2": {
+ "8c3f59": "150933",
+ "ff73a2": "35387c",
+ "cc5c81": "1d1a4b",
+ "676773": "1c2433",
+ "8a8a99": "304757",
+ "807126": "682b16",
+ "ffe14c": "ffc26a",
+ "fdfdfd": "ffffde",
+ "101010": "101010",
+ "ccb43d": "b05d2d",
+ "b8b8cc": "9e8fbb",
+ "dadaf2": "d5cce5"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/747.json b/public/images/pokemon/variant/back/747.json
new file mode 100644
index 00000000000..946fd0fa0aa
--- /dev/null
+++ b/public/images/pokemon/variant/back/747.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "be7c34": "614da4",
+ "f9e07d": "e3e2ff",
+ "753e7b": "9b6459",
+ "ba8dbe": "edd5ca",
+ "101010": "101010",
+ "9265a3": "7d2671",
+ "335780": "490a3c",
+ "dcafd6": "a21f90",
+ "9fd9d6": "e07b53",
+ "6098b7": "b24b34"
+ },
+ "2": {
+ "be7c34": "9f4354",
+ "f9e07d": "ffebed",
+ "753e7b": "113c3a",
+ "ba8dbe": "2b6157",
+ "101010": "101010",
+ "9265a3": "e5214a",
+ "335780": "12484e",
+ "dcafd6": "ff3f5a",
+ "9fd9d6": "5bd97f",
+ "6098b7": "359d5d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/748.json b/public/images/pokemon/variant/back/748.json
new file mode 100644
index 00000000000..80953670173
--- /dev/null
+++ b/public/images/pokemon/variant/back/748.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "101010": "101010",
+ "943732": "5c075b",
+ "f28c4f": "c639bd",
+ "e25025": "a21f90",
+ "6f97c4": "be583d",
+ "93d1d7": "df7b52",
+ "3a3f6d": "171539",
+ "525898": "6c3776",
+ "455b85": "892e20",
+ "711a6a": "81463e",
+ "b7429a": "d29784",
+ "d76fa5": "edd5ca",
+ "171539": "171539"
+ },
+ "2": {
+ "101010": "101010",
+ "943732": "ac063c",
+ "f28c4f": "ff3f5a",
+ "e25025": "e12350",
+ "6f97c4": "359d5d",
+ "93d1d7": "5bd97f",
+ "3a3f6d": "490c06",
+ "525898": "d75b3c",
+ "455b85": "186443",
+ "711a6a": "082b29",
+ "b7429a": "1c524b",
+ "d76fa5": "2b6157",
+ "171539": "171539"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/802.json b/public/images/pokemon/variant/back/802.json
new file mode 100644
index 00000000000..a5fdbcd63b7
--- /dev/null
+++ b/public/images/pokemon/variant/back/802.json
@@ -0,0 +1,29 @@
+{
+ "0": {
+ "536155": "29352b",
+ "2c3e30": "111c12",
+ "6a806d": "526555",
+ "101010": "101010",
+ "2d3137": "084434",
+ "747778": "76bc8f",
+ "4e5356": "3a7e5d"
+ },
+ "1": {
+ "536155": "b5b1ce",
+ "2c3e30": "7a758d",
+ "6a806d": "cbc9e8",
+ "101010": "101010",
+ "2d3137": "17145e",
+ "747778": "515aad",
+ "4e5356": "2f3079"
+ },
+ "2": {
+ "536155": "82b7c3",
+ "2c3e30": "508294",
+ "6a806d": "a7eaee",
+ "101010": "101010",
+ "2d3137": "5a0423",
+ "747778": "ce3e63",
+ "4e5356": "97123b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/856.json b/public/images/pokemon/variant/back/856.json
new file mode 100644
index 00000000000..3d245b74324
--- /dev/null
+++ b/public/images/pokemon/variant/back/856.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "727ab1": "1d4a3b",
+ "c8e9ff": "5ec183",
+ "181818": "181818",
+ "acbfdf": "3b9665",
+ "bb6a99": "043232",
+ "f9d5da": "298675",
+ "fbe6e9": "60b581",
+ "fefefe": "a5e8be",
+ "dca5bd": "125a51"
+ },
+ "2": {
+ "727ab1": "6b0124",
+ "c8e9ff": "cb304d",
+ "181818": "181818",
+ "acbfdf": "a11437",
+ "bb6a99": "30163d",
+ "f9d5da": "523f73",
+ "fbe6e9": "b53859",
+ "fefefe": "e8627b",
+ "dca5bd": "3b2351"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/857_2.json b/public/images/pokemon/variant/back/857_2.json
new file mode 100644
index 00000000000..62f36a49a6b
--- /dev/null
+++ b/public/images/pokemon/variant/back/857_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "857_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 58,
+ "h": 58
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 58,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 58,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 58,
+ "h": 53
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:6b34ee4ca6eae629d13bf35db95adc0d:01907499f84524975c4cbe6b6ef2f9e9:76d73294e4ff7ab8f96a631810e2dc62$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/857_2.png b/public/images/pokemon/variant/back/857_2.png
new file mode 100644
index 00000000000..bbc09762342
Binary files /dev/null and b/public/images/pokemon/variant/back/857_2.png differ
diff --git a/public/images/pokemon/variant/back/857_3.json b/public/images/pokemon/variant/back/857_3.json
new file mode 100644
index 00000000000..4e4c4bb192a
--- /dev/null
+++ b/public/images/pokemon/variant/back/857_3.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "857_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 58,
+ "h": 58
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 58,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 58,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 58,
+ "h": 53
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:6b34ee4ca6eae629d13bf35db95adc0d:01907499f84524975c4cbe6b6ef2f9e9:76d73294e4ff7ab8f96a631810e2dc62$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/857_3.png b/public/images/pokemon/variant/back/857_3.png
new file mode 100644
index 00000000000..9f77ff938c6
Binary files /dev/null and b/public/images/pokemon/variant/back/857_3.png differ
diff --git a/public/images/pokemon/variant/back/858.json b/public/images/pokemon/variant/back/858.json
new file mode 100644
index 00000000000..5d9ca997770
--- /dev/null
+++ b/public/images/pokemon/variant/back/858.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "727ab1": "1d4a3b",
+ "acbfdf": "3b9665",
+ "101010": "101010",
+ "948fc2": "287b59",
+ "c8e9ff": "5ec183",
+ "d9cedb": "dec1c2",
+ "c15974": "043232",
+ "f5bac2": "298675",
+ "e489a0": "125a51",
+ "856d8b": "9c7a81",
+ "b4a2b7": "bf9ca0",
+ "fefefe": "f7e4e4"
+ },
+ "2": {
+ "727ab1": "6b0124",
+ "acbfdf": "a11437",
+ "101010": "101010",
+ "948fc2": "8c0e32",
+ "c8e9ff": "cb304d",
+ "d9cedb": "e4bcde",
+ "c15974": "30163d",
+ "f5bac2": "523f73",
+ "e489a0": "3b2351",
+ "856d8b": "976c95",
+ "b4a2b7": "bc93b7",
+ "fefefe": "ffecf9"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/86.json b/public/images/pokemon/variant/back/86.json
new file mode 100644
index 00000000000..75fd67c9b4d
--- /dev/null
+++ b/public/images/pokemon/variant/back/86.json
@@ -0,0 +1,38 @@
+{
+ "0": {
+ "425284": "7d3c2e",
+ "e6e6f7": "f3c7aa",
+ "949cb5": "a86f5b",
+ "d6ceef": "c78f72",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "b59442": "a4622f",
+ "f7e6bd": "f7e3bd",
+ "6b5a10": "6b3410",
+ "dec573": "bb9451"
+ },
+ "1": {
+ "425284": "414e63",
+ "e6e6f7": "b2c3d1",
+ "949cb5": "5e6d7c",
+ "d6ceef": "91a0ac",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "b59442": "b5ada5",
+ "f7e6bd": "efefe6",
+ "6b5a10": "847b73",
+ "dec573": "d6d6ce"
+ },
+ "2": {
+ "425284": "1b2b3b",
+ "e6e6f7": "7ecdca",
+ "949cb5": "325062",
+ "d6ceef": "558a98",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "b59442": "81604a",
+ "f7e6bd": "d9caa5",
+ "6b5a10": "5f3e2e",
+ "dec573": "ad8f6f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/87.json b/public/images/pokemon/variant/back/87.json
new file mode 100644
index 00000000000..bc02e269dbe
--- /dev/null
+++ b/public/images/pokemon/variant/back/87.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "6b7ba5": "8f5641",
+ "e6e6f7": "f0b28a",
+ "425263": "773630",
+ "d6ceef": "bc7855",
+ "9ca5bd": "b76a43",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "847b7b": "847b7b",
+ "d6cece": "d6cece"
+ },
+ "1": {
+ "6b7ba5": "465264",
+ "e6e6f7": "96adbe",
+ "425263": "2f3b50",
+ "d6ceef": "5a7286",
+ "9ca5bd": "5e6d7c",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "847b7b": "847b7b",
+ "d6cece": "d6cece"
+ },
+ "2": {
+ "6b7ba5": "20354a",
+ "e6e6f7": "86dfe2",
+ "425263": "171d3f",
+ "d6ceef": "5493ac",
+ "9ca5bd": "305f7d",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "847b7b": "847b7b",
+ "d6cece": "d6cece"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/872.json b/public/images/pokemon/variant/back/872.json
new file mode 100644
index 00000000000..c7b73b39012
--- /dev/null
+++ b/public/images/pokemon/variant/back/872.json
@@ -0,0 +1,32 @@
+{
+ "0": {
+ "7b8b9b": "345f5c",
+ "d8e9f0": "b7f1d6",
+ "f5fdff": "f5fdff",
+ "acc3cc": "669a8c",
+ "101010": "101010",
+ "695e77": "275e43",
+ "edeae0": "a6d6a6",
+ "b3a7c2": "73a878"
+ },
+ "1": {
+ "7b8b9b": "22504c",
+ "d8e9f0": "b6e7df",
+ "f5fdff": "f5fdff",
+ "acc3cc": "548e8f",
+ "101010": "101010",
+ "695e77": "354b63",
+ "edeae0": "c1ebf3",
+ "b3a7c2": "89a9be"
+ },
+ "2": {
+ "7b8b9b": "5a3993",
+ "d8e9f0": "d5c3ff",
+ "f5fdff": "f5fdff",
+ "acc3cc": "a66ac2",
+ "101010": "101010",
+ "695e77": "5f3465",
+ "edeae0": "e5a2da",
+ "b3a7c2": "a060a0"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/873.json b/public/images/pokemon/variant/back/873.json
new file mode 100644
index 00000000000..dd3754e7fe9
--- /dev/null
+++ b/public/images/pokemon/variant/back/873.json
@@ -0,0 +1,26 @@
+{
+ "0": {
+ "747489": "547b58",
+ "b3b4bd": "73a878",
+ "e7e0e6": "a6d6a6",
+ "8f8f9f": "27532f",
+ "fdfdfd": "b7f1d7",
+ "101010": "101010"
+ },
+ "1": {
+ "747489": "556b7d",
+ "b3b4bd": "92a9b8",
+ "e7e0e6": "b6e7df",
+ "8f8f9f": "415366",
+ "fdfdfd": "eefffb",
+ "101010": "101010"
+ },
+ "2": {
+ "747489": "512d52",
+ "b3b4bd": "864c86",
+ "e7e0e6": "d78dcb",
+ "8f8f9f": "5f3465",
+ "fdfdfd": "d5c3ff",
+ "101010": "101010"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/877-hangry.json b/public/images/pokemon/variant/back/877-hangry.json
new file mode 100644
index 00000000000..a4e19c34f67
--- /dev/null
+++ b/public/images/pokemon/variant/back/877-hangry.json
@@ -0,0 +1,29 @@
+{
+ "0": {
+ "383634": "3a1010",
+ "101010": "101010",
+ "4f4b47": "952222",
+ "6c6c6c": "540606",
+ "6b3d96": "967f3d",
+ "493061": "3a2510",
+ "9958ce": "cebb58"
+ },
+ "1": {
+ "383634": "383634",
+ "101010": "101010",
+ "4f4b47": "3a3a3a",
+ "6c6c6c": "212020",
+ "6b3d96": "cb6333",
+ "493061": "a2512c",
+ "9958ce": "cb6333"
+ },
+ "2": {
+ "383634": "383634",
+ "101010": "101010",
+ "4f4b47": "4f4b47",
+ "6c6c6c": "6c6c6c",
+ "6b3d96": "568351",
+ "493061": "306135",
+ "9958ce": "7fba7f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/877.json b/public/images/pokemon/variant/back/877.json
new file mode 100644
index 00000000000..846a3ecdaee
--- /dev/null
+++ b/public/images/pokemon/variant/back/877.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "8a5e48": "383634",
+ "101010": "101010",
+ "383634": "383634",
+ "af7044": "4f4b47",
+ "4f4b47": "4f4b47",
+ "6c6c6c": "6c6c6c",
+ "cf9c66": "6c6c6c",
+ "d3b351": "8851d3",
+ "f4f489": "b689f4"
+ },
+ "1": {
+ "8a5e48": "2e57f6",
+ "101010": "101010",
+ "383634": "383634",
+ "af7044": "86aaff",
+ "4f4b47": "4f4b47",
+ "6c6c6c": "6c6c6c",
+ "cf9c66": "2c439d",
+ "d3b351": "8b8853",
+ "f4f489": "fff98f"
+ },
+ "2": {
+ "8a5e48": "4f8a48",
+ "101010": "101010",
+ "383634": "383634",
+ "af7044": "71cf66",
+ "4f4b47": "4f4b47",
+ "6c6c6c": "6c6c6c",
+ "cf9c66": "44af5b",
+ "d3b351": "b6b6b6",
+ "f4f489": "f8f8f8"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/885.json b/public/images/pokemon/variant/back/885.json
new file mode 100644
index 00000000000..a03ef2a9a01
--- /dev/null
+++ b/public/images/pokemon/variant/back/885.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "3a583c": "133056",
+ "fa5494": "efa93f",
+ "101010": "101010",
+ "cc4066": "ac7508",
+ "5f875a": "2f6c89",
+ "476b48": "20486e",
+ "78aa84": "479bb6",
+ "addcbc": "6accd6",
+ "822d44": "824100",
+ "eb4972": "ac7508",
+ "c4264e": "9c5f05"
+ },
+ "1": {
+ "3a583c": "2f040d",
+ "fa5494": "4590da",
+ "101010": "101010",
+ "cc4066": "244f9f",
+ "5f875a": "7d1f2c",
+ "476b48": "2f040d",
+ "78aa84": "b13b42",
+ "addcbc": "da6151",
+ "822d44": "071d61",
+ "eb4972": "234582",
+ "c4264e": "213464"
+ },
+ "2": {
+ "3a583c": "1f0c2c",
+ "fa5494": "68c7c4",
+ "101010": "101010",
+ "cc4066": "2a8286",
+ "5f875a": "3c2750",
+ "476b48": "231234",
+ "78aa84": "624c6f",
+ "addcbc": "927fa1",
+ "822d44": "00405b",
+ "eb4972": "126f79",
+ "c4264e": "08586a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/886.json b/public/images/pokemon/variant/back/886.json
new file mode 100644
index 00000000000..be5cad5860a
--- /dev/null
+++ b/public/images/pokemon/variant/back/886.json
@@ -0,0 +1,38 @@
+{
+ "0": {
+ "444e62": "2d365a",
+ "101010": "101010",
+ "addcbc": "6accd6",
+ "5f875a": "2f6c89",
+ "2c323f": "192250",
+ "566f89": "465272",
+ "fa5494": "efa93f",
+ "7fb3b1": "78c3cb",
+ "d5fffb": "d5fffb",
+ "5b878c": "4c90a6"
+ },
+ "1": {
+ "444e62": "4a1621",
+ "101010": "101010",
+ "addcbc": "da6151",
+ "5f875a": "6b242e",
+ "2c323f": "2e080d",
+ "566f89": "602034",
+ "fa5494": "4590da",
+ "7fb3b1": "a94046",
+ "d5fffb": "ffb853",
+ "5b878c": "7e2833"
+ },
+ "2": {
+ "444e62": "231b45",
+ "101010": "101010",
+ "addcbc": "927fa1",
+ "5f875a": "3c2750",
+ "2c323f": "251b31",
+ "566f89": "3b2e5d",
+ "fa5494": "60d1cd",
+ "7fb3b1": "8b659f",
+ "d5fffb": "d67ae7",
+ "5b878c": "6c4d85"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/887.json b/public/images/pokemon/variant/back/887.json
new file mode 100644
index 00000000000..e49645f7228
--- /dev/null
+++ b/public/images/pokemon/variant/back/887.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "101010": "101010",
+ "2c323f": "192250",
+ "566f89": "46557b",
+ "444e62": "2c3867",
+ "fa5494": "efa93f",
+ "cc4066": "8e611e",
+ "ffe322": "ffcc48",
+ "308b86": "2f6c89",
+ "b5a36a": "b1aaa5",
+ "78d4cb": "6accd6",
+ "d5fffb": "9dfffa",
+ "386a70": "20486e",
+ "48a9b0": "479bb6"
+ },
+ "1": {
+ "101010": "101010",
+ "2c323f": "2e080d",
+ "566f89": "6c273d",
+ "444e62": "4a1621",
+ "fa5494": "4590da",
+ "cc4066": "374c74",
+ "ffe322": "4fffa4",
+ "308b86": "690f1b",
+ "b5a36a": "d2a76c",
+ "78d4cb": "b13b42",
+ "d5fffb": "ffb853",
+ "386a70": "490711",
+ "48a9b0": "8a212f"
+ },
+ "2": {
+ "101010": "101010",
+ "2c323f": "1b163f",
+ "566f89": "566f89",
+ "444e62": "332a59",
+ "fa5494": "68c7c4",
+ "cc4066": "2a666b",
+ "ffe322": "87ff46",
+ "308b86": "231234",
+ "b5a36a": "7b7a8c",
+ "78d4cb": "744e89",
+ "d5fffb": "976ae3",
+ "386a70": "1d0e33",
+ "48a9b0": "482962"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/92_1.json b/public/images/pokemon/variant/back/92_1.json
new file mode 100644
index 00000000000..59c140ea207
--- /dev/null
+++ b/public/images/pokemon/variant/back/92_1.json
@@ -0,0 +1,2330 @@
+{
+ "textures": [
+ {
+ "image": "92_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 525,
+ "h": 525
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 189,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 252,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 315,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 378,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 441,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 59,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 118,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 177,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 236,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 354,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 413,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 22,
+ "w": 48,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 472,
+ "w": 48,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 19,
+ "w": 48,
+ "h": 53
+ },
+ "frame": {
+ "x": 48,
+ "y": 472,
+ "w": 48,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 59,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 118,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 177,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 236,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 16,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 413,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 413,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 20,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 96,
+ "y": 472,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 20,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 96,
+ "y": 472,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 413,
+ "w": 61,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 413,
+ "w": 61,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 21,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 142,
+ "y": 472,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 186,
+ "y": 413,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 186,
+ "y": 413,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 4,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 191,
+ "y": 471,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 59,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 59,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 117,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 117,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 175,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 233,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 233,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 187,
+ "y": 291,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 187,
+ "y": 291,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 187,
+ "y": 349,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 248,
+ "y": 349,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 248,
+ "y": 349,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 249,
+ "y": 407,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 249,
+ "y": 407,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 251,
+ "y": 465,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 251,
+ "y": 465,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 312,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 312,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 9,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 12,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 61,
+ "h": 57
+ },
+ "frame": {
+ "x": 189,
+ "y": 59,
+ "w": 61,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 374,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 374,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 436,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 12,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 436,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 21,
+ "w": 61,
+ "h": 57
+ },
+ "frame": {
+ "x": 189,
+ "y": 116,
+ "w": 61,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 21,
+ "w": 61,
+ "h": 57
+ },
+ "frame": {
+ "x": 189,
+ "y": 116,
+ "w": 61,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 173,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 173,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 18,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 21,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 12,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 251,
+ "y": 171,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 251,
+ "y": 171,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 311,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 311,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 12,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 285,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 285,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 56
+ },
+ "frame": {
+ "x": 309,
+ "y": 341,
+ "w": 60,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 56
+ },
+ "frame": {
+ "x": 310,
+ "y": 397,
+ "w": 60,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 453,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 453,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 18,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 311,
+ "y": 227,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 18,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 311,
+ "y": 227,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 171,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 171,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 372,
+ "y": 115,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 311,
+ "y": 282,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 369,
+ "y": 337,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 371,
+ "y": 282,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 372,
+ "y": 226,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 373,
+ "y": 170,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 432,
+ "y": 115,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 21,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 370,
+ "y": 392,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 24,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 373,
+ "y": 442,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 27,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 419,
+ "y": 392,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 27,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 169,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 27,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 169,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 15,
+ "w": 51,
+ "h": 46
+ },
+ "frame": {
+ "x": 471,
+ "y": 218,
+ "w": 51,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 15,
+ "w": 51,
+ "h": 46
+ },
+ "frame": {
+ "x": 471,
+ "y": 264,
+ "w": 51,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 21,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 310,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 24,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 310,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 359,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 15,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 359,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 12,
+ "w": 50,
+ "h": 47
+ },
+ "frame": {
+ "x": 471,
+ "y": 408,
+ "w": 50,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 9,
+ "w": 50,
+ "h": 47
+ },
+ "frame": {
+ "x": 471,
+ "y": 408,
+ "w": 50,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 9,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 425,
+ "y": 455,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 12,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 474,
+ "y": 455,
+ "w": 49,
+ "h": 49
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:bfa0b68654f18a9392f5e9fbc4ed0453:47b399bf8c93eb39ba69f62c9a5d3304:940f904821041481572d765abbc53d9e$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/92_1.png b/public/images/pokemon/variant/back/92_1.png
new file mode 100644
index 00000000000..20faf4213ca
Binary files /dev/null and b/public/images/pokemon/variant/back/92_1.png differ
diff --git a/public/images/pokemon/variant/back/92_2.json b/public/images/pokemon/variant/back/92_2.json
new file mode 100644
index 00000000000..1eb26c8c9ea
--- /dev/null
+++ b/public/images/pokemon/variant/back/92_2.json
@@ -0,0 +1,2330 @@
+{
+ "textures": [
+ {
+ "image": "92_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 525,
+ "h": 525
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 189,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 252,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 315,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 378,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 441,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 59,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 118,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 177,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 236,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 354,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 413,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 22,
+ "w": 48,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 472,
+ "w": 48,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 19,
+ "w": 48,
+ "h": 53
+ },
+ "frame": {
+ "x": 48,
+ "y": 472,
+ "w": 48,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 59,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 118,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 177,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 236,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 16,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 413,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 413,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 20,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 96,
+ "y": 472,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 20,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 96,
+ "y": 472,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 413,
+ "w": 61,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 413,
+ "w": 61,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 21,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 142,
+ "y": 472,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 186,
+ "y": 413,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 186,
+ "y": 413,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 4,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 191,
+ "y": 471,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 59,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 59,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 117,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 117,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 175,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 233,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 233,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 187,
+ "y": 291,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 187,
+ "y": 291,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 187,
+ "y": 349,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 248,
+ "y": 349,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 248,
+ "y": 349,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 249,
+ "y": 407,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 249,
+ "y": 407,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 251,
+ "y": 465,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 251,
+ "y": 465,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 312,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 312,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 9,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 12,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 61,
+ "h": 57
+ },
+ "frame": {
+ "x": 189,
+ "y": 59,
+ "w": 61,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 374,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 374,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 436,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 12,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 436,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 21,
+ "w": 61,
+ "h": 57
+ },
+ "frame": {
+ "x": 189,
+ "y": 116,
+ "w": 61,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 21,
+ "w": 61,
+ "h": 57
+ },
+ "frame": {
+ "x": 189,
+ "y": 116,
+ "w": 61,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 173,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 173,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 18,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 21,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 12,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 251,
+ "y": 171,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 251,
+ "y": 171,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 311,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 311,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 12,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 285,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 285,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 56
+ },
+ "frame": {
+ "x": 309,
+ "y": 341,
+ "w": 60,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 56
+ },
+ "frame": {
+ "x": 310,
+ "y": 397,
+ "w": 60,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 453,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 453,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 18,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 311,
+ "y": 227,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 18,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 311,
+ "y": 227,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 171,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 171,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 372,
+ "y": 115,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 311,
+ "y": 282,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 369,
+ "y": 337,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 371,
+ "y": 282,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 372,
+ "y": 226,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 373,
+ "y": 170,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 432,
+ "y": 115,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 21,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 370,
+ "y": 392,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 24,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 373,
+ "y": 442,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 27,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 419,
+ "y": 392,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 27,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 169,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 27,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 169,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 15,
+ "w": 51,
+ "h": 46
+ },
+ "frame": {
+ "x": 471,
+ "y": 218,
+ "w": 51,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 15,
+ "w": 51,
+ "h": 46
+ },
+ "frame": {
+ "x": 471,
+ "y": 264,
+ "w": 51,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 21,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 310,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 24,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 310,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 359,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 15,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 359,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 12,
+ "w": 50,
+ "h": 47
+ },
+ "frame": {
+ "x": 471,
+ "y": 408,
+ "w": 50,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 9,
+ "w": 50,
+ "h": 47
+ },
+ "frame": {
+ "x": 471,
+ "y": 408,
+ "w": 50,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 9,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 425,
+ "y": 455,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 12,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 474,
+ "y": 455,
+ "w": 49,
+ "h": 49
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:bfa0b68654f18a9392f5e9fbc4ed0453:47b399bf8c93eb39ba69f62c9a5d3304:940f904821041481572d765abbc53d9e$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/92_2.png b/public/images/pokemon/variant/back/92_2.png
new file mode 100644
index 00000000000..6a7e13cc25e
Binary files /dev/null and b/public/images/pokemon/variant/back/92_2.png differ
diff --git a/public/images/pokemon/variant/back/92_3.json b/public/images/pokemon/variant/back/92_3.json
new file mode 100644
index 00000000000..e841097a166
--- /dev/null
+++ b/public/images/pokemon/variant/back/92_3.json
@@ -0,0 +1,2330 @@
+{
+ "textures": [
+ {
+ "image": "92_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 525,
+ "h": 525
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 126,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 189,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 252,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 315,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 378,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 441,
+ "y": 0,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 59,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 118,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 11,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 177,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 236,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 295,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 354,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 413,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 22,
+ "w": 48,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 472,
+ "w": 48,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 19,
+ "w": 48,
+ "h": 53
+ },
+ "frame": {
+ "x": 48,
+ "y": 472,
+ "w": 48,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 59,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 118,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 177,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0096.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 63,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 236,
+ "w": 63,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 7,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 16,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 413,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 63,
+ "y": 413,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 20,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 96,
+ "y": 472,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 20,
+ "w": 46,
+ "h": 52
+ },
+ "frame": {
+ "x": 96,
+ "y": 472,
+ "w": 46,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 295,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 13,
+ "w": 62,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 354,
+ "w": 62,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 413,
+ "w": 61,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 59
+ },
+ "frame": {
+ "x": 125,
+ "y": 413,
+ "w": 61,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 21,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 142,
+ "y": 472,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 186,
+ "y": 413,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 186,
+ "y": 413,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 4,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 191,
+ "y": 471,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 59,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 59,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 8,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 117,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 5,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 117,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 175,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 233,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 14,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 126,
+ "y": 233,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0097.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 187,
+ "y": 291,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0098.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 20,
+ "w": 63,
+ "h": 58
+ },
+ "frame": {
+ "x": 187,
+ "y": 291,
+ "w": 63,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 187,
+ "y": 349,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 248,
+ "y": 349,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 248,
+ "y": 349,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 249,
+ "y": 407,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 16,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 249,
+ "y": 407,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 251,
+ "y": 465,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 10,
+ "w": 61,
+ "h": 58
+ },
+ "frame": {
+ "x": 251,
+ "y": 465,
+ "w": 61,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 312,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 312,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 9,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 12,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 61,
+ "h": 57
+ },
+ "frame": {
+ "x": 189,
+ "y": 59,
+ "w": 61,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 3,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 374,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 374,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 15,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 436,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 12,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 436,
+ "y": 59,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 21,
+ "w": 61,
+ "h": 57
+ },
+ "frame": {
+ "x": 189,
+ "y": 116,
+ "w": 61,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 21,
+ "w": 61,
+ "h": 57
+ },
+ "frame": {
+ "x": 189,
+ "y": 116,
+ "w": 61,
+ "h": 57
+ }
+ },
+ {
+ "filename": "0099.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 21,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 173,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0100.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 62,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 173,
+ "w": 62,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 18,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 21,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 12,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 189,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 229,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 251,
+ "y": 171,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 251,
+ "y": 171,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 311,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 311,
+ "y": 115,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 12,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 285,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 9,
+ "w": 61,
+ "h": 56
+ },
+ "frame": {
+ "x": 250,
+ "y": 285,
+ "w": 61,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 56
+ },
+ "frame": {
+ "x": 309,
+ "y": 341,
+ "w": 60,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 56
+ },
+ "frame": {
+ "x": 310,
+ "y": 397,
+ "w": 60,
+ "h": 56
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 6,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 453,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 453,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0101.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 18,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 311,
+ "y": 227,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0102.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 18,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 311,
+ "y": 227,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0103.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 171,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0104.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 61,
+ "h": 55
+ },
+ "frame": {
+ "x": 312,
+ "y": 171,
+ "w": 61,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 372,
+ "y": 115,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 19,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 311,
+ "y": 282,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 369,
+ "y": 337,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 55
+ },
+ "frame": {
+ "x": 371,
+ "y": 282,
+ "w": 60,
+ "h": 55
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 372,
+ "y": 226,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0105.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 373,
+ "y": 170,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0106.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 60,
+ "h": 54
+ },
+ "frame": {
+ "x": 432,
+ "y": 115,
+ "w": 60,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 21,
+ "w": 49,
+ "h": 50
+ },
+ "frame": {
+ "x": 370,
+ "y": 392,
+ "w": 49,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 24,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 373,
+ "y": 442,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 27,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 419,
+ "y": 392,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 27,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 169,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 27,
+ "w": 52,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 169,
+ "w": 52,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0107.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 15,
+ "w": 51,
+ "h": 46
+ },
+ "frame": {
+ "x": 471,
+ "y": 218,
+ "w": 51,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0108.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 15,
+ "w": 51,
+ "h": 46
+ },
+ "frame": {
+ "x": 471,
+ "y": 264,
+ "w": 51,
+ "h": 46
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 21,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 310,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 24,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 310,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 359,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 15,
+ "w": 50,
+ "h": 49
+ },
+ "frame": {
+ "x": 471,
+ "y": 359,
+ "w": 50,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0109.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 12,
+ "w": 50,
+ "h": 47
+ },
+ "frame": {
+ "x": 471,
+ "y": 408,
+ "w": 50,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0110.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 9,
+ "w": 50,
+ "h": 47
+ },
+ "frame": {
+ "x": 471,
+ "y": 408,
+ "w": 50,
+ "h": 47
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 9,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 425,
+ "y": 455,
+ "w": 49,
+ "h": 49
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 63,
+ "h": 78
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 12,
+ "w": 49,
+ "h": 49
+ },
+ "frame": {
+ "x": 474,
+ "y": 455,
+ "w": 49,
+ "h": 49
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:bfa0b68654f18a9392f5e9fbc4ed0453:47b399bf8c93eb39ba69f62c9a5d3304:940f904821041481572d765abbc53d9e$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/92_3.png b/public/images/pokemon/variant/back/92_3.png
new file mode 100644
index 00000000000..df995a87d55
Binary files /dev/null and b/public/images/pokemon/variant/back/92_3.png differ
diff --git a/public/images/pokemon/variant/back/93.json b/public/images/pokemon/variant/back/93.json
new file mode 100644
index 00000000000..d25c8085a4c
--- /dev/null
+++ b/public/images/pokemon/variant/back/93.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "de4a31": "5a94ff",
+ "845a6b": "8e699a",
+ "524263": "52426b",
+ "c58cce": "dfcaee",
+ "ad6bce": "caaddf",
+ "b51919": "2963d6",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "d6d6d6": "d6d6d6"
+ },
+ "1": {
+ "de4a31": "7ee75c",
+ "845a6b": "631b3f",
+ "524263": "380508",
+ "c58cce": "c06380",
+ "ad6bce": "8e395f",
+ "b51919": "2eb063",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "d6d6d6": "d6d6d6"
+ },
+ "2": {
+ "de4a31": "e47750",
+ "845a6b": "312a33",
+ "524263": "1a1320",
+ "c58cce": "897e91",
+ "ad6bce": "544e59",
+ "b51919": "b72b47",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "d6d6d6": "d6d6d6"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/94-gigantamax.json b/public/images/pokemon/variant/back/94-gigantamax.json
new file mode 100644
index 00000000000..550f763a83f
--- /dev/null
+++ b/public/images/pokemon/variant/back/94-gigantamax.json
@@ -0,0 +1,29 @@
+{
+ "0": {
+ "5a4a9c": "a89dc4",
+ "101010": "101010",
+ "b48bbd": "fefefe",
+ "9473b4": "fcf4fc",
+ "4a294a": "634b63",
+ "7b62a4": "d1bcd6",
+ "963e80": "8aabe6"
+ },
+ "1": {
+ "5a4a9c": "4a1f36",
+ "101010": "101010",
+ "b48bbd": "c56f8a",
+ "9473b4": "8d3e61",
+ "4a294a": "201323",
+ "7b62a4": "8d3e61",
+ "963e80": "49a277"
+ },
+ "2": {
+ "5a4a9c": "302433",
+ "101010": "101010",
+ "b48bbd": "7b6888",
+ "9473b4": "3f324a",
+ "4a294a": "201323",
+ "7b62a4": "3f324a",
+ "963e80": "a2495a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/94-mega.json b/public/images/pokemon/variant/back/94-mega.json
new file mode 100644
index 00000000000..a903b3aefb0
--- /dev/null
+++ b/public/images/pokemon/variant/back/94-mega.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "101010": "101010",
+ "4d2a4d": "634b63",
+ "503f73": "d1bcd6",
+ "775499": "fcf4fc",
+ "9469bf": "fefefe",
+ "453159": "a89dc4",
+ "994c99": "6e99e4",
+ "cc47a0": "4c69c3",
+ "ff5991": "72e9f2"
+ },
+ "1": {
+ "101010": "101010",
+ "4d2a4d": "1a1320",
+ "503f73": "511e3b",
+ "775499": "a44c73",
+ "9469bf": "c56f8a",
+ "453159": "3b132c",
+ "994c99": "7b3f8c",
+ "cc47a0": "4b3273",
+ "ff5991": "c1ea61"
+ },
+ "2": {
+ "101010": "101010",
+ "4d2a4d": "1a1320",
+ "503f73": "302433",
+ "775499": "3f324a",
+ "9469bf": "7b6888",
+ "453159": "2b1d2f",
+ "994c99": "43353e",
+ "cc47a0": "9c392a",
+ "ff5991": "fae277"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/94.json b/public/images/pokemon/variant/back/94.json
new file mode 100644
index 00000000000..23175bfe203
--- /dev/null
+++ b/public/images/pokemon/variant/back/94.json
@@ -0,0 +1,26 @@
+{
+ "0": {
+ "5a4a9c": "9e85a6",
+ "b58cbd": "ebdbf7",
+ "101010": "101010",
+ "9473b5": "cbb7da",
+ "4a294a": "634b63",
+ "7b63a5": "b8a2c3"
+ },
+ "1": {
+ "5a4a9c": "4a1f36",
+ "b58cbd": "c56f8a",
+ "101010": "101010",
+ "9473b5": "8d3e61",
+ "4a294a": "1b0917",
+ "7b63a5": "6f284a"
+ },
+ "2": {
+ "5a4a9c": "302433",
+ "b58cbd": "7b6888",
+ "101010": "101010",
+ "9473b5": "3f324a",
+ "4a294a": "201323",
+ "7b63a5": "3f324a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/962.json b/public/images/pokemon/variant/back/962.json
new file mode 100644
index 00000000000..615d983e2c5
--- /dev/null
+++ b/public/images/pokemon/variant/back/962.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "342930": "3e1d26",
+ "0f0f0f": "0f0f0f",
+ "4a3942": "60354a",
+ "937d85": "b1686b",
+ "b9aaaf": "dd9f9d",
+ "665b60": "924f57",
+ "efe3e1": "f6cbc4",
+ "a7aba7": "ddcac6",
+ "4d4a4b": "982b39",
+ "fffbff": "fceff1",
+ "e64c62": "4592c0",
+ "993e49": "4473d2",
+ "501d25": "1f3078",
+ "7b827b": "998482"
+ },
+ "1": {
+ "342930": "1e382a",
+ "0f0f0f": "0f0f0f",
+ "4a3942": "395740",
+ "937d85": "6b7e50",
+ "b9aaaf": "c6ca8e",
+ "665b60": "404b22",
+ "efe3e1": "e8e8c0",
+ "a7aba7": "98a798",
+ "4d4a4b": "aa2233",
+ "fffbff": "edf8e6",
+ "e64c62": "b37e6f",
+ "993e49": "79433f",
+ "501d25": "3e1e1d",
+ "7b827b": "6a856a"
+ },
+ "2": {
+ "342930": "754156",
+ "0f0f0f": "0f0f0f",
+ "4a3942": "a5777f",
+ "937d85": "2f2655",
+ "b9aaaf": "453863",
+ "665b60": "211f45",
+ "efe3e1": "67548a",
+ "a7aba7": "ddac84",
+ "4d4a4b": "a04a55",
+ "fffbff": "f7e5d0",
+ "e64c62": "aba7a8",
+ "993e49": "797877",
+ "501d25": "545151",
+ "7b827b": "a96c4b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/967.json b/public/images/pokemon/variant/back/967.json
new file mode 100644
index 00000000000..3794b725634
--- /dev/null
+++ b/public/images/pokemon/variant/back/967.json
@@ -0,0 +1,18 @@
+{
+ "1": {
+ "384a35": "464354",
+ "b9b7b3": "b9b7b3",
+ "54654e": "67637a",
+ "1c2916": "272431",
+ "0f0f0f": "0f0f0f",
+ "f16b32": "bead9d",
+ "34453d": "444a71",
+ "607d6d": "6e76a9",
+ "75b07d": "9299c7",
+ "fcfcfc": "fcfcfc",
+ "323943": "323943",
+ "222328": "222328",
+ "4b565c": "4b565c",
+ "e2e9d7": "e2e9d7"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/973.json b/public/images/pokemon/variant/back/973.json
new file mode 100644
index 00000000000..3070d7f3ab5
--- /dev/null
+++ b/public/images/pokemon/variant/back/973.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "be5c70": "aa8d8d",
+ "af3f5b": "905e5e",
+ "eb6d96": "d2bbbc",
+ "f596b0": "f0ddde",
+ "645555": "404355",
+ "e9e5ea": "e7e2e6",
+ "e7e2e6": "e7e2e6",
+ "bdaeba": "bdaeb5",
+ "504343": "272636",
+ "f9be51": "e7a11f",
+ "bf964a": "d28011",
+ "000000": "000000",
+ "ffffff": "ffffff",
+ "852941": "724f51"
+ },
+ "1": {
+ "be5c70": "911b92",
+ "af3f5b": "660f71",
+ "eb6d96": "cb36b9",
+ "f596b0": "e768cc",
+ "645555": "404355",
+ "e9e5ea": "e7e2e6",
+ "e7e2e6": "e7e2e6",
+ "bdaeba": "bdaeb5",
+ "504343": "272636",
+ "f9be51": "5fdd5b",
+ "bf964a": "289c43",
+ "000000": "000000",
+ "ffffff": "ffffff",
+ "852941": "430855"
+ },
+ "2": {
+ "be5c70": "d77433",
+ "af3f5b": "b7501e",
+ "eb6d96": "f29f5b",
+ "f596b0": "fabe7d",
+ "645555": "645555",
+ "e9e5ea": "e7e2e6",
+ "e7e2e6": "e7e2e6",
+ "bdaeba": "bdaeb5",
+ "504343": "504343",
+ "f9be51": "3175cb",
+ "bf964a": "2c3ca6",
+ "000000": "000000",
+ "ffffff": "ffffff",
+ "852941": "943615"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/987.json b/public/images/pokemon/variant/back/987.json
new file mode 100644
index 00000000000..1773ba70c36
--- /dev/null
+++ b/public/images/pokemon/variant/back/987.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "8a378a": "9b490e",
+ "ee93e8": "ffdd67",
+ "621841": "71370f",
+ "b36cc1": "d3941a",
+ "182941": "132443",
+ "0f0f0f": "0f0f0f",
+ "de62a4": "ffc668",
+ "4a83a4": "387fa7",
+ "314a62": "244260",
+ "70bbb4": "f8d371",
+ "a4295a": "cc762f"
+ },
+ "1": {
+ "8a378a": "0c8086",
+ "ee93e8": "3df7ed",
+ "621841": "7b3c08",
+ "b36cc1": "1dbdb9",
+ "182941": "244358",
+ "0f0f0f": "0f0f0f",
+ "de62a4": "ffdf90",
+ "4a83a4": "a1c8db",
+ "314a62": "7396b4",
+ "70bbb4": "70bbb4",
+ "a4295a": "e28c27"
+ },
+ "2": {
+ "8a378a": "5d4a2f",
+ "ee93e8": "fff7dd",
+ "621841": "5a0a05",
+ "b36cc1": "eece8c",
+ "182941": "603305",
+ "0f0f0f": "0f0f0f",
+ "de62a4": "e25038",
+ "4a83a4": "e6aa47",
+ "314a62": "b56f2a",
+ "70bbb4": "f8d371",
+ "a4295a": "a62a21"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/999.json b/public/images/pokemon/variant/back/999.json
new file mode 100644
index 00000000000..bacd640b9be
--- /dev/null
+++ b/public/images/pokemon/variant/back/999.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "8a6239": "760040",
+ "ffda59": "f34484",
+ "ddc126": "d52d70",
+ "ad9338": "c11f67",
+ "323437": "142552",
+ "5a4729": "38001c",
+ "545b6b": "1e2e60",
+ "783a52": "492118",
+ "ac4454": "ab461e",
+ "0f0f0f": "0f0f0f",
+ "7a82a9": "5e647a",
+ "bac4d8": "757a8b",
+ "a59227": "a44418"
+ },
+ "1": {
+ "8a6239": "29354e",
+ "ffda59": "8295aa",
+ "ddc126": "65768c",
+ "ad9338": "485466",
+ "323437": "1d2c54",
+ "5a4729": "131c3b",
+ "545b6b": "415073",
+ "783a52": "4f2e5c",
+ "ac4454": "794e83",
+ "0f0f0f": "0f0f0f",
+ "7a82a9": "7a82a9",
+ "bac4d8": "bac4d8",
+ "a59227": "9c9cbe"
+ },
+ "2": {
+ "8a6239": "152848",
+ "ffda59": "4e85bf",
+ "ddc126": "326191",
+ "ad9338": "294f7e",
+ "323437": "212857",
+ "5a4729": "0c1b40",
+ "545b6b": "6467a8",
+ "783a52": "6d6594",
+ "ac4454": "bcb9d6",
+ "0f0f0f": "0f0f0f",
+ "7a82a9": "7a82a9",
+ "bac4d8": "bac4d8",
+ "a59227": "b6d0d7"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/female/308.json b/public/images/pokemon/variant/back/female/308.json
new file mode 100644
index 00000000000..fd439be8d40
--- /dev/null
+++ b/public/images/pokemon/variant/back/female/308.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "101010": "101010",
+ "84424a": "59141d",
+ "e6738c": "a53835",
+ "ce5a73": "8b2e2b",
+ "52424a": "5a4357",
+ "dedede": "e0cdd9",
+ "b54a5a": "83272c",
+ "8c848c": "966f8d",
+ "ada5ad": "a88da0",
+ "c5c5c5": "d1b6c7",
+ "a57329": "722966",
+ "efbd5a": "ce5cb6",
+ "f7de84": "ee9bd5"
+ },
+ "2": {
+ "101010": "101010",
+ "84424a": "461f5d",
+ "e6738c": "a37aac",
+ "ce5a73": "7d5187",
+ "52424a": "1f344a",
+ "dedede": "cbd0d6",
+ "b54a5a": "633971",
+ "8c848c": "6c7d9e",
+ "ada5ad": "9faab9",
+ "c5c5c5": "c5c5c5",
+ "a57329": "205a9e",
+ "efbd5a": "205a9e",
+ "f7de84": "5abbef"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/female/443.json b/public/images/pokemon/variant/back/female/443.json
new file mode 100644
index 00000000000..4a65daecb4b
--- /dev/null
+++ b/public/images/pokemon/variant/back/female/443.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "426b84": "085284",
+ "101010": "101921",
+ "314252": "082963",
+ "8cc5d6": "42a5f7",
+ "5294ad": "1984c5",
+ "42d6de": "42d6de",
+ "3aadc5": "3aadc5",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "5a6363": "5a6363",
+ "ad3a10": "a57c10",
+ "de5a29": "e6c529",
+ "7b1910": "731029"
+ },
+ "1": {
+ "426b84": "522521",
+ "101010": "101921",
+ "314252": "400311",
+ "8cc5d6": "e49f52",
+ "5294ad": "905647",
+ "42d6de": "54b0ff",
+ "3aadc5": "2878e1",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "5a6363": "5a6363",
+ "ad3a10": "92a9b2",
+ "de5a29": "d9f0f1",
+ "7b1910": "731029"
+ },
+ "2": {
+ "426b84": "223a4a",
+ "101010": "101921",
+ "314252": "0e263c",
+ "8cc5d6": "8cb6bf",
+ "5294ad": "4c5e66",
+ "42d6de": "6fe6a3",
+ "3aadc5": "23b8a8",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "5a6363": "5a6363",
+ "ad3a10": "92a9b2",
+ "de5a29": "d9f0f1",
+ "7b1910": "3e3a52"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/female/444.json b/public/images/pokemon/variant/back/female/444.json
new file mode 100644
index 00000000000..287f0c4050c
--- /dev/null
+++ b/public/images/pokemon/variant/back/female/444.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "3a4a8c": "1e4b77",
+ "102952": "091f4e",
+ "5a6bbd": "307fb8",
+ "738cce": "59aaed",
+ "b5bdf7": "42d6de",
+ "8c8cbd": "3aadc5",
+ "101010": "101921",
+ "de9c19": "e53d3f",
+ "5a1000": "502209",
+ "ffff19": "fa845a",
+ "ad314a": "ad7b08",
+ "c5ced6": "c5ced6",
+ "de5a29": "f7b834",
+ "ffffff": "ffffff",
+ "737b84": "737b84"
+ },
+ "1": {
+ "3a4a8c": "6f3633",
+ "102952": "3d0a17",
+ "5a6bbd": "a96051",
+ "738cce": "e9a36b",
+ "b5bdf7": "4caaff",
+ "8c8cbd": "255dd7",
+ "101010": "101921",
+ "de9c19": "d9900e",
+ "5a1000": "211e33",
+ "ffff19": "ffd177",
+ "ad314a": "829ca6",
+ "c5ced6": "c5ced6",
+ "de5a29": "c2dedf",
+ "ffffff": "ffffff",
+ "737b84": "737b84"
+ },
+ "2": {
+ "3a4a8c": "223a4a",
+ "102952": "092136",
+ "5a6bbd": "3e5059",
+ "738cce": "79a2ab",
+ "b5bdf7": "6fe6a3",
+ "8c8cbd": "23b8a8",
+ "101010": "101921",
+ "de9c19": "2c8bf7",
+ "5a1000": "521000",
+ "ffff19": "62cbff",
+ "ad314a": "be472f",
+ "c5ced6": "c5ced6",
+ "de5a29": "ee723e",
+ "ffffff": "ffffff",
+ "737b84": "737b84"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/back/female/445.json b/public/images/pokemon/variant/back/female/445.json
new file mode 100644
index 00000000000..41d1e100a96
--- /dev/null
+++ b/public/images/pokemon/variant/back/female/445.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "292952": "091f4e",
+ "5a63ad": "33719e",
+ "42428c": "1e4b77",
+ "7b7bce": "65a2d5",
+ "101010": "101010",
+ "c59410": "3aadc5",
+ "ffd619": "42d6de",
+ "ffffff": "ffffff",
+ "737b84": "737b84",
+ "c5ced6": "c5ced6",
+ "bd3a42": "b2630f",
+ "5a1000": "502209",
+ "e64a31": "f7ac34"
+ },
+ "1": {
+ "292952": "3d0a17",
+ "5a63ad": "deae7a",
+ "42428c": "af6e55",
+ "7b7bce": "f2d8aa",
+ "101010": "101010",
+ "c59410": "255dd7",
+ "ffd619": "4caaff",
+ "ffffff": "ffffff",
+ "737b84": "737b84",
+ "c5ced6": "c5ced6",
+ "bd3a42": "9fb6bf",
+ "5a1000": "393648",
+ "e64a31": "dce8e8"
+ },
+ "2": {
+ "292952": "051a2e",
+ "5a63ad": "2f434b",
+ "42428c": "152c3b",
+ "7b7bce": "689099",
+ "101010": "101010",
+ "c59410": "23b8a8",
+ "ffd619": "6fe6a3",
+ "ffffff": "ffffff",
+ "737b84": "737b84",
+ "c5ced6": "c5ced6",
+ "bd3a42": "be472f",
+ "5a1000": "521000",
+ "e64a31": "de5a29"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/1000.json b/public/images/pokemon/variant/exp/1000.json
new file mode 100644
index 00000000000..bb12559c23d
--- /dev/null
+++ b/public/images/pokemon/variant/exp/1000.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "805601": "a33612",
+ "e6ce4a": "ee883f",
+ "f8e682": "ffb667",
+ "000000": "0f0f0f",
+ "d0951f": "9b3e00",
+ "e9a928": "a64700",
+ "bd8006": "9b3e00",
+ "4e5471": "8f4a14",
+ "363b54": "531f03",
+ "616f99": "8f4a14",
+ "adb5cc": "5e86c2",
+ "751710": "6d1906"
+ },
+ "1": {
+ "805601": "622f43",
+ "e6ce4a": "e1ced1",
+ "f8e682": "f3e3e4",
+ "000000": "0f0f0f",
+ "d0951f": "7a4e5d",
+ "e9a928": "96747e",
+ "bd8006": "7a4e5d",
+ "4e5471": "415073",
+ "363b54": "1d2c54",
+ "616f99": "415073",
+ "adb5cc": "5eb5a1",
+ "751710": "4b1a32"
+ },
+ "2": {
+ "805601": "3d717b",
+ "e6ce4a": "e5fffc",
+ "f8e682": "ffffff",
+ "000000": "0f0f0f",
+ "d0951f": "5a9aa3",
+ "e9a928": "89d1d6",
+ "bd8006": "5a9aa3",
+ "4e5471": "495890",
+ "363b54": "212857",
+ "616f99": "495890",
+ "adb5cc": "dae0f3",
+ "751710": "214048"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/181-mega.json b/public/images/pokemon/variant/exp/181-mega.json
new file mode 100644
index 00000000000..c2d5f25ca51
--- /dev/null
+++ b/public/images/pokemon/variant/exp/181-mega.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "626a6a": "39585d",
+ "ffffff": "baebeb",
+ "101010": "101010",
+ "c54100": "d53691",
+ "b4b4bd": "8ebabe",
+ "e6e6e6": "baebeb",
+ "ff6200": "ee74c1",
+ "8b2000": "b12173",
+ "cd8b10": "74418f",
+ "ffee4a": "d19bd8",
+ "835a31": "553168",
+ "ffc510": "9f62b0",
+ "5a0000": "b12173"
+ },
+ "2": {
+ "626a6a": "5d412a",
+ "ffffff": "fff1d0",
+ "101010": "101010",
+ "c54100": "d26b00",
+ "b4b4bd": "ebbb78",
+ "e6e6e6": "fff1d0",
+ "ff6200": "ffab34",
+ "8b2000": "a23c00",
+ "cd8b10": "884626",
+ "ffee4a": "cd895d",
+ "835a31": "49200d",
+ "ffc510": "af673b",
+ "5a0000": "a23c00"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/303-mega.json b/public/images/pokemon/variant/exp/303-mega.json
new file mode 100644
index 00000000000..7a025fedf32
--- /dev/null
+++ b/public/images/pokemon/variant/exp/303-mega.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "000000": "000000",
+ "737373": "347c7d",
+ "4a4a4a": "193e49",
+ "7b5a29": "6b5424",
+ "984868": "b43929",
+ "ffc55a": "d6c491",
+ "ffffff": "ffffff",
+ "cdcdcd": "cdcdcd",
+ "9ca494": "4fa285",
+ "b86088": "ff625a",
+ "de9441": "a99372",
+ "484848": "484848",
+ "9c4a6a": "23445e",
+ "732041": "162843",
+ "bd628b": "397189"
+ },
+ "2": {
+ "000000": "000000",
+ "737373": "9d7cd6",
+ "4a4a4a": "2f2781",
+ "7b5a29": "706d80",
+ "984868": "b43929",
+ "ffc55a": "cfc8e4",
+ "ffffff": "ffffff",
+ "cdcdcd": "cdcdcd",
+ "9ca494": "c7a8eb",
+ "b86088": "ff625a",
+ "de9441": "b1a3ca",
+ "484848": "484848",
+ "9c4a6a": "4c3767",
+ "732041": "2b1c3f",
+ "bd628b": "694c84"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/334-mega.json b/public/images/pokemon/variant/exp/334-mega.json
new file mode 100644
index 00000000000..0fafc15e556
--- /dev/null
+++ b/public/images/pokemon/variant/exp/334-mega.json
@@ -0,0 +1,18 @@
+{
+ "2": {
+ "a8b0c0": "dd555a",
+ "707098": "b22f3f",
+ "f8f8f8": "ffddb4",
+ "d8e0e8": "ec996c",
+ "c8c8e0": "dd766d",
+ "486090": "771743",
+ "58c0f8": "f3719a",
+ "283858": "771743",
+ "1098c8": "cb457d",
+ "98d8f8": "f3719a",
+ "101010": "101010",
+ "000000": "101010",
+ "4a6294": "771743",
+ "109ccd": "cb457d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/334-mega_2.json b/public/images/pokemon/variant/exp/334-mega_2.json
new file mode 100644
index 00000000000..d06395282fb
--- /dev/null
+++ b/public/images/pokemon/variant/exp/334-mega_2.json
@@ -0,0 +1,587 @@
+{
+ "textures": [
+ {
+ "image": "334-mega_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 546,
+ "h": 546
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 108,
+ "h": 79
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 108,
+ "h": 79
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 5,
+ "w": 112,
+ "h": 80
+ },
+ "frame": {
+ "x": 108,
+ "y": 0,
+ "w": 112,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 106,
+ "h": 80
+ },
+ "frame": {
+ "x": 220,
+ "y": 0,
+ "w": 106,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 9,
+ "w": 101,
+ "h": 81
+ },
+ "frame": {
+ "x": 326,
+ "y": 0,
+ "w": 101,
+ "h": 81
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 3,
+ "w": 113,
+ "h": 82
+ },
+ "frame": {
+ "x": 427,
+ "y": 0,
+ "w": 113,
+ "h": 82
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 10,
+ "w": 100,
+ "h": 84
+ },
+ "frame": {
+ "x": 0,
+ "y": 79,
+ "w": 100,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 116,
+ "h": 84
+ },
+ "frame": {
+ "x": 100,
+ "y": 80,
+ "w": 116,
+ "h": 84
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 11,
+ "w": 99,
+ "h": 85
+ },
+ "frame": {
+ "x": 216,
+ "y": 80,
+ "w": 99,
+ "h": 85
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 118,
+ "h": 86
+ },
+ "frame": {
+ "x": 315,
+ "y": 82,
+ "w": 118,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 11,
+ "w": 97,
+ "h": 88
+ },
+ "frame": {
+ "x": 433,
+ "y": 82,
+ "w": 97,
+ "h": 88
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 118,
+ "h": 86
+ },
+ "frame": {
+ "x": 0,
+ "y": 164,
+ "w": 118,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 118,
+ "h": 87
+ },
+ "frame": {
+ "x": 118,
+ "y": 165,
+ "w": 118,
+ "h": 87
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 12,
+ "w": 96,
+ "h": 89
+ },
+ "frame": {
+ "x": 236,
+ "y": 168,
+ "w": 96,
+ "h": 89
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 13,
+ "w": 94,
+ "h": 90
+ },
+ "frame": {
+ "x": 332,
+ "y": 168,
+ "w": 94,
+ "h": 90
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 117,
+ "h": 89
+ },
+ "frame": {
+ "x": 426,
+ "y": 170,
+ "w": 117,
+ "h": 89
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 7,
+ "w": 114,
+ "h": 90
+ },
+ "frame": {
+ "x": 0,
+ "y": 250,
+ "w": 114,
+ "h": 90
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 9,
+ "w": 113,
+ "h": 91
+ },
+ "frame": {
+ "x": 114,
+ "y": 252,
+ "w": 113,
+ "h": 91
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 12,
+ "w": 109,
+ "h": 92
+ },
+ "frame": {
+ "x": 227,
+ "y": 258,
+ "w": 109,
+ "h": 92
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 13,
+ "w": 94,
+ "h": 95
+ },
+ "frame": {
+ "x": 336,
+ "y": 259,
+ "w": 94,
+ "h": 95
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 13,
+ "w": 106,
+ "h": 95
+ },
+ "frame": {
+ "x": 430,
+ "y": 259,
+ "w": 106,
+ "h": 95
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 14,
+ "w": 94,
+ "h": 97
+ },
+ "frame": {
+ "x": 0,
+ "y": 340,
+ "w": 94,
+ "h": 97
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 13,
+ "w": 103,
+ "h": 99
+ },
+ "frame": {
+ "x": 94,
+ "y": 343,
+ "w": 103,
+ "h": 99
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 14,
+ "w": 94,
+ "h": 101
+ },
+ "frame": {
+ "x": 197,
+ "y": 350,
+ "w": 94,
+ "h": 101
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 14,
+ "w": 100,
+ "h": 101
+ },
+ "frame": {
+ "x": 291,
+ "y": 354,
+ "w": 100,
+ "h": 101
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 15,
+ "w": 94,
+ "h": 102
+ },
+ "frame": {
+ "x": 391,
+ "y": 354,
+ "w": 94,
+ "h": 102
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 15,
+ "w": 94,
+ "h": 103
+ },
+ "frame": {
+ "x": 0,
+ "y": 437,
+ "w": 94,
+ "h": 103
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 119,
+ "h": 118
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 14,
+ "w": 97,
+ "h": 104
+ },
+ "frame": {
+ "x": 94,
+ "y": 442,
+ "w": 97,
+ "h": 104
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:b9cb0cbd898b43e3a406fc575dc9a53f:d61b91a7a45d2fbdb81d781f1dbb31b2:adf6c431b0abb0ef71a9fe139d6f0560$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/334-mega_2.png b/public/images/pokemon/variant/exp/334-mega_2.png
new file mode 100644
index 00000000000..7a6fdb20cf2
Binary files /dev/null and b/public/images/pokemon/variant/exp/334-mega_2.png differ
diff --git a/public/images/pokemon/variant/exp/384-mega.json b/public/images/pokemon/variant/exp/384-mega.json
new file mode 100644
index 00000000000..e4de3a1c873
--- /dev/null
+++ b/public/images/pokemon/variant/exp/384-mega.json
@@ -0,0 +1,19 @@
+{
+ "2": {
+ "fbe27e": "17e2d6",
+ "fc9436": "098faf",
+ "836231": "003082",
+ "010101": "010101",
+ "f6de00": "17e2d6",
+ "c5a400": "0db1b1",
+ "3d7d6d": "84120f",
+ "22523e": "650f04",
+ "36b075": "ce3f2d",
+ "3f3f3f": "380100",
+ "60d293": "f1785e",
+ "e4b629": "036486",
+ "9c2952": "063f67",
+ "e65273": "2083e7",
+ "fcfcfc": "fcfcfc"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/384-mega_2.json b/public/images/pokemon/variant/exp/384-mega_2.json
new file mode 100644
index 00000000000..6597e1d202b
--- /dev/null
+++ b/public/images/pokemon/variant/exp/384-mega_2.json
@@ -0,0 +1,272 @@
+{
+ "textures": [
+ {
+ "image": "384-mega_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 291,
+ "h": 291
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 4,
+ "w": 98,
+ "h": 98
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 98,
+ "h": 98
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 4,
+ "w": 98,
+ "h": 98
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 98,
+ "h": 98
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 10,
+ "w": 105,
+ "h": 93
+ },
+ "frame": {
+ "x": 0,
+ "y": 98,
+ "w": 105,
+ "h": 93
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 101,
+ "h": 94
+ },
+ "frame": {
+ "x": 98,
+ "y": 0,
+ "w": 101,
+ "h": 94
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 9,
+ "w": 101,
+ "h": 94
+ },
+ "frame": {
+ "x": 98,
+ "y": 0,
+ "w": 101,
+ "h": 94
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 91,
+ "h": 100
+ },
+ "frame": {
+ "x": 105,
+ "y": 94,
+ "w": 91,
+ "h": 100
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 91,
+ "h": 100
+ },
+ "frame": {
+ "x": 0,
+ "y": 191,
+ "w": 91,
+ "h": 100
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 89,
+ "h": 100
+ },
+ "frame": {
+ "x": 196,
+ "y": 94,
+ "w": 89,
+ "h": 100
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 6,
+ "w": 99,
+ "h": 96
+ },
+ "frame": {
+ "x": 91,
+ "y": 194,
+ "w": 99,
+ "h": 96
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 6,
+ "w": 99,
+ "h": 96
+ },
+ "frame": {
+ "x": 91,
+ "y": 194,
+ "w": 99,
+ "h": 96
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 5,
+ "w": 94,
+ "h": 96
+ },
+ "frame": {
+ "x": 190,
+ "y": 194,
+ "w": 94,
+ "h": 96
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 105,
+ "h": 103
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 5,
+ "w": 94,
+ "h": 96
+ },
+ "frame": {
+ "x": 190,
+ "y": 194,
+ "w": 94,
+ "h": 96
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:f3211699cdd44b86bd9e5103ed4e4ff0:d94e19ffdc3866cc540722159d56746b:cf7a16daaa5962e1da39cbbb1392de14$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/384-mega_2.png b/public/images/pokemon/variant/exp/384-mega_2.png
new file mode 100644
index 00000000000..dc03a7ba8e2
Binary files /dev/null and b/public/images/pokemon/variant/exp/384-mega_2.png differ
diff --git a/public/images/pokemon/variant/exp/4263.json b/public/images/pokemon/variant/exp/4263.json
new file mode 100644
index 00000000000..938fe539ce9
--- /dev/null
+++ b/public/images/pokemon/variant/exp/4263.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "3e4042": "01473a",
+ "60656a": "1c8155",
+ "1b2627": "00312d",
+ "5b5958": "397e4a",
+ "f5f5f6": "f5ffea",
+ "010101": "010101",
+ "b2b3b2": "a3ce9e",
+ "d94a7f": "d414dd",
+ "fcfcfc": "fcfcfc",
+ "e2729a": "ff69fa",
+ "6e3b51": "9b00b4",
+ "9b4f69": "d414dd",
+ "ee96b2": "ff69fa"
+ },
+ "2": {
+ "3e4042": "412991",
+ "60656a": "8e5aef",
+ "1b2627": "080929",
+ "5b5958": "100d2d",
+ "f5f5f6": "3c335d",
+ "010101": "010101",
+ "b2b3b2": "201b47",
+ "d94a7f": "0099ce",
+ "fcfcfc": "fcfcfc",
+ "e2729a": "54f1ff",
+ "6e3b51": "004a8b",
+ "9b4f69": "0099ce",
+ "ee96b2": "54f1ff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/4264.json b/public/images/pokemon/variant/exp/4264.json
new file mode 100644
index 00000000000..f40cc4b47cb
--- /dev/null
+++ b/public/images/pokemon/variant/exp/4264.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "010101": "010101",
+ "1d1c1b": "01473a",
+ "343332": "1c8155",
+ "727374": "579666",
+ "f5f5f6": "f5ffea",
+ "abadaf": "95c090",
+ "ff4e89": "ff69fa",
+ "fcfcfc": "fcfcfc",
+ "bc3065": "d414dd",
+ "b4636f": "d414dd",
+ "6f7071": "27323a",
+ "949496": "3d494e",
+ "ffa0bf": "ff69fa"
+ },
+ "2": {
+ "010101": "010101",
+ "1d1c1b": "412991",
+ "343332": "7c4cd6",
+ "727374": "18133d",
+ "f5f5f6": "342d4c",
+ "abadaf": "18133d",
+ "ff4e89": "54f1ff",
+ "fcfcfc": "fcfcfc",
+ "bc3065": "0099ce",
+ "b4636f": "0099ce",
+ "6f7071": "2a1b4e",
+ "949496": "554576",
+ "ffa0bf": "54f1ff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/4264_2.json b/public/images/pokemon/variant/exp/4264_2.json
new file mode 100644
index 00000000000..8a7912b968e
--- /dev/null
+++ b/public/images/pokemon/variant/exp/4264_2.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "4264_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 77,
+ "h": 77
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 77,
+ "h": 34
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 77,
+ "h": 34
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 77,
+ "h": 34
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:6bff3f48bd25f6f50ec2efca8c0e8e1a:5850ef2d8e00bb20937542ba57e2e076:e89c9024f24555b8ff42e984e04fcaf0$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/4264_2.png b/public/images/pokemon/variant/exp/4264_2.png
new file mode 100644
index 00000000000..7dd3bcb1ef8
Binary files /dev/null and b/public/images/pokemon/variant/exp/4264_2.png differ
diff --git a/public/images/pokemon/variant/exp/4264_3.json b/public/images/pokemon/variant/exp/4264_3.json
new file mode 100644
index 00000000000..2368d3675e1
--- /dev/null
+++ b/public/images/pokemon/variant/exp/4264_3.json
@@ -0,0 +1,41 @@
+{
+ "textures": [
+ {
+ "image": "4264_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 77,
+ "h": 77
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 77,
+ "h": 34
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 77,
+ "h": 34
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 77,
+ "h": 34
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:6bff3f48bd25f6f50ec2efca8c0e8e1a:5850ef2d8e00bb20937542ba57e2e076:e89c9024f24555b8ff42e984e04fcaf0$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/4264_3.png b/public/images/pokemon/variant/exp/4264_3.png
new file mode 100644
index 00000000000..654360baecb
Binary files /dev/null and b/public/images/pokemon/variant/exp/4264_3.png differ
diff --git a/public/images/pokemon/variant/exp/445-mega.json b/public/images/pokemon/variant/exp/445-mega.json
new file mode 100644
index 00000000000..8cd597252af
--- /dev/null
+++ b/public/images/pokemon/variant/exp/445-mega.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "000000": "000000",
+ "292952": "061638",
+ "c59410": "3aadc5",
+ "5a62ac": "236696",
+ "7b7bcd": "65a2d5",
+ "41418b": "19446e",
+ "ffd518": "42d6de",
+ "5a1000": "502209",
+ "e64a31": "f7ac34",
+ "bd3941": "9e5201",
+ "ffffff": "ffffff",
+ "737b83": "737b83",
+ "c5cdd5": "c5cdd5"
+ },
+ "1": {
+ "000000": "000000",
+ "292952": "632f1b",
+ "c59410": "255dd7",
+ "5a62ac": "deae7a",
+ "7b7bcd": "f2d8aa",
+ "41418b": "b67252",
+ "ffd518": "4caaff",
+ "5a1000": "393648",
+ "e64a31": "dce8e8",
+ "bd3941": "9fb6bf",
+ "ffffff": "ffffff",
+ "737b83": "737b83",
+ "c5cdd5": "c5cdd5"
+ },
+ "2": {
+ "000000": "000000",
+ "292952": "051a2e",
+ "c59410": "23b8a8",
+ "5a62ac": "2f434b",
+ "7b7bcd": "689099",
+ "41418b": "152c3b",
+ "ffd518": "6fe6a3",
+ "5a1000": "521000",
+ "e64a31": "ec642c",
+ "bd3941": "b23219",
+ "ffffff": "ffffff",
+ "737b83": "737b83",
+ "c5cdd5": "c5cdd5"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/6549.json b/public/images/pokemon/variant/exp/6549.json
new file mode 100644
index 00000000000..8ced2d845dc
--- /dev/null
+++ b/public/images/pokemon/variant/exp/6549.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "70365a": "29547d",
+ "bd59a2": "5094c0",
+ "315a31": "5a5a2c",
+ "101010": "101010",
+ "39ac39": "bfd17f",
+ "ff84bd": "73bad9",
+ "bda452": "77909a",
+ "4a834a": "8e954d",
+ "ffbbdb": "b5ddea",
+ "fdfdfd": "fdfdfd",
+ "ffde41": "b6c7cc",
+ "526229": "80152b",
+ "c5ee7b": "ef5755",
+ "9cb462": "bd2d40",
+ "cdc5bd": "cdc5bd"
+ },
+ "2": {
+ "70365a": "8a1a3c",
+ "bd59a2": "d64065",
+ "315a31": "643312",
+ "101010": "101010",
+ "39ac39": "ebc460",
+ "ff84bd": "e8617a",
+ "bda452": "78412b",
+ "4a834a": "9d7d45",
+ "ffbbdb": "f38e9c",
+ "fdfdfd": "f3dccc",
+ "ffde41": "9f6a45",
+ "526229": "351c49",
+ "c5ee7b": "834c9b",
+ "9cb462": "5d3576",
+ "cdc5bd": "c79e86"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/6570.json b/public/images/pokemon/variant/exp/6570.json
new file mode 100644
index 00000000000..d54434d87b5
--- /dev/null
+++ b/public/images/pokemon/variant/exp/6570.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "942429": "9e111f",
+ "d53a3e": "e8512a",
+ "5f0002": "5d0019",
+ "f07376": "ff6d26",
+ "101010": "101010",
+ "4a4d53": "4a4d53",
+ "f7acae": "fdc9a2",
+ "fafafa": "f3dac4",
+ "b3b3bb": "d6b7b1",
+ "cbcfd8": "7b7897",
+ "6d4d62": "e1d2d3",
+ "928d96": "303443",
+ "a7484f": "9e111f",
+ "df7806": "df7806",
+ "ffae1a": "ffae1a"
+ },
+ "2": {
+ "942429": "09523d",
+ "d53a3e": "1c7b4f",
+ "5f0002": "033431",
+ "f07376": "3cbc5f",
+ "101010": "101010",
+ "4a4d53": "6f4332",
+ "f7acae": "79d38d",
+ "fafafa": "f0decd",
+ "b3b3bb": "c6ab99",
+ "cbcfd8": "d79568",
+ "6d4d62": "813059",
+ "928d96": "995d3e",
+ "a7484f": "1c7f54",
+ "df7806": "0c5b66",
+ "ffae1a": "22b5b4"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/6571.json b/public/images/pokemon/variant/exp/6571.json
new file mode 100644
index 00000000000..8ea944f8a12
--- /dev/null
+++ b/public/images/pokemon/variant/exp/6571.json
@@ -0,0 +1,40 @@
+{
+ "1": {
+ "635a67": "4a4759",
+ "921d23": "330814",
+ "fcfcfc": "e1d2d2",
+ "dd5857": "782d41",
+ "e79594": "b44d63",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "918b96": "918b96",
+ "c03a52": "4a1921",
+ "b77076": "883955",
+ "3f3f3f": "262231",
+ "c0b6bd": "c3a5a8",
+ "d0d1d0": "d0d1d0",
+ "928c91": "4a4759",
+ "5f475c": "d7b4b6",
+ "bfc1bf": "737185",
+ "f3ee23": "49ffff"
+ },
+ "2": {
+ "635a67": "986e5c",
+ "921d23": "082226",
+ "fcfcfc": "f0decd",
+ "dd5857": "2e625a",
+ "e79594": "4e867b",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "918b96": "885f49",
+ "c03a52": "143130",
+ "b77076": "2e625a",
+ "3f3f3f": "4b163b",
+ "c0b6bd": "c6ab99",
+ "d0d1d0": "d0d1d0",
+ "928c91": "885f49",
+ "5f475c": "c2589c",
+ "bfc1bf": "bc9072",
+ "f3ee23": "98f25f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/6705.json b/public/images/pokemon/variant/exp/6705.json
new file mode 100644
index 00000000000..3d204b151ce
--- /dev/null
+++ b/public/images/pokemon/variant/exp/6705.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "807380": "b93f84",
+ "f2daf2": "fbb3d2",
+ "bfacbf": "e56ca6",
+ "4d454d": "8a2166",
+ "367456": "197497",
+ "50ab89": "3aa8c4",
+ "101010": "101010",
+ "60606c": "1f1233",
+ "c5cce0": "513981",
+ "949aab": "301848",
+ "aeb5c6": "442967",
+ "b8a1e5": "c7a1e5",
+ "e3e8f4": "cfd6f7",
+ "665980": "8b69c3",
+ "8f7db3": "8f7db3"
+ },
+ "2": {
+ "807380": "2b736f",
+ "f2daf2": "99f7e2",
+ "bfacbf": "3ebda7",
+ "4d454d": "194f51",
+ "367456": "a34205",
+ "50ab89": "d27e26",
+ "101010": "101010",
+ "60606c": "042329",
+ "c5cce0": "176463",
+ "949aab": "073338",
+ "aeb5c6": "0d484a",
+ "b8a1e5": "4a9699",
+ "e3e8f4": "e7fff4",
+ "665980": "274159",
+ "8f7db3": "2f667c"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/6706_2.json b/public/images/pokemon/variant/exp/6706_2.json
new file mode 100644
index 00000000000..cb2ddfb1a12
--- /dev/null
+++ b/public/images/pokemon/variant/exp/6706_2.json
@@ -0,0 +1,2015 @@
+{
+ "textures": [
+ {
+ "image": "6706_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 508,
+ "h": 508
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 28,
+ "y": 26,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 26,
+ "y": 25,
+ "w": 56,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 56,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 26,
+ "y": 25,
+ "w": 56,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 56,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 28,
+ "y": 21,
+ "w": 53,
+ "h": 65
+ },
+ "frame": {
+ "x": 115,
+ "y": 0,
+ "w": 53,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 28,
+ "y": 21,
+ "w": 53,
+ "h": 65
+ },
+ "frame": {
+ "x": 115,
+ "y": 0,
+ "w": 53,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 29,
+ "y": 21,
+ "w": 54,
+ "h": 65
+ },
+ "frame": {
+ "x": 168,
+ "y": 0,
+ "w": 54,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 29,
+ "y": 21,
+ "w": 54,
+ "h": 65
+ },
+ "frame": {
+ "x": 168,
+ "y": 0,
+ "w": 54,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 28,
+ "y": 21,
+ "w": 53,
+ "h": 65
+ },
+ "frame": {
+ "x": 222,
+ "y": 0,
+ "w": 53,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 28,
+ "y": 21,
+ "w": 53,
+ "h": 65
+ },
+ "frame": {
+ "x": 222,
+ "y": 0,
+ "w": 53,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 25,
+ "y": 21,
+ "w": 55,
+ "h": 66
+ },
+ "frame": {
+ "x": 275,
+ "y": 0,
+ "w": 55,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 25,
+ "y": 21,
+ "w": 55,
+ "h": 66
+ },
+ "frame": {
+ "x": 275,
+ "y": 0,
+ "w": 55,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 23,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 330,
+ "y": 0,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 23,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 330,
+ "y": 0,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 25,
+ "y": 21,
+ "w": 54,
+ "h": 67
+ },
+ "frame": {
+ "x": 384,
+ "y": 0,
+ "w": 54,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 25,
+ "y": 21,
+ "w": 54,
+ "h": 67
+ },
+ "frame": {
+ "x": 384,
+ "y": 0,
+ "w": 54,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 21,
+ "w": 52,
+ "h": 68
+ },
+ "frame": {
+ "x": 438,
+ "y": 0,
+ "w": 52,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 21,
+ "w": 52,
+ "h": 68
+ },
+ "frame": {
+ "x": 438,
+ "y": 0,
+ "w": 52,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 21,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 61,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 21,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 61,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 22,
+ "w": 52,
+ "h": 68
+ },
+ "frame": {
+ "x": 53,
+ "y": 63,
+ "w": 52,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 22,
+ "w": 52,
+ "h": 68
+ },
+ "frame": {
+ "x": 53,
+ "y": 63,
+ "w": 52,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 21,
+ "w": 55,
+ "h": 69
+ },
+ "frame": {
+ "x": 105,
+ "y": 65,
+ "w": 55,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 21,
+ "w": 55,
+ "h": 69
+ },
+ "frame": {
+ "x": 105,
+ "y": 65,
+ "w": 55,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 21,
+ "w": 53,
+ "h": 69
+ },
+ "frame": {
+ "x": 160,
+ "y": 65,
+ "w": 53,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 21,
+ "w": 53,
+ "h": 69
+ },
+ "frame": {
+ "x": 160,
+ "y": 65,
+ "w": 53,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 21,
+ "w": 53,
+ "h": 69
+ },
+ "frame": {
+ "x": 213,
+ "y": 65,
+ "w": 53,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 21,
+ "w": 53,
+ "h": 69
+ },
+ "frame": {
+ "x": 213,
+ "y": 65,
+ "w": 53,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 21,
+ "w": 52,
+ "h": 70
+ },
+ "frame": {
+ "x": 266,
+ "y": 66,
+ "w": 52,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 21,
+ "w": 52,
+ "h": 70
+ },
+ "frame": {
+ "x": 266,
+ "y": 66,
+ "w": 52,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 87,
+ "h": 71
+ },
+ "frame": {
+ "x": 318,
+ "y": 67,
+ "w": 87,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 87,
+ "h": 71
+ },
+ "frame": {
+ "x": 318,
+ "y": 67,
+ "w": 87,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 87,
+ "h": 71
+ },
+ "frame": {
+ "x": 318,
+ "y": 67,
+ "w": 87,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 87,
+ "h": 71
+ },
+ "frame": {
+ "x": 405,
+ "y": 68,
+ "w": 87,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 86,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 131,
+ "w": 86,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 86,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 86,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 86,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 173,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 173,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 173,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 260,
+ "y": 138,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 260,
+ "y": 138,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 260,
+ "y": 138,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 347,
+ "y": 139,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 347,
+ "y": 139,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 347,
+ "y": 139,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 5,
+ "w": 74,
+ "h": 80
+ },
+ "frame": {
+ "x": 434,
+ "y": 139,
+ "w": 74,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 5,
+ "w": 74,
+ "h": 80
+ },
+ "frame": {
+ "x": 434,
+ "y": 139,
+ "w": 74,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 85,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 203,
+ "w": 85,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 85,
+ "y": 206,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 18,
+ "w": 84,
+ "h": 73
+ },
+ "frame": {
+ "x": 168,
+ "y": 206,
+ "w": 84,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 85,
+ "h": 73
+ },
+ "frame": {
+ "x": 252,
+ "y": 210,
+ "w": 85,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 337,
+ "y": 211,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 337,
+ "y": 211,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 337,
+ "y": 211,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 85,
+ "h": 73
+ },
+ "frame": {
+ "x": 423,
+ "y": 219,
+ "w": 85,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 85,
+ "h": 73
+ },
+ "frame": {
+ "x": 423,
+ "y": 219,
+ "w": 85,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 16,
+ "w": 85,
+ "h": 74
+ },
+ "frame": {
+ "x": 0,
+ "y": 275,
+ "w": 85,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 16,
+ "w": 85,
+ "h": 74
+ },
+ "frame": {
+ "x": 0,
+ "y": 275,
+ "w": 85,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 16,
+ "w": 85,
+ "h": 74
+ },
+ "frame": {
+ "x": 0,
+ "y": 275,
+ "w": 85,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 85,
+ "y": 279,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 85,
+ "y": 279,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 85,
+ "y": 279,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 4,
+ "w": 81,
+ "h": 74
+ },
+ "frame": {
+ "x": 171,
+ "y": 279,
+ "w": 81,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 4,
+ "w": 81,
+ "h": 74
+ },
+ "frame": {
+ "x": 171,
+ "y": 279,
+ "w": 81,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 16,
+ "w": 84,
+ "h": 74
+ },
+ "frame": {
+ "x": 252,
+ "y": 283,
+ "w": 84,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 16,
+ "w": 84,
+ "h": 74
+ },
+ "frame": {
+ "x": 252,
+ "y": 283,
+ "w": 84,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 336,
+ "y": 284,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 336,
+ "y": 284,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 80,
+ "h": 74
+ },
+ "frame": {
+ "x": 422,
+ "y": 292,
+ "w": 80,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 80,
+ "h": 74
+ },
+ "frame": {
+ "x": 422,
+ "y": 292,
+ "w": 80,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 79,
+ "h": 74
+ },
+ "frame": {
+ "x": 0,
+ "y": 349,
+ "w": 79,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 79,
+ "h": 74
+ },
+ "frame": {
+ "x": 0,
+ "y": 349,
+ "w": 79,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 80,
+ "h": 74
+ },
+ "frame": {
+ "x": 79,
+ "y": 352,
+ "w": 80,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 80,
+ "h": 74
+ },
+ "frame": {
+ "x": 79,
+ "y": 352,
+ "w": 80,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 83,
+ "h": 75
+ },
+ "frame": {
+ "x": 159,
+ "y": 353,
+ "w": 83,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 83,
+ "h": 75
+ },
+ "frame": {
+ "x": 159,
+ "y": 353,
+ "w": 83,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 83,
+ "h": 75
+ },
+ "frame": {
+ "x": 159,
+ "y": 353,
+ "w": 83,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 242,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 242,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 242,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 323,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 323,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 323,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 82,
+ "h": 75
+ },
+ "frame": {
+ "x": 404,
+ "y": 366,
+ "w": 82,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 82,
+ "h": 75
+ },
+ "frame": {
+ "x": 404,
+ "y": 366,
+ "w": 82,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 82,
+ "h": 75
+ },
+ "frame": {
+ "x": 404,
+ "y": 366,
+ "w": 82,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 79,
+ "h": 75
+ },
+ "frame": {
+ "x": 0,
+ "y": 423,
+ "w": 79,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 79,
+ "h": 75
+ },
+ "frame": {
+ "x": 0,
+ "y": 423,
+ "w": 79,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 75
+ },
+ "frame": {
+ "x": 79,
+ "y": 426,
+ "w": 78,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 75
+ },
+ "frame": {
+ "x": 79,
+ "y": 426,
+ "w": 78,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 85,
+ "h": 75
+ },
+ "frame": {
+ "x": 157,
+ "y": 428,
+ "w": 85,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 14,
+ "w": 79,
+ "h": 76
+ },
+ "frame": {
+ "x": 242,
+ "y": 432,
+ "w": 79,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 14,
+ "w": 79,
+ "h": 76
+ },
+ "frame": {
+ "x": 242,
+ "y": 432,
+ "w": 79,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 14,
+ "w": 79,
+ "h": 76
+ },
+ "frame": {
+ "x": 242,
+ "y": 432,
+ "w": 79,
+ "h": 76
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:62a4a665074efb5def1545546995dc5b:de2788ebeab6b42f331926f332da5125:d60cc2e5ae2bd18de8ee3ab0649593ee$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/6706_2.png b/public/images/pokemon/variant/exp/6706_2.png
new file mode 100644
index 00000000000..7e7dfa8e05a
Binary files /dev/null and b/public/images/pokemon/variant/exp/6706_2.png differ
diff --git a/public/images/pokemon/variant/exp/6706_3.json b/public/images/pokemon/variant/exp/6706_3.json
new file mode 100644
index 00000000000..8c9b16b80ab
--- /dev/null
+++ b/public/images/pokemon/variant/exp/6706_3.json
@@ -0,0 +1,2015 @@
+{
+ "textures": [
+ {
+ "image": "6706_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 508,
+ "h": 508
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0074.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 28,
+ "y": 26,
+ "w": 59,
+ "h": 61
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 61
+ }
+ },
+ {
+ "filename": "0073.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 26,
+ "y": 25,
+ "w": 56,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 56,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0075.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 26,
+ "y": 25,
+ "w": 56,
+ "h": 63
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 56,
+ "h": 63
+ }
+ },
+ {
+ "filename": "0064.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 28,
+ "y": 21,
+ "w": 53,
+ "h": 65
+ },
+ "frame": {
+ "x": 115,
+ "y": 0,
+ "w": 53,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0084.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 28,
+ "y": 21,
+ "w": 53,
+ "h": 65
+ },
+ "frame": {
+ "x": 115,
+ "y": 0,
+ "w": 53,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0065.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 29,
+ "y": 21,
+ "w": 54,
+ "h": 65
+ },
+ "frame": {
+ "x": 168,
+ "y": 0,
+ "w": 54,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0083.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 29,
+ "y": 21,
+ "w": 54,
+ "h": 65
+ },
+ "frame": {
+ "x": 168,
+ "y": 0,
+ "w": 54,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0066.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 28,
+ "y": 21,
+ "w": 53,
+ "h": 65
+ },
+ "frame": {
+ "x": 222,
+ "y": 0,
+ "w": 53,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0082.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 28,
+ "y": 21,
+ "w": 53,
+ "h": 65
+ },
+ "frame": {
+ "x": 222,
+ "y": 0,
+ "w": 53,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0067.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 25,
+ "y": 21,
+ "w": 55,
+ "h": 66
+ },
+ "frame": {
+ "x": 275,
+ "y": 0,
+ "w": 55,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0081.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 25,
+ "y": 21,
+ "w": 55,
+ "h": 66
+ },
+ "frame": {
+ "x": 275,
+ "y": 0,
+ "w": 55,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0072.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 23,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 330,
+ "y": 0,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0076.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 23,
+ "w": 54,
+ "h": 66
+ },
+ "frame": {
+ "x": 330,
+ "y": 0,
+ "w": 54,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0063.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 25,
+ "y": 21,
+ "w": 54,
+ "h": 67
+ },
+ "frame": {
+ "x": 384,
+ "y": 0,
+ "w": 54,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0085.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 25,
+ "y": 21,
+ "w": 54,
+ "h": 67
+ },
+ "frame": {
+ "x": 384,
+ "y": 0,
+ "w": 54,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0062.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 21,
+ "w": 52,
+ "h": 68
+ },
+ "frame": {
+ "x": 438,
+ "y": 0,
+ "w": 52,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0086.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 23,
+ "y": 21,
+ "w": 52,
+ "h": 68
+ },
+ "frame": {
+ "x": 438,
+ "y": 0,
+ "w": 52,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0068.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 21,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 61,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0080.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 21,
+ "w": 53,
+ "h": 68
+ },
+ "frame": {
+ "x": 0,
+ "y": 61,
+ "w": 53,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0071.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 22,
+ "w": 52,
+ "h": 68
+ },
+ "frame": {
+ "x": 53,
+ "y": 63,
+ "w": 52,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0077.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 18,
+ "y": 22,
+ "w": 52,
+ "h": 68
+ },
+ "frame": {
+ "x": 53,
+ "y": 63,
+ "w": 52,
+ "h": 68
+ }
+ },
+ {
+ "filename": "0060.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 21,
+ "w": 55,
+ "h": 69
+ },
+ "frame": {
+ "x": 105,
+ "y": 65,
+ "w": 55,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0088.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 19,
+ "y": 21,
+ "w": 55,
+ "h": 69
+ },
+ "frame": {
+ "x": 105,
+ "y": 65,
+ "w": 55,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0061.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 21,
+ "w": 53,
+ "h": 69
+ },
+ "frame": {
+ "x": 160,
+ "y": 65,
+ "w": 53,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0087.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 21,
+ "y": 21,
+ "w": 53,
+ "h": 69
+ },
+ "frame": {
+ "x": 160,
+ "y": 65,
+ "w": 53,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0069.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 21,
+ "w": 53,
+ "h": 69
+ },
+ "frame": {
+ "x": 213,
+ "y": 65,
+ "w": 53,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0079.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 16,
+ "y": 21,
+ "w": 53,
+ "h": 69
+ },
+ "frame": {
+ "x": 213,
+ "y": 65,
+ "w": 53,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0070.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 21,
+ "w": 52,
+ "h": 70
+ },
+ "frame": {
+ "x": 266,
+ "y": 66,
+ "w": 52,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0078.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 15,
+ "y": 21,
+ "w": 52,
+ "h": 70
+ },
+ "frame": {
+ "x": 266,
+ "y": 66,
+ "w": 52,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 87,
+ "h": 71
+ },
+ "frame": {
+ "x": 318,
+ "y": 67,
+ "w": 87,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 87,
+ "h": 71
+ },
+ "frame": {
+ "x": 318,
+ "y": 67,
+ "w": 87,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0038.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 87,
+ "h": 71
+ },
+ "frame": {
+ "x": 318,
+ "y": 67,
+ "w": 87,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0051.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 18,
+ "w": 87,
+ "h": 71
+ },
+ "frame": {
+ "x": 405,
+ "y": 68,
+ "w": 87,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 19,
+ "w": 86,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 131,
+ "w": 86,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 86,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 86,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 86,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 19,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 173,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 173,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0037.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 173,
+ "y": 134,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 260,
+ "y": 138,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 260,
+ "y": 138,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0039.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 260,
+ "y": 138,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 347,
+ "y": 139,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 347,
+ "y": 139,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0040.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 18,
+ "w": 87,
+ "h": 72
+ },
+ "frame": {
+ "x": 347,
+ "y": 139,
+ "w": 87,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0059.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 5,
+ "w": 74,
+ "h": 80
+ },
+ "frame": {
+ "x": 434,
+ "y": 139,
+ "w": 74,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0089.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 5,
+ "w": 74,
+ "h": 80
+ },
+ "frame": {
+ "x": 434,
+ "y": 139,
+ "w": 74,
+ "h": 80
+ }
+ },
+ {
+ "filename": "0050.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 85,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 203,
+ "w": 85,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0052.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 13,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 85,
+ "y": 206,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 18,
+ "w": 84,
+ "h": 73
+ },
+ "frame": {
+ "x": 168,
+ "y": 206,
+ "w": 84,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 85,
+ "h": 73
+ },
+ "frame": {
+ "x": 252,
+ "y": 210,
+ "w": 85,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 337,
+ "y": 211,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 337,
+ "y": 211,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0041.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 337,
+ "y": 211,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 85,
+ "h": 73
+ },
+ "frame": {
+ "x": 423,
+ "y": 219,
+ "w": 85,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 85,
+ "h": 73
+ },
+ "frame": {
+ "x": 423,
+ "y": 219,
+ "w": 85,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 16,
+ "w": 85,
+ "h": 74
+ },
+ "frame": {
+ "x": 0,
+ "y": 275,
+ "w": 85,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 16,
+ "w": 85,
+ "h": 74
+ },
+ "frame": {
+ "x": 0,
+ "y": 275,
+ "w": 85,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0043.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 16,
+ "w": 85,
+ "h": 74
+ },
+ "frame": {
+ "x": 0,
+ "y": 275,
+ "w": 85,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 85,
+ "y": 279,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 85,
+ "y": 279,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0042.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 85,
+ "y": 279,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0053.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 4,
+ "w": 81,
+ "h": 74
+ },
+ "frame": {
+ "x": 171,
+ "y": 279,
+ "w": 81,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0095.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 4,
+ "w": 81,
+ "h": 74
+ },
+ "frame": {
+ "x": 171,
+ "y": 279,
+ "w": 81,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 16,
+ "w": 84,
+ "h": 74
+ },
+ "frame": {
+ "x": 252,
+ "y": 283,
+ "w": 84,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 16,
+ "w": 84,
+ "h": 74
+ },
+ "frame": {
+ "x": 252,
+ "y": 283,
+ "w": 84,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 336,
+ "y": 284,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 17,
+ "w": 86,
+ "h": 73
+ },
+ "frame": {
+ "x": 336,
+ "y": 284,
+ "w": 86,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0054.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 80,
+ "h": 74
+ },
+ "frame": {
+ "x": 422,
+ "y": 292,
+ "w": 80,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0094.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 80,
+ "h": 74
+ },
+ "frame": {
+ "x": 422,
+ "y": 292,
+ "w": 80,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0055.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 79,
+ "h": 74
+ },
+ "frame": {
+ "x": 0,
+ "y": 349,
+ "w": 79,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0093.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 79,
+ "h": 74
+ },
+ "frame": {
+ "x": 0,
+ "y": 349,
+ "w": 79,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0056.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 80,
+ "h": 74
+ },
+ "frame": {
+ "x": 79,
+ "y": 352,
+ "w": 80,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0092.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 80,
+ "h": 74
+ },
+ "frame": {
+ "x": 79,
+ "y": 352,
+ "w": 80,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 83,
+ "h": 75
+ },
+ "frame": {
+ "x": 159,
+ "y": 353,
+ "w": 83,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 83,
+ "h": 75
+ },
+ "frame": {
+ "x": 159,
+ "y": 353,
+ "w": 83,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0044.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 83,
+ "h": 75
+ },
+ "frame": {
+ "x": 159,
+ "y": 353,
+ "w": 83,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 242,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 242,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0045.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 242,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 323,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 323,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0047.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 81,
+ "h": 75
+ },
+ "frame": {
+ "x": 323,
+ "y": 357,
+ "w": 81,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 82,
+ "h": 75
+ },
+ "frame": {
+ "x": 404,
+ "y": 366,
+ "w": 82,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 82,
+ "h": 75
+ },
+ "frame": {
+ "x": 404,
+ "y": 366,
+ "w": 82,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0048.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 15,
+ "w": 82,
+ "h": 75
+ },
+ "frame": {
+ "x": 404,
+ "y": 366,
+ "w": 82,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0057.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 79,
+ "h": 75
+ },
+ "frame": {
+ "x": 0,
+ "y": 423,
+ "w": 79,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0091.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 79,
+ "h": 75
+ },
+ "frame": {
+ "x": 0,
+ "y": 423,
+ "w": 79,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0058.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 75
+ },
+ "frame": {
+ "x": 79,
+ "y": 426,
+ "w": 78,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0090.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 75
+ },
+ "frame": {
+ "x": 79,
+ "y": 426,
+ "w": 78,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0049.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 15,
+ "w": 85,
+ "h": 75
+ },
+ "frame": {
+ "x": 157,
+ "y": 428,
+ "w": 85,
+ "h": 75
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 14,
+ "w": 79,
+ "h": 76
+ },
+ "frame": {
+ "x": 242,
+ "y": 432,
+ "w": 79,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 14,
+ "w": 79,
+ "h": 76
+ },
+ "frame": {
+ "x": 242,
+ "y": 432,
+ "w": 79,
+ "h": 76
+ }
+ },
+ {
+ "filename": "0046.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 88,
+ "h": 91
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 14,
+ "w": 79,
+ "h": 76
+ },
+ "frame": {
+ "x": 242,
+ "y": 432,
+ "w": 79,
+ "h": 76
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:62a4a665074efb5def1545546995dc5b:de2788ebeab6b42f331926f332da5125:d60cc2e5ae2bd18de8ee3ab0649593ee$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/6706_3.png b/public/images/pokemon/variant/exp/6706_3.png
new file mode 100644
index 00000000000..3ad44f4bbf5
Binary files /dev/null and b/public/images/pokemon/variant/exp/6706_3.png differ
diff --git a/public/images/pokemon/variant/exp/700.json b/public/images/pokemon/variant/exp/700.json
new file mode 100644
index 00000000000..0b6071ad765
--- /dev/null
+++ b/public/images/pokemon/variant/exp/700.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "9a4557": "452f89",
+ "19657b": "a63071",
+ "fb9cc3": "c7a6ee",
+ "52cbee": "e974db",
+ "000000": "000000",
+ "cb628d": "996cd2",
+ "f7bbd4": "e1cff3",
+ "0d146e": "0d146e",
+ "3744e5": "d648b7",
+ "584f4f": "5c6889",
+ "ffffff": "f7f5ff",
+ "1f337b": "a63071",
+ "cbc0c0": "c3c5d9",
+ "2999b9": "d648b7"
+ },
+ "2": {
+ "9a4557": "197d46",
+ "19657b": "c72537",
+ "fb9cc3": "7dec9d",
+ "52cbee": "ff9a68",
+ "000000": "000000",
+ "cb628d": "5dae7d",
+ "f7bbd4": "f7bbd4",
+ "0d146e": "0d146e",
+ "3744e5": "eb5244",
+ "584f4f": "7f5c89",
+ "ffffff": "fff5fc",
+ "1f337b": "c72537",
+ "cbc0c0": "d9c3d6",
+ "2999b9": "eb5244"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/704.json b/public/images/pokemon/variant/exp/704.json
new file mode 100644
index 00000000000..38e5cdaf70d
--- /dev/null
+++ b/public/images/pokemon/variant/exp/704.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "6f5e80": "4e4094",
+ "e0d3e0": "fbb3d2",
+ "010202": "101010",
+ "bbafc4": "c7a1e5",
+ "2f6b38": "4e4094",
+ "74d457": "3aa8c4",
+ "3da84d": "197497",
+ "3f3d5e": "4e4094",
+ "a497c2": "c7a1e5",
+ "766fa6": "8b69c3",
+ "4c3143": "4e4094",
+ "cc93ab": "c7a1e5"
+ },
+ "2": {
+ "6f5e80": "274159",
+ "e0d3e0": "92d8c8",
+ "010202": "101010",
+ "bbafc4": "63a99e",
+ "2f6b38": "134557",
+ "74d457": "d27e26",
+ "3da84d": "a34205",
+ "3f3d5e": "134557",
+ "a497c2": "63a99e",
+ "766fa6": "2f667c",
+ "4c3143": "134557",
+ "cc93ab": "63a99e"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/705_2.json b/public/images/pokemon/variant/exp/705_2.json
new file mode 100644
index 00000000000..bf9fd104c5d
--- /dev/null
+++ b/public/images/pokemon/variant/exp/705_2.json
@@ -0,0 +1,272 @@
+{
+ "textures": [
+ {
+ "image": "705_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 154,
+ "h": 154
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 46,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 46,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 46,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 46,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ },
+ "frame": {
+ "x": 46,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ },
+ "frame": {
+ "x": 46,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ },
+ "frame": {
+ "x": 91,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 42,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 58,
+ "w": 42,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 42,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 58,
+ "w": 42,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 58
+ },
+ "frame": {
+ "x": 42,
+ "y": 58,
+ "w": 41,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 58
+ },
+ "frame": {
+ "x": 42,
+ "y": 58,
+ "w": 41,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 36,
+ "h": 58
+ },
+ "frame": {
+ "x": 83,
+ "y": 58,
+ "w": 36,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 36,
+ "h": 58
+ },
+ "frame": {
+ "x": 83,
+ "y": 58,
+ "w": 36,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 35,
+ "h": 58
+ },
+ "frame": {
+ "x": 119,
+ "y": 58,
+ "w": 35,
+ "h": 58
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:4bf155254b23c88780e7eee282256589:82bb727988054c3064e203b6908ff464:6b57e983626c7fc9144ab67f30c66814$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/705_2.png b/public/images/pokemon/variant/exp/705_2.png
new file mode 100644
index 00000000000..8256ebc7fdb
Binary files /dev/null and b/public/images/pokemon/variant/exp/705_2.png differ
diff --git a/public/images/pokemon/variant/exp/705_3.json b/public/images/pokemon/variant/exp/705_3.json
new file mode 100644
index 00000000000..199d7bc9c3e
--- /dev/null
+++ b/public/images/pokemon/variant/exp/705_3.json
@@ -0,0 +1,272 @@
+{
+ "textures": [
+ {
+ "image": "705_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 154,
+ "h": 154
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 46,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 46,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 46,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 46,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ },
+ "frame": {
+ "x": 46,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ },
+ "frame": {
+ "x": 46,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ },
+ "frame": {
+ "x": 91,
+ "y": 0,
+ "w": 45,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 42,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 58,
+ "w": 42,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 42,
+ "h": 58
+ },
+ "frame": {
+ "x": 0,
+ "y": 58,
+ "w": 42,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 58
+ },
+ "frame": {
+ "x": 42,
+ "y": 58,
+ "w": 41,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 41,
+ "h": 58
+ },
+ "frame": {
+ "x": 42,
+ "y": 58,
+ "w": 41,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 36,
+ "h": 58
+ },
+ "frame": {
+ "x": 83,
+ "y": 58,
+ "w": 36,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 36,
+ "h": 58
+ },
+ "frame": {
+ "x": 83,
+ "y": 58,
+ "w": 36,
+ "h": 58
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 49,
+ "h": 58
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 35,
+ "h": 58
+ },
+ "frame": {
+ "x": 119,
+ "y": 58,
+ "w": 35,
+ "h": 58
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:4bf155254b23c88780e7eee282256589:82bb727988054c3064e203b6908ff464:6b57e983626c7fc9144ab67f30c66814$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/705_3.png b/public/images/pokemon/variant/exp/705_3.png
new file mode 100644
index 00000000000..66b43956bdf
Binary files /dev/null and b/public/images/pokemon/variant/exp/705_3.png differ
diff --git a/public/images/pokemon/variant/exp/706.json b/public/images/pokemon/variant/exp/706.json
new file mode 100644
index 00000000000..41077f9d96b
--- /dev/null
+++ b/public/images/pokemon/variant/exp/706.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "4d454d": "6f1357",
+ "807380": "8a2166",
+ "bfacbf": "da75a5",
+ "f2daf2": "f1a4c5",
+ "998a99": "b24c86",
+ "f8f8f8": "f8f8f8",
+ "101010": "101010",
+ "4d993d": "197497",
+ "336629": "0c5474",
+ "66cc52": "3aa8c4",
+ "8f7db3": "7654b3",
+ "665980": "543898",
+ "b8a1e5": "bea1e5",
+ "b6f2aa": "63cee1"
+ },
+ "2": {
+ "4d454d": "0e4043",
+ "807380": "194f51",
+ "bfacbf": "5db6a9",
+ "f2daf2": "9cead8",
+ "998a99": "2b736f",
+ "f8f8f8": "f8f8f8",
+ "101010": "101010",
+ "4d993d": "a34205",
+ "336629": "842401",
+ "66cc52": "d27e26",
+ "8f7db3": "274159",
+ "665980": "172f46",
+ "b8a1e5": "2f667c",
+ "b6f2aa": "f7af58"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/708.json b/public/images/pokemon/variant/exp/708.json
new file mode 100644
index 00000000000..b32bbb79cd9
--- /dev/null
+++ b/public/images/pokemon/variant/exp/708.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "101010": "101010",
+ "2b2a3a": "722023",
+ "603d2b": "36384f",
+ "215738": "4d362e",
+ "48484a": "a14743",
+ "c18760": "7c808c",
+ "3fa76c": "907f76",
+ "915e45": "575a6a",
+ "0b0c0b": "0b0c0b",
+ "da585b": "5996d2",
+ "ff8c8f": "87d1ff"
+ },
+ "2": {
+ "101010": "101010",
+ "2b2a3a": "6f5f80",
+ "603d2b": "31161d",
+ "215738": "a94079",
+ "48484a": "9c92a4",
+ "c18760": "7e5658",
+ "3fa76c": "da7ea8",
+ "915e45": "56323a",
+ "0b0c0b": "0b0c0b",
+ "da585b": "e18933",
+ "ff8c8f": "ffc875"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/709.json b/public/images/pokemon/variant/exp/709.json
new file mode 100644
index 00000000000..f249558388a
--- /dev/null
+++ b/public/images/pokemon/variant/exp/709.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "603d2b": "262741",
+ "c18760": "575a6a",
+ "12602e": "361f1b",
+ "23b856": "907f76",
+ "128b3b": "4d362e",
+ "101010": "101010",
+ "915e45": "36384f",
+ "292a40": "a14743",
+ "f92d45": "5996d2",
+ "fb657a": "87d1ff"
+ },
+ "2": {
+ "603d2b": "31161d",
+ "c18760": "7e5658",
+ "12602e": "761d52",
+ "23b856": "da7ea8",
+ "128b3b": "a94079",
+ "101010": "101010",
+ "915e45": "56323a",
+ "292a40": "9c92a4",
+ "f92d45": "e18933",
+ "fb657a": "ffc875"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/710.json b/public/images/pokemon/variant/exp/710.json
new file mode 100644
index 00000000000..d63ab9ca323
--- /dev/null
+++ b/public/images/pokemon/variant/exp/710.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "101010": "101010",
+ "61532d": "72a966",
+ "3d301a": "366432",
+ "261d0e": "213a22",
+ "e09935": "d27238",
+ "f9d64a": "ffb571",
+ "ffffff": "dacfcb",
+ "bf634c": "404040",
+ "894331": "262626",
+ "f49670": "595959",
+ "aa6b22": "ffb571",
+ "fff0a5": "fafafa"
+ },
+ "2": {
+ "101010": "101010",
+ "61532d": "425947",
+ "3d301a": "2a4031",
+ "261d0e": "262626",
+ "e09935": "e1af37",
+ "f9d64a": "fff298",
+ "ffffff": "ffe0d3",
+ "bf634c": "ad3b33",
+ "894331": "861613",
+ "f49670": "e56146",
+ "aa6b22": "fff298",
+ "fff0a5": "fafafa"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/711.json b/public/images/pokemon/variant/exp/711.json
new file mode 100644
index 00000000000..df3799ce802
--- /dev/null
+++ b/public/images/pokemon/variant/exp/711.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "261d0e": "291431",
+ "61532d": "593a59",
+ "3d301a": "311835",
+ "bf634c": "262626",
+ "101010": "101010",
+ "f49670": "404040",
+ "894331": "171717",
+ "e09935": "e9f25b",
+ "a87546": "aa7e43",
+ "f9d64a": "e9f25b",
+ "dbad64": "cea971",
+ "aa6b22": "b9c245",
+ "fff0a5": "f1ffa7"
+ },
+ "1": {
+ "261d0e": "261d0e",
+ "61532d": "434348",
+ "3d301a": "262626",
+ "bf634c": "325b34",
+ "101010": "101010",
+ "f49670": "4d7d4b",
+ "894331": "153f18",
+ "e09935": "ffa858",
+ "a87546": "baa78d",
+ "f9d64a": "ffa858",
+ "dbad64": "ddcfb1",
+ "aa6b22": "b76a38",
+ "fff0a5": "ffd495"
+ },
+ "2": {
+ "261d0e": "5e0b09",
+ "61532d": "e56146",
+ "3d301a": "9a2d25",
+ "bf634c": "213c28",
+ "101010": "101010",
+ "f49670": "36593d",
+ "894331": "102316",
+ "e09935": "f1c353",
+ "a87546": "774a2c",
+ "f9d64a": "f1c353",
+ "dbad64": "ac764c",
+ "aa6b22": "d97d3e",
+ "fff0a5": "fff3b0"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/720-unbound.json b/public/images/pokemon/variant/exp/720-unbound.json
new file mode 100644
index 00000000000..8b67d879847
--- /dev/null
+++ b/public/images/pokemon/variant/exp/720-unbound.json
@@ -0,0 +1,71 @@
+{
+ "0": {
+ "313131": "3e162b",
+ "575757": "684252",
+ "afcdd8": "c6bba8",
+ "000000": "101010",
+ "546275": "513b29",
+ "752a5b": "701507",
+ "7e9eaf": "958672",
+ "e05e8d": "cb5e23",
+ "a36215": "414a79",
+ "bf3770": "902c0d",
+ "f2d469": "becef5",
+ "efac28": "9ca7d5",
+ "333333": "3e162b",
+ "efac29": "9ca7d5",
+ "a36218": "414a79",
+ "f2d46a": "becef5",
+ "ffffff": "fefefe",
+ "bf356f": "902c0d",
+ "87491c": "414a79",
+ "752b5b": "701507",
+ "f9f8fa": "fefefe"
+ },
+ "1": {
+ "313131": "632373",
+ "575757": "a947b4",
+ "afcdd8": "c3aabe",
+ "000000": "101010",
+ "546275": "4d244e",
+ "752a5b": "280d46",
+ "7e9eaf": "997392",
+ "e05e8d": "753f9b",
+ "a36215": "853015",
+ "bf3770": "471c6b",
+ "f2d469": "ffc26a",
+ "efac28": "e2885a",
+ "333333": "632373",
+ "efac29": "e2885a",
+ "a36218": "853015",
+ "f2d46a": "ffc26a",
+ "ffffff": "fefefe",
+ "bf356f": "471c6b",
+ "87491c": "853015",
+ "752b5b": "280d46",
+ "f9f8fa": "fefefe"
+ },
+ "2": {
+ "313131": "1c2433",
+ "575757": "304757",
+ "afcdd8": "a1c4c3",
+ "000000": "101010",
+ "546275": "1a3f35",
+ "752a5b": "150933",
+ "7e9eaf": "5c827d",
+ "e05e8d": "35387c",
+ "a36215": "682b16",
+ "bf3770": "1d1a4b",
+ "f2d469": "ed9b42",
+ "efac28": "b05d2d",
+ "333333": "1c2433",
+ "efac29": "b05d2d",
+ "a36218": "682b16",
+ "f2d46a": "ed9b42",
+ "ffffff": "fefefe",
+ "bf356f": "1d1a4b",
+ "87491c": "682b16",
+ "752b5b": "150933",
+ "f9f8fa": "fefefe"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/720.json b/public/images/pokemon/variant/exp/720.json
new file mode 100644
index 00000000000..9c3b8bb0495
--- /dev/null
+++ b/public/images/pokemon/variant/exp/720.json
@@ -0,0 +1,92 @@
+{
+ "0": {
+ "91376d": "620d00",
+ "000000": "101010",
+ "ef7fbe": "cb5e23",
+ "898660": "3e162b",
+ "d8548d": "902c0d",
+ "efe0f9": "ffdb73",
+ "d19630": "6577a5",
+ "895e0d": "414a79",
+ "f2d118": "becef5",
+ "ffffff": "f3feff",
+ "c3b7cc": "cc923c",
+ "998ca3": "684252",
+ "706728": "414a79",
+ "4c872f": "99331f",
+ "59c325": "cc4429",
+ "75687f": "3e162b",
+ "786b82": "3e162b",
+ "c2b6cb": "cc923c",
+ "776a81": "3e162b",
+ "eddef7": "ffdb73",
+ "eedff8": "ffdb73",
+ "73667d": "3e162b",
+ "d7538c": "902c0d",
+ "ee7ebd": "cb5e23",
+ "010101": "101010",
+ "988ba2": "684252",
+ "030303": "101010",
+ "040404": "101010"
+ },
+ "1": {
+ "91376d": "280d46",
+ "000000": "101010",
+ "ef7fbe": "753f9b",
+ "898660": "632373",
+ "d8548d": "471c6b",
+ "efe0f9": "f7bae9",
+ "d19630": "eb7037",
+ "895e0d": "853015",
+ "f2d118": "ffc26a",
+ "ffffff": "fff0e8",
+ "c3b7cc": "ca79bd",
+ "998ca3": "a947b4",
+ "706728": "853015",
+ "4c872f": "000862",
+ "59c325": "062591",
+ "75687f": "632373",
+ "786b82": "632373",
+ "c2b6cb": "ca79bd",
+ "776a81": "632373",
+ "eddef7": "f7bae9",
+ "eedff8": "f7bae9",
+ "73667d": "632373",
+ "d7538c": "471c6b",
+ "ee7ebd": "753f9b",
+ "010101": "101010",
+ "988ba2": "a947b4",
+ "030303": "101010",
+ "040404": "101010"
+ },
+ "2": {
+ "91376d": "150933",
+ "000000": "101010",
+ "ef7fbe": "35387c",
+ "898660": "1c2433",
+ "d8548d": "1d1a4b",
+ "efe0f9": "d5cce5",
+ "d19630": "b05d2d",
+ "895e0d": "682b16",
+ "f2d118": "ed9b42",
+ "ffffff": "ffffde",
+ "c3b7cc": "9e8fbb",
+ "998ca3": "304757",
+ "706728": "682b16",
+ "4c872f": "7e0016",
+ "59c325": "a8070d",
+ "75687f": "1c2433",
+ "786b82": "1c2433",
+ "c2b6cb": "9e8fbb",
+ "776a81": "1c2433",
+ "eddef7": "d5cce5",
+ "eedff8": "d5cce5",
+ "73667d": "1c2433",
+ "d7538c": "1d1a4b",
+ "ee7ebd": "35387c",
+ "010101": "101010",
+ "988ba2": "304757",
+ "030303": "101010",
+ "040404": "101010"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/802.json b/public/images/pokemon/variant/exp/802.json
new file mode 100644
index 00000000000..14caa71b18b
--- /dev/null
+++ b/public/images/pokemon/variant/exp/802.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "232627": "084434",
+ "62646a": "76bc8f",
+ "000000": "000000",
+ "444546": "3a7e5d",
+ "dc983d": "dc983d",
+ "f2d982": "f8f592",
+ "802d17": "ff623c",
+ "cc411e": "e31101",
+ "e86539": "ff4506"
+ },
+ "1": {
+ "232627": "0d0b3f",
+ "62646a": "515aad",
+ "000000": "000000",
+ "444546": "2f3079",
+ "dc983d": "dc983d",
+ "f2d982": "f8e592",
+ "802d17": "ffbb17",
+ "cc411e": "ff2006",
+ "e86539": "ff9a50"
+ },
+ "2": {
+ "232627": "5a0423",
+ "62646a": "ce3e63",
+ "000000": "000000",
+ "444546": "97123b",
+ "dc983d": "16a1e1",
+ "f2d982": "4bf6ff",
+ "802d17": "055cc1",
+ "cc411e": "2d8eff",
+ "e86539": "27dced"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/856.json b/public/images/pokemon/variant/exp/856.json
new file mode 100644
index 00000000000..3d245b74324
--- /dev/null
+++ b/public/images/pokemon/variant/exp/856.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "727ab1": "1d4a3b",
+ "c8e9ff": "5ec183",
+ "181818": "181818",
+ "acbfdf": "3b9665",
+ "bb6a99": "043232",
+ "f9d5da": "298675",
+ "fbe6e9": "60b581",
+ "fefefe": "a5e8be",
+ "dca5bd": "125a51"
+ },
+ "2": {
+ "727ab1": "6b0124",
+ "c8e9ff": "cb304d",
+ "181818": "181818",
+ "acbfdf": "a11437",
+ "bb6a99": "30163d",
+ "f9d5da": "523f73",
+ "fbe6e9": "b53859",
+ "fefefe": "e8627b",
+ "dca5bd": "3b2351"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/857_2.json b/public/images/pokemon/variant/exp/857_2.json
new file mode 100644
index 00000000000..1a0170f4f7b
--- /dev/null
+++ b/public/images/pokemon/variant/exp/857_2.json
@@ -0,0 +1,692 @@
+{
+ "textures": [
+ {
+ "image": "857_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 203,
+ "h": 203
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 54,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 54,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 54,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 54,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 61,
+ "h": 51
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 61,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 61,
+ "h": 51
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 61,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 61,
+ "h": 51
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 61,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 61,
+ "h": 51
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 61,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 58,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 108,
+ "w": 58,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 58,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 108,
+ "w": 58,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 58,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 108,
+ "w": 58,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 58,
+ "h": 54
+ },
+ "frame": {
+ "x": 59,
+ "y": 54,
+ "w": 58,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 58,
+ "y": 108,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 58,
+ "y": 108,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 58,
+ "y": 108,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 58,
+ "y": 108,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 61,
+ "h": 50
+ },
+ "frame": {
+ "x": 118,
+ "y": 51,
+ "w": 61,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 61,
+ "h": 50
+ },
+ "frame": {
+ "x": 118,
+ "y": 51,
+ "w": 61,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 117,
+ "y": 101,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 117,
+ "y": 101,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 117,
+ "y": 101,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 117,
+ "y": 101,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 56,
+ "h": 50
+ },
+ "frame": {
+ "x": 117,
+ "y": 153,
+ "w": 56,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 56,
+ "h": 50
+ },
+ "frame": {
+ "x": 117,
+ "y": 153,
+ "w": 56,
+ "h": 50
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:f1e567460f667f45fe976d9c86e3f9f9:7ba13d83af2761dbe445375e2ed3cfdf:76d73294e4ff7ab8f96a631810e2dc62$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/857_2.png b/public/images/pokemon/variant/exp/857_2.png
new file mode 100644
index 00000000000..2a60b21cef0
Binary files /dev/null and b/public/images/pokemon/variant/exp/857_2.png differ
diff --git a/public/images/pokemon/variant/exp/857_3.json b/public/images/pokemon/variant/exp/857_3.json
new file mode 100644
index 00000000000..25f3eebb07e
--- /dev/null
+++ b/public/images/pokemon/variant/exp/857_3.json
@@ -0,0 +1,692 @@
+{
+ "textures": [
+ {
+ "image": "857_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 203,
+ "h": 203
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 54,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 54,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 54,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 54,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ },
+ "frame": {
+ "x": 59,
+ "y": 0,
+ "w": 59,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 61,
+ "h": 51
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 61,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 61,
+ "h": 51
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 61,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 61,
+ "h": 51
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 61,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 61,
+ "h": 51
+ },
+ "frame": {
+ "x": 118,
+ "y": 0,
+ "w": 61,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 58,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 108,
+ "w": 58,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 58,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 108,
+ "w": 58,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 58,
+ "h": 54
+ },
+ "frame": {
+ "x": 0,
+ "y": 108,
+ "w": 58,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 58,
+ "h": 54
+ },
+ "frame": {
+ "x": 59,
+ "y": 54,
+ "w": 58,
+ "h": 54
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 58,
+ "y": 108,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 58,
+ "y": 108,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 58,
+ "y": 108,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 59,
+ "h": 52
+ },
+ "frame": {
+ "x": 58,
+ "y": 108,
+ "w": 59,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 61,
+ "h": 50
+ },
+ "frame": {
+ "x": 118,
+ "y": 51,
+ "w": 61,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 61,
+ "h": 50
+ },
+ "frame": {
+ "x": 118,
+ "y": 51,
+ "w": 61,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 117,
+ "y": 101,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 117,
+ "y": 101,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 117,
+ "y": 101,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 2,
+ "w": 57,
+ "h": 52
+ },
+ "frame": {
+ "x": 117,
+ "y": 101,
+ "w": 57,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 56,
+ "h": 50
+ },
+ "frame": {
+ "x": 117,
+ "y": 153,
+ "w": 56,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 61,
+ "h": 54
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 4,
+ "w": 56,
+ "h": 50
+ },
+ "frame": {
+ "x": 117,
+ "y": 153,
+ "w": 56,
+ "h": 50
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:f1e567460f667f45fe976d9c86e3f9f9:7ba13d83af2761dbe445375e2ed3cfdf:76d73294e4ff7ab8f96a631810e2dc62$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/857_3.png b/public/images/pokemon/variant/exp/857_3.png
new file mode 100644
index 00000000000..f9e25f22cc4
Binary files /dev/null and b/public/images/pokemon/variant/exp/857_3.png differ
diff --git a/public/images/pokemon/variant/exp/858.json b/public/images/pokemon/variant/exp/858.json
new file mode 100644
index 00000000000..1f0c1cefab4
--- /dev/null
+++ b/public/images/pokemon/variant/exp/858.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "727ab1": "1d4a3b",
+ "c8e9ff": "5ec183",
+ "acbfdf": "3b9665",
+ "101010": "101010",
+ "948fc2": "287b59",
+ "d9cedb": "dec1c2",
+ "e5e4ef": "f7e4e4",
+ "fefefe": "f7e4e4",
+ "e489a0": "125a51",
+ "c15974": "043232",
+ "b4a2b7": "bf9ca0",
+ "856d8b": "9c7a81",
+ "f5bac2": "298675"
+ },
+ "2": {
+ "727ab1": "6b0124",
+ "c8e9ff": "cb304d",
+ "acbfdf": "a11437",
+ "101010": "101010",
+ "948fc2": "8c0e32",
+ "d9cedb": "e4bcde",
+ "e5e4ef": "ffecf9",
+ "fefefe": "fee9fa",
+ "e489a0": "3b2351",
+ "c15974": "30163d",
+ "b4a2b7": "bc93b7",
+ "856d8b": "976c95",
+ "f5bac2": "523f73"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/872.json b/public/images/pokemon/variant/exp/872.json
new file mode 100644
index 00000000000..21ea6cd4192
--- /dev/null
+++ b/public/images/pokemon/variant/exp/872.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "7b8b9b": "345f5c",
+ "acc3cc": "669a8c",
+ "d8e9f0": "b7f1d6",
+ "f5fdff": "f5fdff",
+ "edeae0": "a6d6a6",
+ "b3a7c2": "73a878",
+ "101010": "101010",
+ "695e77": "275e43",
+ "fdfdfb": "fdfdfb"
+ },
+ "1": {
+ "7b8b9b": "22504c",
+ "acc3cc": "548e8f",
+ "d8e9f0": "b6e7df",
+ "f5fdff": "f5fdff",
+ "edeae0": "c1ebf3",
+ "b3a7c2": "89a9be",
+ "101010": "101010",
+ "695e77": "354b63",
+ "fdfdfb": "fdfdfb"
+ },
+ "2": {
+ "7b8b9b": "5a3993",
+ "acc3cc": "a66ac2",
+ "d8e9f0": "d5c3ff",
+ "f5fdff": "f5fdff",
+ "edeae0": "e5a2da",
+ "b3a7c2": "a060a0",
+ "101010": "101010",
+ "695e77": "5f3465",
+ "fdfdfb": "fdfdfb"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/873.json b/public/images/pokemon/variant/exp/873.json
new file mode 100644
index 00000000000..5ea93b1c3bb
--- /dev/null
+++ b/public/images/pokemon/variant/exp/873.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "747489": "27532f",
+ "fdfdfd": "b7f1d7",
+ "e7e0e6": "a6d6a6",
+ "b3b4bd": "73a878",
+ "8f8f9f": "547b58",
+ "101010": "101010",
+ "758174": "497e7a",
+ "c0e4c2": "eefffc",
+ "a0baa8": "aae3d9",
+ "4662ce": "c71e87",
+ "8e9fe1": "f158a3",
+ "3f4474": "6a3f74",
+ "c0df86": "e5ffdc"
+ },
+ "1": {
+ "747489": "415366",
+ "fdfdfd": "eefffb",
+ "e7e0e6": "c1ebf3",
+ "b3b4bd": "8ebbca",
+ "8f8f9f": "648397",
+ "101010": "101010",
+ "758174": "428586",
+ "c0e4c2": "d7fff8",
+ "a0baa8": "7bcbc0",
+ "4662ce": "0fa5bd",
+ "8e9fe1": "2dd3e0",
+ "3f4474": "3f4474",
+ "c0df86": "eefffb"
+ },
+ "2": {
+ "747489": "512d52",
+ "fdfdfd": "d5c3ff",
+ "e7e0e6": "d78dcb",
+ "b3b4bd": "864c86",
+ "8f8f9f": "5f3465",
+ "101010": "101010",
+ "758174": "795a9e",
+ "c0e4c2": "e1e3ff",
+ "a0baa8": "9f87ca",
+ "4662ce": "2b2dcf",
+ "8e9fe1": "7289eb",
+ "3f4474": "5b1268",
+ "c0df86": "e1e3ff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/877-hangry.json b/public/images/pokemon/variant/exp/877-hangry.json
new file mode 100644
index 00000000000..100665220df
--- /dev/null
+++ b/public/images/pokemon/variant/exp/877-hangry.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "101010": "101010",
+ "383634": "540606",
+ "6c6c6c": "952222",
+ "4f4b47": "3a1010",
+ "9958ce": "cebb58",
+ "6b3d96": "967f3d",
+ "ff151c": "ff151c",
+ "f38bb7": "f38bb7",
+ "9f9f9f": "9f9f9f",
+ "fbfbfb": "fbfbfb",
+ "493061": "615e30"
+ },
+ "1": {
+ "101010": "101010",
+ "383634": "212020",
+ "6c6c6c": "3a3a3a",
+ "4f4b47": "161514",
+ "9958ce": "cb6333",
+ "6b3d96": "a2512c",
+ "ff151c": "ff6b00",
+ "f38bb7": "f3a18b",
+ "9f9f9f": "9f9f9f",
+ "fbfbfb": "fbfbfb",
+ "493061": "753e25"
+ },
+ "2": {
+ "101010": "101010",
+ "383634": "383634",
+ "6c6c6c": "6c6c6c",
+ "4f4b47": "4f4b47",
+ "9958ce": "7fba7f",
+ "6b3d96": "568351",
+ "ff151c": "065b06",
+ "f38bb7": "468e46",
+ "9f9f9f": "9f9f9f",
+ "fbfbfb": "fbfbfb",
+ "493061": "306135"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/877.json b/public/images/pokemon/variant/exp/877.json
new file mode 100644
index 00000000000..4be9b0e5c12
--- /dev/null
+++ b/public/images/pokemon/variant/exp/877.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "383634": "383634",
+ "101010": "101010",
+ "8a5e48": "383634",
+ "6c6c6c": "6c6c6c",
+ "cf9c66": "6c6c6c",
+ "af7044": "4f4b47",
+ "4f4b47": "4f4b47",
+ "d3b351": "8851d3",
+ "f4f489": "b689f4",
+ "fbfbfb": "fbfbfb",
+ "5c5c5c": "5c5c5c",
+ "f38bb7": "f38bb7",
+ "b24244": "b24244",
+ "e76961": "e76961"
+ },
+ "1": {
+ "383634": "383634",
+ "101010": "101010",
+ "8a5e48": "2541ad",
+ "6c6c6c": "58666d",
+ "cf9c66": "86aaff",
+ "af7044": "2c439d",
+ "4f4b47": "4f4b47",
+ "d3b351": "8b8853",
+ "f4f489": "fff98f",
+ "fbfbfb": "fbfbfb",
+ "5c5c5c": "5c5c5c",
+ "f38bb7": "1010b3",
+ "b24244": "424eb2",
+ "e76961": "61b6e7"
+ },
+ "2": {
+ "383634": "383634",
+ "101010": "101010",
+ "8a5e48": "4f8a48",
+ "6c6c6c": "6c6c6c",
+ "cf9c66": "71cf66",
+ "af7044": "44af5b",
+ "4f4b47": "4f4b47",
+ "d3b351": "b6b6b6",
+ "f4f489": "f8f8f8",
+ "fbfbfb": "fbfbfb",
+ "5c5c5c": "5c5c5c",
+ "f38bb7": "a1f38b",
+ "b24244": "388040",
+ "e76961": "95e69d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/885.json b/public/images/pokemon/variant/exp/885.json
new file mode 100644
index 00000000000..8dc901e6476
--- /dev/null
+++ b/public/images/pokemon/variant/exp/885.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "3a583c": "133056",
+ "fa5494": "efa93f",
+ "101010": "101010",
+ "cc4066": "cc8225",
+ "5f875a": "2f6c89",
+ "476b48": "20486e",
+ "78aa84": "479bb6",
+ "eb4972": "ac7508",
+ "c4264e": "9c5f05",
+ "822d44": "824100",
+ "e6ea40": "ffcc48",
+ "b1842e": "d48007",
+ "addcbc": "6accd6"
+ },
+ "1": {
+ "3a583c": "2f040d",
+ "fa5494": "4590da",
+ "101010": "101010",
+ "cc4066": "3261b7",
+ "5f875a": "6b242e",
+ "476b48": "4e0e17",
+ "78aa84": "b13b42",
+ "eb4972": "234582",
+ "c4264e": "213464",
+ "822d44": "071d61",
+ "e6ea40": "4fffa4",
+ "b1842e": "09bb6f",
+ "addcbc": "da6151"
+ },
+ "2": {
+ "3a583c": "1f0c2c",
+ "fa5494": "68c7c4",
+ "101010": "101010",
+ "cc4066": "2a8286",
+ "5f875a": "3c2750",
+ "476b48": "231234",
+ "78aa84": "624c6f",
+ "eb4972": "126f79",
+ "c4264e": "08586a",
+ "822d44": "00405b",
+ "e6ea40": "87ff46",
+ "b1842e": "22c561",
+ "addcbc": "927fa1"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/886.json b/public/images/pokemon/variant/exp/886.json
new file mode 100644
index 00000000000..5a32a09d5cc
--- /dev/null
+++ b/public/images/pokemon/variant/exp/886.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "444e62": "2d365a",
+ "addcbc": "6accd6",
+ "101010": "101010",
+ "5f875a": "2f6c89",
+ "2c323f": "192250",
+ "566f89": "465272",
+ "fa5494": "efa93f",
+ "822d44": "8d5200",
+ "eb4972": "ac7508",
+ "ffe322": "ffcc48",
+ "7fb3b1": "78c3cb",
+ "5b878c": "4c90a6",
+ "b5a36a": "c7bcb6",
+ "dbd39d": "f7eee9",
+ "000000": "101010"
+ },
+ "1": {
+ "444e62": "4a1621",
+ "addcbc": "da6151",
+ "101010": "101010",
+ "5f875a": "6b242e",
+ "2c323f": "2e080d",
+ "566f89": "602034",
+ "fa5494": "3f97ee",
+ "822d44": "1977ce",
+ "eb4972": "4fbff7",
+ "ffe322": "4fffa4",
+ "7fb3b1": "a94046",
+ "5b878c": "7e2833",
+ "b5a36a": "e3a755",
+ "dbd39d": "ffd696",
+ "000000": "101010"
+ },
+ "2": {
+ "444e62": "231b45",
+ "addcbc": "927fa1",
+ "101010": "101010",
+ "5f875a": "3c2750",
+ "2c323f": "251b31",
+ "566f89": "3b2e5d",
+ "fa5494": "60d1cd",
+ "822d44": "186670",
+ "eb4972": "2a8286",
+ "ffe322": "87ff46",
+ "7fb3b1": "8b659f",
+ "5b878c": "6c4d85",
+ "b5a36a": "b5a36a",
+ "dbd39d": "dbd39d",
+ "000000": "101010"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/887.json b/public/images/pokemon/variant/exp/887.json
new file mode 100644
index 00000000000..a15fdf3c9ec
--- /dev/null
+++ b/public/images/pokemon/variant/exp/887.json
@@ -0,0 +1,65 @@
+{
+ "0": {
+ "2c323f": "192250",
+ "101010": "101010",
+ "566f89": "46557b",
+ "444e62": "2c3867",
+ "fa5494": "efa93f",
+ "cc4066": "ac7508",
+ "48a9b0": "479bb6",
+ "308b86": "2f6c89",
+ "ffe322": "ffcc48",
+ "eb4972": "dd2d61",
+ "b5a36a": "c7bcb6",
+ "78d4cb": "6accd6",
+ "d5fffb": "9dfffa",
+ "dbd39d": "f7eee9",
+ "386a70": "20486e",
+ "47a8ae": "479bb6",
+ "4aabae": "479bb6",
+ "49aaaf": "479bb6",
+ "121513": "101010"
+ },
+ "1": {
+ "2c323f": "2e080d",
+ "101010": "101010",
+ "566f89": "6c273d",
+ "444e62": "4a1621",
+ "fa5494": "4590da",
+ "cc4066": "244f9f",
+ "48a9b0": "8a212f",
+ "308b86": "690f1b",
+ "ffe322": "4fffa4",
+ "eb4972": "307cc7",
+ "b5a36a": "e3a755",
+ "78d4cb": "b13b42",
+ "d5fffb": "ffb853",
+ "dbd39d": "ffd696",
+ "386a70": "490711",
+ "47a8ae": "8a212f",
+ "4aabae": "8a212f",
+ "49aaaf": "8a212f",
+ "121513": "101010"
+ },
+ "2": {
+ "2c323f": "1b163f",
+ "101010": "101010",
+ "566f89": "4c3f6f",
+ "444e62": "332a59",
+ "fa5494": "68c7c4",
+ "cc4066": "2a8286",
+ "48a9b0": "482962",
+ "308b86": "231234",
+ "ffe322": "87ff46",
+ "eb4972": "218aa0",
+ "b5a36a": "8c8fb0",
+ "78d4cb": "744e89",
+ "d5fffb": "b389fb",
+ "dbd39d": "bbbfcf",
+ "386a70": "1d0e33",
+ "47a8ae": "482962",
+ "4aabae": "482962",
+ "49aaaf": "482962",
+ "121513": "101010"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/94-mega_1.json b/public/images/pokemon/variant/exp/94-mega_1.json
new file mode 100644
index 00000000000..6057cd87f24
--- /dev/null
+++ b/public/images/pokemon/variant/exp/94-mega_1.json
@@ -0,0 +1,629 @@
+{
+ "textures": [
+ {
+ "image": "94-mega_1.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 234,
+ "h": 234
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 78,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 78,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 156,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 156,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 133,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 133,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 78,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 78,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 156,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 156,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 156,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:184d9703626845d6d6b8fb551426e905:01323f7239deebc44b65fcb67b573553:304b53f4bd4197620ff0b30b83d929a9$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/94-mega_1.png b/public/images/pokemon/variant/exp/94-mega_1.png
new file mode 100644
index 00000000000..f37635c0c8b
Binary files /dev/null and b/public/images/pokemon/variant/exp/94-mega_1.png differ
diff --git a/public/images/pokemon/variant/exp/94-mega_2.json b/public/images/pokemon/variant/exp/94-mega_2.json
new file mode 100644
index 00000000000..8511d6b0a9c
--- /dev/null
+++ b/public/images/pokemon/variant/exp/94-mega_2.json
@@ -0,0 +1,629 @@
+{
+ "textures": [
+ {
+ "image": "94-mega_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 234,
+ "h": 234
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 78,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 78,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 156,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 156,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 133,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 133,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 78,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 78,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 156,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 156,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 156,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:184d9703626845d6d6b8fb551426e905:01323f7239deebc44b65fcb67b573553:304b53f4bd4197620ff0b30b83d929a9$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/94-mega_2.png b/public/images/pokemon/variant/exp/94-mega_2.png
new file mode 100644
index 00000000000..264672eb70b
Binary files /dev/null and b/public/images/pokemon/variant/exp/94-mega_2.png differ
diff --git a/public/images/pokemon/variant/exp/94-mega_3.json b/public/images/pokemon/variant/exp/94-mega_3.json
new file mode 100644
index 00000000000..d51777ef1cf
--- /dev/null
+++ b/public/images/pokemon/variant/exp/94-mega_3.json
@@ -0,0 +1,629 @@
+{
+ "textures": [
+ {
+ "image": "94-mega_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 234,
+ "h": 234
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 78,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 78,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 156,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": false,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ },
+ "frame": {
+ "x": 156,
+ "y": 0,
+ "w": 78,
+ "h": 67
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 133,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 0,
+ "y": 133,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 78,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 78,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 156,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 78,
+ "h": 66
+ },
+ "frame": {
+ "x": 156,
+ "y": 67,
+ "w": 78,
+ "h": 66
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 78,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 78,
+ "h": 67
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 78,
+ "h": 65
+ },
+ "frame": {
+ "x": 156,
+ "y": 133,
+ "w": 78,
+ "h": 65
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:184d9703626845d6d6b8fb551426e905:01323f7239deebc44b65fcb67b573553:304b53f4bd4197620ff0b30b83d929a9$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/94-mega_3.png b/public/images/pokemon/variant/exp/94-mega_3.png
new file mode 100644
index 00000000000..89965a8a68f
Binary files /dev/null and b/public/images/pokemon/variant/exp/94-mega_3.png differ
diff --git a/public/images/pokemon/variant/exp/962.json b/public/images/pokemon/variant/exp/962.json
new file mode 100644
index 00000000000..7f41b7aa01a
--- /dev/null
+++ b/public/images/pokemon/variant/exp/962.json
@@ -0,0 +1,86 @@
+{
+ "0": {
+ "030303": "030303",
+ "44393e": "3e1d26",
+ "997d85": "924f57",
+ "efe3e3": "f6cbc4",
+ "b6a2a7": "dd9f9d",
+ "000000": "000000",
+ "65545b": "60354a",
+ "191717": "191717",
+ "723139": "1f3078",
+ "ffffff": "fceff1",
+ "d65263": "4592c0",
+ "a03e4b": "2e6fa8",
+ "bcb1b9": "998482",
+ "050405": "050405",
+ "8c7987": "60354a",
+ "987d85": "987d85",
+ "987c84": "987c84",
+ "b5a1a6": "b5a1a6",
+ "66555c": "66555c",
+ "110e0f": "110e0f",
+ "efe2e3": "efe2e3",
+ "080607": "080607",
+ "eee2e2": "eee2e2",
+ "1b1919": "1b1919",
+ "b7a3a8": "b7a3a8",
+ "0d0a0c": "0d0a0c"
+ },
+ "1": {
+ "030303": "030303",
+ "44393e": "1e382a",
+ "997d85": "404b22",
+ "efe3e3": "e8e8c0",
+ "b6a2a7": "c6ca8e",
+ "000000": "000000",
+ "65545b": "395740",
+ "191717": "191717",
+ "723139": "3e1e1d",
+ "ffffff": "edf8e6",
+ "d65263": "b37e6f",
+ "a03e4b": "79433f",
+ "bcb1b9": "6a856a",
+ "050405": "050405",
+ "8c7987": "26452d",
+ "987d85": "987d85",
+ "987c84": "987c84",
+ "b5a1a6": "b5a1a6",
+ "66555c": "66555c",
+ "110e0f": "110e0f",
+ "efe2e3": "efe2e3",
+ "080607": "080607",
+ "eee2e2": "eee2e2",
+ "1b1919": "1b1919",
+ "b7a3a8": "b7a3a8",
+ "0d0a0c": "0d0a0c"
+ },
+ "2": {
+ "030303": "030303",
+ "44393e": "754156",
+ "997d85": "211f45",
+ "efe3e3": "67548a",
+ "b6a2a7": "453863",
+ "000000": "000000",
+ "65545b": "a5777f",
+ "191717": "191717",
+ "723139": "545151",
+ "ffffff": "f7e5d0",
+ "d65263": "aba7a8",
+ "a03e4b": "888685",
+ "bcb1b9": "a96c4b",
+ "050405": "050405",
+ "8c7987": "8c7987",
+ "987d85": "987d85",
+ "987c84": "987c84",
+ "b5a1a6": "b5a1a6",
+ "66555c": "66555c",
+ "110e0f": "110e0f",
+ "efe2e3": "efe2e3",
+ "080607": "080607",
+ "eee2e2": "eee2e2",
+ "1b1919": "1b1919",
+ "b7a3a8": "b7a3a8",
+ "0d0a0c": "0d0a0c"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/967.json b/public/images/pokemon/variant/exp/967.json
new file mode 100644
index 00000000000..1cbed5de98f
--- /dev/null
+++ b/public/images/pokemon/variant/exp/967.json
@@ -0,0 +1,19 @@
+{
+ "1": {
+ "1c2916": "272431",
+ "384a35": "464354",
+ "54654e": "67637a",
+ "b9b7b3": "b9b7b3",
+ "0f0f0f": "0f0f0f",
+ "f16b32": "bead9d",
+ "607d6d": "6e76a9",
+ "fcfcfc": "fcfcfc",
+ "75b07d": "9299c7",
+ "34453d": "444a71",
+ "4b565c": "4b565c",
+ "222328": "222328",
+ "323943": "323943",
+ "e2e9d7": "e2e9d7",
+ "993832": "625549"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/973.json b/public/images/pokemon/variant/exp/973.json
new file mode 100644
index 00000000000..7e035007dcc
--- /dev/null
+++ b/public/images/pokemon/variant/exp/973.json
@@ -0,0 +1,56 @@
+{
+ "0": {
+ "2c2936": "2c2936",
+ "211f28": "211f28",
+ "3c3946": "3c3946",
+ "ffffff": "fbf2f4",
+ "c4c1dc": "978f97",
+ "ff79b1": "d2bbbc",
+ "811f47": "905e5e",
+ "ffe393": "d28011",
+ "ffd55f": "e7a11f",
+ "3b3b3b": "3b3b3b",
+ "000000": "000000",
+ "760c38": "4e061f",
+ "c92f6e": "911522",
+ "d43e7c": "aa8d8d",
+ "9c174e": "710d2a",
+ "3d3b4e": "3d3b4e"
+ },
+ "1": {
+ "2c2936": "2c2936",
+ "211f28": "211f28",
+ "3c3946": "3c3946",
+ "ffffff": "ffffff",
+ "c4c1dc": "c4c1dc",
+ "ff79b1": "cb36b9",
+ "811f47": "430855",
+ "ffe393": "5fdd5b",
+ "ffd55f": "289c43",
+ "3b3b3b": "3b3b3b",
+ "000000": "000000",
+ "760c38": "660f71",
+ "c92f6e": "b11468",
+ "d43e7c": "911b92",
+ "9c174e": "700f49",
+ "3d3b4e": "3d3b4e"
+ },
+ "2": {
+ "2c2936": "2c2936",
+ "211f28": "211f28",
+ "3c3946": "3c3946",
+ "ffffff": "fbf2f4",
+ "c4c1dc": "978f97",
+ "ff79b1": "f29f5b",
+ "811f47": "943615",
+ "ffe393": "3175cb",
+ "ffd55f": "2c3ca6",
+ "3b3b3b": "3b3b3b",
+ "000000": "000000",
+ "760c38": "17167d",
+ "c92f6e": "3175cb",
+ "d43e7c": "d77433",
+ "9c174e": "2c3ca6",
+ "3d3b4e": "3d3b4e"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/987.json b/public/images/pokemon/variant/exp/987.json
new file mode 100644
index 00000000000..6456e7153a4
--- /dev/null
+++ b/public/images/pokemon/variant/exp/987.json
@@ -0,0 +1,50 @@
+{
+ "0": {
+ "8a378a": "9b490e",
+ "ee93e8": "ffdd67",
+ "0f0f0f": "0f0f0f",
+ "70bbb4": "5bb6ef",
+ "4a83a4": "387fa7",
+ "314a62": "244260",
+ "182941": "132443",
+ "621841": "71370f",
+ "de62a4": "ffc668",
+ "a4295a": "cc762f",
+ "b36cc1": "d3941a",
+ "eee662": "ffc7ff",
+ "f9f9f9": "f9f9f9",
+ "bd9431": "cb79dd"
+ },
+ "1": {
+ "8a378a": "0c8086",
+ "ee93e8": "3df7ed",
+ "0f0f0f": "0f0f0f",
+ "70bbb4": "eefff8",
+ "4a83a4": "a1c8db",
+ "314a62": "7396b4",
+ "182941": "2c384d",
+ "621841": "7b3c08",
+ "de62a4": "ffdf90",
+ "a4295a": "e28c27",
+ "b36cc1": "1dbdb9",
+ "eee662": "a6f0f8",
+ "f9f9f9": "f9f9f9",
+ "bd9431": "66d0e5"
+ },
+ "2": {
+ "8a378a": "5d4a2f",
+ "ee93e8": "fff7dd",
+ "0f0f0f": "0f0f0f",
+ "70bbb4": "f8d371",
+ "4a83a4": "e6aa47",
+ "314a62": "b56f2a",
+ "182941": "603305",
+ "621841": "5a0a05",
+ "de62a4": "e25038",
+ "a4295a": "a62a21",
+ "b36cc1": "eece8c",
+ "eee662": "a6f0f8",
+ "f9f9f9": "f9f9f9",
+ "bd9431": "66d0e5"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/999.json b/public/images/pokemon/variant/exp/999.json
new file mode 100644
index 00000000000..5d479fd01bd
--- /dev/null
+++ b/public/images/pokemon/variant/exp/999.json
@@ -0,0 +1,71 @@
+{
+ "0": {
+ "50441c": "38001c",
+ "fff49b": "5e86c2",
+ "e6d440": "d52d70",
+ "bfa33e": "bc1457",
+ "000000": "0f0f0f",
+ "1d1e21": "0f0f0f",
+ "802431": "4b0f01",
+ "323336": "531f03",
+ "b53345": "ab461e",
+ "545b6b": "1e2e60",
+ "f0f3f8": "757a8b",
+ "bac4d8": "757a8b",
+ "ab843f": "da8259",
+ "f7e077": "d52d70",
+ "edce3d": "d52d70",
+ "625f5d": "1e2e60",
+ "b9c1d3": "757a8b",
+ "9ba6bf": "5e86c2",
+ "c2a416": "da8259",
+ "5d6b8e": "1e2e60",
+ "998647": "da8259"
+ },
+ "1": {
+ "50441c": "131c3b",
+ "fff49b": "afd2ca",
+ "e6d440": "728295",
+ "bfa33e": "485466",
+ "000000": "0f0f0f",
+ "1d1e21": "0f0f0f",
+ "802431": "4f2e5c",
+ "323336": "1d2c54",
+ "b53345": "794e83",
+ "545b6b": "415073",
+ "f0f3f8": "bac4d8",
+ "bac4d8": "bac4d8",
+ "ab843f": "9c9cbe",
+ "f7e077": "728295",
+ "edce3d": "728295",
+ "625f5d": "415073",
+ "b9c1d3": "bac4d8",
+ "9ba6bf": "afd2ca",
+ "c2a416": "9c9cbe",
+ "5d6b8e": "415073",
+ "998647": "9c9cbe"
+ },
+ "2": {
+ "50441c": "0c1b40",
+ "fff49b": "dae0f3",
+ "e6d440": "4e85bf",
+ "bfa33e": "294f7e",
+ "000000": "0f0f0f",
+ "1d1e21": "0f0f0f",
+ "802431": "6d6594",
+ "323336": "212857",
+ "b53345": "bcb9d6",
+ "545b6b": "6467a8",
+ "f0f3f8": "bac4d8",
+ "bac4d8": "bac4d8",
+ "ab843f": "b6d0d7",
+ "f7e077": "4e85bf",
+ "edce3d": "4e85bf",
+ "625f5d": "6467a8",
+ "b9c1d3": "bac4d8",
+ "9ba6bf": "dae0f3",
+ "c2a416": "b6d0d7",
+ "5d6b8e": "6467a8",
+ "998647": "b6d0d7"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/1000.json b/public/images/pokemon/variant/exp/back/1000.json
new file mode 100644
index 00000000000..8149392d9b6
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/1000.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "b78234": "a64700",
+ "121212": "121212",
+ "e0b81a": "d05c31",
+ "f9d95b": "ee883f",
+ "623c20": "6d1906",
+ "ffffff": "ffb667",
+ "b4a45e": "ad283f",
+ "918344": "601030",
+ "762534": "5d0d05",
+ "9c3e43": "6d1906",
+ "323437": "531f03",
+ "545b6b": "8f4a14",
+ "0f0f0f": "0f0f0f"
+ },
+ "1": {
+ "b78234": "7a4e5d",
+ "121212": "121212",
+ "e0b81a": "96747e",
+ "f9d95b": "e1ced1",
+ "623c20": "622f43",
+ "ffffff": "f3e3e4",
+ "b4a45e": "485466",
+ "918344": "29354e",
+ "762534": "513a59",
+ "9c3e43": "7f6086",
+ "323437": "1d2c54",
+ "545b6b": "415073",
+ "0f0f0f": "0f0f0f"
+ },
+ "2": {
+ "b78234": "5a9aa3",
+ "121212": "121212",
+ "e0b81a": "89d1d6",
+ "f9d95b": "e5fffc",
+ "623c20": "3d717b",
+ "ffffff": "ffffff",
+ "b4a45e": "36465f",
+ "918344": "1f3149",
+ "762534": "547995",
+ "9c3e43": "7e93b0",
+ "323437": "212857",
+ "545b6b": "495890",
+ "0f0f0f": "0f0f0f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/181-mega.json b/public/images/pokemon/variant/exp/back/181-mega.json
new file mode 100644
index 00000000000..8f48377fa33
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/181-mega.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "626a6a": "39585d",
+ "ffffff": "baebeb",
+ "101010": "101010",
+ "b4b4bd": "8ebabe",
+ "c54100": "d53691",
+ "835a31": "553168",
+ "cd8b10": "74418f",
+ "e6e6e6": "baebeb",
+ "ffc510": "9f62b0",
+ "ffee4a": "d19bd8",
+ "000000": "101010",
+ "8b2000": "b12173",
+ "ff6200": "ee74c1",
+ "5a0000": "b12173"
+ },
+ "2": {
+ "626a6a": "5d412a",
+ "ffffff": "fff1d0",
+ "101010": "101010",
+ "b4b4bd": "ebbb78",
+ "c54100": "d26b00",
+ "835a31": "49200d",
+ "cd8b10": "884626",
+ "e6e6e6": "fff1d0",
+ "ffc510": "af673b",
+ "ffee4a": "cd895d",
+ "000000": "101010",
+ "8b2000": "a23c00",
+ "ff6200": "ffab34",
+ "5a0000": "a23c00"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/303-mega.json b/public/images/pokemon/variant/exp/back/303-mega.json
new file mode 100644
index 00000000000..476ffab4228
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/303-mega.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "000000": "000000",
+ "737373": "347c7d",
+ "9ca494": "4fa285",
+ "4a4a4a": "193e49",
+ "7b5a29": "6b5424",
+ "ffc55a": "d6c491",
+ "ffffff": "ffffff",
+ "cdcdcd": "cdcdcd",
+ "984868": "b43929",
+ "b86088": "ff625a",
+ "de9441": "de9441",
+ "484848": "484848",
+ "9c4a6a": "23445e",
+ "bd628b": "397189",
+ "732041": "162843"
+ },
+ "2": {
+ "000000": "000000",
+ "737373": "347c7d",
+ "9ca494": "4fa285",
+ "4a4a4a": "193e49",
+ "7b5a29": "6b5424",
+ "ffc55a": "d6c491",
+ "ffffff": "ffffff",
+ "cdcdcd": "cdcdcd",
+ "984868": "b43929",
+ "b86088": "ff625a",
+ "de9441": "bc8a52",
+ "484848": "484848",
+ "9c4a6a": "23445e",
+ "bd628b": "397189",
+ "732041": "162843"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/334-mega.json b/public/images/pokemon/variant/exp/back/334-mega.json
new file mode 100644
index 00000000000..bff0b37f966
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/334-mega.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "acb4c5": "312f8c",
+ "73739c": "391768",
+ "ffffff": "7c99df",
+ "cdcde6": "52459e",
+ "dee6ee": "6362d3",
+ "486072": "462a66",
+ "000000": "101010",
+ "1098c8": "947dcf",
+ "283858": "462a66",
+ "58c0e0": "947dcf"
+ },
+ "2": {
+ "acb4c5": "dd555a",
+ "73739c": "b22f3f",
+ "ffffff": "ffddb4",
+ "cdcde6": "dd766d",
+ "dee6ee": "ec996c",
+ "486072": "771743",
+ "000000": "101010",
+ "1098c8": "cb457d",
+ "283858": "771743",
+ "58c0e0": "cb457d"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/384-mega.json b/public/images/pokemon/variant/exp/back/384-mega.json
new file mode 100644
index 00000000000..016c044b27f
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/384-mega.json
@@ -0,0 +1,32 @@
+{
+ "1": {
+ "fbe27e": "90f25d",
+ "fc9436": "3dc62f",
+ "836231": "064c1e",
+ "010101": "010101",
+ "f6de00": "4ff869",
+ "c5a400": "27c750",
+ "3d7d6d": "66637b",
+ "36b075": "b3aec1",
+ "22523e": "333554",
+ "e4b629": "27c750",
+ "60d293": "e4e0ee",
+ "3f3f3f": "333554",
+ "fcfcfc": "fcfcfc"
+ },
+ "2": {
+ "fbe27e": "17e2d6",
+ "fc9436": "098faf",
+ "836231": "121d31",
+ "010101": "010101",
+ "f6de00": "17e2d6",
+ "c5a400": "098faf",
+ "3d7d6d": "84120f",
+ "36b075": "ce3f2d",
+ "22523e": "650f04",
+ "e4b629": "098faf",
+ "60d293": "f18c5e",
+ "3f3f3f": "380100",
+ "fcfcfc": "fcfcfc"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/4264.json b/public/images/pokemon/variant/exp/back/4264.json
new file mode 100644
index 00000000000..8aec39c06cf
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/4264.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "010101": "010101",
+ "abadaf": "95c090",
+ "797570": "579666",
+ "414141": "1c8155",
+ "1c1917": "1c1917",
+ "f5f5f6": "f5ffea",
+ "bc3065": "d414dd",
+ "322c29": "01473a",
+ "ff4e89": "ff69fa",
+ "68696a": "27323a",
+ "949496": "3d494e",
+ "000000": "000000"
+ },
+ "2": {
+ "010101": "010101",
+ "abadaf": "1e1a3b",
+ "797570": "302373",
+ "414141": "7c4cd6",
+ "1c1917": "1c1917",
+ "f5f5f6": "342d4c",
+ "bc3065": "0099ce",
+ "322c29": "412991",
+ "ff4e89": "54f1ff",
+ "68696a": "2a1b4e",
+ "949496": "554576",
+ "000000": "000000"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/445-mega.json b/public/images/pokemon/variant/exp/back/445-mega.json
new file mode 100644
index 00000000000..8020a5f4255
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/445-mega.json
@@ -0,0 +1,68 @@
+{
+ "0": {
+ "292952": "061638",
+ "282850": "061638",
+ "5a62ac": "33719e",
+ "41418b": "19446e",
+ "404088": "19446e",
+ "5860a8": "33719e",
+ "7878c8": "65a2d5",
+ "101010": "101010",
+ "c09010": "3aadc5",
+ "f8d018": "42d6de",
+ "b83840": "b23219",
+ "ffffff": "ffffff",
+ "707880": "707880",
+ "c0c8d0": "c0c8d0",
+ "e04830": "ec642c",
+ "581000": "502209",
+ "7b7bcd": "65a2d5",
+ "c5cdd5": "c5cdd5",
+ "737b83": "737b83",
+ "000000": "101010"
+ },
+ "1": {
+ "292952": "632f1b",
+ "282850": "632f1b",
+ "5a62ac": "deae7a",
+ "41418b": "b67252",
+ "404088": "b67252",
+ "5860a8": "deae7a",
+ "7878c8": "f2d8aa",
+ "101010": "101010",
+ "c09010": "255dd7",
+ "f8d018": "4caaff",
+ "b83840": "9fb6bf",
+ "ffffff": "ffffff",
+ "707880": "707880",
+ "c0c8d0": "c0c8d0",
+ "e04830": "dce8e8",
+ "581000": "393648",
+ "7b7bcd": "f2d8aa",
+ "c5cdd5": "c5cdd5",
+ "737b83": "737b83",
+ "000000": "101010"
+ },
+ "2": {
+ "292952": "051a2e",
+ "282850": "051a2e",
+ "5a62ac": "2f434b",
+ "41418b": "152c3b",
+ "404088": "152c3b",
+ "5860a8": "2f434b",
+ "7878c8": "689099",
+ "101010": "101010",
+ "c09010": "23b8a8",
+ "f8d018": "6fe6a3",
+ "b83840": "b23219",
+ "ffffff": "ffffff",
+ "707880": "707880",
+ "c0c8d0": "c0c8d0",
+ "e04830": "ec642c",
+ "581000": "521000",
+ "7b7bcd": "689099",
+ "c5cdd5": "c5cdd5",
+ "737b83": "737b83",
+ "000000": "101010"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/6549.json b/public/images/pokemon/variant/exp/back/6549.json
new file mode 100644
index 00000000000..4c50a4187b3
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/6549.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "70365a": "29547d",
+ "ff84bd": "73bad9",
+ "101010": "101010",
+ "bd59a2": "5094c0",
+ "315a31": "5a5a2c",
+ "bda452": "77909a",
+ "ffde41": "b6c7cc",
+ "39ac39": "bfd17f",
+ "526229": "80152b",
+ "ffbbdb": "b5ddea",
+ "fdfdfd": "fdfdfd",
+ "4a834a": "8e954d",
+ "9cb462": "bd2d40",
+ "c5ee7b": "ef5755",
+ "cdc5bd": "cdc5bd"
+ },
+ "2": {
+ "70365a": "8a1a3c",
+ "ff84bd": "e8617a",
+ "101010": "101010",
+ "bd59a2": "d64065",
+ "315a31": "643312",
+ "bda452": "bda452",
+ "ffde41": "ffde41",
+ "39ac39": "ebc460",
+ "526229": "351c49",
+ "ffbbdb": "f38e9c",
+ "fdfdfd": "fdfdfd",
+ "4a834a": "9d7d45",
+ "9cb462": "5d3576",
+ "c5ee7b": "834c9b",
+ "cdc5bd": "cdc5bd"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/6570.json b/public/images/pokemon/variant/exp/back/6570.json
new file mode 100644
index 00000000000..80ca72eccaa
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/6570.json
@@ -0,0 +1,32 @@
+{
+ "0": {
+ "942429": "09523d",
+ "d53a3e": "1c7f54",
+ "5f0002": "033431",
+ "f07376": "3cbc5f",
+ "4a4d53": "6f4332",
+ "f7acae": "79d38d",
+ "fafafa": "f0decd",
+ "101010": "101010",
+ "b3b3bb": "c6ab99",
+ "928d96": "995d3e",
+ "cbcfd8": "d79568",
+ "a7484f": "176b4c",
+ "6d4d62": "813059"
+ },
+ "1": {
+ "942429": "9e111f",
+ "d53a3e": "e8512a",
+ "5f0002": "5d0019",
+ "f07376": "ff6d26",
+ "4a4d53": "3b2b4f",
+ "f7acae": "ffd291",
+ "fafafa": "efd9d9",
+ "101010": "101010",
+ "b3b3bb": "d6b7b1",
+ "928d96": "504b6a",
+ "cbcfd8": "7b7897",
+ "a7484f": "b2282d",
+ "6d4d62": "bfa9ab"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/6571.json b/public/images/pokemon/variant/exp/back/6571.json
new file mode 100644
index 00000000000..d678782e9fc
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/6571.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "942429": "4a1921",
+ "101010": "101010",
+ "d53a3e": "782d41",
+ "928d96": "4a4759",
+ "f07376": "b44d63",
+ "f7acae": "ce646c",
+ "fafafa": "e1d2d2",
+ "b3b3bb": "c3a5a8",
+ "4a4d53": "262231",
+ "a7484f": "883955",
+ "5f0002": "330814",
+ "cbcfd8": "737185",
+ "4b163b": "4b163b",
+ "6d4d62": "6d4d62"
+ },
+ "2": {
+ "942429": "143130",
+ "101010": "101010",
+ "d53a3e": "2e625a",
+ "928d96": "885f49",
+ "f07376": "4e867b",
+ "f7acae": "6aa899",
+ "fafafa": "f0decd",
+ "b3b3bb": "c6ab99",
+ "4a4d53": "411c1a",
+ "a7484f": "2a6062",
+ "5f0002": "082226",
+ "cbcfd8": "bc9072",
+ "4b163b": "4b163b",
+ "6d4d62": "c2589c"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/6705.json b/public/images/pokemon/variant/exp/back/6705.json
new file mode 100644
index 00000000000..a4e3b52f015
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/6705.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "807380": "b93f84",
+ "f2daf2": "fbb3d2",
+ "4d454d": "8a2166",
+ "bfacbf": "e56ca6",
+ "367456": "0c5474",
+ "50ab89": "197497",
+ "101010": "101010",
+ "60606c": "1f1233",
+ "c5cce0": "513981",
+ "aeb5c6": "442967",
+ "949aab": "301848",
+ "e3e8f4": "f2e4ff"
+ },
+ "2": {
+ "807380": "2b736f",
+ "f2daf2": "9cead8",
+ "4d454d": "194f51",
+ "bfacbf": "5db6a9",
+ "367456": "842401",
+ "50ab89": "a34205",
+ "101010": "101010",
+ "60606c": "042329",
+ "c5cce0": "176463",
+ "aeb5c6": "0d484a",
+ "949aab": "073338",
+ "e3e8f4": "e3e8f4"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/6706_2.json b/public/images/pokemon/variant/exp/back/6706_2.json
new file mode 100644
index 00000000000..5c916aeb664
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/6706_2.json
@@ -0,0 +1,776 @@
+{
+ "textures": [
+ {
+ "image": "6706_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 358,
+ "h": 358
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 84,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 84,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 84,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 84,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 84,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 84,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 83,
+ "h": 70
+ },
+ "frame": {
+ "x": 167,
+ "y": 0,
+ "w": 83,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 83,
+ "h": 70
+ },
+ "frame": {
+ "x": 167,
+ "y": 0,
+ "w": 83,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 83,
+ "h": 70
+ },
+ "frame": {
+ "x": 250,
+ "y": 0,
+ "w": 83,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 83,
+ "h": 70
+ },
+ "frame": {
+ "x": 250,
+ "y": 0,
+ "w": 83,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 167,
+ "y": 70,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 167,
+ "y": 70,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 83,
+ "y": 72,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 83,
+ "y": 72,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 249,
+ "y": 70,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 249,
+ "y": 70,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 214,
+ "w": 81,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 214,
+ "w": 81,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 73
+ },
+ "frame": {
+ "x": 81,
+ "y": 214,
+ "w": 81,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 73
+ },
+ "frame": {
+ "x": 81,
+ "y": 214,
+ "w": 81,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 165,
+ "y": 143,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 165,
+ "y": 143,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 247,
+ "y": 143,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 247,
+ "y": 143,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 80,
+ "h": 73
+ },
+ "frame": {
+ "x": 162,
+ "y": 215,
+ "w": 80,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 80,
+ "h": 73
+ },
+ "frame": {
+ "x": 162,
+ "y": 215,
+ "w": 80,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 81,
+ "h": 70
+ },
+ "frame": {
+ "x": 162,
+ "y": 288,
+ "w": 81,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 81,
+ "h": 70
+ },
+ "frame": {
+ "x": 162,
+ "y": 288,
+ "w": 81,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 80,
+ "h": 73
+ },
+ "frame": {
+ "x": 242,
+ "y": 215,
+ "w": 80,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 80,
+ "h": 73
+ },
+ "frame": {
+ "x": 242,
+ "y": 215,
+ "w": 80,
+ "h": 73
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:5d65e2c5a6a97b7c7014a175ce3592af:3255e87f637a475d82734fc7d93baf71:d60cc2e5ae2bd18de8ee3ab0649593ee$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/6706_2.png b/public/images/pokemon/variant/exp/back/6706_2.png
new file mode 100644
index 00000000000..cb793478420
Binary files /dev/null and b/public/images/pokemon/variant/exp/back/6706_2.png differ
diff --git a/public/images/pokemon/variant/exp/back/6706_3.json b/public/images/pokemon/variant/exp/back/6706_3.json
new file mode 100644
index 00000000000..3bb1dc426b2
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/6706_3.json
@@ -0,0 +1,776 @@
+{
+ "textures": [
+ {
+ "image": "6706_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 358,
+ "h": 358
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 84,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 84,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 4,
+ "w": 84,
+ "h": 69
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 84,
+ "h": 69
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 84,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 84,
+ "y": 0,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0034.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 83,
+ "h": 72
+ },
+ "frame": {
+ "x": 0,
+ "y": 69,
+ "w": 83,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 83,
+ "h": 70
+ },
+ "frame": {
+ "x": 167,
+ "y": 0,
+ "w": 83,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 83,
+ "h": 70
+ },
+ "frame": {
+ "x": 167,
+ "y": 0,
+ "w": 83,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0035.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 83,
+ "h": 70
+ },
+ "frame": {
+ "x": 250,
+ "y": 0,
+ "w": 83,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0036.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 3,
+ "w": 83,
+ "h": 70
+ },
+ "frame": {
+ "x": 250,
+ "y": 0,
+ "w": 83,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 167,
+ "y": 70,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 167,
+ "y": 70,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0013.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 83,
+ "y": 72,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0014.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 83,
+ "y": 72,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0025.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0026.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0027.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 141,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0032.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 249,
+ "y": 70,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0033.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 82,
+ "h": 73
+ },
+ "frame": {
+ "x": 249,
+ "y": 70,
+ "w": 82,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 214,
+ "w": 81,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 73
+ },
+ "frame": {
+ "x": 0,
+ "y": 214,
+ "w": 81,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0017.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0018.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 0,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0028.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 73
+ },
+ "frame": {
+ "x": 81,
+ "y": 214,
+ "w": 81,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0029.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 81,
+ "h": 73
+ },
+ "frame": {
+ "x": 81,
+ "y": 214,
+ "w": 81,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0021.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0022.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 81,
+ "h": 71
+ },
+ "frame": {
+ "x": 81,
+ "y": 287,
+ "w": 81,
+ "h": 71
+ }
+ },
+ {
+ "filename": "0015.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 165,
+ "y": 143,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0016.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 165,
+ "y": 143,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0023.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 247,
+ "y": 143,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0024.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 82,
+ "h": 72
+ },
+ "frame": {
+ "x": 247,
+ "y": 143,
+ "w": 82,
+ "h": 72
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 80,
+ "h": 73
+ },
+ "frame": {
+ "x": 162,
+ "y": 215,
+ "w": 80,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 80,
+ "h": 73
+ },
+ "frame": {
+ "x": 162,
+ "y": 215,
+ "w": 80,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0019.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 81,
+ "h": 70
+ },
+ "frame": {
+ "x": 162,
+ "y": 288,
+ "w": 81,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0020.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 81,
+ "h": 70
+ },
+ "frame": {
+ "x": 162,
+ "y": 288,
+ "w": 81,
+ "h": 70
+ }
+ },
+ {
+ "filename": "0030.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 80,
+ "h": 73
+ },
+ "frame": {
+ "x": 242,
+ "y": 215,
+ "w": 80,
+ "h": 73
+ }
+ },
+ {
+ "filename": "0031.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 86,
+ "h": 73
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 80,
+ "h": 73
+ },
+ "frame": {
+ "x": 242,
+ "y": 215,
+ "w": 80,
+ "h": 73
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:5d65e2c5a6a97b7c7014a175ce3592af:3255e87f637a475d82734fc7d93baf71:d60cc2e5ae2bd18de8ee3ab0649593ee$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/6706_3.png b/public/images/pokemon/variant/exp/back/6706_3.png
new file mode 100644
index 00000000000..6390c20799f
Binary files /dev/null and b/public/images/pokemon/variant/exp/back/6706_3.png differ
diff --git a/public/images/pokemon/variant/exp/back/700.json b/public/images/pokemon/variant/exp/back/700.json
new file mode 100644
index 00000000000..4b65fb00405
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/700.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "107090": "c72537",
+ "af4f6f": "452f89",
+ "7fcfdf": "ff9a68",
+ "ffaebb": "c7a6ee",
+ "101010": "101010",
+ "807070": "5c6889",
+ "ef6f8f": "996cd2",
+ "ffffff": "f7f5ff",
+ "ddcccc": "c3c5d9",
+ "6f8faf": "eb5244"
+ },
+ "2": {
+ "107090": "c72537",
+ "af4f6f": "197d46",
+ "7fcfdf": "ff9a68",
+ "ffaebb": "7dec9d",
+ "101010": "101010",
+ "807070": "7f5c89",
+ "ef6f8f": "5dae7d",
+ "ffffff": "fff5fc",
+ "ddcccc": "d9c3d6",
+ "6f8faf": "eb5244"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/704.json b/public/images/pokemon/variant/exp/back/704.json
new file mode 100644
index 00000000000..179c06d54ac
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/704.json
@@ -0,0 +1,26 @@
+{
+ "1": {
+ "766fa6": "7d699d",
+ "010202": "101010",
+ "6f5e80": "4e4094",
+ "e0d3e0": "fbb3d2",
+ "bbafc4": "da75a5",
+ "2f6b38": "033c55",
+ "a497c2": "da75a5",
+ "74d457": "348fa6",
+ "3da84d": "185d83",
+ "3f3d5e": "033c55"
+ },
+ "2": {
+ "766fa6": "2f5d6f",
+ "010202": "101010",
+ "6f5e80": "274159",
+ "e0d3e0": "92d8c8",
+ "bbafc4": "5f8d86",
+ "2f6b38": "681b00",
+ "a497c2": "5f8d86",
+ "74d457": "bb7935",
+ "3da84d": "a34205",
+ "3f3d5e": "681b00"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/705.json b/public/images/pokemon/variant/exp/back/705.json
new file mode 100644
index 00000000000..93f270c6976
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/705.json
@@ -0,0 +1,28 @@
+{
+ "1": {
+ "807380": "b93f84",
+ "f2daf2": "fbb3d2",
+ "101010": "101010",
+ "4d454d": "8a2166",
+ "bfacbf": "ca719c",
+ "66cc52": "197497",
+ "b6f2aa": "197497",
+ "4d993d": "0c5474",
+ "665980": "4e4094",
+ "b8a1e5": "c7a1e5",
+ "8f7db3": "8b69c3"
+ },
+ "2": {
+ "807380": "20615e",
+ "f2daf2": "9cead8",
+ "101010": "101010",
+ "4d454d": "124143",
+ "bfacbf": "4e9b8f",
+ "66cc52": "a34205",
+ "b6f2aa": "a34205",
+ "4d993d": "842401",
+ "665980": "274159",
+ "b8a1e5": "4a9699",
+ "8f7db3": "2f667c"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/706.json b/public/images/pokemon/variant/exp/back/706.json
new file mode 100644
index 00000000000..c14e7e8a123
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/706.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "4d454d": "8a2166",
+ "807380": "b24c86",
+ "bfacbf": "cd7aa1",
+ "f2daf2": "f1a4c5",
+ "101010": "101010",
+ "998a99": "b24c86",
+ "fefefe": "f8f8f8",
+ "4d993d": "197497",
+ "336629": "0c5474",
+ "66cc52": "3aa8c4",
+ "8f7db3": "8b69c3",
+ "b8a1e5": "c7a1e5",
+ "665980": "4e4094",
+ "b6f2aa": "63cee1"
+ },
+ "2": {
+ "4d454d": "0e4043",
+ "807380": "194f51",
+ "bfacbf": "559b91",
+ "f2daf2": "9cead8",
+ "101010": "101010",
+ "998a99": "2b736f",
+ "fefefe": "f8f8f8",
+ "4d993d": "a34205",
+ "336629": "842401",
+ "66cc52": "d27e26",
+ "8f7db3": "273b4e",
+ "b8a1e5": "2f667c",
+ "665980": "172f46",
+ "b6f2aa": "f7af58"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/708.json b/public/images/pokemon/variant/exp/back/708.json
new file mode 100644
index 00000000000..c1048af4c17
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/708.json
@@ -0,0 +1,59 @@
+{
+ "0": {
+ "1a1a1c": "1a1a1c",
+ "686665": "646085",
+ "103222": "802c26",
+ "221b17": "221b17",
+ "090606": "090606",
+ "4ab38e": "e55045",
+ "38956f": "e55045",
+ "ab9074": "d9d9d9",
+ "4e4e4e": "494e5b",
+ "917860": "d9d9d9",
+ "424244": "2b303c",
+ "78604c": "a6a6a6",
+ "6b5442": "676767",
+ "5f4939": "595959",
+ "4f2a09": "292929",
+ "6c4513": "595959",
+ "353638": "353638"
+ },
+ "1": {
+ "1a1a1c": "1a1a1c",
+ "686665": "646085",
+ "103222": "802c26",
+ "221b17": "221b17",
+ "090606": "090606",
+ "4ab38e": "a14743",
+ "38956f": "a14743",
+ "ab9074": "7c808c",
+ "4e4e4e": "494e5b",
+ "917860": "7c808c",
+ "424244": "2b303c",
+ "78604c": "575a6a",
+ "6b5442": "40435a",
+ "5f4939": "36384f",
+ "4f2a09": "292929",
+ "6c4513": "36384f",
+ "353638": "353638"
+ },
+ "2": {
+ "1a1a1c": "1a1a1c",
+ "686665": "ccc3cf",
+ "103222": "a94079",
+ "221b17": "221b17",
+ "090606": "090606",
+ "4ab38e": "da7ea8",
+ "38956f": "da7ea8",
+ "ab9074": "7e5658",
+ "4e4e4e": "9c92a4",
+ "917860": "7e5658",
+ "424244": "6f5f80",
+ "78604c": "56323a",
+ "6b5442": "47232b",
+ "5f4939": "31161d",
+ "4f2a09": "250e14",
+ "6c4513": "31161d",
+ "353638": "57496b"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/709.json b/public/images/pokemon/variant/exp/back/709.json
new file mode 100644
index 00000000000..5203e4d0e29
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/709.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "3f2f1f": "3f3f3f",
+ "1f3f2f": "802626",
+ "101010": "101010",
+ "cf9f6f": "d9d9d9",
+ "1f9f5f": "e54545",
+ "2f6f4f": "b33636",
+ "9f6f3f": "a6a6a6",
+ "6f4f2f": "808080",
+ "33333f": "262626"
+ },
+ "1": {
+ "3f2f1f": "262741",
+ "1f3f2f": "361f1b",
+ "101010": "101010",
+ "cf9f6f": "7c808c",
+ "1f9f5f": "907f76",
+ "2f6f4f": "4d362e",
+ "9f6f3f": "48475b",
+ "6f4f2f": "36384f",
+ "33333f": "722023"
+ },
+ "2": {
+ "3f2f1f": "3f2f1f",
+ "1f3f2f": "761d52",
+ "101010": "101010",
+ "cf9f6f": "7e5658",
+ "1f9f5f": "da7ea8",
+ "2f6f4f": "a94079",
+ "9f6f3f": "56323a",
+ "6f4f2f": "31161d",
+ "33333f": "6f5f80"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/710.json b/public/images/pokemon/variant/exp/back/710.json
new file mode 100644
index 00000000000..974195f1850
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/710.json
@@ -0,0 +1,34 @@
+{
+ "1": {
+ "392e28": "213a22",
+ "6c5c53": "599752",
+ "594b40": "478243",
+ "000000": "000000",
+ "4e4137": "478243",
+ "201a17": "201a17",
+ "2c241f": "2c241f",
+ "6d5a52": "599752",
+ "41342c": "478243",
+ "cc7571": "404040",
+ "964941": "333333",
+ "f4aa9f": "595959",
+ "673434": "213a22",
+ "b55b57": "333333"
+ },
+ "2": {
+ "392e28": "0e2218",
+ "6c5c53": "425947",
+ "594b40": "2a4031",
+ "000000": "000000",
+ "4e4137": "2a4031",
+ "201a17": "201a17",
+ "2c241f": "2c241f",
+ "6d5a52": "425947",
+ "41342c": "2a4031",
+ "cc7571": "ad3b33",
+ "964941": "9c2721",
+ "f4aa9f": "e56146",
+ "673434": "861613",
+ "b55b57": "9c2721"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/711.json b/public/images/pokemon/variant/exp/back/711.json
new file mode 100644
index 00000000000..76b5beb3ad8
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/711.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "101010": "101010",
+ "28211c": "202423",
+ "504338": "593a59",
+ "c6786e": "262626",
+ "25201b": "25201b",
+ "834037": "171717",
+ "e69586": "404040",
+ "f1ca99": "cea971",
+ "c09a69": "aa7e43"
+ },
+ "1": {
+ "101010": "101010",
+ "28211c": "202423",
+ "504338": "353631",
+ "c6786e": "325b34",
+ "25201b": "25201b",
+ "834037": "153f18",
+ "e69586": "4d7d4b",
+ "f1ca99": "ddcfb1",
+ "c09a69": "baa78d"
+ },
+ "2": {
+ "101010": "101010",
+ "28211c": "5e0b09",
+ "504338": "ad3b33",
+ "c6786e": "213c28",
+ "25201b": "25201b",
+ "834037": "102316",
+ "e69586": "36593d",
+ "f1ca99": "b57d52",
+ "c09a69": "9b613a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/720-unbound.json b/public/images/pokemon/variant/exp/back/720-unbound.json
new file mode 100644
index 00000000000..af874fa012d
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/720-unbound.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "582840": "620d00",
+ "cf4f8f": "cb5e23",
+ "9f3f6f": "902c0d",
+ "101010": "010101",
+ "4f6f7f": "725f4d",
+ "afcfdf": "c6bba8",
+ "302c2c": "3e162b",
+ "7f9faf": "958672",
+ "504c4c": "684252",
+ "7f5f1f": "414a79",
+ "bf9f3f": "9ca7d5",
+ "ffdf3f": "becef5"
+ },
+ "1": {
+ "582840": "280d46",
+ "cf4f8f": "753f9b",
+ "9f3f6f": "471c6b",
+ "101010": "010101",
+ "4f6f7f": "72496e",
+ "afcfdf": "c3aabe",
+ "302c2c": "632373",
+ "7f9faf": "997392",
+ "504c4c": "a947b4",
+ "7f5f1f": "853015",
+ "bf9f3f": "e2885a",
+ "ffdf3f": "ffc26a"
+ },
+ "2": {
+ "582840": "150933",
+ "cf4f8f": "35387c",
+ "9f3f6f": "1d1a4b",
+ "101010": "010101",
+ "4f6f7f": "345a54",
+ "afcfdf": "a1c4c3",
+ "302c2c": "1c2433",
+ "7f9faf": "5c827d",
+ "504c4c": "304757",
+ "7f5f1f": "682b16",
+ "bf9f3f": "b05d2d",
+ "ffdf3f": "ed9b42"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/720.json b/public/images/pokemon/variant/exp/back/720.json
new file mode 100644
index 00000000000..c4d2c0c70c9
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/720.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "8c3f59": "620d00",
+ "ff73a2": "cb5e23",
+ "101010": "101010",
+ "8a8a99": "684252",
+ "cc5c81": "902c0d",
+ "676773": "3e162b",
+ "807126": "414a79",
+ "f8f8f8": "f3feff",
+ "ffe14c": "c5deec",
+ "ccb43d": "9cafdd",
+ "b8b8cc": "cc9b3c",
+ "dadaf2": "ffdb73"
+ },
+ "1": {
+ "8c3f59": "280d46",
+ "ff73a2": "753f9b",
+ "101010": "101010",
+ "8a8a99": "a947b4",
+ "cc5c81": "471c6b",
+ "676773": "632373",
+ "807126": "853015",
+ "f8f8f8": "fff0e8",
+ "ffe14c": "ffc26a",
+ "ccb43d": "eb7037",
+ "b8b8cc": "ca79bd",
+ "dadaf2": "f7bae9"
+ },
+ "2": {
+ "8c3f59": "150933",
+ "ff73a2": "35387c",
+ "101010": "101010",
+ "8a8a99": "304757",
+ "cc5c81": "1d1a4b",
+ "676773": "1c2433",
+ "807126": "682b16",
+ "f8f8f8": "ffffde",
+ "ffe14c": "ffc26a",
+ "ccb43d": "b05d2d",
+ "b8b8cc": "9e8fbb",
+ "dadaf2": "d5cce5"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/802.json b/public/images/pokemon/variant/exp/back/802.json
new file mode 100644
index 00000000000..a432fd6bca3
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/802.json
@@ -0,0 +1,20 @@
+{
+ "0": {
+ "494949": "3a7e5d",
+ "686868": "76bc8f",
+ "2f2f2f": "084434",
+ "101010": "101010"
+ },
+ "1": {
+ "494949": "2f3079",
+ "686868": "515aad",
+ "2f2f2f": "17145e",
+ "101010": "101010"
+ },
+ "2": {
+ "494949": "97123b",
+ "686868": "ce3e63",
+ "2f2f2f": "5a0423",
+ "101010": "101010"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/856.json b/public/images/pokemon/variant/exp/back/856.json
new file mode 100644
index 00000000000..3d245b74324
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/856.json
@@ -0,0 +1,24 @@
+{
+ "1": {
+ "727ab1": "1d4a3b",
+ "c8e9ff": "5ec183",
+ "181818": "181818",
+ "acbfdf": "3b9665",
+ "bb6a99": "043232",
+ "f9d5da": "298675",
+ "fbe6e9": "60b581",
+ "fefefe": "a5e8be",
+ "dca5bd": "125a51"
+ },
+ "2": {
+ "727ab1": "6b0124",
+ "c8e9ff": "cb304d",
+ "181818": "181818",
+ "acbfdf": "a11437",
+ "bb6a99": "30163d",
+ "f9d5da": "523f73",
+ "fbe6e9": "b53859",
+ "fefefe": "e8627b",
+ "dca5bd": "3b2351"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/857_2.json b/public/images/pokemon/variant/exp/back/857_2.json
new file mode 100644
index 00000000000..4ff0c02d41a
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/857_2.json
@@ -0,0 +1,272 @@
+{
+ "textures": [
+ {
+ "image": "857_2.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 180,
+ "h": 180
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 63,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 63,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 63,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 63,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 63,
+ "h": 51
+ },
+ "frame": {
+ "x": 63,
+ "y": 0,
+ "w": 63,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 63,
+ "h": 50
+ },
+ "frame": {
+ "x": 63,
+ "y": 51,
+ "w": 63,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 61,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 61,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 61,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 61,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 60,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 105,
+ "w": 60,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 60,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 105,
+ "w": 60,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 60,
+ "y": 105,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 60,
+ "y": 105,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 60,
+ "h": 51
+ },
+ "frame": {
+ "x": 120,
+ "y": 101,
+ "w": 60,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 60,
+ "h": 51
+ },
+ "frame": {
+ "x": 120,
+ "y": 101,
+ "w": 60,
+ "h": 51
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:5019f5b583e47d134c9000a022d37139:d9578b43bbf42180883a75ee272db285:76d73294e4ff7ab8f96a631810e2dc62$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/857_2.png b/public/images/pokemon/variant/exp/back/857_2.png
new file mode 100644
index 00000000000..d6472911e31
Binary files /dev/null and b/public/images/pokemon/variant/exp/back/857_2.png differ
diff --git a/public/images/pokemon/variant/exp/back/857_3.json b/public/images/pokemon/variant/exp/back/857_3.json
new file mode 100644
index 00000000000..20fa2fa9764
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/857_3.json
@@ -0,0 +1,272 @@
+{
+ "textures": [
+ {
+ "image": "857_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 180,
+ "h": 180
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 63,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 63,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0008.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 63,
+ "h": 52
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 63,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 63,
+ "h": 51
+ },
+ "frame": {
+ "x": 63,
+ "y": 0,
+ "w": 63,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 3,
+ "w": 63,
+ "h": 50
+ },
+ "frame": {
+ "x": 63,
+ "y": 51,
+ "w": 63,
+ "h": 50
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 61,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 61,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0009.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 61,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 61,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 60,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 105,
+ "w": 60,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0010.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 60,
+ "h": 53
+ },
+ "frame": {
+ "x": 0,
+ "y": 105,
+ "w": 60,
+ "h": 53
+ }
+ },
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 60,
+ "y": 105,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0011.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 1,
+ "w": 60,
+ "h": 52
+ },
+ "frame": {
+ "x": 60,
+ "y": 105,
+ "w": 60,
+ "h": 52
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 60,
+ "h": 51
+ },
+ "frame": {
+ "x": 120,
+ "y": 101,
+ "w": 60,
+ "h": 51
+ }
+ },
+ {
+ "filename": "0012.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 64,
+ "h": 53
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 2,
+ "w": 60,
+ "h": 51
+ },
+ "frame": {
+ "x": 120,
+ "y": 101,
+ "w": 60,
+ "h": 51
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:5019f5b583e47d134c9000a022d37139:d9578b43bbf42180883a75ee272db285:76d73294e4ff7ab8f96a631810e2dc62$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/857_3.png b/public/images/pokemon/variant/exp/back/857_3.png
new file mode 100644
index 00000000000..27f39ebfaf9
Binary files /dev/null and b/public/images/pokemon/variant/exp/back/857_3.png differ
diff --git a/public/images/pokemon/variant/exp/back/858.json b/public/images/pokemon/variant/exp/back/858.json
new file mode 100644
index 00000000000..8bdfcf82426
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/858.json
@@ -0,0 +1,30 @@
+{
+ "1": {
+ "acbfdf": "3b9665",
+ "948fc2": "287b59",
+ "101010": "101010",
+ "c8e9ff": "5ec183",
+ "727ab1": "1d4a3b",
+ "d9cedb": "dec1c2",
+ "c15974": "043232",
+ "e489a0": "125a51",
+ "f5bac2": "298675",
+ "856d8b": "9c7a81",
+ "b4a2b7": "bf9ca0",
+ "fefefe": "f7e4e4"
+ },
+ "2": {
+ "acbfdf": "a11437",
+ "948fc2": "8c0e32",
+ "101010": "101010",
+ "c8e9ff": "cb304d",
+ "727ab1": "6b0124",
+ "d9cedb": "e4bcde",
+ "c15974": "30163d",
+ "e489a0": "3b2351",
+ "f5bac2": "523f73",
+ "856d8b": "976c95",
+ "b4a2b7": "bc93b7",
+ "fefefe": "ffecf9"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/872.json b/public/images/pokemon/variant/exp/back/872.json
new file mode 100644
index 00000000000..c7b73b39012
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/872.json
@@ -0,0 +1,32 @@
+{
+ "0": {
+ "7b8b9b": "345f5c",
+ "d8e9f0": "b7f1d6",
+ "f5fdff": "f5fdff",
+ "acc3cc": "669a8c",
+ "101010": "101010",
+ "695e77": "275e43",
+ "edeae0": "a6d6a6",
+ "b3a7c2": "73a878"
+ },
+ "1": {
+ "7b8b9b": "22504c",
+ "d8e9f0": "b6e7df",
+ "f5fdff": "f5fdff",
+ "acc3cc": "548e8f",
+ "101010": "101010",
+ "695e77": "354b63",
+ "edeae0": "c1ebf3",
+ "b3a7c2": "89a9be"
+ },
+ "2": {
+ "7b8b9b": "5a3993",
+ "d8e9f0": "d5c3ff",
+ "f5fdff": "f5fdff",
+ "acc3cc": "a66ac2",
+ "101010": "101010",
+ "695e77": "5f3465",
+ "edeae0": "e5a2da",
+ "b3a7c2": "a060a0"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/873.json b/public/images/pokemon/variant/exp/back/873.json
new file mode 100644
index 00000000000..b4856a86659
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/873.json
@@ -0,0 +1,26 @@
+{
+ "0": {
+ "b3b4bd": "73a878",
+ "747489": "547b58",
+ "e7e0e6": "a6d6a6",
+ "8f8f9f": "27532f",
+ "fdfdfd": "b7f1d7",
+ "101010": "101010"
+ },
+ "1": {
+ "b3b4bd": "92a9b8",
+ "747489": "556b7d",
+ "e7e0e6": "b6e7df",
+ "8f8f9f": "415366",
+ "fdfdfd": "eefffb",
+ "101010": "101010"
+ },
+ "2": {
+ "b3b4bd": "864c86",
+ "747489": "512d52",
+ "e7e0e6": "d78dcb",
+ "8f8f9f": "5f3465",
+ "fdfdfd": "d5c3ff",
+ "101010": "101010"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/877-hangry.json b/public/images/pokemon/variant/exp/back/877-hangry.json
new file mode 100644
index 00000000000..a4e19c34f67
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/877-hangry.json
@@ -0,0 +1,29 @@
+{
+ "0": {
+ "383634": "3a1010",
+ "101010": "101010",
+ "4f4b47": "952222",
+ "6c6c6c": "540606",
+ "6b3d96": "967f3d",
+ "493061": "3a2510",
+ "9958ce": "cebb58"
+ },
+ "1": {
+ "383634": "383634",
+ "101010": "101010",
+ "4f4b47": "3a3a3a",
+ "6c6c6c": "212020",
+ "6b3d96": "cb6333",
+ "493061": "a2512c",
+ "9958ce": "cb6333"
+ },
+ "2": {
+ "383634": "383634",
+ "101010": "101010",
+ "4f4b47": "4f4b47",
+ "6c6c6c": "6c6c6c",
+ "6b3d96": "568351",
+ "493061": "306135",
+ "9958ce": "7fba7f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/877.json b/public/images/pokemon/variant/exp/back/877.json
new file mode 100644
index 00000000000..2a26b83b98f
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/877.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "8a5e48": "383634",
+ "101010": "101010",
+ "383634": "383634",
+ "af7044": "4f4b47",
+ "6c6c6c": "6c6c6c",
+ "4f4b47": "4f4b47",
+ "cf9c66": "6c6c6c",
+ "d3b351": "8851d3",
+ "f4f489": "b689f4"
+ },
+ "1": {
+ "8a5e48": "2c439d",
+ "101010": "101010",
+ "383634": "383634",
+ "af7044": "86aaff",
+ "6c6c6c": "5c5e6d",
+ "4f4b47": "58666d",
+ "cf9c66": "7483ff",
+ "d3b351": "8b8853",
+ "f4f489": "fff98f"
+ },
+ "2": {
+ "8a5e48": "4f8a48",
+ "101010": "101010",
+ "383634": "383634",
+ "af7044": "71cf66",
+ "6c6c6c": "6c6c6c",
+ "4f4b47": "4f4b47",
+ "cf9c66": "a1f38b",
+ "d3b351": "b6b6b6",
+ "f4f489": "ffffff"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/885.json b/public/images/pokemon/variant/exp/back/885.json
new file mode 100644
index 00000000000..a03ef2a9a01
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/885.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "3a583c": "133056",
+ "fa5494": "efa93f",
+ "101010": "101010",
+ "cc4066": "ac7508",
+ "5f875a": "2f6c89",
+ "476b48": "20486e",
+ "78aa84": "479bb6",
+ "addcbc": "6accd6",
+ "822d44": "824100",
+ "eb4972": "ac7508",
+ "c4264e": "9c5f05"
+ },
+ "1": {
+ "3a583c": "2f040d",
+ "fa5494": "4590da",
+ "101010": "101010",
+ "cc4066": "244f9f",
+ "5f875a": "7d1f2c",
+ "476b48": "2f040d",
+ "78aa84": "b13b42",
+ "addcbc": "da6151",
+ "822d44": "071d61",
+ "eb4972": "234582",
+ "c4264e": "213464"
+ },
+ "2": {
+ "3a583c": "1f0c2c",
+ "fa5494": "68c7c4",
+ "101010": "101010",
+ "cc4066": "2a8286",
+ "5f875a": "3c2750",
+ "476b48": "231234",
+ "78aa84": "624c6f",
+ "addcbc": "927fa1",
+ "822d44": "00405b",
+ "eb4972": "126f79",
+ "c4264e": "08586a"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/886.json b/public/images/pokemon/variant/exp/back/886.json
new file mode 100644
index 00000000000..9b90d92a77a
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/886.json
@@ -0,0 +1,38 @@
+{
+ "0": {
+ "444e62": "2d365a",
+ "101010": "101010",
+ "addcbc": "6accd6",
+ "2c323f": "192250",
+ "5f875a": "2f6c89",
+ "566f89": "465272",
+ "fa5494": "efa93f",
+ "5b878c": "4c90a6",
+ "7fb3b1": "78c3cb",
+ "d5fffb": "d5fffb"
+ },
+ "1": {
+ "444e62": "4a1621",
+ "101010": "101010",
+ "addcbc": "da6151",
+ "2c323f": "2e080d",
+ "5f875a": "6b242e",
+ "566f89": "602034",
+ "fa5494": "4590da",
+ "5b878c": "7e2833",
+ "7fb3b1": "a94046",
+ "d5fffb": "ffb853"
+ },
+ "2": {
+ "444e62": "231b45",
+ "101010": "101010",
+ "addcbc": "927fa1",
+ "2c323f": "251b31",
+ "5f875a": "3c2750",
+ "566f89": "3b2e5d",
+ "fa5494": "60d1cd",
+ "5b878c": "6c4d85",
+ "7fb3b1": "8b659f",
+ "d5fffb": "d67ae7"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/887.json b/public/images/pokemon/variant/exp/back/887.json
new file mode 100644
index 00000000000..46e10fbf747
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/887.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "101010": "101010",
+ "2c323f": "192250",
+ "566f89": "46557b",
+ "444e62": "2c3867",
+ "cc4066": "8e611e",
+ "fa5494": "efa93f",
+ "ffe322": "ffcc48",
+ "308b86": "2f6c89",
+ "b5a36a": "b1aaa5",
+ "78d4cb": "6accd6",
+ "d5fffb": "9dfffa",
+ "386a70": "20486e",
+ "48a9b0": "479bb6"
+ },
+ "1": {
+ "101010": "101010",
+ "2c323f": "2e080d",
+ "566f89": "6c273d",
+ "444e62": "4a1621",
+ "cc4066": "374c74",
+ "fa5494": "4590da",
+ "ffe322": "4fffa4",
+ "308b86": "690f1b",
+ "b5a36a": "d2a76c",
+ "78d4cb": "b13b42",
+ "d5fffb": "ffb853",
+ "386a70": "490711",
+ "48a9b0": "8a212f"
+ },
+ "2": {
+ "101010": "101010",
+ "2c323f": "1b163f",
+ "566f89": "566f89",
+ "444e62": "332a59",
+ "cc4066": "2a666b",
+ "fa5494": "68c7c4",
+ "ffe322": "87ff46",
+ "308b86": "231234",
+ "b5a36a": "7b7a8c",
+ "78d4cb": "744e89",
+ "d5fffb": "976ae3",
+ "386a70": "1d0e33",
+ "48a9b0": "482962"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/94-mega.json b/public/images/pokemon/variant/exp/back/94-mega.json
new file mode 100644
index 00000000000..e6ff9747d89
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/94-mega.json
@@ -0,0 +1,35 @@
+{
+ "0": {
+ "101010": "101010",
+ "4d2a4d": "634b63",
+ "503f73": "d1bcd6",
+ "775499": "fcf4fc",
+ "9469bf": "fefefe",
+ "453159": "a89dc4",
+ "994c99": "6e99e4",
+ "cc47a0": "4c69c3",
+ "ff5991": "72e9f2"
+ },
+ "1": {
+ "101010": "101010",
+ "4d2a4d": "23131f",
+ "503f73": "511e3b",
+ "775499": "a44c73",
+ "9469bf": "c56f8a",
+ "453159": "3b132c",
+ "994c99": "994c99",
+ "cc47a0": "cc47a0",
+ "ff5991": "c1ea61"
+ },
+ "2": {
+ "101010": "101010",
+ "4d2a4d": "1a1320",
+ "503f73": "302433",
+ "775499": "3f324a",
+ "9469bf": "7b6888",
+ "453159": "2b1d2f",
+ "994c99": "5c4955",
+ "cc47a0": "9c392a",
+ "ff5991": "fae277"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/962.json b/public/images/pokemon/variant/exp/back/962.json
new file mode 100644
index 00000000000..860c4515df7
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/962.json
@@ -0,0 +1,32 @@
+{
+ "0": {
+ "0f0f0f": "0f0f0f",
+ "342930": "3e1d26",
+ "4a3942": "60354a",
+ "efe3e1": "f6cbc4",
+ "665b60": "924f57",
+ "b9aaaf": "dd9f9d",
+ "937d85": "b1686b",
+ "e64c62": "4592c0",
+ "993e49": "4473d2",
+ "501d25": "1f3078",
+ "fffbff": "fceff1",
+ "7b827b": "998482",
+ "a7aba7": "ddcac6"
+ },
+ "1": {
+ "0f0f0f": "0f0f0f",
+ "342930": "142e22",
+ "4a3942": "273c31",
+ "efe3e1": "e8e8c0",
+ "665b60": "395740",
+ "b9aaaf": "c6ca8e",
+ "937d85": "6b7e50",
+ "e64c62": "b37e6f",
+ "993e49": "79433f",
+ "501d25": "3e1e1d",
+ "fffbff": "edf8e6",
+ "7b827b": "6a856a",
+ "a7aba7": "98a798"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/962_3.json b/public/images/pokemon/variant/exp/back/962_3.json
new file mode 100644
index 00000000000..397453d3274
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/962_3.json
@@ -0,0 +1,167 @@
+{
+ "textures": [
+ {
+ "image": "962_3.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 224,
+ "h": 224
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "0003.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 101,
+ "h": 97
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 0,
+ "w": 82,
+ "h": 86
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 82,
+ "h": 86
+ }
+ },
+ {
+ "filename": "0002.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 101,
+ "h": 97
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 4,
+ "w": 87,
+ "h": 79
+ },
+ "frame": {
+ "x": 0,
+ "y": 86,
+ "w": 87,
+ "h": 79
+ }
+ },
+ {
+ "filename": "0001.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 101,
+ "h": 97
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 6,
+ "w": 92,
+ "h": 74
+ },
+ "frame": {
+ "x": 82,
+ "y": 0,
+ "w": 92,
+ "h": 74
+ }
+ },
+ {
+ "filename": "0006.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 101,
+ "h": 97
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 38,
+ "w": 91,
+ "h": 59
+ },
+ "frame": {
+ "x": 0,
+ "y": 165,
+ "w": 91,
+ "h": 59
+ }
+ },
+ {
+ "filename": "0007.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 101,
+ "h": 97
+ },
+ "spriteSourceSize": {
+ "x": 1,
+ "y": 36,
+ "w": 91,
+ "h": 60
+ },
+ "frame": {
+ "x": 87,
+ "y": 74,
+ "w": 91,
+ "h": 60
+ }
+ },
+ {
+ "filename": "0004.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 101,
+ "h": 97
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 41,
+ "w": 101,
+ "h": 41
+ },
+ "frame": {
+ "x": 91,
+ "y": 134,
+ "w": 101,
+ "h": 41
+ }
+ },
+ {
+ "filename": "0005.png",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 101,
+ "h": 97
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 40,
+ "w": 100,
+ "h": 38
+ },
+ "frame": {
+ "x": 91,
+ "y": 175,
+ "w": 100,
+ "h": 38
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:ee54d59ae73a6775b5d1d9b10f273445:828dff0b1dc45966e927a7a1419412f2:1e70eb3d02dd5c47565da4b5d26e2400$"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/962_3.png b/public/images/pokemon/variant/exp/back/962_3.png
new file mode 100644
index 00000000000..9356040a0e9
Binary files /dev/null and b/public/images/pokemon/variant/exp/back/962_3.png differ
diff --git a/public/images/pokemon/variant/exp/back/967.json b/public/images/pokemon/variant/exp/back/967.json
new file mode 100644
index 00000000000..8ba1f2c26c5
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/967.json
@@ -0,0 +1,17 @@
+{
+ "1": {
+ "384a35": "464354",
+ "0f0f0f": "0f0f0f",
+ "54654e": "67637a",
+ "b9b7b3": "b9b7b3",
+ "4b565c": "4b565c",
+ "1c2916": "272431",
+ "f16b32": "bead9d",
+ "34453d": "444a71",
+ "75b07d": "9299c7",
+ "607d6d": "6e76a9",
+ "222328": "222328",
+ "323943": "323943",
+ "e2e9d7": "e2e9d7"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/973.json b/public/images/pokemon/variant/exp/back/973.json
new file mode 100644
index 00000000000..505bed50b80
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/973.json
@@ -0,0 +1,44 @@
+{
+ "0": {
+ "811f47": "724f51",
+ "211f28": "000000",
+ "d43e7c": "aa8d8d",
+ "3c3946": "272636",
+ "2c2936": "272636",
+ "ffffff": "ffffff",
+ "760c38": "724f51",
+ "000000": "000000",
+ "ff79b1": "f0ddde",
+ "9c174e": "724f51",
+ "3d3b4e": "272636",
+ "c4c1dc": "bdaeb5"
+ },
+ "1": {
+ "811f47": "430855",
+ "211f28": "211f28",
+ "d43e7c": "911b92",
+ "3c3946": "3c3946",
+ "2c2936": "2c2936",
+ "ffffff": "ffffff",
+ "760c38": "660f71",
+ "000000": "000000",
+ "ff79b1": "cb36b9",
+ "9c174e": "3f0747",
+ "3d3b4e": "3d3b4e",
+ "c4c1dc": "c4c1dc"
+ },
+ "2": {
+ "811f47": "943615",
+ "211f28": "211f28",
+ "d43e7c": "d77433",
+ "3c3946": "3c3946",
+ "2c2936": "2c2936",
+ "ffffff": "fbf2f4",
+ "760c38": "17167d",
+ "000000": "000000",
+ "ff79b1": "fabe7d",
+ "9c174e": "2c3ca6",
+ "3d3b4e": "3d3b4e",
+ "c4c1dc": "978f97"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/987.json b/public/images/pokemon/variant/exp/back/987.json
new file mode 100644
index 00000000000..385a9eeb29f
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/987.json
@@ -0,0 +1,41 @@
+{
+ "0": {
+ "8a378a": "9b490e",
+ "ee93e8": "ffdd67",
+ "182941": "132443",
+ "4a83a4": "387fa7",
+ "b36cc1": "d3941a",
+ "0f0f0f": "0f0f0f",
+ "314a62": "244260",
+ "621841": "71370f",
+ "70bbb4": "f8d371",
+ "de62a4": "ffc668",
+ "a4295a": "cc762f"
+ },
+ "1": {
+ "8a378a": "0c8086",
+ "ee93e8": "3df7ed",
+ "182941": "244358",
+ "4a83a4": "a1c8db",
+ "b36cc1": "1dbdb9",
+ "0f0f0f": "0f0f0f",
+ "314a62": "7396b4",
+ "621841": "7b3c08",
+ "70bbb4": "70bbb4",
+ "de62a4": "ffdf90",
+ "a4295a": "e28c27"
+ },
+ "2": {
+ "8a378a": "5d4a2f",
+ "ee93e8": "fff7dd",
+ "182941": "603305",
+ "4a83a4": "e6aa47",
+ "b36cc1": "eece8c",
+ "0f0f0f": "0f0f0f",
+ "314a62": "b56f2a",
+ "621841": "5a0a05",
+ "70bbb4": "f8d371",
+ "de62a4": "e25038",
+ "a4295a": "a62a21"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/exp/back/999.json b/public/images/pokemon/variant/exp/back/999.json
new file mode 100644
index 00000000000..6850cf8a578
--- /dev/null
+++ b/public/images/pokemon/variant/exp/back/999.json
@@ -0,0 +1,47 @@
+{
+ "0": {
+ "4f4333": "38001c",
+ "ddc126": "d52d70",
+ "836c54": "760040",
+ "0f0f0f": "0f0f0f",
+ "323437": "142552",
+ "783a52": "492118",
+ "545b6b": "1e2e60",
+ "ac4454": "ab461e",
+ "bfa33e": "c11f67",
+ "7a82a9": "5e647a",
+ "745527": "38001c",
+ "a59227": "a44418",
+ "bac4d8": "757a8b"
+ },
+ "1": {
+ "4f4333": "131c3b",
+ "ddc126": "65768c",
+ "836c54": "29354e",
+ "0f0f0f": "0f0f0f",
+ "323437": "1d2c54",
+ "783a52": "4f2e5c",
+ "545b6b": "415073",
+ "ac4454": "794e83",
+ "bfa33e": "485466",
+ "7a82a9": "7a82a9",
+ "745527": "131c3b",
+ "a59227": "9c9cbe",
+ "bac4d8": "bac4d8"
+ },
+ "2": {
+ "4f4333": "0c1b40",
+ "ddc126": "326191",
+ "836c54": "152848",
+ "0f0f0f": "0f0f0f",
+ "323437": "212857",
+ "783a52": "6d6594",
+ "545b6b": "6467a8",
+ "ac4454": "bcb9d6",
+ "bfa33e": "294f7e",
+ "7a82a9": "7a82a9",
+ "745527": "0c1b40",
+ "a59227": "b6d0d7",
+ "bac4d8": "bac4d8"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/female/308.json b/public/images/pokemon/variant/female/308.json
new file mode 100644
index 00000000000..02dc68c8d60
--- /dev/null
+++ b/public/images/pokemon/variant/female/308.json
@@ -0,0 +1,36 @@
+{
+ "1": {
+ "84424a": "59141d",
+ "101010": "101010",
+ "e6738c": "8b2e2b",
+ "ef9ca5": "a53835",
+ "ce5a73": "83272c",
+ "52424a": "5a4357",
+ "dedede": "e0cdd9",
+ "8c848c": "8c848c",
+ "ada5ad": "966f8d",
+ "c5c5c5": "a88da0",
+ "f7de84": "ee9bd5",
+ "efbd5a": "ce5cb6",
+ "b54a5a": "83272c",
+ "ffffff": "ffffff",
+ "a57329": "722966"
+ },
+ "2": {
+ "84424a": "461f5d",
+ "101010": "101010",
+ "e6738c": "7d5187",
+ "ef9ca5": "a37aac",
+ "ce5a73": "71467d",
+ "52424a": "1f344a",
+ "dedede": "cbd0d6",
+ "8c848c": "8c848c",
+ "ada5ad": "6c7d9e",
+ "c5c5c5": "9faab9",
+ "f7de84": "5abbef",
+ "efbd5a": "3a8dca",
+ "b54a5a": "633971",
+ "ffffff": "ffffff",
+ "a57329": "205a9e"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/female/443.json b/public/images/pokemon/variant/female/443.json
new file mode 100644
index 00000000000..d1de70b1e26
--- /dev/null
+++ b/public/images/pokemon/variant/female/443.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "314252": "082963",
+ "5294ad": "1984c5",
+ "8cc5d6": "42a5f7",
+ "426b84": "085284",
+ "101010": "101921",
+ "42d6de": "42d6de",
+ "c5ced6": "c5ced6",
+ "3aadc5": "3aadc5",
+ "ffffff": "ffffff",
+ "5a6363": "5a6363",
+ "7b1910": "731029",
+ "ad3a10": "a57c10",
+ "de5a29": "e6c529",
+ "ce7373": "ce7373",
+ "5a1000": "524200"
+ },
+ "1": {
+ "314252": "400311",
+ "5294ad": "905647",
+ "8cc5d6": "e49f52",
+ "426b84": "522521",
+ "101010": "101921",
+ "42d6de": "54b0ff",
+ "c5ced6": "c5ced6",
+ "3aadc5": "2878e1",
+ "ffffff": "ffffff",
+ "5a6363": "5a6363",
+ "7b1910": "811c60",
+ "ad3a10": "92a9b2",
+ "de5a29": "d9f0f1",
+ "ce7373": "ff81d2",
+ "5a1000": "524200"
+ },
+ "2": {
+ "314252": "0e263c",
+ "5294ad": "4c5e66",
+ "8cc5d6": "8cb6bf",
+ "426b84": "223a4a",
+ "101010": "101921",
+ "42d6de": "6fe6a3",
+ "c5ced6": "c5ced6",
+ "3aadc5": "23b8a8",
+ "ffffff": "ffffff",
+ "5a6363": "5a6363",
+ "7b1910": "7b1a43",
+ "ad3a10": "be472f",
+ "de5a29": "dd845e",
+ "ce7373": "f17ec5",
+ "5a1000": "524200"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/female/444.json b/public/images/pokemon/variant/female/444.json
new file mode 100644
index 00000000000..c000a06a812
--- /dev/null
+++ b/public/images/pokemon/variant/female/444.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "102952": "091f4e",
+ "3a4a8c": "1e4b77",
+ "5a6bbd": "307fb8",
+ "8c8cbd": "3aadc5",
+ "b5bdf7": "42d6de",
+ "738cce": "59aaed",
+ "101010": "101921",
+ "ffff19": "fa845a",
+ "de9c19": "e53d3f",
+ "5a1000": "521000",
+ "ad314a": "ad7b08",
+ "c5ced6": "c5ced6",
+ "ffffff": "ffffff",
+ "de5a29": "f7b834",
+ "737b84": "737b84"
+ },
+ "1": {
+ "102952": "3d0a17",
+ "3a4a8c": "6f3633",
+ "5a6bbd": "a96051",
+ "8c8cbd": "255dd7",
+ "b5bdf7": "4caaff",
+ "738cce": "e9a36b",
+ "101010": "101921",
+ "ffff19": "ffe95c",
+ "de9c19": "d9900e",
+ "5a1000": "211e33",
+ "ad314a": "829ca6",
+ "c5ced6": "c5ced6",
+ "ffffff": "ffffff",
+ "de5a29": "c2dedf",
+ "737b84": "737b84"
+ },
+ "2": {
+ "102952": "092136",
+ "3a4a8c": "223a4a",
+ "5a6bbd": "3e5059",
+ "8c8cbd": "23b8a8",
+ "b5bdf7": "6fe6a3",
+ "738cce": "79a2ab",
+ "101010": "101921",
+ "ffff19": "62cbff",
+ "de9c19": "2c8bf7",
+ "5a1000": "521000",
+ "ad314a": "be472f",
+ "c5ced6": "c5ced6",
+ "ffffff": "ffffff",
+ "de5a29": "ee723e",
+ "737b84": "737b84"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon/variant/female/445.json b/public/images/pokemon/variant/female/445.json
new file mode 100644
index 00000000000..0dfa20b8d25
--- /dev/null
+++ b/public/images/pokemon/variant/female/445.json
@@ -0,0 +1,53 @@
+{
+ "0": {
+ "42428c": "1e4b77",
+ "7b7bce": "65a2d5",
+ "c59410": "3aadc5",
+ "292952": "091f4e",
+ "5a63ad": "33719e",
+ "ffd619": "42d6de",
+ "737b84": "737b84",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "6b3a5a": "6b4a29",
+ "bd737b": "bd737b",
+ "e64a31": "f7ac34",
+ "5a1000": "502209",
+ "bd3a42": "b2630f"
+ },
+ "1": {
+ "42428c": "af6e55",
+ "7b7bce": "f2d8aa",
+ "c59410": "255dd7",
+ "292952": "3d0a17",
+ "5a63ad": "deae7a",
+ "ffd619": "4caaff",
+ "737b84": "737b84",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "6b3a5a": "6b4a29",
+ "bd737b": "bd737b",
+ "e64a31": "dce8e8",
+ "5a1000": "393648",
+ "bd3a42": "9fb6bf"
+ },
+ "2": {
+ "42428c": "152c3b",
+ "7b7bce": "689099",
+ "c59410": "23b8a8",
+ "292952": "051a2e",
+ "5a63ad": "2f434b",
+ "ffd619": "6fe6a3",
+ "737b84": "737b84",
+ "101010": "101010",
+ "ffffff": "ffffff",
+ "c5ced6": "c5ced6",
+ "6b3a5a": "6b4a29",
+ "bd737b": "bd737b",
+ "e64a31": "ee723e",
+ "5a1000": "521000",
+ "bd3a42": "be472f"
+ }
+}
\ No newline at end of file
diff --git a/public/images/pokemon_icons_1v.json b/public/images/pokemon_icons_1v.json
new file mode 100644
index 00000000000..2947909f3a2
--- /dev/null
+++ b/public/images/pokemon_icons_1v.json
@@ -0,0 +1,1700 @@
+{
+ "textures": [
+ {
+ "image": "pokemon_icons_1v.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 236,
+ "h": 236
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "94-mega_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 36,
+ "h": 30
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 36,
+ "h": 30
+ }
+ },
+ {
+ "filename": "94-mega_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 36,
+ "h": 30
+ },
+ "frame": {
+ "x": 36,
+ "y": 0,
+ "w": 36,
+ "h": 30
+ }
+ },
+ {
+ "filename": "94-mega_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 0,
+ "w": 36,
+ "h": 30
+ },
+ "frame": {
+ "x": 72,
+ "y": 0,
+ "w": 36,
+ "h": 30
+ }
+ },
+ {
+ "filename": "94-gigantamax_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 34,
+ "h": 30
+ },
+ "frame": {
+ "x": 108,
+ "y": 0,
+ "w": 34,
+ "h": 30
+ }
+ },
+ {
+ "filename": "94-gigantamax_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 34,
+ "h": 30
+ },
+ "frame": {
+ "x": 142,
+ "y": 0,
+ "w": 34,
+ "h": 30
+ }
+ },
+ {
+ "filename": "94-gigantamax_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 34,
+ "h": 30
+ },
+ "frame": {
+ "x": 176,
+ "y": 0,
+ "w": 34,
+ "h": 30
+ }
+ },
+ {
+ "filename": "52-gigantamax_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 25,
+ "h": 30
+ },
+ "frame": {
+ "x": 210,
+ "y": 0,
+ "w": 25,
+ "h": 30
+ }
+ },
+ {
+ "filename": "131-gigantamax_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 33,
+ "h": 29
+ },
+ "frame": {
+ "x": 0,
+ "y": 30,
+ "w": 33,
+ "h": 29
+ }
+ },
+ {
+ "filename": "131-gigantamax_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 33,
+ "h": 29
+ },
+ "frame": {
+ "x": 0,
+ "y": 59,
+ "w": 33,
+ "h": 29
+ }
+ },
+ {
+ "filename": "93_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 32,
+ "h": 28
+ },
+ "frame": {
+ "x": 0,
+ "y": 88,
+ "w": 32,
+ "h": 28
+ }
+ },
+ {
+ "filename": "93_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 32,
+ "h": 28
+ },
+ "frame": {
+ "x": 0,
+ "y": 116,
+ "w": 32,
+ "h": 28
+ }
+ },
+ {
+ "filename": "93_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 2,
+ "y": 1,
+ "w": 32,
+ "h": 28
+ },
+ "frame": {
+ "x": 0,
+ "y": 144,
+ "w": 32,
+ "h": 28
+ }
+ },
+ {
+ "filename": "52-gigantamax_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 25,
+ "h": 30
+ },
+ "frame": {
+ "x": 0,
+ "y": 172,
+ "w": 25,
+ "h": 30
+ }
+ },
+ {
+ "filename": "52-gigantamax_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 25,
+ "h": 30
+ },
+ "frame": {
+ "x": 0,
+ "y": 202,
+ "w": 25,
+ "h": 30
+ }
+ },
+ {
+ "filename": "71_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 4,
+ "w": 30,
+ "h": 25
+ },
+ "frame": {
+ "x": 25,
+ "y": 172,
+ "w": 30,
+ "h": 25
+ }
+ },
+ {
+ "filename": "94_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 3,
+ "w": 26,
+ "h": 26
+ },
+ "frame": {
+ "x": 25,
+ "y": 197,
+ "w": 26,
+ "h": 26
+ }
+ },
+ {
+ "filename": "94_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 3,
+ "w": 26,
+ "h": 26
+ },
+ "frame": {
+ "x": 51,
+ "y": 197,
+ "w": 26,
+ "h": 26
+ }
+ },
+ {
+ "filename": "94_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 3,
+ "w": 26,
+ "h": 26
+ },
+ "frame": {
+ "x": 32,
+ "y": 88,
+ "w": 26,
+ "h": 26
+ }
+ },
+ {
+ "filename": "151_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 25,
+ "h": 27
+ },
+ "frame": {
+ "x": 33,
+ "y": 30,
+ "w": 25,
+ "h": 27
+ }
+ },
+ {
+ "filename": "151_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 25,
+ "h": 27
+ },
+ "frame": {
+ "x": 33,
+ "y": 57,
+ "w": 25,
+ "h": 27
+ }
+ },
+ {
+ "filename": "86_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 4,
+ "w": 27,
+ "h": 25
+ },
+ "frame": {
+ "x": 32,
+ "y": 114,
+ "w": 27,
+ "h": 25
+ }
+ },
+ {
+ "filename": "86_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 4,
+ "w": 27,
+ "h": 25
+ },
+ "frame": {
+ "x": 32,
+ "y": 139,
+ "w": 27,
+ "h": 25
+ }
+ },
+ {
+ "filename": "86_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 4,
+ "w": 27,
+ "h": 25
+ },
+ "frame": {
+ "x": 55,
+ "y": 164,
+ "w": 27,
+ "h": 25
+ }
+ },
+ {
+ "filename": "87_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 4,
+ "w": 27,
+ "h": 25
+ },
+ "frame": {
+ "x": 77,
+ "y": 189,
+ "w": 27,
+ "h": 25
+ }
+ },
+ {
+ "filename": "145_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 6,
+ "w": 31,
+ "h": 21
+ },
+ "frame": {
+ "x": 77,
+ "y": 214,
+ "w": 31,
+ "h": 21
+ }
+ },
+ {
+ "filename": "87_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 4,
+ "w": 27,
+ "h": 25
+ },
+ "frame": {
+ "x": 58,
+ "y": 30,
+ "w": 27,
+ "h": 25
+ }
+ },
+ {
+ "filename": "87_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 4,
+ "w": 27,
+ "h": 25
+ },
+ "frame": {
+ "x": 58,
+ "y": 55,
+ "w": 27,
+ "h": 25
+ }
+ },
+ {
+ "filename": "145_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 6,
+ "w": 31,
+ "h": 21
+ },
+ "frame": {
+ "x": 58,
+ "y": 80,
+ "w": 31,
+ "h": 21
+ }
+ },
+ {
+ "filename": "145_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 6,
+ "w": 31,
+ "h": 21
+ },
+ "frame": {
+ "x": 85,
+ "y": 30,
+ "w": 31,
+ "h": 21
+ }
+ },
+ {
+ "filename": "149_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 5,
+ "w": 27,
+ "h": 24
+ },
+ "frame": {
+ "x": 85,
+ "y": 51,
+ "w": 27,
+ "h": 24
+ }
+ },
+ {
+ "filename": "149_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 5,
+ "w": 27,
+ "h": 24
+ },
+ "frame": {
+ "x": 59,
+ "y": 101,
+ "w": 27,
+ "h": 24
+ }
+ },
+ {
+ "filename": "144_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 29,
+ "h": 22
+ },
+ "frame": {
+ "x": 59,
+ "y": 125,
+ "w": 29,
+ "h": 22
+ }
+ },
+ {
+ "filename": "69_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 22,
+ "h": 17
+ },
+ "frame": {
+ "x": 59,
+ "y": 147,
+ "w": 22,
+ "h": 17
+ }
+ },
+ {
+ "filename": "144_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 29,
+ "h": 22
+ },
+ "frame": {
+ "x": 86,
+ "y": 101,
+ "w": 29,
+ "h": 22
+ }
+ },
+ {
+ "filename": "144_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 29,
+ "h": 22
+ },
+ "frame": {
+ "x": 89,
+ "y": 75,
+ "w": 29,
+ "h": 22
+ }
+ },
+ {
+ "filename": "53_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 25,
+ "h": 24
+ },
+ "frame": {
+ "x": 112,
+ "y": 51,
+ "w": 25,
+ "h": 24
+ }
+ },
+ {
+ "filename": "146_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 7,
+ "w": 30,
+ "h": 20
+ },
+ "frame": {
+ "x": 116,
+ "y": 30,
+ "w": 30,
+ "h": 20
+ }
+ },
+ {
+ "filename": "53_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 25,
+ "h": 24
+ },
+ "frame": {
+ "x": 82,
+ "y": 147,
+ "w": 25,
+ "h": 24
+ }
+ },
+ {
+ "filename": "53_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 25,
+ "h": 24
+ },
+ "frame": {
+ "x": 88,
+ "y": 123,
+ "w": 25,
+ "h": 24
+ }
+ },
+ {
+ "filename": "146_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 7,
+ "w": 30,
+ "h": 20
+ },
+ "frame": {
+ "x": 104,
+ "y": 171,
+ "w": 30,
+ "h": 20
+ }
+ },
+ {
+ "filename": "146_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 7,
+ "w": 30,
+ "h": 20
+ },
+ "frame": {
+ "x": 104,
+ "y": 191,
+ "w": 30,
+ "h": 20
+ }
+ },
+ {
+ "filename": "131_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 26,
+ "h": 23
+ },
+ "frame": {
+ "x": 107,
+ "y": 147,
+ "w": 26,
+ "h": 23
+ }
+ },
+ {
+ "filename": "131_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 26,
+ "h": 23
+ },
+ "frame": {
+ "x": 113,
+ "y": 123,
+ "w": 26,
+ "h": 23
+ }
+ },
+ {
+ "filename": "47_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 133,
+ "y": 146,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "47_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 115,
+ "y": 97,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "46_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 118,
+ "y": 75,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "47_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 137,
+ "y": 50,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "147_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 9,
+ "w": 22,
+ "h": 20
+ },
+ "frame": {
+ "x": 146,
+ "y": 30,
+ "w": 22,
+ "h": 20
+ }
+ },
+ {
+ "filename": "148_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 108,
+ "y": 211,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "148_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 132,
+ "y": 211,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "92_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 134,
+ "y": 170,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "92_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 156,
+ "y": 193,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "147_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 9,
+ "w": 22,
+ "h": 20
+ },
+ "frame": {
+ "x": 156,
+ "y": 216,
+ "w": 22,
+ "h": 20
+ }
+ },
+ {
+ "filename": "133_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 9,
+ "w": 19,
+ "h": 20
+ },
+ "frame": {
+ "x": 178,
+ "y": 216,
+ "w": 19,
+ "h": 20
+ }
+ },
+ {
+ "filename": "92_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 139,
+ "y": 97,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "134_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 142,
+ "y": 74,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "134_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 161,
+ "y": 50,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "133_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 9,
+ "w": 19,
+ "h": 20
+ },
+ "frame": {
+ "x": 168,
+ "y": 30,
+ "w": 19,
+ "h": 20
+ }
+ },
+ {
+ "filename": "136_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 139,
+ "y": 120,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "136_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 157,
+ "y": 143,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "136_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 159,
+ "y": 166,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "36_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 4,
+ "w": 22,
+ "h": 25
+ },
+ "frame": {
+ "x": 181,
+ "y": 189,
+ "w": 22,
+ "h": 25
+ }
+ },
+ {
+ "filename": "46_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 197,
+ "y": 214,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "150_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 4,
+ "w": 22,
+ "h": 25
+ },
+ "frame": {
+ "x": 164,
+ "y": 97,
+ "w": 22,
+ "h": 25
+ }
+ },
+ {
+ "filename": "123_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 8,
+ "w": 21,
+ "h": 21
+ },
+ "frame": {
+ "x": 164,
+ "y": 122,
+ "w": 21,
+ "h": 21
+ }
+ },
+ {
+ "filename": "52_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 6,
+ "w": 23,
+ "h": 23
+ },
+ "frame": {
+ "x": 182,
+ "y": 143,
+ "w": 23,
+ "h": 23
+ }
+ },
+ {
+ "filename": "123_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 8,
+ "w": 21,
+ "h": 21
+ },
+ "frame": {
+ "x": 185,
+ "y": 122,
+ "w": 21,
+ "h": 21
+ }
+ },
+ {
+ "filename": "52_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 6,
+ "w": 23,
+ "h": 23
+ },
+ "frame": {
+ "x": 184,
+ "y": 166,
+ "w": 23,
+ "h": 23
+ }
+ },
+ {
+ "filename": "52_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 6,
+ "w": 23,
+ "h": 23
+ },
+ "frame": {
+ "x": 205,
+ "y": 143,
+ "w": 23,
+ "h": 23
+ }
+ },
+ {
+ "filename": "150_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 4,
+ "w": 22,
+ "h": 25
+ },
+ "frame": {
+ "x": 203,
+ "y": 189,
+ "w": 22,
+ "h": 25
+ }
+ },
+ {
+ "filename": "46_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 207,
+ "y": 166,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "70_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 167,
+ "y": 73,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "135_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 22,
+ "h": 23
+ },
+ "frame": {
+ "x": 186,
+ "y": 50,
+ "w": 22,
+ "h": 23
+ }
+ },
+ {
+ "filename": "135_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 22,
+ "h": 23
+ },
+ "frame": {
+ "x": 186,
+ "y": 95,
+ "w": 22,
+ "h": 23
+ }
+ },
+ {
+ "filename": "135_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 22,
+ "h": 23
+ },
+ "frame": {
+ "x": 206,
+ "y": 118,
+ "w": 22,
+ "h": 23
+ }
+ },
+ {
+ "filename": "113_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 7,
+ "w": 21,
+ "h": 22
+ },
+ "frame": {
+ "x": 191,
+ "y": 73,
+ "w": 21,
+ "h": 22
+ }
+ },
+ {
+ "filename": "113_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 7,
+ "w": 21,
+ "h": 22
+ },
+ "frame": {
+ "x": 208,
+ "y": 95,
+ "w": 21,
+ "h": 22
+ }
+ },
+ {
+ "filename": "113_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 7,
+ "w": 21,
+ "h": 22
+ },
+ "frame": {
+ "x": 208,
+ "y": 30,
+ "w": 21,
+ "h": 22
+ }
+ },
+ {
+ "filename": "123_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 8,
+ "w": 21,
+ "h": 21
+ },
+ "frame": {
+ "x": 208,
+ "y": 52,
+ "w": 21,
+ "h": 21
+ }
+ },
+ {
+ "filename": "35_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 20,
+ "h": 21
+ },
+ "frame": {
+ "x": 212,
+ "y": 73,
+ "w": 20,
+ "h": 21
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:9c3e9a6bc3ccc54e83847b1b82609b16:5746474b7532e99711726e259e441d35:2fc2d7db306a93e9369e20846ccef45c$"
+ }
+}
diff --git a/public/images/pokemon_icons_1v.png b/public/images/pokemon_icons_1v.png
new file mode 100644
index 00000000000..f649ff9c23f
Binary files /dev/null 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
new file mode 100644
index 00000000000..fc45e4aa651
--- /dev/null
+++ b/public/images/pokemon_icons_2v.json
@@ -0,0 +1,881 @@
+{
+ "textures": [
+ {
+ "image": "pokemon_icons_2v.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 172,
+ "h": 172
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "249_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 34,
+ "h": 30
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 34,
+ "h": 30
+ }
+ },
+ {
+ "filename": "249_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 34,
+ "h": 30
+ },
+ "frame": {
+ "x": 34,
+ "y": 0,
+ "w": 34,
+ "h": 30
+ }
+ },
+ {
+ "filename": "250_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 31,
+ "h": 30
+ },
+ "frame": {
+ "x": 68,
+ "y": 0,
+ "w": 31,
+ "h": 30
+ }
+ },
+ {
+ "filename": "250_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 31,
+ "h": 30
+ },
+ "frame": {
+ "x": 99,
+ "y": 0,
+ "w": 31,
+ "h": 30
+ }
+ },
+ {
+ "filename": "212-mega_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 30,
+ "h": 30
+ },
+ "frame": {
+ "x": 130,
+ "y": 0,
+ "w": 30,
+ "h": 30
+ }
+ },
+ {
+ "filename": "212-mega_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 30,
+ "h": 30
+ },
+ "frame": {
+ "x": 0,
+ "y": 30,
+ "w": 30,
+ "h": 30
+ }
+ },
+ {
+ "filename": "212-mega_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 30,
+ "h": 30
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 30,
+ "h": 30
+ }
+ },
+ {
+ "filename": "181-mega_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 1,
+ "w": 31,
+ "h": 28
+ },
+ "frame": {
+ "x": 0,
+ "y": 90,
+ "w": 31,
+ "h": 28
+ }
+ },
+ {
+ "filename": "181-mega_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 1,
+ "w": 31,
+ "h": 28
+ },
+ "frame": {
+ "x": 30,
+ "y": 30,
+ "w": 31,
+ "h": 28
+ }
+ },
+ {
+ "filename": "243_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 32,
+ "h": 27
+ },
+ "frame": {
+ "x": 30,
+ "y": 58,
+ "w": 32,
+ "h": 27
+ }
+ },
+ {
+ "filename": "243_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 2,
+ "w": 32,
+ "h": 27
+ },
+ "frame": {
+ "x": 61,
+ "y": 30,
+ "w": 32,
+ "h": 27
+ }
+ },
+ {
+ "filename": "245_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 2,
+ "w": 31,
+ "h": 27
+ },
+ "frame": {
+ "x": 0,
+ "y": 118,
+ "w": 31,
+ "h": 27
+ }
+ },
+ {
+ "filename": "245_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 2,
+ "w": 31,
+ "h": 27
+ },
+ "frame": {
+ "x": 0,
+ "y": 145,
+ "w": 31,
+ "h": 27
+ }
+ },
+ {
+ "filename": "212_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 28,
+ "h": 29
+ },
+ "frame": {
+ "x": 93,
+ "y": 30,
+ "w": 28,
+ "h": 29
+ }
+ },
+ {
+ "filename": "212_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 28,
+ "h": 29
+ },
+ "frame": {
+ "x": 62,
+ "y": 57,
+ "w": 28,
+ "h": 29
+ }
+ },
+ {
+ "filename": "212_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 0,
+ "w": 28,
+ "h": 29
+ },
+ "frame": {
+ "x": 31,
+ "y": 85,
+ "w": 28,
+ "h": 29
+ }
+ },
+ {
+ "filename": "244_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 3,
+ "w": 27,
+ "h": 26
+ },
+ "frame": {
+ "x": 121,
+ "y": 30,
+ "w": 27,
+ "h": 26
+ }
+ },
+ {
+ "filename": "181_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 2,
+ "w": 22,
+ "h": 27
+ },
+ "frame": {
+ "x": 148,
+ "y": 30,
+ "w": 22,
+ "h": 27
+ }
+ },
+ {
+ "filename": "244_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 3,
+ "w": 27,
+ "h": 26
+ },
+ "frame": {
+ "x": 121,
+ "y": 56,
+ "w": 27,
+ "h": 26
+ }
+ },
+ {
+ "filename": "181_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 2,
+ "w": 22,
+ "h": 27
+ },
+ "frame": {
+ "x": 148,
+ "y": 57,
+ "w": 22,
+ "h": 27
+ }
+ },
+ {
+ "filename": "196_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 29,
+ "h": 23
+ },
+ "frame": {
+ "x": 90,
+ "y": 59,
+ "w": 29,
+ "h": 23
+ }
+ },
+ {
+ "filename": "196_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 29,
+ "h": 23
+ },
+ "frame": {
+ "x": 90,
+ "y": 82,
+ "w": 29,
+ "h": 23
+ }
+ },
+ {
+ "filename": "196_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 29,
+ "h": 23
+ },
+ "frame": {
+ "x": 119,
+ "y": 82,
+ "w": 29,
+ "h": 23
+ }
+ },
+ {
+ "filename": "242_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 5,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 148,
+ "y": 84,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "242_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 5,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 59,
+ "y": 86,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "242_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 5,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 83,
+ "y": 105,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "180_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 5,
+ "w": 23,
+ "h": 24
+ },
+ "frame": {
+ "x": 59,
+ "y": 110,
+ "w": 23,
+ "h": 24
+ }
+ },
+ {
+ "filename": "180_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 5,
+ "w": 23,
+ "h": 24
+ },
+ "frame": {
+ "x": 31,
+ "y": 114,
+ "w": 23,
+ "h": 24
+ }
+ },
+ {
+ "filename": "179_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 107,
+ "y": 105,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "251_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 8,
+ "w": 16,
+ "h": 20
+ },
+ "frame": {
+ "x": 131,
+ "y": 105,
+ "w": 16,
+ "h": 20
+ }
+ },
+ {
+ "filename": "179_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 147,
+ "y": 108,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "251_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 8,
+ "w": 16,
+ "h": 20
+ },
+ "frame": {
+ "x": 131,
+ "y": 125,
+ "w": 16,
+ "h": 20
+ }
+ },
+ {
+ "filename": "176_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 6,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 147,
+ "y": 130,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "176_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 6,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 107,
+ "y": 127,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "176_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 6,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 126,
+ "y": 145,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "200_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 18,
+ "h": 21
+ },
+ "frame": {
+ "x": 82,
+ "y": 129,
+ "w": 18,
+ "h": 21
+ }
+ },
+ {
+ "filename": "200_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 18,
+ "h": 21
+ },
+ "frame": {
+ "x": 54,
+ "y": 134,
+ "w": 18,
+ "h": 21
+ }
+ },
+ {
+ "filename": "200_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 18,
+ "h": 21
+ },
+ "frame": {
+ "x": 31,
+ "y": 138,
+ "w": 18,
+ "h": 21
+ }
+ },
+ {
+ "filename": "175_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 9,
+ "w": 18,
+ "h": 20
+ },
+ "frame": {
+ "x": 72,
+ "y": 150,
+ "w": 18,
+ "h": 20
+ }
+ },
+ {
+ "filename": "175_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 9,
+ "w": 18,
+ "h": 20
+ },
+ "frame": {
+ "x": 90,
+ "y": 150,
+ "w": 18,
+ "h": 20
+ }
+ },
+ {
+ "filename": "175_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 9,
+ "w": 18,
+ "h": 20
+ },
+ "frame": {
+ "x": 108,
+ "y": 150,
+ "w": 18,
+ "h": 20
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:6310029c7c952ab1cbe44afc3457e17e:1a12301221d88d32514ea2c936da81f3:63b368599cdc6e139499267117e91cd5$"
+ }
+}
diff --git a/public/images/pokemon_icons_2v.png b/public/images/pokemon_icons_2v.png
new file mode 100644
index 00000000000..9eb0d6334b9
Binary files /dev/null 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
new file mode 100644
index 00000000000..b37c5421396
--- /dev/null
+++ b/public/images/pokemon_icons_3v.json
@@ -0,0 +1,839 @@
+{
+ "textures": [
+ {
+ "image": "pokemon_icons_3v.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 161,
+ "h": 161
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "384-mega_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 27
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 27
+ }
+ },
+ {
+ "filename": "384-mega_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 2,
+ "w": 40,
+ "h": 27
+ },
+ "frame": {
+ "x": 0,
+ "y": 27,
+ "w": 40,
+ "h": 27
+ }
+ },
+ {
+ "filename": "384_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 33,
+ "h": 29
+ },
+ "frame": {
+ "x": 40,
+ "y": 0,
+ "w": 33,
+ "h": 29
+ }
+ },
+ {
+ "filename": "384_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 33,
+ "h": 29
+ },
+ "frame": {
+ "x": 0,
+ "y": 54,
+ "w": 33,
+ "h": 29
+ }
+ },
+ {
+ "filename": "303-mega_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 32,
+ "h": 28
+ },
+ "frame": {
+ "x": 73,
+ "y": 0,
+ "w": 32,
+ "h": 28
+ }
+ },
+ {
+ "filename": "303-mega_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 32,
+ "h": 28
+ },
+ "frame": {
+ "x": 0,
+ "y": 83,
+ "w": 32,
+ "h": 28
+ }
+ },
+ {
+ "filename": "303-mega_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 32,
+ "h": 28
+ },
+ "frame": {
+ "x": 105,
+ "y": 0,
+ "w": 32,
+ "h": 28
+ }
+ },
+ {
+ "filename": "264_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 137,
+ "y": 0,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "308-mega_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 31,
+ "h": 29
+ },
+ "frame": {
+ "x": 0,
+ "y": 111,
+ "w": 31,
+ "h": 29
+ }
+ },
+ {
+ "filename": "328_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 8,
+ "w": 21,
+ "h": 21
+ },
+ "frame": {
+ "x": 0,
+ "y": 140,
+ "w": 21,
+ "h": 21
+ }
+ },
+ {
+ "filename": "308-mega_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 1,
+ "w": 31,
+ "h": 29
+ },
+ "frame": {
+ "x": 40,
+ "y": 29,
+ "w": 31,
+ "h": 29
+ }
+ },
+ {
+ "filename": "264_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 137,
+ "y": 22,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "328_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 8,
+ "w": 21,
+ "h": 21
+ },
+ "frame": {
+ "x": 21,
+ "y": 140,
+ "w": 21,
+ "h": 21
+ }
+ },
+ {
+ "filename": "330_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 4,
+ "w": 29,
+ "h": 25
+ },
+ "frame": {
+ "x": 33,
+ "y": 58,
+ "w": 29,
+ "h": 25
+ }
+ },
+ {
+ "filename": "330_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 4,
+ "w": 29,
+ "h": 25
+ },
+ "frame": {
+ "x": 32,
+ "y": 83,
+ "w": 29,
+ "h": 25
+ }
+ },
+ {
+ "filename": "286_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 2,
+ "w": 25,
+ "h": 27
+ },
+ "frame": {
+ "x": 62,
+ "y": 58,
+ "w": 25,
+ "h": 27
+ }
+ },
+ {
+ "filename": "303_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 28,
+ "h": 23
+ },
+ "frame": {
+ "x": 61,
+ "y": 85,
+ "w": 28,
+ "h": 23
+ }
+ },
+ {
+ "filename": "334-mega_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 4,
+ "w": 29,
+ "h": 25
+ },
+ "frame": {
+ "x": 32,
+ "y": 108,
+ "w": 29,
+ "h": 25
+ }
+ },
+ {
+ "filename": "334-mega_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 4,
+ "w": 29,
+ "h": 25
+ },
+ "frame": {
+ "x": 61,
+ "y": 108,
+ "w": 29,
+ "h": 25
+ }
+ },
+ {
+ "filename": "303_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 28,
+ "h": 23
+ },
+ "frame": {
+ "x": 42,
+ "y": 133,
+ "w": 28,
+ "h": 23
+ }
+ },
+ {
+ "filename": "303_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 28,
+ "h": 23
+ },
+ "frame": {
+ "x": 70,
+ "y": 133,
+ "w": 28,
+ "h": 23
+ }
+ },
+ {
+ "filename": "308_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 2,
+ "w": 19,
+ "h": 27
+ },
+ "frame": {
+ "x": 71,
+ "y": 29,
+ "w": 19,
+ "h": 27
+ }
+ },
+ {
+ "filename": "329_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 27,
+ "h": 22
+ },
+ "frame": {
+ "x": 90,
+ "y": 28,
+ "w": 27,
+ "h": 22
+ }
+ },
+ {
+ "filename": "285_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 12,
+ "w": 20,
+ "h": 17
+ },
+ "frame": {
+ "x": 117,
+ "y": 28,
+ "w": 20,
+ "h": 17
+ }
+ },
+ {
+ "filename": "385_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 137,
+ "y": 44,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "329_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 27,
+ "h": 22
+ },
+ "frame": {
+ "x": 90,
+ "y": 50,
+ "w": 27,
+ "h": 22
+ }
+ },
+ {
+ "filename": "308_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 2,
+ "w": 19,
+ "h": 27
+ },
+ "frame": {
+ "x": 117,
+ "y": 45,
+ "w": 19,
+ "h": 27
+ }
+ },
+ {
+ "filename": "385_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 89,
+ "y": 72,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "385_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 113,
+ "y": 72,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "263_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 11,
+ "w": 24,
+ "h": 18
+ },
+ "frame": {
+ "x": 137,
+ "y": 66,
+ "w": 24,
+ "h": 18
+ }
+ },
+ {
+ "filename": "263_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 11,
+ "w": 24,
+ "h": 18
+ },
+ "frame": {
+ "x": 137,
+ "y": 84,
+ "w": 24,
+ "h": 18
+ }
+ },
+ {
+ "filename": "352_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 7,
+ "w": 22,
+ "h": 22
+ },
+ "frame": {
+ "x": 90,
+ "y": 94,
+ "w": 22,
+ "h": 22
+ }
+ },
+ {
+ "filename": "352_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 7,
+ "w": 22,
+ "h": 22
+ },
+ "frame": {
+ "x": 112,
+ "y": 94,
+ "w": 22,
+ "h": 22
+ }
+ },
+ {
+ "filename": "352_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 7,
+ "w": 22,
+ "h": 22
+ },
+ "frame": {
+ "x": 134,
+ "y": 102,
+ "w": 22,
+ "h": 22
+ }
+ },
+ {
+ "filename": "307_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 19,
+ "h": 22
+ },
+ "frame": {
+ "x": 98,
+ "y": 116,
+ "w": 19,
+ "h": 22
+ }
+ },
+ {
+ "filename": "358_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 7,
+ "w": 17,
+ "h": 23
+ },
+ "frame": {
+ "x": 98,
+ "y": 138,
+ "w": 17,
+ "h": 23
+ }
+ },
+ {
+ "filename": "358_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 7,
+ "w": 17,
+ "h": 23
+ },
+ "frame": {
+ "x": 117,
+ "y": 116,
+ "w": 17,
+ "h": 23
+ }
+ },
+ {
+ "filename": "307_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 19,
+ "h": 22
+ },
+ "frame": {
+ "x": 115,
+ "y": 139,
+ "w": 19,
+ "h": 22
+ }
+ },
+ {
+ "filename": "358_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 7,
+ "w": 17,
+ "h": 23
+ },
+ "frame": {
+ "x": 134,
+ "y": 124,
+ "w": 17,
+ "h": 23
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:594a431dc069cddadc7e214e22e28bc6:b5119c622c8ca58f57c57a0bb7bbc5b4:039b026190bf1878996b3e03190bcdf3$"
+ }
+}
diff --git a/public/images/pokemon_icons_3v.png b/public/images/pokemon_icons_3v.png
new file mode 100644
index 00000000000..0f0c2df6e5e
Binary files /dev/null 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
new file mode 100644
index 00000000000..a5c1484ef31
--- /dev/null
+++ b/public/images/pokemon_icons_4v.json
@@ -0,0 +1,1070 @@
+{
+ "textures": [
+ {
+ "image": "pokemon_icons_4v.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 177,
+ "h": 177
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "445-mega_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 4,
+ "w": 32,
+ "h": 26
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 32,
+ "h": 26
+ }
+ },
+ {
+ "filename": "445-mega_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 4,
+ "w": 32,
+ "h": 26
+ },
+ "frame": {
+ "x": 0,
+ "y": 26,
+ "w": 32,
+ "h": 26
+ }
+ },
+ {
+ "filename": "445-mega_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 4,
+ "w": 32,
+ "h": 26
+ },
+ "frame": {
+ "x": 32,
+ "y": 0,
+ "w": 32,
+ "h": 26
+ }
+ },
+ {
+ "filename": "445_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 31,
+ "h": 24
+ },
+ "frame": {
+ "x": 0,
+ "y": 52,
+ "w": 31,
+ "h": 24
+ }
+ },
+ {
+ "filename": "445_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 31,
+ "h": 24
+ },
+ "frame": {
+ "x": 32,
+ "y": 26,
+ "w": 31,
+ "h": 24
+ }
+ },
+ {
+ "filename": "445_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 31,
+ "h": 24
+ },
+ "frame": {
+ "x": 64,
+ "y": 0,
+ "w": 31,
+ "h": 24
+ }
+ },
+ {
+ "filename": "488_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 1,
+ "w": 27,
+ "h": 28
+ },
+ "frame": {
+ "x": 0,
+ "y": 76,
+ "w": 27,
+ "h": 28
+ }
+ },
+ {
+ "filename": "488_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 1,
+ "w": 27,
+ "h": 28
+ },
+ "frame": {
+ "x": 0,
+ "y": 104,
+ "w": 27,
+ "h": 28
+ }
+ },
+ {
+ "filename": "471_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 4,
+ "w": 29,
+ "h": 25
+ },
+ "frame": {
+ "x": 95,
+ "y": 0,
+ "w": 29,
+ "h": 25
+ }
+ },
+ {
+ "filename": "471_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 4,
+ "w": 29,
+ "h": 25
+ },
+ "frame": {
+ "x": 124,
+ "y": 0,
+ "w": 29,
+ "h": 25
+ }
+ },
+ {
+ "filename": "400_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 5,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 153,
+ "y": 0,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "471_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 4,
+ "w": 29,
+ "h": 25
+ },
+ "frame": {
+ "x": 0,
+ "y": 132,
+ "w": 29,
+ "h": 25
+ }
+ },
+ {
+ "filename": "400_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 5,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 153,
+ "y": 24,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "489_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 10,
+ "w": 25,
+ "h": 19
+ },
+ "frame": {
+ "x": 0,
+ "y": 157,
+ "w": 25,
+ "h": 19
+ }
+ },
+ {
+ "filename": "429_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 1,
+ "w": 21,
+ "h": 29
+ },
+ "frame": {
+ "x": 27,
+ "y": 76,
+ "w": 21,
+ "h": 29
+ }
+ },
+ {
+ "filename": "470_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 27,
+ "h": 24
+ },
+ "frame": {
+ "x": 27,
+ "y": 105,
+ "w": 27,
+ "h": 24
+ }
+ },
+ {
+ "filename": "429_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 1,
+ "w": 21,
+ "h": 29
+ },
+ "frame": {
+ "x": 29,
+ "y": 129,
+ "w": 21,
+ "h": 29
+ }
+ },
+ {
+ "filename": "489_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 10,
+ "w": 25,
+ "h": 19
+ },
+ "frame": {
+ "x": 25,
+ "y": 158,
+ "w": 25,
+ "h": 19
+ }
+ },
+ {
+ "filename": "470_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 27,
+ "h": 24
+ },
+ "frame": {
+ "x": 31,
+ "y": 52,
+ "w": 27,
+ "h": 24
+ }
+ },
+ {
+ "filename": "429_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 1,
+ "w": 21,
+ "h": 29
+ },
+ "frame": {
+ "x": 48,
+ "y": 76,
+ "w": 21,
+ "h": 29
+ }
+ },
+ {
+ "filename": "470_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 27,
+ "h": 24
+ },
+ "frame": {
+ "x": 54,
+ "y": 105,
+ "w": 27,
+ "h": 24
+ }
+ },
+ {
+ "filename": "468_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 30,
+ "h": 21
+ },
+ "frame": {
+ "x": 50,
+ "y": 129,
+ "w": 30,
+ "h": 21
+ }
+ },
+ {
+ "filename": "468_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 30,
+ "h": 21
+ },
+ "frame": {
+ "x": 50,
+ "y": 150,
+ "w": 30,
+ "h": 21
+ }
+ },
+ {
+ "filename": "468_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 6,
+ "w": 30,
+ "h": 21
+ },
+ "frame": {
+ "x": 64,
+ "y": 24,
+ "w": 30,
+ "h": 21
+ }
+ },
+ {
+ "filename": "433_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 25,
+ "h": 21
+ },
+ "frame": {
+ "x": 94,
+ "y": 25,
+ "w": 25,
+ "h": 21
+ }
+ },
+ {
+ "filename": "433_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 25,
+ "h": 21
+ },
+ "frame": {
+ "x": 119,
+ "y": 25,
+ "w": 25,
+ "h": 21
+ }
+ },
+ {
+ "filename": "433_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 25,
+ "h": 21
+ },
+ "frame": {
+ "x": 63,
+ "y": 45,
+ "w": 25,
+ "h": 21
+ }
+ },
+ {
+ "filename": "444_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 88,
+ "y": 46,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "444_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 113,
+ "y": 46,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "444_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 25,
+ "h": 23
+ },
+ "frame": {
+ "x": 138,
+ "y": 48,
+ "w": 25,
+ "h": 23
+ }
+ },
+ {
+ "filename": "440_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 8,
+ "w": 16,
+ "h": 21
+ },
+ "frame": {
+ "x": 69,
+ "y": 66,
+ "w": 16,
+ "h": 21
+ }
+ },
+ {
+ "filename": "399_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 11,
+ "w": 22,
+ "h": 18
+ },
+ "frame": {
+ "x": 69,
+ "y": 87,
+ "w": 22,
+ "h": 18
+ }
+ },
+ {
+ "filename": "399_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 11,
+ "w": 22,
+ "h": 18
+ },
+ "frame": {
+ "x": 85,
+ "y": 69,
+ "w": 22,
+ "h": 18
+ }
+ },
+ {
+ "filename": "489_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 10,
+ "w": 25,
+ "h": 19
+ },
+ "frame": {
+ "x": 107,
+ "y": 69,
+ "w": 25,
+ "h": 19
+ }
+ },
+ {
+ "filename": "440_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 8,
+ "w": 16,
+ "h": 21
+ },
+ "frame": {
+ "x": 91,
+ "y": 87,
+ "w": 16,
+ "h": 21
+ }
+ },
+ {
+ "filename": "490_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 107,
+ "y": 88,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "490_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 132,
+ "y": 71,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "443_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 8,
+ "w": 21,
+ "h": 21
+ },
+ "frame": {
+ "x": 156,
+ "y": 71,
+ "w": 21,
+ "h": 21
+ }
+ },
+ {
+ "filename": "443_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 8,
+ "w": 21,
+ "h": 21
+ },
+ "frame": {
+ "x": 156,
+ "y": 92,
+ "w": 21,
+ "h": 21
+ }
+ },
+ {
+ "filename": "490_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 131,
+ "y": 93,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "442_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 23,
+ "h": 22
+ },
+ "frame": {
+ "x": 81,
+ "y": 108,
+ "w": 23,
+ "h": 22
+ }
+ },
+ {
+ "filename": "492-sky_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 23,
+ "h": 24
+ },
+ "frame": {
+ "x": 80,
+ "y": 130,
+ "w": 23,
+ "h": 24
+ }
+ },
+ {
+ "filename": "442_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 23,
+ "h": 22
+ },
+ "frame": {
+ "x": 104,
+ "y": 110,
+ "w": 23,
+ "h": 22
+ }
+ },
+ {
+ "filename": "492-sky_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 23,
+ "h": 24
+ },
+ "frame": {
+ "x": 103,
+ "y": 132,
+ "w": 23,
+ "h": 24
+ }
+ },
+ {
+ "filename": "443_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 8,
+ "w": 21,
+ "h": 21
+ },
+ "frame": {
+ "x": 80,
+ "y": 154,
+ "w": 21,
+ "h": 21
+ }
+ },
+ {
+ "filename": "440_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 8,
+ "w": 16,
+ "h": 21
+ },
+ "frame": {
+ "x": 101,
+ "y": 156,
+ "w": 16,
+ "h": 21
+ }
+ },
+ {
+ "filename": "492-land_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 11,
+ "w": 20,
+ "h": 18
+ },
+ "frame": {
+ "x": 127,
+ "y": 115,
+ "w": 20,
+ "h": 18
+ }
+ },
+ {
+ "filename": "494_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 5,
+ "w": 20,
+ "h": 24
+ },
+ "frame": {
+ "x": 126,
+ "y": 133,
+ "w": 20,
+ "h": 24
+ }
+ },
+ {
+ "filename": "492-land_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 11,
+ "w": 20,
+ "h": 18
+ },
+ "frame": {
+ "x": 117,
+ "y": 157,
+ "w": 20,
+ "h": 18
+ }
+ },
+ {
+ "filename": "494_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 5,
+ "w": 20,
+ "h": 24
+ },
+ "frame": {
+ "x": 147,
+ "y": 115,
+ "w": 20,
+ "h": 24
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:ce3f5e8c14252ac9da454c6a910b105a:7e9cb9b53a31a8f771455339797df39c:ebc3f8ec5b2480b298192d752b6e57dc$"
+ }
+}
diff --git a/public/images/pokemon_icons_4v.png b/public/images/pokemon_icons_4v.png
new file mode 100644
index 00000000000..c39e20b30f8
Binary files /dev/null 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
new file mode 100644
index 00000000000..5efd5d2320d
--- /dev/null
+++ b/public/images/pokemon_icons_5v.json
@@ -0,0 +1,1007 @@
+{
+ "textures": [
+ {
+ "image": "pokemon_icons_5v.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 168,
+ "h": 168
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "546_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 13,
+ "w": 23,
+ "h": 16
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 23,
+ "h": 16
+ }
+ },
+ {
+ "filename": "546_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 13,
+ "w": 23,
+ "h": 16
+ },
+ "frame": {
+ "x": 23,
+ "y": 0,
+ "w": 23,
+ "h": 16
+ }
+ },
+ {
+ "filename": "577_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 13,
+ "w": 17,
+ "h": 16
+ },
+ "frame": {
+ "x": 46,
+ "y": 0,
+ "w": 17,
+ "h": 16
+ }
+ },
+ {
+ "filename": "577_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 13,
+ "w": 17,
+ "h": 16
+ },
+ "frame": {
+ "x": 63,
+ "y": 0,
+ "w": 17,
+ "h": 16
+ }
+ },
+ {
+ "filename": "577_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 13,
+ "w": 17,
+ "h": 16
+ },
+ "frame": {
+ "x": 80,
+ "y": 0,
+ "w": 17,
+ "h": 16
+ }
+ },
+ {
+ "filename": "541_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 11,
+ "w": 22,
+ "h": 18
+ },
+ "frame": {
+ "x": 97,
+ "y": 0,
+ "w": 22,
+ "h": 18
+ }
+ },
+ {
+ "filename": "559_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 11,
+ "w": 17,
+ "h": 18
+ },
+ "frame": {
+ "x": 119,
+ "y": 0,
+ "w": 17,
+ "h": 18
+ }
+ },
+ {
+ "filename": "559_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 11,
+ "w": 17,
+ "h": 18
+ },
+ "frame": {
+ "x": 136,
+ "y": 0,
+ "w": 17,
+ "h": 18
+ }
+ },
+ {
+ "filename": "548_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 14,
+ "h": 20
+ },
+ "frame": {
+ "x": 153,
+ "y": 0,
+ "w": 14,
+ "h": 20
+ }
+ },
+ {
+ "filename": "559_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 11,
+ "w": 17,
+ "h": 18
+ },
+ "frame": {
+ "x": 0,
+ "y": 16,
+ "w": 17,
+ "h": 18
+ }
+ },
+ {
+ "filename": "540_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 10,
+ "w": 17,
+ "h": 19
+ },
+ "frame": {
+ "x": 17,
+ "y": 16,
+ "w": 17,
+ "h": 19
+ }
+ },
+ {
+ "filename": "570_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 10,
+ "w": 18,
+ "h": 19
+ },
+ "frame": {
+ "x": 34,
+ "y": 16,
+ "w": 18,
+ "h": 19
+ }
+ },
+ {
+ "filename": "570_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 10,
+ "w": 18,
+ "h": 19
+ },
+ "frame": {
+ "x": 52,
+ "y": 16,
+ "w": 18,
+ "h": 19
+ }
+ },
+ {
+ "filename": "548_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 14,
+ "h": 20
+ },
+ "frame": {
+ "x": 70,
+ "y": 16,
+ "w": 14,
+ "h": 20
+ }
+ },
+ {
+ "filename": "548_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 9,
+ "w": 14,
+ "h": 20
+ },
+ "frame": {
+ "x": 84,
+ "y": 18,
+ "w": 14,
+ "h": 20
+ }
+ },
+ {
+ "filename": "532_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 8,
+ "w": 26,
+ "h": 21
+ },
+ "frame": {
+ "x": 98,
+ "y": 18,
+ "w": 26,
+ "h": 21
+ }
+ },
+ {
+ "filename": "532_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 8,
+ "w": 26,
+ "h": 21
+ },
+ "frame": {
+ "x": 124,
+ "y": 18,
+ "w": 26,
+ "h": 21
+ }
+ },
+ {
+ "filename": "578_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 18,
+ "h": 21
+ },
+ "frame": {
+ "x": 150,
+ "y": 20,
+ "w": 18,
+ "h": 21
+ }
+ },
+ {
+ "filename": "572_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 8,
+ "w": 24,
+ "h": 21
+ },
+ "frame": {
+ "x": 0,
+ "y": 35,
+ "w": 24,
+ "h": 21
+ }
+ },
+ {
+ "filename": "572_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 8,
+ "w": 24,
+ "h": 21
+ },
+ "frame": {
+ "x": 24,
+ "y": 35,
+ "w": 24,
+ "h": 21
+ }
+ },
+ {
+ "filename": "578_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 18,
+ "h": 21
+ },
+ "frame": {
+ "x": 48,
+ "y": 35,
+ "w": 18,
+ "h": 21
+ }
+ },
+ {
+ "filename": "578_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 18,
+ "h": 21
+ },
+ "frame": {
+ "x": 66,
+ "y": 36,
+ "w": 18,
+ "h": 21
+ }
+ },
+ {
+ "filename": "538_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 7,
+ "w": 30,
+ "h": 22
+ },
+ "frame": {
+ "x": 84,
+ "y": 39,
+ "w": 30,
+ "h": 22
+ }
+ },
+ {
+ "filename": "538_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 7,
+ "w": 30,
+ "h": 22
+ },
+ "frame": {
+ "x": 114,
+ "y": 39,
+ "w": 30,
+ "h": 22
+ }
+ },
+ {
+ "filename": "542_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 6,
+ "w": 16,
+ "h": 23
+ },
+ "frame": {
+ "x": 144,
+ "y": 41,
+ "w": 16,
+ "h": 23
+ }
+ },
+ {
+ "filename": "549_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 6,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 0,
+ "y": 56,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "549_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 6,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 19,
+ "y": 56,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "560_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 22,
+ "h": 23
+ },
+ "frame": {
+ "x": 38,
+ "y": 56,
+ "w": 22,
+ "h": 23
+ }
+ },
+ {
+ "filename": "560_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 22,
+ "h": 23
+ },
+ "frame": {
+ "x": 60,
+ "y": 57,
+ "w": 22,
+ "h": 23
+ }
+ },
+ {
+ "filename": "560_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 22,
+ "h": 23
+ },
+ "frame": {
+ "x": 82,
+ "y": 61,
+ "w": 22,
+ "h": 23
+ }
+ },
+ {
+ "filename": "579_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 6,
+ "w": 32,
+ "h": 23
+ },
+ "frame": {
+ "x": 104,
+ "y": 61,
+ "w": 32,
+ "h": 23
+ }
+ },
+ {
+ "filename": "579_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 6,
+ "w": 32,
+ "h": 23
+ },
+ "frame": {
+ "x": 136,
+ "y": 64,
+ "w": 32,
+ "h": 23
+ }
+ },
+ {
+ "filename": "579_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 6,
+ "w": 32,
+ "h": 23
+ },
+ "frame": {
+ "x": 0,
+ "y": 79,
+ "w": 32,
+ "h": 23
+ }
+ },
+ {
+ "filename": "547_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 23,
+ "h": 24
+ },
+ "frame": {
+ "x": 32,
+ "y": 79,
+ "w": 23,
+ "h": 24
+ }
+ },
+ {
+ "filename": "547_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 5,
+ "w": 23,
+ "h": 24
+ },
+ "frame": {
+ "x": 55,
+ "y": 80,
+ "w": 23,
+ "h": 24
+ }
+ },
+ {
+ "filename": "571_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 5,
+ "w": 31,
+ "h": 24
+ },
+ "frame": {
+ "x": 78,
+ "y": 84,
+ "w": 31,
+ "h": 24
+ }
+ },
+ {
+ "filename": "571_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 5,
+ "w": 31,
+ "h": 24
+ },
+ "frame": {
+ "x": 109,
+ "y": 87,
+ "w": 31,
+ "h": 24
+ }
+ },
+ {
+ "filename": "533_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 3,
+ "w": 29,
+ "h": 26
+ },
+ "frame": {
+ "x": 0,
+ "y": 102,
+ "w": 29,
+ "h": 26
+ }
+ },
+ {
+ "filename": "533_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 3,
+ "w": 29,
+ "h": 26
+ },
+ "frame": {
+ "x": 29,
+ "y": 104,
+ "w": 29,
+ "h": 26
+ }
+ },
+ {
+ "filename": "534_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 4,
+ "w": 33,
+ "h": 26
+ },
+ "frame": {
+ "x": 58,
+ "y": 108,
+ "w": 33,
+ "h": 26
+ }
+ },
+ {
+ "filename": "534_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 4,
+ "w": 33,
+ "h": 26
+ },
+ "frame": {
+ "x": 91,
+ "y": 111,
+ "w": 33,
+ "h": 26
+ }
+ },
+ {
+ "filename": "641-incarnate_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 32,
+ "h": 28
+ },
+ "frame": {
+ "x": 124,
+ "y": 111,
+ "w": 32,
+ "h": 28
+ }
+ },
+ {
+ "filename": "645-therian_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 0,
+ "w": 29,
+ "h": 29
+ },
+ "frame": {
+ "x": 0,
+ "y": 128,
+ "w": 29,
+ "h": 29
+ }
+ },
+ {
+ "filename": "642-therian_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 2,
+ "w": 34,
+ "h": 28
+ },
+ "frame": {
+ "x": 29,
+ "y": 134,
+ "w": 34,
+ "h": 28
+ }
+ },
+ {
+ "filename": "645-incarnate_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 1,
+ "w": 33,
+ "h": 28
+ },
+ "frame": {
+ "x": 63,
+ "y": 137,
+ "w": 33,
+ "h": 28
+ }
+ },
+ {
+ "filename": "641-therian_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 0,
+ "w": 32,
+ "h": 29
+ },
+ "frame": {
+ "x": 96,
+ "y": 139,
+ "w": 32,
+ "h": 29
+ }
+ },
+ {
+ "filename": "642-incarnate_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 3,
+ "y": 0,
+ "w": 33,
+ "h": 29
+ },
+ "frame": {
+ "x": 128,
+ "y": 139,
+ "w": 33,
+ "h": 29
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:ec0e8332edc388e94c276b91e9aa14dc:af33dc29f0ba47be720e7a1d441f0438:f1931bc28ee7f32dba7543723757cf2a$"
+ }
+}
diff --git a/public/images/pokemon_icons_5v.png b/public/images/pokemon_icons_5v.png
new file mode 100644
index 00000000000..c508c1f8f00
Binary files /dev/null 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
new file mode 100644
index 00000000000..e3864b278db
--- /dev/null
+++ b/public/images/pokemon_icons_6v.json
@@ -0,0 +1,503 @@
+{
+ "textures": [
+ {
+ "image": "pokemon_icons_6v.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 125,
+ "h": 125
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "720-unbound_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 29
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 40,
+ "h": 29
+ }
+ },
+ {
+ "filename": "720-unbound_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 29
+ },
+ "frame": {
+ "x": 40,
+ "y": 0,
+ "w": 40,
+ "h": 29
+ }
+ },
+ {
+ "filename": "720-unbound_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 0,
+ "y": 1,
+ "w": 40,
+ "h": 29
+ },
+ "frame": {
+ "x": 80,
+ "y": 0,
+ "w": 40,
+ "h": 29
+ }
+ },
+ {
+ "filename": "709_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 2,
+ "w": 27,
+ "h": 27
+ },
+ "frame": {
+ "x": 0,
+ "y": 29,
+ "w": 27,
+ "h": 27
+ }
+ },
+ {
+ "filename": "709_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 2,
+ "w": 27,
+ "h": 27
+ },
+ "frame": {
+ "x": 0,
+ "y": 56,
+ "w": 27,
+ "h": 27
+ }
+ },
+ {
+ "filename": "706_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 4,
+ "w": 26,
+ "h": 26
+ },
+ "frame": {
+ "x": 0,
+ "y": 83,
+ "w": 26,
+ "h": 26
+ }
+ },
+ {
+ "filename": "704_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 13,
+ "w": 14,
+ "h": 16
+ },
+ "frame": {
+ "x": 0,
+ "y": 109,
+ "w": 14,
+ "h": 16
+ }
+ },
+ {
+ "filename": "704_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 13,
+ "w": 14,
+ "h": 16
+ },
+ "frame": {
+ "x": 14,
+ "y": 109,
+ "w": 14,
+ "h": 16
+ }
+ },
+ {
+ "filename": "706_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 4,
+ "w": 26,
+ "h": 26
+ },
+ "frame": {
+ "x": 26,
+ "y": 83,
+ "w": 26,
+ "h": 26
+ }
+ },
+ {
+ "filename": "708_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 6,
+ "w": 27,
+ "h": 23
+ },
+ "frame": {
+ "x": 27,
+ "y": 29,
+ "w": 27,
+ "h": 23
+ }
+ },
+ {
+ "filename": "708_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 6,
+ "w": 27,
+ "h": 23
+ },
+ "frame": {
+ "x": 27,
+ "y": 52,
+ "w": 27,
+ "h": 23
+ }
+ },
+ {
+ "filename": "700_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 4,
+ "w": 24,
+ "h": 25
+ },
+ "frame": {
+ "x": 52,
+ "y": 75,
+ "w": 24,
+ "h": 25
+ }
+ },
+ {
+ "filename": "700_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 4,
+ "w": 24,
+ "h": 25
+ },
+ "frame": {
+ "x": 52,
+ "y": 100,
+ "w": 24,
+ "h": 25
+ }
+ },
+ {
+ "filename": "711_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 4,
+ "w": 23,
+ "h": 25
+ },
+ "frame": {
+ "x": 54,
+ "y": 29,
+ "w": 23,
+ "h": 25
+ }
+ },
+ {
+ "filename": "720_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 23,
+ "h": 21
+ },
+ "frame": {
+ "x": 54,
+ "y": 54,
+ "w": 23,
+ "h": 21
+ }
+ },
+ {
+ "filename": "711_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 4,
+ "w": 23,
+ "h": 25
+ },
+ "frame": {
+ "x": 76,
+ "y": 75,
+ "w": 23,
+ "h": 25
+ }
+ },
+ {
+ "filename": "711_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 4,
+ "w": 23,
+ "h": 25
+ },
+ "frame": {
+ "x": 76,
+ "y": 100,
+ "w": 23,
+ "h": 25
+ }
+ },
+ {
+ "filename": "720_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 23,
+ "h": 21
+ },
+ "frame": {
+ "x": 77,
+ "y": 29,
+ "w": 23,
+ "h": 21
+ }
+ },
+ {
+ "filename": "720_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 7,
+ "w": 23,
+ "h": 21
+ },
+ "frame": {
+ "x": 77,
+ "y": 50,
+ "w": 23,
+ "h": 21
+ }
+ },
+ {
+ "filename": "705_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 5,
+ "w": 17,
+ "h": 24
+ },
+ "frame": {
+ "x": 99,
+ "y": 71,
+ "w": 17,
+ "h": 24
+ }
+ },
+ {
+ "filename": "705_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 5,
+ "w": 17,
+ "h": 24
+ },
+ "frame": {
+ "x": 99,
+ "y": 95,
+ "w": 17,
+ "h": 24
+ }
+ },
+ {
+ "filename": "710_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 19,
+ "h": 21
+ },
+ "frame": {
+ "x": 100,
+ "y": 29,
+ "w": 19,
+ "h": 21
+ }
+ },
+ {
+ "filename": "710_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 8,
+ "w": 19,
+ "h": 21
+ },
+ "frame": {
+ "x": 100,
+ "y": 50,
+ "w": 19,
+ "h": 21
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:999b7376d933d9650355ce494f278fd8:44fb34b97cbbfaec552d571bc55632c5:8a74f769af240f74b0e67390bbb36c14$"
+ }
+}
diff --git a/public/images/pokemon_icons_6v.png b/public/images/pokemon_icons_6v.png
new file mode 100644
index 00000000000..9f5cf714b67
Binary files /dev/null and b/public/images/pokemon_icons_6v.png differ
diff --git a/public/images/pokemon_icons_7.json b/public/images/pokemon_icons_7.json
index 0bfbc817343..a57910d9391 100644
--- a/public/images/pokemon_icons_7.json
+++ b/public/images/pokemon_icons_7.json
@@ -3055,7 +3055,7 @@
}
},
{
- "filename": "2074",
+ "filename": "778-busted",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3063,16 +3063,37 @@
"h": 30
},
"spriteSourceSize": {
- "x": 8,
- "y": 13,
- "w": 24,
- "h": 15
+ "x": 9,
+ "y": 12,
+ "w": 21,
+ "h": 16
},
"frame": {
"x": 77,
"y": 604,
- "w": 24,
- "h": 15
+ "w": 21,
+ "h": 16
+ }
+ },
+ {
+ "filename": "789s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 6,
+ "w": 23,
+ "h": 20
+ },
+ "frame": {
+ "x": 79,
+ "y": 620,
+ "w": 23,
+ "h": 20
}
},
{
@@ -3090,14 +3111,14 @@
"h": 21
},
"frame": {
- "x": 79,
- "y": 619,
+ "x": 106,
+ "y": 566,
"w": 23,
"h": 21
}
},
{
- "filename": "758s",
+ "filename": "2020",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3105,18 +3126,39 @@
"h": 30
},
"spriteSourceSize": {
- "x": 11,
+ "x": 8,
"y": 6,
- "w": 24,
+ "w": 25,
"h": 22
},
"frame": {
- "x": 106,
- "y": 566,
- "w": 24,
+ "x": 99,
+ "y": 587,
+ "w": 25,
"h": 22
}
},
+ {
+ "filename": "806s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 3,
+ "w": 22,
+ "h": 25
+ },
+ "frame": {
+ "x": 102,
+ "y": 609,
+ "w": 22,
+ "h": 25
+ }
+ },
{
"filename": "724s",
"rotated": false,
@@ -3160,7 +3202,7 @@
}
},
{
- "filename": "2074s",
+ "filename": "781",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3168,20 +3210,20 @@
"h": 30
},
"spriteSourceSize": {
- "x": 8,
- "y": 13,
- "w": 24,
- "h": 15
+ "x": 11,
+ "y": 3,
+ "w": 19,
+ "h": 25
},
"frame": {
- "x": 99,
- "y": 588,
- "w": 24,
- "h": 15
+ "x": 124,
+ "y": 587,
+ "w": 19,
+ "h": 25
}
},
{
- "filename": "767",
+ "filename": "732s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3190,40 +3232,19 @@
},
"spriteSourceSize": {
"x": 10,
- "y": 11,
- "w": 24,
- "h": 14
+ "y": 6,
+ "w": 19,
+ "h": 22
},
"frame": {
- "x": 101,
- "y": 603,
- "w": 24,
- "h": 14
+ "x": 124,
+ "y": 612,
+ "w": 19,
+ "h": 22
}
},
{
- "filename": "2105s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 8,
- "y": 5,
- "w": 24,
- "h": 23
- },
- "frame": {
- "x": 102,
- "y": 617,
- "w": 24,
- "h": 23
- }
- },
- {
- "filename": "781",
+ "filename": "781s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3244,49 +3265,7 @@
}
},
{
- "filename": "806s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 9,
- "y": 3,
- "w": 22,
- "h": 25
- },
- "frame": {
- "x": 186,
- "y": 27,
- "w": 22,
- "h": 25
- }
- },
- {
- "filename": "745s-midnight",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 4,
- "w": 21,
- "h": 24
- },
- "frame": {
- "x": 208,
- "y": 27,
- "w": 21,
- "h": 24
- }
- },
- {
- "filename": "2020",
+ "filename": "2020s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3300,14 +3279,35 @@
"h": 22
},
"frame": {
- "x": 229,
- "y": 30,
+ "x": 186,
+ "y": 27,
"w": 25,
"h": 22
}
},
{
- "filename": "781s",
+ "filename": "741-pau",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 18,
+ "h": 22
+ },
+ "frame": {
+ "x": 211,
+ "y": 27,
+ "w": 18,
+ "h": 22
+ }
+ },
+ {
+ "filename": "758s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3316,15 +3316,15 @@
},
"spriteSourceSize": {
"x": 11,
- "y": 3,
- "w": 19,
- "h": 25
+ "y": 6,
+ "w": 24,
+ "h": 22
},
"frame": {
- "x": 171,
- "y": 53,
- "w": 19,
- "h": 25
+ "x": 229,
+ "y": 30,
+ "w": 24,
+ "h": 22
}
},
{
@@ -3343,7 +3343,7 @@
},
"frame": {
"x": 171,
- "y": 78,
+ "y": 53,
"w": 20,
"h": 25
}
@@ -3364,7 +3364,7 @@
},
"frame": {
"x": 171,
- "y": 103,
+ "y": 78,
"w": 20,
"h": 25
}
@@ -3384,14 +3384,14 @@
"h": 24
},
"frame": {
- "x": 190,
- "y": 52,
+ "x": 171,
+ "y": 103,
"w": 20,
"h": 24
}
},
{
- "filename": "732s",
+ "filename": "2051",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3399,57 +3399,36 @@
"h": 30
},
"spriteSourceSize": {
- "x": 10,
- "y": 6,
- "w": 19,
- "h": 22
- },
- "frame": {
- "x": 210,
- "y": 51,
- "w": 19,
- "h": 22
- }
- },
- {
- "filename": "2020s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 8,
- "y": 6,
- "w": 25,
- "h": 22
- },
- "frame": {
- "x": 229,
- "y": 52,
- "w": 25,
- "h": 22
- }
- },
- {
- "filename": "735s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 11,
+ "x": 9,
"y": 4,
- "w": 20,
+ "w": 23,
"h": 24
},
"frame": {
"x": 191,
- "y": 76,
- "w": 20,
+ "y": 49,
+ "w": 23,
+ "h": 24
+ }
+ },
+ {
+ "filename": "2051s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 4,
+ "w": 23,
+ "h": 24
+ },
+ "frame": {
+ "x": 191,
+ "y": 73,
+ "w": 23,
"h": 24
}
},
@@ -3469,13 +3448,13 @@
},
"frame": {
"x": 191,
- "y": 100,
+ "y": 97,
"w": 22,
"h": 24
}
},
{
- "filename": "762",
+ "filename": "746",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3484,15 +3463,36 @@
},
"spriteSourceSize": {
"x": 12,
- "y": 4,
+ "y": 11,
"w": 18,
- "h": 23
+ "h": 13
},
"frame": {
- "x": 211,
- "y": 73,
+ "x": 171,
+ "y": 127,
"w": 18,
- "h": 23
+ "h": 13
+ }
+ },
+ {
+ "filename": "755",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 4,
+ "w": 13,
+ "h": 24
+ },
+ "frame": {
+ "x": 214,
+ "y": 49,
+ "w": 13,
+ "h": 24
}
},
{
@@ -3510,56 +3510,14 @@
"h": 22
},
"frame": {
- "x": 229,
- "y": 74,
+ "x": 227,
+ "y": 52,
"w": 24,
"h": 22
}
},
{
- "filename": "2051",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 9,
- "y": 4,
- "w": 23,
- "h": 24
- },
- "frame": {
- "x": 213,
- "y": 96,
- "w": 23,
- "h": 24
- }
- },
- {
- "filename": "762s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 12,
- "y": 4,
- "w": 18,
- "h": 23
- },
- "frame": {
- "x": 236,
- "y": 96,
- "w": 18,
- "h": 23
- }
- },
- {
- "filename": "741-pau",
+ "filename": "755s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3568,19 +3526,19 @@
},
"spriteSourceSize": {
"x": 14,
- "y": 6,
- "w": 18,
- "h": 22
+ "y": 4,
+ "w": 13,
+ "h": 24
},
"frame": {
- "x": 236,
- "y": 119,
- "w": 18,
- "h": 22
+ "x": 214,
+ "y": 73,
+ "w": 13,
+ "h": 24
}
},
{
- "filename": "769",
+ "filename": "2105s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3589,120 +3547,15 @@
},
"spriteSourceSize": {
"x": 8,
- "y": 6,
- "w": 23,
- "h": 22
+ "y": 5,
+ "w": 24,
+ "h": 23
},
"frame": {
- "x": 213,
- "y": 120,
- "w": 23,
- "h": 22
- }
- },
- {
- "filename": "738",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 9,
- "y": 6,
- "w": 22,
- "h": 21
- },
- "frame": {
- "x": 191,
- "y": 124,
- "w": 22,
- "h": 21
- }
- },
- {
- "filename": "741s-pau",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 14,
- "y": 6,
- "w": 18,
- "h": 22
- },
- "frame": {
- "x": 236,
- "y": 141,
- "w": 18,
- "h": 22
- }
- },
- {
- "filename": "769s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 8,
- "y": 6,
- "w": 23,
- "h": 22
- },
- "frame": {
- "x": 213,
- "y": 142,
- "w": 23,
- "h": 22
- }
- },
- {
- "filename": "737",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 12,
- "y": 8,
- "w": 18,
- "h": 19
- },
- "frame": {
- "x": 236,
- "y": 163,
- "w": 18,
- "h": 19
- }
- },
- {
- "filename": "789s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 6,
- "w": 23,
- "h": 20
- },
- "frame": {
- "x": 180,
- "y": 145,
- "w": 23,
- "h": 20
+ "x": 227,
+ "y": 74,
+ "w": 24,
+ "h": 23
}
},
{
@@ -3720,14 +3573,14 @@
"h": 24
},
"frame": {
- "x": 185,
- "y": 165,
+ "x": 213,
+ "y": 97,
"w": 22,
"h": 24
}
},
{
- "filename": "802",
+ "filename": "744",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3735,20 +3588,20 @@
"h": 30
},
"spriteSourceSize": {
- "x": 13,
- "y": 4,
- "w": 22,
- "h": 24
+ "x": 11,
+ "y": 6,
+ "w": 19,
+ "h": 22
},
"frame": {
- "x": 185,
- "y": 189,
- "w": 22,
- "h": 24
+ "x": 235,
+ "y": 97,
+ "w": 19,
+ "h": 22
}
},
{
- "filename": "802s",
+ "filename": "744s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3756,20 +3609,20 @@
"h": 30
},
"spriteSourceSize": {
- "x": 13,
- "y": 4,
- "w": 22,
- "h": 24
+ "x": 11,
+ "y": 6,
+ "w": 19,
+ "h": 22
},
"frame": {
- "x": 185,
- "y": 213,
- "w": 22,
- "h": 24
+ "x": 235,
+ "y": 119,
+ "w": 19,
+ "h": 22
}
},
{
- "filename": "807",
+ "filename": "735s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3779,39 +3632,18 @@
"spriteSourceSize": {
"x": 11,
"y": 4,
- "w": 22,
+ "w": 20,
"h": 24
},
"frame": {
- "x": 185,
- "y": 237,
- "w": 22,
+ "x": 180,
+ "y": 140,
+ "w": 20,
"h": 24
}
},
{
- "filename": "807s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 11,
- "y": 4,
- "w": 22,
- "h": 24
- },
- "frame": {
- "x": 185,
- "y": 261,
- "w": 22,
- "h": 24
- }
- },
- {
- "filename": "767s",
+ "filename": "745s-midnight",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3820,80 +3652,17 @@
},
"spriteSourceSize": {
"x": 10,
- "y": 11,
- "w": 24,
- "h": 14
+ "y": 4,
+ "w": 21,
+ "h": 24
},
"frame": {
"x": 185,
- "y": 285,
- "w": 24,
- "h": 14
- }
- },
- {
- "filename": "2051s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 9,
- "y": 4,
- "w": 23,
- "h": 24
- },
- "frame": {
- "x": 207,
"y": 164,
- "w": 23,
+ "w": 21,
"h": 24
}
},
- {
- "filename": "2053s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 7,
- "y": 6,
- "w": 24,
- "h": 22
- },
- "frame": {
- "x": 230,
- "y": 182,
- "w": 24,
- "h": 22
- }
- },
- {
- "filename": "2670",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 9,
- "y": 7,
- "w": 23,
- "h": 21
- },
- "frame": {
- "x": 207,
- "y": 188,
- "w": 23,
- "h": 21
- }
- },
{
"filename": "763",
"rotated": false,
@@ -3909,8 +3678,8 @@
"h": 24
},
"frame": {
- "x": 207,
- "y": 209,
+ "x": 185,
+ "y": 188,
"w": 21,
"h": 24
}
@@ -3930,8 +3699,8 @@
"h": 24
},
"frame": {
- "x": 207,
- "y": 233,
+ "x": 185,
+ "y": 212,
"w": 21,
"h": 24
}
@@ -3951,14 +3720,14 @@
"h": 24
},
"frame": {
- "x": 207,
- "y": 257,
+ "x": 185,
+ "y": 236,
"w": 21,
"h": 24
}
},
{
- "filename": "755",
+ "filename": "793s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -3966,18 +3735,102 @@
"h": 30
},
"spriteSourceSize": {
- "x": 14,
+ "x": 10,
"y": 4,
- "w": 13,
+ "w": 21,
+ "h": 24
+ },
+ "frame": {
+ "x": 185,
+ "y": 260,
+ "w": 21,
+ "h": 24
+ }
+ },
+ {
+ "filename": "2074",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 13,
+ "w": 24,
+ "h": 15
+ },
+ "frame": {
+ "x": 185,
+ "y": 284,
+ "w": 24,
+ "h": 15
+ }
+ },
+ {
+ "filename": "760",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 4,
+ "w": 17,
"h": 24
},
"frame": {
"x": 197,
"y": 299,
- "w": 13,
+ "w": 17,
"h": 24
}
},
+ {
+ "filename": "749",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 5,
+ "w": 21,
+ "h": 23
+ },
+ "frame": {
+ "x": 214,
+ "y": 121,
+ "w": 21,
+ "h": 23
+ }
+ },
+ {
+ "filename": "742",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 5,
+ "w": 19,
+ "h": 20
+ },
+ "frame": {
+ "x": 235,
+ "y": 141,
+ "w": 19,
+ "h": 20
+ }
+ },
{
"filename": "741-sensu",
"rotated": false,
@@ -4000,28 +3853,7 @@
}
},
{
- "filename": "757",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 11,
- "y": 9,
- "w": 19,
- "h": 18
- },
- "frame": {
- "x": 209,
- "y": 281,
- "w": 19,
- "h": 18
- }
- },
- {
- "filename": "793s",
+ "filename": "749s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4030,19 +3862,124 @@
},
"spriteSourceSize": {
"x": 10,
- "y": 4,
+ "y": 5,
"w": 21,
+ "h": 23
+ },
+ "frame": {
+ "x": 214,
+ "y": 144,
+ "w": 21,
+ "h": 23
+ }
+ },
+ {
+ "filename": "742s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 5,
+ "w": 19,
+ "h": 20
+ },
+ "frame": {
+ "x": 235,
+ "y": 161,
+ "w": 19,
+ "h": 20
+ }
+ },
+ {
+ "filename": "802",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 4,
+ "w": 22,
"h": 24
},
"frame": {
- "x": 210,
- "y": 299,
- "w": 21,
+ "x": 206,
+ "y": 167,
+ "w": 22,
"h": 24
}
},
{
- "filename": "2670s",
+ "filename": "802s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 4,
+ "w": 22,
+ "h": 24
+ },
+ "frame": {
+ "x": 206,
+ "y": 191,
+ "w": 22,
+ "h": 24
+ }
+ },
+ {
+ "filename": "807",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 4,
+ "w": 22,
+ "h": 24
+ },
+ "frame": {
+ "x": 206,
+ "y": 215,
+ "w": 22,
+ "h": 24
+ }
+ },
+ {
+ "filename": "807s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 4,
+ "w": 22,
+ "h": 24
+ },
+ "frame": {
+ "x": 206,
+ "y": 239,
+ "w": 22,
+ "h": 24
+ }
+ },
+ {
+ "filename": "738",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4051,17 +3988,80 @@
},
"spriteSourceSize": {
"x": 9,
- "y": 7,
- "w": 23,
+ "y": 6,
+ "w": 22,
"h": 21
},
"frame": {
- "x": 231,
- "y": 204,
- "w": 23,
+ "x": 206,
+ "y": 263,
+ "w": 22,
"h": 21
}
},
+ {
+ "filename": "2053s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 6,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 228,
+ "y": 181,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "769",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 23,
+ "h": 22
+ },
+ "frame": {
+ "x": 228,
+ "y": 203,
+ "w": 23,
+ "h": 22
+ }
+ },
+ {
+ "filename": "769s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 23,
+ "h": 22
+ },
+ "frame": {
+ "x": 228,
+ "y": 225,
+ "w": 23,
+ "h": 22
+ }
+ },
{
"filename": "782",
"rotated": false,
@@ -4078,13 +4078,13 @@
},
"frame": {
"x": 228,
- "y": 225,
+ "y": 247,
"w": 22,
"h": 23
}
},
{
- "filename": "782s",
+ "filename": "2074s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4092,79 +4092,16 @@
"h": 30
},
"spriteSourceSize": {
- "x": 9,
- "y": 5,
- "w": 22,
- "h": 23
+ "x": 8,
+ "y": 13,
+ "w": 24,
+ "h": 15
},
"frame": {
- "x": 228,
- "y": 248,
- "w": 22,
- "h": 23
- }
- },
- {
- "filename": "749",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 5,
- "w": 21,
- "h": 23
- },
- "frame": {
- "x": 228,
- "y": 271,
- "w": 21,
- "h": 23
- }
- },
- {
- "filename": "741s-sensu",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 13,
- "y": 5,
- "w": 17,
- "h": 23
- },
- "frame": {
- "x": 214,
- "y": 323,
- "w": 17,
- "h": 23
- }
- },
- {
- "filename": "749s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 5,
- "w": 21,
- "h": 23
- },
- "frame": {
- "x": 231,
- "y": 294,
- "w": 21,
- "h": 23
+ "x": 209,
+ "y": 284,
+ "w": 24,
+ "h": 15
}
},
{
@@ -4182,33 +4119,12 @@
"h": 23
},
"frame": {
- "x": 231,
- "y": 317,
+ "x": 233,
+ "y": 270,
"w": 21,
"h": 23
}
},
- {
- "filename": "738s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 9,
- "y": 6,
- "w": 22,
- "h": 21
- },
- "frame": {
- "x": 131,
- "y": 514,
- "w": 22,
- "h": 21
- }
- },
{
"filename": "2076s",
"rotated": false,
@@ -4224,35 +4140,14 @@
"h": 23
},
"frame": {
- "x": 129,
- "y": 535,
+ "x": 233,
+ "y": 293,
"w": 21,
"h": 23
}
},
{
- "filename": "743",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 12,
- "y": 5,
- "w": 20,
- "h": 22
- },
- "frame": {
- "x": 130,
- "y": 558,
- "w": 20,
- "h": 22
- }
- },
- {
- "filename": "739",
+ "filename": "757",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4261,19 +4156,61 @@
},
"spriteSourceSize": {
"x": 11,
- "y": 6,
- "w": 20,
+ "y": 9,
+ "w": 19,
+ "h": 18
+ },
+ "frame": {
+ "x": 214,
+ "y": 299,
+ "w": 19,
+ "h": 18
+ }
+ },
+ {
+ "filename": "2019",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 5,
+ "w": 21,
"h": 21
},
"frame": {
- "x": 130,
- "y": 580,
- "w": 20,
+ "x": 233,
+ "y": 316,
+ "w": 21,
"h": 21
}
},
{
- "filename": "747",
+ "filename": "757s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 9,
+ "w": 19,
+ "h": 18
+ },
+ "frame": {
+ "x": 214,
+ "y": 317,
+ "w": 19,
+ "h": 18
+ }
+ },
+ {
+ "filename": "790",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4283,39 +4220,18 @@
"spriteSourceSize": {
"x": 10,
"y": 7,
- "w": 22,
- "h": 20
+ "w": 21,
+ "h": 19
},
"frame": {
- "x": 231,
- "y": 340,
- "w": 22,
- "h": 20
+ "x": 191,
+ "y": 121,
+ "w": 21,
+ "h": 19
}
},
{
- "filename": "755s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 14,
- "y": 4,
- "w": 13,
- "h": 24
- },
- "frame": {
- "x": 150,
- "y": 535,
- "w": 13,
- "h": 24
- }
- },
- {
- "filename": "760",
+ "filename": "751",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4324,19 +4240,19 @@
},
"spriteSourceSize": {
"x": 13,
- "y": 4,
- "w": 17,
- "h": 24
+ "y": 8,
+ "w": 14,
+ "h": 20
},
"frame": {
- "x": 150,
- "y": 559,
- "w": 17,
- "h": 24
+ "x": 200,
+ "y": 140,
+ "w": 14,
+ "h": 20
}
},
{
- "filename": "722",
+ "filename": "737",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4346,18 +4262,18 @@
"spriteSourceSize": {
"x": 12,
"y": 8,
- "w": 17,
- "h": 18
+ "w": 18,
+ "h": 19
},
"frame": {
- "x": 150,
- "y": 583,
- "w": 17,
- "h": 18
+ "x": 214,
+ "y": 335,
+ "w": 18,
+ "h": 19
}
},
{
- "filename": "739s",
+ "filename": "782s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4365,15 +4281,78 @@
"h": 30
},
"spriteSourceSize": {
- "x": 11,
+ "x": 9,
+ "y": 5,
+ "w": 22,
+ "h": 23
+ },
+ "frame": {
+ "x": 232,
+ "y": 337,
+ "w": 22,
+ "h": 23
+ }
+ },
+ {
+ "filename": "767",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 11,
+ "w": 24,
+ "h": 14
+ },
+ "frame": {
+ "x": 131,
+ "y": 514,
+ "w": 24,
+ "h": 14
+ }
+ },
+ {
+ "filename": "767s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 11,
+ "w": 24,
+ "h": 14
+ },
+ "frame": {
+ "x": 128,
+ "y": 528,
+ "w": 24,
+ "h": 14
+ }
+ },
+ {
+ "filename": "738s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
"y": 6,
- "w": 20,
+ "w": 22,
"h": 21
},
"frame": {
- "x": 153,
- "y": 514,
- "w": 20,
+ "x": 129,
+ "y": 542,
+ "w": 22,
"h": 21
}
},
@@ -4392,12 +4371,159 @@
"h": 24
},
"frame": {
- "x": 163,
- "y": 535,
+ "x": 129,
+ "y": 563,
"w": 17,
"h": 24
}
},
+ {
+ "filename": "741s-sensu",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 5,
+ "w": 17,
+ "h": 23
+ },
+ "frame": {
+ "x": 146,
+ "y": 563,
+ "w": 17,
+ "h": 23
+ }
+ },
+ {
+ "filename": "739",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 6,
+ "w": 20,
+ "h": 21
+ },
+ "frame": {
+ "x": 151,
+ "y": 542,
+ "w": 20,
+ "h": 21
+ }
+ },
+ {
+ "filename": "762",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 4,
+ "w": 18,
+ "h": 23
+ },
+ "frame": {
+ "x": 163,
+ "y": 563,
+ "w": 18,
+ "h": 23
+ }
+ },
+ {
+ "filename": "762s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 4,
+ "w": 18,
+ "h": 23
+ },
+ "frame": {
+ "x": 143,
+ "y": 587,
+ "w": 18,
+ "h": 23
+ }
+ },
+ {
+ "filename": "743",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 5,
+ "w": 20,
+ "h": 22
+ },
+ "frame": {
+ "x": 161,
+ "y": 586,
+ "w": 20,
+ "h": 22
+ }
+ },
+ {
+ "filename": "741s-pau",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 6,
+ "w": 18,
+ "h": 22
+ },
+ "frame": {
+ "x": 143,
+ "y": 610,
+ "w": 18,
+ "h": 22
+ }
+ },
+ {
+ "filename": "743s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 5,
+ "w": 20,
+ "h": 22
+ },
+ "frame": {
+ "x": 161,
+ "y": 608,
+ "w": 20,
+ "h": 22
+ }
+ },
{
"filename": "723",
"rotated": false,
@@ -4413,8 +4539,8 @@
"h": 22
},
"frame": {
- "x": 167,
- "y": 559,
+ "x": 154,
+ "y": 467,
"w": 17,
"h": 22
}
@@ -4433,48 +4559,6 @@
"w": 17,
"h": 22
},
- "frame": {
- "x": 167,
- "y": 581,
- "w": 17,
- "h": 22
- }
- },
- {
- "filename": "731",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 12,
- "y": 6,
- "w": 17,
- "h": 22
- },
- "frame": {
- "x": 154,
- "y": 467,
- "w": 17,
- "h": 22
- }
- },
- {
- "filename": "731s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 12,
- "y": 6,
- "w": 17,
- "h": 22
- },
"frame": {
"x": 154,
"y": 489,
@@ -4483,7 +4567,7 @@
}
},
{
- "filename": "746",
+ "filename": "722",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4492,36 +4576,15 @@
},
"spriteSourceSize": {
"x": 12,
- "y": 11,
- "w": 18,
- "h": 13
+ "y": 8,
+ "w": 17,
+ "h": 18
},
"frame": {
- "x": 125,
- "y": 601,
- "w": 18,
- "h": 13
- }
- },
- {
- "filename": "743s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 12,
- "y": 5,
- "w": 20,
- "h": 22
- },
- "frame": {
- "x": 126,
- "y": 614,
- "w": 20,
- "h": 22
+ "x": 155,
+ "y": 511,
+ "w": 17,
+ "h": 18
}
},
{
@@ -4539,77 +4602,14 @@
"h": 13
},
"frame": {
- "x": 143,
- "y": 601,
+ "x": 152,
+ "y": 529,
"w": 18,
"h": 13
}
},
{
- "filename": "744",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 11,
- "y": 6,
- "w": 19,
- "h": 22
- },
- "frame": {
- "x": 146,
- "y": 614,
- "w": 19,
- "h": 22
- }
- },
- {
- "filename": "744s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 11,
- "y": 6,
- "w": 19,
- "h": 22
- },
- "frame": {
- "x": 165,
- "y": 603,
- "w": 19,
- "h": 22
- }
- },
- {
- "filename": "771",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 13,
- "y": 11,
- "w": 18,
- "h": 13
- },
- "frame": {
- "x": 165,
- "y": 625,
- "w": 18,
- "h": 13
- }
- },
- {
- "filename": "747s",
+ "filename": "747",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4629,6 +4629,48 @@
"h": 20
}
},
+ {
+ "filename": "747s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 22,
+ "h": 20
+ },
+ "frame": {
+ "x": 177,
+ "y": 346,
+ "w": 22,
+ "h": 20
+ }
+ },
+ {
+ "filename": "2050",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 10,
+ "w": 15,
+ "h": 18
+ },
+ "frame": {
+ "x": 199,
+ "y": 346,
+ "w": 15,
+ "h": 18
+ }
+ },
{
"filename": "2037",
"rotated": false,
@@ -4644,8 +4686,8 @@
"h": 21
},
"frame": {
- "x": 177,
- "y": 346,
+ "x": 155,
+ "y": 366,
"w": 22,
"h": 21
}
@@ -4665,14 +4707,14 @@
"h": 21
},
"frame": {
- "x": 199,
- "y": 346,
+ "x": 177,
+ "y": 366,
"w": 22,
"h": 21
}
},
{
- "filename": "754",
+ "filename": "731",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4680,60 +4722,18 @@
"h": 30
},
"spriteSourceSize": {
- "x": 10,
+ "x": 12,
"y": 6,
- "w": 20,
+ "w": 17,
"h": 22
},
"frame": {
- "x": 155,
- "y": 366,
- "w": 20,
+ "x": 199,
+ "y": 364,
+ "w": 17,
"h": 22
}
},
- {
- "filename": "2019",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 5,
- "w": 21,
- "h": 21
- },
- "frame": {
- "x": 175,
- "y": 367,
- "w": 21,
- "h": 21
- }
- },
- {
- "filename": "2019s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 5,
- "w": 21,
- "h": 21
- },
- "frame": {
- "x": 196,
- "y": 367,
- "w": 21,
- "h": 21
- }
- },
{
"filename": "775",
"rotated": false,
@@ -4750,13 +4750,13 @@
},
"frame": {
"x": 155,
- "y": 388,
+ "y": 387,
"w": 21,
"h": 20
}
},
{
- "filename": "754s",
+ "filename": "754",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4771,7 +4771,7 @@
},
"frame": {
"x": 154,
- "y": 408,
+ "y": 407,
"w": 20,
"h": 22
}
@@ -4792,13 +4792,76 @@
},
"frame": {
"x": 176,
- "y": 388,
+ "y": 387,
"w": 21,
"h": 20
}
},
{
- "filename": "2052",
+ "filename": "754s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 6,
+ "w": 20,
+ "h": 22
+ },
+ "frame": {
+ "x": 174,
+ "y": 407,
+ "w": 20,
+ "h": 22
+ }
+ },
+ {
+ "filename": "778s-busted",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 12,
+ "w": 21,
+ "h": 16
+ },
+ "frame": {
+ "x": 154,
+ "y": 429,
+ "w": 21,
+ "h": 16
+ }
+ },
+ {
+ "filename": "731s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 6,
+ "w": 17,
+ "h": 22
+ },
+ "frame": {
+ "x": 156,
+ "y": 445,
+ "w": 17,
+ "h": 22
+ }
+ },
+ {
+ "filename": "739s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4807,17 +4870,80 @@
},
"spriteSourceSize": {
"x": 11,
+ "y": 6,
+ "w": 20,
+ "h": 21
+ },
+ "frame": {
+ "x": 175,
+ "y": 429,
+ "w": 20,
+ "h": 21
+ }
+ },
+ {
+ "filename": "779",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
"y": 7,
"w": 21,
+ "h": 20
+ },
+ "frame": {
+ "x": 173,
+ "y": 450,
+ "w": 21,
+ "h": 20
+ }
+ },
+ {
+ "filename": "2019s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 5,
+ "w": 21,
"h": 21
},
"frame": {
- "x": 174,
- "y": 408,
+ "x": 171,
+ "y": 470,
"w": 21,
"h": 21
}
},
+ {
+ "filename": "779s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 21,
+ "h": 20
+ },
+ "frame": {
+ "x": 171,
+ "y": 491,
+ "w": 21,
+ "h": 20
+ }
+ },
{
"filename": "741-pompom",
"rotated": false,
@@ -4833,14 +4959,98 @@
"h": 20
},
"frame": {
- "x": 197,
- "y": 388,
+ "x": 172,
+ "y": 511,
"w": 20,
"h": 20
}
},
{
- "filename": "2052s",
+ "filename": "761",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 8,
+ "w": 16,
+ "h": 19
+ },
+ "frame": {
+ "x": 216,
+ "y": 354,
+ "w": 16,
+ "h": 19
+ }
+ },
+ {
+ "filename": "790s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 21,
+ "h": 19
+ },
+ "frame": {
+ "x": 232,
+ "y": 360,
+ "w": 21,
+ "h": 19
+ }
+ },
+ {
+ "filename": "761s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 8,
+ "w": 16,
+ "h": 19
+ },
+ "frame": {
+ "x": 216,
+ "y": 373,
+ "w": 16,
+ "h": 19
+ }
+ },
+ {
+ "filename": "2027",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 10,
+ "w": 21,
+ "h": 18
+ },
+ "frame": {
+ "x": 232,
+ "y": 379,
+ "w": 21,
+ "h": 18
+ }
+ },
+ {
+ "filename": "2052",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -4854,33 +5064,12 @@
"h": 21
},
"frame": {
- "x": 195,
- "y": 408,
+ "x": 171,
+ "y": 531,
"w": 21,
"h": 21
}
},
- {
- "filename": "771s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 13,
- "y": 11,
- "w": 18,
- "h": 13
- },
- "frame": {
- "x": 154,
- "y": 430,
- "w": 18,
- "h": 13
- }
- },
{
"filename": "778",
"rotated": false,
@@ -4896,8 +5085,8 @@
"h": 22
},
"frame": {
- "x": 156,
- "y": 443,
+ "x": 194,
+ "y": 407,
"w": 17,
"h": 22
}
@@ -4917,33 +5106,12 @@
"h": 22
},
"frame": {
- "x": 217,
- "y": 367,
+ "x": 195,
+ "y": 429,
"w": 17,
"h": 22
}
},
- {
- "filename": "741s-pompom",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 7,
- "w": 20,
- "h": 20
- },
- "frame": {
- "x": 234,
- "y": 360,
- "w": 20,
- "h": 20
- }
- },
{
"filename": "728",
"rotated": false,
@@ -4959,75 +5127,12 @@
"h": 20
},
"frame": {
- "x": 217,
- "y": 389,
+ "x": 197,
+ "y": 387,
"w": 17,
"h": 20
}
},
- {
- "filename": "742",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 12,
- "y": 5,
- "w": 19,
- "h": 20
- },
- "frame": {
- "x": 234,
- "y": 380,
- "w": 19,
- "h": 20
- }
- },
- {
- "filename": "742s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 12,
- "y": 5,
- "w": 19,
- "h": 20
- },
- "frame": {
- "x": 216,
- "y": 409,
- "w": 19,
- "h": 20
- }
- },
- {
- "filename": "757s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 11,
- "y": 9,
- "w": 19,
- "h": 18
- },
- "frame": {
- "x": 235,
- "y": 400,
- "w": 19,
- "h": 18
- }
- },
{
"filename": "737s",
"rotated": false,
@@ -5043,14 +5148,35 @@
"h": 19
},
"frame": {
- "x": 235,
- "y": 418,
+ "x": 194,
+ "y": 451,
"w": 18,
"h": 19
}
},
{
- "filename": "779",
+ "filename": "2052s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 7,
+ "w": 21,
+ "h": 21
+ },
+ "frame": {
+ "x": 192,
+ "y": 470,
+ "w": 21,
+ "h": 21
+ }
+ },
+ {
+ "filename": "741s-pompom",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -5060,121 +5186,16 @@
"spriteSourceSize": {
"x": 10,
"y": 7,
- "w": 21,
+ "w": 20,
"h": 20
},
"frame": {
- "x": 174,
- "y": 429,
- "w": 21,
+ "x": 192,
+ "y": 491,
+ "w": 20,
"h": 20
}
},
- {
- "filename": "779s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 7,
- "w": 21,
- "h": 20
- },
- "frame": {
- "x": 195,
- "y": 429,
- "w": 21,
- "h": 20
- }
- },
- {
- "filename": "728s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 13,
- "y": 8,
- "w": 17,
- "h": 20
- },
- "frame": {
- "x": 216,
- "y": 429,
- "w": 17,
- "h": 20
- }
- },
- {
- "filename": "790",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 7,
- "w": 21,
- "h": 19
- },
- "frame": {
- "x": 233,
- "y": 437,
- "w": 21,
- "h": 19
- }
- },
- {
- "filename": "790s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 7,
- "w": 21,
- "h": 19
- },
- "frame": {
- "x": 173,
- "y": 449,
- "w": 21,
- "h": 19
- }
- },
- {
- "filename": "2027",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 10,
- "y": 10,
- "w": 21,
- "h": 18
- },
- "frame": {
- "x": 194,
- "y": 449,
- "w": 21,
- "h": 18
- }
- },
{
"filename": "2027s",
"rotated": false,
@@ -5190,8 +5211,8 @@
"h": 18
},
"frame": {
- "x": 171,
- "y": 468,
+ "x": 192,
+ "y": 511,
"w": 21,
"h": 18
}
@@ -5211,14 +5232,14 @@
"h": 18
},
"frame": {
- "x": 171,
- "y": 486,
+ "x": 192,
+ "y": 529,
"w": 21,
"h": 18
}
},
{
- "filename": "722s",
+ "filename": "771",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -5226,16 +5247,16 @@
"h": 30
},
"spriteSourceSize": {
- "x": 12,
- "y": 8,
- "w": 17,
- "h": 18
+ "x": 13,
+ "y": 11,
+ "w": 18,
+ "h": 13
},
"frame": {
- "x": 215,
- "y": 449,
- "w": 17,
- "h": 18
+ "x": 214,
+ "y": 392,
+ "w": 18,
+ "h": 13
}
},
{
@@ -5254,11 +5275,53 @@
},
"frame": {
"x": 232,
- "y": 456,
+ "y": 397,
"w": 21,
"h": 18
}
},
+ {
+ "filename": "771s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 11,
+ "w": 18,
+ "h": 13
+ },
+ "frame": {
+ "x": 214,
+ "y": 405,
+ "w": 18,
+ "h": 13
+ }
+ },
+ {
+ "filename": "728s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 13,
+ "y": 8,
+ "w": 17,
+ "h": 20
+ },
+ "frame": {
+ "x": 212,
+ "y": 418,
+ "w": 17,
+ "h": 20
+ }
+ },
{
"filename": "741",
"rotated": false,
@@ -5274,14 +5337,14 @@
"h": 19
},
"frame": {
- "x": 173,
- "y": 504,
+ "x": 212,
+ "y": 438,
"w": 17,
"h": 19
}
},
{
- "filename": "751",
+ "filename": "736",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -5289,16 +5352,16 @@
"h": 30
},
"spriteSourceSize": {
- "x": 13,
- "y": 8,
- "w": 14,
- "h": 20
+ "x": 12,
+ "y": 12,
+ "w": 17,
+ "h": 13
},
"frame": {
- "x": 192,
- "y": 468,
- "w": 14,
- "h": 20
+ "x": 212,
+ "y": 457,
+ "w": 17,
+ "h": 13
}
},
{
@@ -5316,8 +5379,8 @@
"h": 19
},
"frame": {
- "x": 206,
- "y": 467,
+ "x": 213,
+ "y": 470,
"w": 17,
"h": 19
}
@@ -5337,12 +5400,54 @@
"h": 20
},
"frame": {
- "x": 192,
- "y": 488,
+ "x": 229,
+ "y": 418,
"w": 14,
"h": 20
}
},
+ {
+ "filename": "753",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 8,
+ "w": 14,
+ "h": 19
+ },
+ "frame": {
+ "x": 229,
+ "y": 438,
+ "w": 14,
+ "h": 19
+ }
+ },
+ {
+ "filename": "736s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 12,
+ "w": 17,
+ "h": 13
+ },
+ "frame": {
+ "x": 229,
+ "y": 457,
+ "w": 17,
+ "h": 13
+ }
+ },
{
"filename": "759",
"rotated": false,
@@ -5358,12 +5463,33 @@
"h": 19
},
"frame": {
- "x": 206,
- "y": 486,
+ "x": 230,
+ "y": 470,
"w": 17,
"h": 19
}
},
+ {
+ "filename": "722s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 8,
+ "w": 17,
+ "h": 18
+ },
+ "frame": {
+ "x": 192,
+ "y": 547,
+ "w": 17,
+ "h": 18
+ }
+ },
{
"filename": "759s",
"rotated": false,
@@ -5379,33 +5505,12 @@
"h": 19
},
"frame": {
- "x": 190,
- "y": 508,
+ "x": 181,
+ "y": 565,
"w": 17,
"h": 19
}
},
- {
- "filename": "761",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 13,
- "y": 8,
- "w": 16,
- "h": 19
- },
- "frame": {
- "x": 207,
- "y": 505,
- "w": 16,
- "h": 19
- }
- },
{
"filename": "777",
"rotated": false,
@@ -5421,33 +5526,12 @@
"h": 19
},
"frame": {
- "x": 223,
- "y": 474,
+ "x": 181,
+ "y": 584,
"w": 17,
"h": 19
}
},
- {
- "filename": "753",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 14,
- "y": 8,
- "w": 14,
- "h": 19
- },
- "frame": {
- "x": 240,
- "y": 474,
- "w": 14,
- "h": 19
- }
- },
{
"filename": "777s",
"rotated": false,
@@ -5463,75 +5547,12 @@
"h": 19
},
"frame": {
- "x": 223,
- "y": 493,
+ "x": 181,
+ "y": 603,
"w": 17,
"h": 19
}
},
- {
- "filename": "753s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 14,
- "y": 8,
- "w": 14,
- "h": 19
- },
- "frame": {
- "x": 240,
- "y": 493,
- "w": 14,
- "h": 19
- }
- },
- {
- "filename": "736",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 12,
- "y": 12,
- "w": 17,
- "h": 13
- },
- "frame": {
- "x": 223,
- "y": 512,
- "w": 17,
- "h": 13
- }
- },
- {
- "filename": "761s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 13,
- "y": 8,
- "w": 16,
- "h": 19
- },
- "frame": {
- "x": 207,
- "y": 524,
- "w": 16,
- "h": 19
- }
- },
{
"filename": "774-blue",
"rotated": false,
@@ -5547,12 +5568,33 @@
"h": 18
},
"frame": {
- "x": 223,
- "y": 525,
+ "x": 181,
+ "y": 622,
"w": 17,
"h": 18
}
},
+ {
+ "filename": "753s",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 14,
+ "y": 8,
+ "w": 14,
+ "h": 19
+ },
+ "frame": {
+ "x": 198,
+ "y": 565,
+ "w": 14,
+ "h": 19
+ }
+ },
{
"filename": "774-green",
"rotated": false,
@@ -5568,33 +5610,12 @@
"h": 18
},
"frame": {
- "x": 180,
- "y": 527,
+ "x": 198,
+ "y": 584,
"w": 17,
"h": 18
}
},
- {
- "filename": "736s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 12,
- "y": 12,
- "w": 17,
- "h": 13
- },
- "frame": {
- "x": 180,
- "y": 545,
- "w": 17,
- "h": 13
- }
- },
{
"filename": "774-indigo",
"rotated": false,
@@ -5610,8 +5631,8 @@
"h": 18
},
"frame": {
- "x": 184,
- "y": 558,
+ "x": 198,
+ "y": 602,
"w": 17,
"h": 18
}
@@ -5631,8 +5652,8 @@
"h": 18
},
"frame": {
- "x": 184,
- "y": 576,
+ "x": 198,
+ "y": 620,
"w": 17,
"h": 18
}
@@ -5652,8 +5673,8 @@
"h": 18
},
"frame": {
- "x": 184,
- "y": 594,
+ "x": 209,
+ "y": 547,
"w": 17,
"h": 18
}
@@ -5673,8 +5694,8 @@
"h": 18
},
"frame": {
- "x": 184,
- "y": 612,
+ "x": 212,
+ "y": 565,
"w": 17,
"h": 18
}
@@ -5694,8 +5715,8 @@
"h": 18
},
"frame": {
- "x": 201,
- "y": 543,
+ "x": 215,
+ "y": 583,
"w": 17,
"h": 18
}
@@ -5715,29 +5736,8 @@
"h": 18
},
"frame": {
- "x": 201,
- "y": 561,
- "w": 17,
- "h": 18
- }
- },
- {
- "filename": "774s",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 11,
- "y": 8,
- "w": 17,
- "h": 18
- },
- "frame": {
- "x": 201,
- "y": 561,
+ "x": 215,
+ "y": 601,
"w": 17,
"h": 18
}
@@ -5757,8 +5757,8 @@
"h": 18
},
"frame": {
- "x": 218,
- "y": 543,
+ "x": 215,
+ "y": 619,
"w": 17,
"h": 18
}
@@ -5778,8 +5778,8 @@
"h": 18
},
"frame": {
- "x": 201,
- "y": 579,
+ "x": 212,
+ "y": 491,
"w": 17,
"h": 18
}
@@ -5799,8 +5799,8 @@
"h": 18
},
"frame": {
- "x": 218,
- "y": 561,
+ "x": 229,
+ "y": 489,
"w": 17,
"h": 18
}
@@ -5820,8 +5820,8 @@
"h": 18
},
"frame": {
- "x": 201,
- "y": 597,
+ "x": 213,
+ "y": 509,
"w": 17,
"h": 18
}
@@ -5841,8 +5841,8 @@
"h": 18
},
"frame": {
- "x": 218,
- "y": 579,
+ "x": 213,
+ "y": 527,
"w": 17,
"h": 18
}
@@ -5862,8 +5862,8 @@
"h": 18
},
"frame": {
- "x": 218,
- "y": 597,
+ "x": 230,
+ "y": 507,
"w": 17,
"h": 18
}
@@ -5883,14 +5883,14 @@
"h": 18
},
"frame": {
- "x": 201,
- "y": 615,
+ "x": 230,
+ "y": 525,
"w": 17,
"h": 18
}
},
{
- "filename": "808",
+ "filename": "774s",
"rotated": false,
"trimmed": true,
"sourceSize": {
@@ -5898,36 +5898,15 @@
"h": 30
},
"spriteSourceSize": {
- "x": 12,
- "y": 11,
+ "x": 11,
+ "y": 8,
"w": 17,
- "h": 17
- },
- "frame": {
- "x": 218,
- "y": 615,
- "w": 17,
- "h": 17
- }
- },
- {
- "filename": "2050",
- "rotated": false,
- "trimmed": true,
- "sourceSize": {
- "w": 40,
- "h": 30
- },
- "spriteSourceSize": {
- "x": 13,
- "y": 10,
- "w": 15,
"h": 18
},
"frame": {
- "x": 235,
- "y": 543,
- "w": 15,
+ "x": 226,
+ "y": 545,
+ "w": 17,
"h": 18
}
},
@@ -5946,12 +5925,33 @@
"h": 18
},
"frame": {
- "x": 235,
- "y": 561,
+ "x": 229,
+ "y": 563,
"w": 15,
"h": 18
}
},
+ {
+ "filename": "808",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 11,
+ "w": 17,
+ "h": 17
+ },
+ "frame": {
+ "x": 232,
+ "y": 581,
+ "w": 17,
+ "h": 17
+ }
+ },
{
"filename": "808s",
"rotated": false,
@@ -5967,8 +5967,8 @@
"h": 17
},
"frame": {
- "x": 235,
- "y": 579,
+ "x": 232,
+ "y": 598,
"w": 17,
"h": 17
}
@@ -5979,6 +5979,6 @@
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
"version": "3.0",
- "smartupdate": "$TexturePacker:SmartUpdate:f72305285a06fed16a59cb484bbe84cc:f4fccdeb31a6780c95ee311ebbae5eb0:2e7c5873ead8fd8fce82a0b3fcc86b42$"
+ "smartupdate": "$TexturePacker:SmartUpdate:c38095b3202450975a37d1aed2dcc8d4:c27a941914c4e4cca37e27cc54ccb54f:2e7c5873ead8fd8fce82a0b3fcc86b42$"
}
}
diff --git a/public/images/pokemon_icons_7.png b/public/images/pokemon_icons_7.png
index 5943b9a89f5..88320044867 100644
Binary files a/public/images/pokemon_icons_7.png and b/public/images/pokemon_icons_7.png differ
diff --git a/public/images/pokemon_icons_7v.json b/public/images/pokemon_icons_7v.json
new file mode 100644
index 00000000000..98dd0ccae05
--- /dev/null
+++ b/public/images/pokemon_icons_7v.json
@@ -0,0 +1,209 @@
+{
+ "textures": [
+ {
+ "image": "pokemon_icons_7v.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 80,
+ "h": 80
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "791_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 5,
+ "y": 1,
+ "w": 31,
+ "h": 29
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 31,
+ "h": 29
+ }
+ },
+ {
+ "filename": "748_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 4,
+ "w": 28,
+ "h": 26
+ },
+ "frame": {
+ "x": 0,
+ "y": 29,
+ "w": 28,
+ "h": 26
+ }
+ },
+ {
+ "filename": "748_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 4,
+ "w": 28,
+ "h": 26
+ },
+ "frame": {
+ "x": 28,
+ "y": 29,
+ "w": 28,
+ "h": 26
+ }
+ },
+ {
+ "filename": "789_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 5,
+ "w": 25,
+ "h": 22
+ },
+ "frame": {
+ "x": 31,
+ "y": 0,
+ "w": 25,
+ "h": 22
+ }
+ },
+ {
+ "filename": "802_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 3,
+ "w": 24,
+ "h": 26
+ },
+ "frame": {
+ "x": 56,
+ "y": 0,
+ "w": 24,
+ "h": 26
+ }
+ },
+ {
+ "filename": "802_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 3,
+ "w": 24,
+ "h": 26
+ },
+ "frame": {
+ "x": 56,
+ "y": 26,
+ "w": 24,
+ "h": 26
+ }
+ },
+ {
+ "filename": "802_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 3,
+ "w": 24,
+ "h": 26
+ },
+ "frame": {
+ "x": 56,
+ "y": 52,
+ "w": 24,
+ "h": 26
+ }
+ },
+ {
+ "filename": "747_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 0,
+ "y": 55,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "747_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 6,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 24,
+ "y": 55,
+ "w": 24,
+ "h": 22
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:f87860b9bcc6269cb0d1ea2b59a5c866:3b9a5f84cddb0349b5a9decea7728980:d5975df27e1e94206a68aa1fd3c2c8d0$"
+ }
+}
diff --git a/public/images/pokemon_icons_7v.png b/public/images/pokemon_icons_7v.png
new file mode 100644
index 00000000000..d6d4192cf7c
Binary files /dev/null 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
new file mode 100644
index 00000000000..bac2cd5feac
--- /dev/null
+++ b/public/images/pokemon_icons_8v.json
@@ -0,0 +1,902 @@
+{
+ "textures": [
+ {
+ "image": "pokemon_icons_8v.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 161,
+ "h": 161
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "887_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 32,
+ "h": 28
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 32,
+ "h": 28
+ }
+ },
+ {
+ "filename": "887_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 4,
+ "y": 1,
+ "w": 32,
+ "h": 28
+ },
+ "frame": {
+ "x": 0,
+ "y": 28,
+ "w": 32,
+ "h": 28
+ }
+ },
+ {
+ "filename": "6706_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 3,
+ "w": 28,
+ "h": 27
+ },
+ "frame": {
+ "x": 32,
+ "y": 0,
+ "w": 28,
+ "h": 27
+ }
+ },
+ {
+ "filename": "6706_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 3,
+ "w": 28,
+ "h": 27
+ },
+ "frame": {
+ "x": 0,
+ "y": 56,
+ "w": 28,
+ "h": 27
+ }
+ },
+ {
+ "filename": "886_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 2,
+ "w": 28,
+ "h": 26
+ },
+ "frame": {
+ "x": 32,
+ "y": 27,
+ "w": 28,
+ "h": 26
+ }
+ },
+ {
+ "filename": "886_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 2,
+ "w": 28,
+ "h": 26
+ },
+ "frame": {
+ "x": 60,
+ "y": 0,
+ "w": 28,
+ "h": 26
+ }
+ },
+ {
+ "filename": "886_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 2,
+ "w": 28,
+ "h": 26
+ },
+ "frame": {
+ "x": 0,
+ "y": 83,
+ "w": 28,
+ "h": 26
+ }
+ },
+ {
+ "filename": "900_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 2,
+ "w": 27,
+ "h": 27
+ },
+ "frame": {
+ "x": 60,
+ "y": 26,
+ "w": 27,
+ "h": 27
+ }
+ },
+ {
+ "filename": "900_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 2,
+ "w": 27,
+ "h": 27
+ },
+ "frame": {
+ "x": 0,
+ "y": 109,
+ "w": 27,
+ "h": 27
+ }
+ },
+ {
+ "filename": "6571_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 4,
+ "w": 27,
+ "h": 25
+ },
+ "frame": {
+ "x": 0,
+ "y": 136,
+ "w": 27,
+ "h": 25
+ }
+ },
+ {
+ "filename": "6571_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 4,
+ "w": 27,
+ "h": 25
+ },
+ "frame": {
+ "x": 88,
+ "y": 0,
+ "w": 27,
+ "h": 25
+ }
+ },
+ {
+ "filename": "873_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 3,
+ "w": 27,
+ "h": 24
+ },
+ "frame": {
+ "x": 115,
+ "y": 0,
+ "w": 27,
+ "h": 24
+ }
+ },
+ {
+ "filename": "877-hangry_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 3,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 142,
+ "y": 0,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "877-hangry_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 3,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 142,
+ "y": 23,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "873_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 3,
+ "w": 27,
+ "h": 24
+ },
+ "frame": {
+ "x": 115,
+ "y": 24,
+ "w": 27,
+ "h": 24
+ }
+ },
+ {
+ "filename": "873_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 6,
+ "y": 3,
+ "w": 27,
+ "h": 24
+ },
+ "frame": {
+ "x": 88,
+ "y": 25,
+ "w": 27,
+ "h": 24
+ }
+ },
+ {
+ "filename": "877-hangry_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 3,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 142,
+ "y": 46,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "858_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 24,
+ "h": 27
+ },
+ "frame": {
+ "x": 28,
+ "y": 56,
+ "w": 24,
+ "h": 27
+ }
+ },
+ {
+ "filename": "858_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 1,
+ "w": 24,
+ "h": 27
+ },
+ "frame": {
+ "x": 28,
+ "y": 83,
+ "w": 24,
+ "h": 27
+ }
+ },
+ {
+ "filename": "857_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 3,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 27,
+ "y": 110,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "857_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 3,
+ "w": 24,
+ "h": 24
+ },
+ "frame": {
+ "x": 27,
+ "y": 134,
+ "w": 24,
+ "h": 24
+ }
+ },
+ {
+ "filename": "856_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 2,
+ "w": 21,
+ "h": 25
+ },
+ "frame": {
+ "x": 52,
+ "y": 53,
+ "w": 21,
+ "h": 25
+ }
+ },
+ {
+ "filename": "856_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 2,
+ "w": 21,
+ "h": 25
+ },
+ "frame": {
+ "x": 52,
+ "y": 78,
+ "w": 21,
+ "h": 25
+ }
+ },
+ {
+ "filename": "6549_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 4,
+ "w": 18,
+ "h": 25
+ },
+ "frame": {
+ "x": 73,
+ "y": 53,
+ "w": 18,
+ "h": 25
+ }
+ },
+ {
+ "filename": "6549_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 4,
+ "w": 18,
+ "h": 25
+ },
+ "frame": {
+ "x": 73,
+ "y": 78,
+ "w": 18,
+ "h": 25
+ }
+ },
+ {
+ "filename": "4264_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 4,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 91,
+ "y": 49,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "4264_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 4,
+ "w": 24,
+ "h": 22
+ },
+ "frame": {
+ "x": 115,
+ "y": 48,
+ "w": 24,
+ "h": 22
+ }
+ },
+ {
+ "filename": "6570_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 5,
+ "w": 20,
+ "h": 24
+ },
+ "frame": {
+ "x": 91,
+ "y": 71,
+ "w": 20,
+ "h": 24
+ }
+ },
+ {
+ "filename": "885_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 26,
+ "h": 19
+ },
+ "frame": {
+ "x": 52,
+ "y": 103,
+ "w": 26,
+ "h": 19
+ }
+ },
+ {
+ "filename": "885_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 26,
+ "h": 19
+ },
+ "frame": {
+ "x": 51,
+ "y": 122,
+ "w": 26,
+ "h": 19
+ }
+ },
+ {
+ "filename": "885_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 7,
+ "y": 5,
+ "w": 26,
+ "h": 19
+ },
+ "frame": {
+ "x": 51,
+ "y": 141,
+ "w": 26,
+ "h": 19
+ }
+ },
+ {
+ "filename": "877_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 3,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 78,
+ "y": 103,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "6570_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 5,
+ "w": 20,
+ "h": 24
+ },
+ "frame": {
+ "x": 77,
+ "y": 126,
+ "w": 20,
+ "h": 24
+ }
+ },
+ {
+ "filename": "6705_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 5,
+ "w": 17,
+ "h": 24
+ },
+ "frame": {
+ "x": 97,
+ "y": 95,
+ "w": 17,
+ "h": 24
+ }
+ },
+ {
+ "filename": "6705_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 12,
+ "y": 5,
+ "w": 17,
+ "h": 24
+ },
+ "frame": {
+ "x": 97,
+ "y": 119,
+ "w": 17,
+ "h": 24
+ }
+ },
+ {
+ "filename": "4263_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 24,
+ "h": 18
+ },
+ "frame": {
+ "x": 97,
+ "y": 143,
+ "w": 24,
+ "h": 18
+ }
+ },
+ {
+ "filename": "877_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 3,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 111,
+ "y": 71,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "877_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 3,
+ "w": 19,
+ "h": 23
+ },
+ "frame": {
+ "x": 114,
+ "y": 94,
+ "w": 19,
+ "h": 23
+ }
+ },
+ {
+ "filename": "4263_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 6,
+ "w": 24,
+ "h": 18
+ },
+ "frame": {
+ "x": 114,
+ "y": 117,
+ "w": 24,
+ "h": 18
+ }
+ },
+ {
+ "filename": "872_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 19,
+ "h": 16
+ },
+ "frame": {
+ "x": 121,
+ "y": 135,
+ "w": 19,
+ "h": 16
+ }
+ },
+ {
+ "filename": "872_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 19,
+ "h": 16
+ },
+ "frame": {
+ "x": 130,
+ "y": 70,
+ "w": 19,
+ "h": 16
+ }
+ },
+ {
+ "filename": "872_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 10,
+ "y": 7,
+ "w": 19,
+ "h": 16
+ },
+ "frame": {
+ "x": 133,
+ "y": 86,
+ "w": 19,
+ "h": 16
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:24c9149f93bc0780ddac7e68b7cdf2ee:a47e40f05fefa08be7ce6c997b27cd04:ec5f05e7f30cd98f74db0c2326109fd3$"
+ }
+}
diff --git a/public/images/pokemon_icons_8v.png b/public/images/pokemon_icons_8v.png
new file mode 100644
index 00000000000..00731a0f016
Binary files /dev/null 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
new file mode 100644
index 00000000000..0e39461650b
--- /dev/null
+++ b/public/images/pokemon_icons_9v.json
@@ -0,0 +1,356 @@
+{
+ "textures": [
+ {
+ "image": "pokemon_icons_9v.png",
+ "format": "RGBA8888",
+ "size": {
+ "w": 109,
+ "h": 109
+ },
+ "scale": 1,
+ "frames": [
+ {
+ "filename": "999_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 24,
+ "h": 30
+ },
+ "frame": {
+ "x": 0,
+ "y": 0,
+ "w": 24,
+ "h": 30
+ }
+ },
+ {
+ "filename": "999_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 24,
+ "h": 30
+ },
+ "frame": {
+ "x": 0,
+ "y": 30,
+ "w": 24,
+ "h": 30
+ }
+ },
+ {
+ "filename": "999_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 24,
+ "h": 30
+ },
+ "frame": {
+ "x": 0,
+ "y": 60,
+ "w": 24,
+ "h": 30
+ }
+ },
+ {
+ "filename": "1000_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 24,
+ "h": 29
+ },
+ "frame": {
+ "x": 24,
+ "y": 0,
+ "w": 24,
+ "h": 29
+ }
+ },
+ {
+ "filename": "1000_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 24,
+ "h": 29
+ },
+ "frame": {
+ "x": 48,
+ "y": 0,
+ "w": 24,
+ "h": 29
+ }
+ },
+ {
+ "filename": "1000_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 8,
+ "y": 0,
+ "w": 24,
+ "h": 29
+ },
+ "frame": {
+ "x": 72,
+ "y": 0,
+ "w": 24,
+ "h": 29
+ }
+ },
+ {
+ "filename": "987_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 3,
+ "w": 26,
+ "h": 26
+ },
+ "frame": {
+ "x": 24,
+ "y": 29,
+ "w": 26,
+ "h": 26
+ }
+ },
+ {
+ "filename": "987_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 3,
+ "w": 26,
+ "h": 26
+ },
+ "frame": {
+ "x": 24,
+ "y": 55,
+ "w": 26,
+ "h": 26
+ }
+ },
+ {
+ "filename": "987_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 3,
+ "w": 26,
+ "h": 26
+ },
+ "frame": {
+ "x": 24,
+ "y": 81,
+ "w": 26,
+ "h": 26
+ }
+ },
+ {
+ "filename": "962_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 2,
+ "w": 21,
+ "h": 27
+ },
+ "frame": {
+ "x": 50,
+ "y": 29,
+ "w": 21,
+ "h": 27
+ }
+ },
+ {
+ "filename": "962_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 2,
+ "w": 21,
+ "h": 27
+ },
+ "frame": {
+ "x": 71,
+ "y": 29,
+ "w": 21,
+ "h": 27
+ }
+ },
+ {
+ "filename": "973_1",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 1,
+ "w": 17,
+ "h": 28
+ },
+ "frame": {
+ "x": 92,
+ "y": 29,
+ "w": 17,
+ "h": 28
+ }
+ },
+ {
+ "filename": "962_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 2,
+ "w": 21,
+ "h": 27
+ },
+ "frame": {
+ "x": 50,
+ "y": 56,
+ "w": 21,
+ "h": 27
+ }
+ },
+ {
+ "filename": "973_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 1,
+ "w": 17,
+ "h": 28
+ },
+ "frame": {
+ "x": 71,
+ "y": 56,
+ "w": 17,
+ "h": 28
+ }
+ },
+ {
+ "filename": "973_3",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 11,
+ "y": 1,
+ "w": 17,
+ "h": 28
+ },
+ "frame": {
+ "x": 88,
+ "y": 57,
+ "w": 17,
+ "h": 28
+ }
+ },
+ {
+ "filename": "967_2",
+ "rotated": false,
+ "trimmed": true,
+ "sourceSize": {
+ "w": 40,
+ "h": 30
+ },
+ "spriteSourceSize": {
+ "x": 9,
+ "y": 8,
+ "w": 22,
+ "h": 21
+ },
+ "frame": {
+ "x": 50,
+ "y": 84,
+ "w": 22,
+ "h": 21
+ }
+ }
+ ]
+ }
+ ],
+ "meta": {
+ "app": "https://www.codeandweb.com/texturepacker",
+ "version": "3.0",
+ "smartupdate": "$TexturePacker:SmartUpdate:9683a313d5ac18db632fb677a38ed11c:8e6ba9eced08bb11299aadeb742c10ba:3ec5c0bc286c296cfb7fa30a8b06f3da$"
+ }
+}
diff --git a/public/images/pokemon_icons_9v.png b/public/images/pokemon_icons_9v.png
new file mode 100644
index 00000000000..58b9b8b0c69
Binary files /dev/null and b/public/images/pokemon_icons_9v.png differ
diff --git a/public/images/ui/legacy/shiny.png b/public/images/ui/legacy/shiny.png
index 04dad2a279e..26d7814fb0b 100644
Binary files a/public/images/ui/legacy/shiny.png and b/public/images/ui/legacy/shiny.png differ
diff --git a/public/images/ui/legacy/shiny_small.png b/public/images/ui/legacy/shiny_small.png
new file mode 100644
index 00000000000..e3d8e260573
Binary files /dev/null and b/public/images/ui/legacy/shiny_small.png differ
diff --git a/public/images/ui/shiny.png b/public/images/ui/shiny.png
index 04dad2a279e..26d7814fb0b 100644
Binary files a/public/images/ui/shiny.png and b/public/images/ui/shiny.png differ
diff --git a/public/images/ui/shiny_small.png b/public/images/ui/shiny_small.png
new file mode 100644
index 00000000000..e3d8e260573
Binary files /dev/null and b/public/images/ui/shiny_small.png differ
diff --git a/src/account.ts b/src/account.ts
index a2ff71a6ed3..afb9aca3593 100644
--- a/src/account.ts
+++ b/src/account.ts
@@ -21,7 +21,7 @@ export function updateUserInfo(): Promise<[boolean, integer]> {
loggedInUser = { username: 'Guest', lastSessionSlot: lastSessionSlot };
return resolve([ true, 200 ]);
}
- Utils.apiFetch('account/info').then(response => {
+ Utils.apiFetch('account/info', true).then(response => {
if (!response.ok) {
resolve([ false, response.status ]);
return;
diff --git a/src/battle-scene.ts b/src/battle-scene.ts
index 35c7951c344..98c1fc83e48 100644
--- a/src/battle-scene.ts
+++ b/src/battle-scene.ts
@@ -15,9 +15,9 @@ import { GameData, PlayerGender } from './system/game-data';
import StarterSelectUiHandler from './ui/starter-select-ui-handler';
import { TextStyle, addTextObject } from './ui/text';
import { Moves } from "./data/enums/moves";
-import { } from "./data/move";
+import { allMoves } from "./data/move";
import { initMoves } from './data/move';
-import { ModifierPoolType, getDefaultModifierTypeForTier, getEnemyModifierTypesForWave } from './modifier/modifier-type';
+import { ModifierPoolType, getDefaultModifierTypeForTier, getEnemyModifierTypesForWave, getModifierPoolForType } from './modifier/modifier-type';
import AbilityBar from './ui/ability-bar';
import { BlockItemTheftAbAttr, DoubleBattleChanceAbAttr, IncrementMovePriorityAbAttr, applyAbAttrs, initAbilities } from './data/ability';
import { Abilities } from "./data/enums/abilities";
@@ -37,7 +37,7 @@ import SettingsUiHandler from './ui/settings-ui-handler';
import MessageUiHandler from './ui/message-ui-handler';
import { Species } from './data/enums/species';
import InvertPostFX from './pipelines/invert';
-import { Achv, ModifierAchv, achvs } from './system/achv';
+import { Achv, ModifierAchv, MoneyAchv, achvs } from './system/achv';
import { Voucher, vouchers } from './system/voucher';
import { Gender } from './data/gender';
import UIPlugin from 'phaser3-rex-plugins/templates/ui/ui-plugin';
@@ -55,9 +55,10 @@ import PokemonInfoContainer from './ui/pokemon-info-container';
import { biomeDepths } from './data/biomes';
import { initTouchControls } from './touch-controls';
import { UiTheme } from './enums/ui-theme';
-import CacheBustedLoaderPlugin from './plugins/cache-busted-loader-plugin';
import { SceneBase } from './scene-base';
import CandyBar from './ui/candy-bar';
+import { Variant, variantData } from './data/variant';
+import { Localizable } from './plugins/i18n';
export const bypassLogin = import.meta.env.VITE_BYPASS_LOGIN === "1";
@@ -101,6 +102,7 @@ export enum Button {
CYCLE_GENDER,
CYCLE_ABILITY,
CYCLE_NATURE,
+ CYCLE_VARIANT,
SPEED_UP,
SLOW_DOWN
}
@@ -127,11 +129,15 @@ export default class BattleScene extends SceneBase {
public windowType: integer = 0;
public experimentalSprites: boolean = false;
public moveAnimations: boolean = true;
+ public expGainsSpeed: integer = 0;
public hpBarSpeed: integer = 0;
public fusionPaletteSwaps: boolean = true;
+ public gamepadSupport: boolean = true;
public enableTouchControls: boolean = false;
public enableVibration: boolean = false;
+ public disableMenu: boolean = false;
+
public gameData: GameData;
public sessionSlotId: integer;
@@ -199,6 +205,27 @@ export default class BattleScene extends SceneBase {
// (i.e. by holding down a button) at a time
private movementButtonLock: Button;
+ // using a dualshock controller as a map
+ private gamepadKeyConfig = {
+ [Button.UP]: 12, // up
+ [Button.DOWN]: 13, // down
+ [Button.LEFT]: 14, // left
+ [Button.RIGHT]: 15, // right
+ [Button.SUBMIT]: 17, // touchpad
+ [Button.ACTION]: 0, // X
+ [Button.CANCEL]: 1, // O
+ [Button.MENU]: 9, // options
+ [Button.CYCLE_SHINY]: 5, // RB
+ [Button.CYCLE_FORM]: 4, // LB
+ [Button.CYCLE_GENDER]: 6, // LT
+ [Button.CYCLE_ABILITY]: 7, // RT
+ [Button.CYCLE_NATURE]: 2, // square
+ [Button.CYCLE_VARIANT]: 3, // triangle
+ [Button.SPEED_UP]: 10, // L3
+ [Button.SLOW_DOWN]: 11 // R3
+ };
+ public gamepadButtonStates: boolean[] = new Array(17).fill(false);
+
public rngCounter: integer = 0;
public rngSeedOverride: string = '';
public rngOffset: integer = 0;
@@ -214,31 +241,20 @@ export default class BattleScene extends SceneBase {
this.phaseQueuePrepend = [];
this.phaseQueuePrependSpliceIndex = -1;
this.nextCommandPhaseQueue = [];
-
- Phaser.Plugins.PluginCache.register('Loader', CacheBustedLoaderPlugin, 'load');
}
loadPokemonAtlas(key: string, atlasPath: string, experimental?: boolean) {
if (experimental === undefined)
experimental = this.experimentalSprites;
- if (experimental) {
- const keyMatch = /^pkmn__(back__)?(shiny__)?(female__)?(\d+)(\-.*?)?$/g.exec(key);
- let k = keyMatch[4];
- if (keyMatch[2])
- k += 's';
- if (keyMatch[1])
- k += 'b';
- if (keyMatch[3])
- k += 'f';
- if (keyMatch[5])
- k += keyMatch[5];
- if (!expSpriteKeys.includes(k))
- experimental = false;
- }
- this.load.atlas(key, `images/pokemon/${experimental ? 'exp/' : ''}${atlasPath}.png`, `images/pokemon/${experimental ? 'exp/' : ''}${atlasPath}.json`);
+ let variant = atlasPath.includes('variant/');
+ if (experimental)
+ experimental = this.hasExpSprite(key);
+ if (variant)
+ atlasPath = atlasPath.replace('variant/', '');
+ this.load.atlas(key, `images/pokemon/${variant ? 'variant/' : ''}${experimental ? 'exp/' : ''}${atlasPath}.png`, `images/pokemon/${variant ? 'variant/' : ''}${experimental ? 'exp/' : ''}${atlasPath}.json`);
}
- preload() {
+ async preload() {
if (DEBUG_RNG) {
const scene = this;
const originalRealInRange = Phaser.Math.RND.realInRange;
@@ -254,6 +270,8 @@ export default class BattleScene extends SceneBase {
}
populateAnims();
+
+ await fetch('./images/pokemon/variant/_masterlist.json').then(res => res.json()).then(v => Object.keys(v).forEach(k => variantData[k] = v[k]));
}
create() {
@@ -437,7 +455,7 @@ export default class BattleScene extends SceneBase {
hideOnComplete: true
});
- this.reset();
+ this.reset(false, false, true);
const ui = new UI(this);
this.uiContainer.add(ui);
@@ -484,15 +502,13 @@ export default class BattleScene extends SceneBase {
this.updateScoreText();
}
- initExpSprites(): Promise {
- return new Promise(resolve => {
- if (expSpriteKeys.length)
- return resolve();
- fetch('./exp-sprites.json').then(res => res.json()).then(keys => {
- if (Array.isArray(keys))
- expSpriteKeys.push(...keys);
- resolve();
- });
+ async initExpSprites(): Promise {
+ if (expSpriteKeys.length)
+ return;
+ fetch('./exp-sprites.json').then(res => res.json()).then(keys => {
+ if (Array.isArray(keys))
+ expSpriteKeys.push(...keys);
+ Promise.resolve();
});
}
@@ -534,6 +550,22 @@ export default class BattleScene extends SceneBase {
});
}
+ hasExpSprite(key: string): boolean {
+ const keyMatch = /^pkmn__?(back__)?(shiny__)?(female__)?(\d+)(\-.*?)?(?:_[1-3])?$/g.exec(key);
+ let k = keyMatch[4];
+ if (keyMatch[2])
+ k += 's';
+ if (keyMatch[1])
+ k += 'b';
+ if (keyMatch[3])
+ k += 'f';
+ if (keyMatch[5])
+ k += keyMatch[5];
+ if (!expSpriteKeys.includes(k))
+ return false;
+ return true;
+ }
+
setupControls() {
const keyCodes = Phaser.Input.Keyboard.KeyCodes;
const keyConfig = {
@@ -550,6 +582,7 @@ export default class BattleScene extends SceneBase {
[Button.CYCLE_GENDER]: [keyCodes.G],
[Button.CYCLE_ABILITY]: [keyCodes.E],
[Button.CYCLE_NATURE]: [keyCodes.N],
+ [Button.CYCLE_VARIANT]: [keyCodes.V],
[Button.SPEED_UP]: [keyCodes.PLUS],
[Button.SLOW_DOWN]: [keyCodes.MINUS]
};
@@ -610,8 +643,8 @@ export default class BattleScene extends SceneBase {
return findInParty(this.getParty()) || findInParty(this.getEnemyParty());
}
- addPlayerPokemon(species: PokemonSpecies, level: integer, abilityIndex: integer, formIndex: integer, gender?: Gender, shiny?: boolean, ivs?: integer[], nature?: Nature, dataSource?: Pokemon | PokemonData, postProcess?: (playerPokemon: PlayerPokemon) => void): PlayerPokemon {
- const pokemon = new PlayerPokemon(this, species, level, abilityIndex, formIndex, gender, shiny, ivs, nature, dataSource);
+ addPlayerPokemon(species: PokemonSpecies, level: integer, abilityIndex: integer, formIndex: integer, gender?: Gender, shiny?: boolean, variant?: Variant, ivs?: integer[], nature?: Nature, dataSource?: Pokemon | PokemonData, postProcess?: (playerPokemon: PlayerPokemon) => void): PlayerPokemon {
+ const pokemon = new PlayerPokemon(this, species, level, abilityIndex, formIndex, gender, shiny, variant, ivs, nature, dataSource);
if (postProcess)
postProcess(pokemon);
pokemon.init();
@@ -622,7 +655,7 @@ export default class BattleScene extends SceneBase {
if (OPP_SPECIES_OVERRIDE)
species = getPokemonSpecies(OPP_SPECIES_OVERRIDE);
const pokemon = new EnemyPokemon(this, species, level, trainerSlot, boss, dataSource);
- if (boss) {
+ if (boss && !dataSource) {
const secondaryIvs = Utils.getIvsFromId(Utils.randSeedInt(4294967295));
for (let s = 0; s < pokemon.ivs.length; s++)
@@ -706,7 +739,7 @@ export default class BattleScene extends SceneBase {
return this.currentBattle.randSeedInt(this, range, min);
}
- reset(clearScene: boolean = false, clearData: boolean = false): void {
+ reset(clearScene: boolean = false, clearData: boolean = false, reloadI18n: boolean = false): void {
if (clearData)
this.gameData = new GameData(this);
@@ -715,6 +748,8 @@ export default class BattleScene extends SceneBase {
this.setSeed(SEED_OVERRIDE || Utils.randomString(24));
console.log('Seed:', this.seed);
+ this.disableMenu = false;
+
this.score = 0;
this.money = 0;
@@ -757,7 +792,17 @@ export default class BattleScene extends SceneBase {
this.trainer.setTexture(`trainer_${this.gameData.gender === PlayerGender.FEMALE ? 'f' : 'm'}_back`);
this.trainer.setPosition(406, 186);
- this.trainer.setVisible(true)
+ this.trainer.setVisible(true);
+
+ if (reloadI18n) {
+ const localizable: Localizable[] = [
+ ...allSpecies,
+ ...allMoves,
+ ...Utils.getEnumValues(ModifierPoolType).map(mpt => getModifierPoolForType(mpt)).map(mp => Object.values(mp).flat().map(mt => mt.modifierType).filter(mt => 'localize' in mt).map(lpb => lpb as unknown as Localizable)).flat()
+ ];
+ for (let item of localizable)
+ item.localize();
+ }
if (clearScene) {
this.fadeOutBgm(250, false);
@@ -934,11 +979,16 @@ export default class BattleScene extends SceneBase {
case Species.DEERLING:
case Species.SAWSBUCK:
case Species.VIVILLON:
+ case Species.FLABEBE:
+ case Species.FLOETTE:
+ case Species.FLORGES:
case Species.ORICORIO:
case Species.SQUAWKABILLY:
case Species.TATSUGIRI:
case Species.PALDEA_TAUROS:
return Utils.randSeedInt(species.forms.length);
+ case Species.MINIOR:
+ return Utils.randSeedInt(6);
case Species.MEOWSTIC:
case Species.INDEEDEE:
case Species.BASCULEGION:
@@ -1214,6 +1264,8 @@ export default class BattleScene extends SceneBase {
inputSuccess = this.ui.processInput(Button.CANCEL);
this.setLastProcessedMovementTime(Button.CANCEL);
} else if (this.buttonJustPressed(Button.MENU)) {
+ if (this.disableMenu)
+ return;
switch (this.ui?.getMode()) {
case Mode.MESSAGE:
if (!(this.ui.getHandler() as MessageUiHandler).pendingPrompt)
@@ -1226,7 +1278,6 @@ export default class BattleScene extends SceneBase {
case Mode.SAVE_SLOT:
case Mode.PARTY:
case Mode.SUMMARY:
- case Mode.BIOME_SELECT:
case Mode.STARTER_SELECT:
case Mode.CONFIRM:
case Mode.OPTION_SELECT:
@@ -1246,14 +1297,22 @@ export default class BattleScene extends SceneBase {
} else if (this.ui?.getHandler() instanceof StarterSelectUiHandler) {
if (this.buttonJustPressed(Button.CYCLE_SHINY)) {
inputSuccess = this.ui.processInput(Button.CYCLE_SHINY);
+ this.setLastProcessedMovementTime(Button.CYCLE_SHINY);
} else if (this.buttonJustPressed(Button.CYCLE_FORM)) {
inputSuccess = this.ui.processInput(Button.CYCLE_FORM);
+ this.setLastProcessedMovementTime(Button.CYCLE_FORM);
} else if (this.buttonJustPressed(Button.CYCLE_GENDER)) {
inputSuccess = this.ui.processInput(Button.CYCLE_GENDER);
+ this.setLastProcessedMovementTime(Button.CYCLE_GENDER);
} else if (this.buttonJustPressed(Button.CYCLE_ABILITY)) {
inputSuccess = this.ui.processInput(Button.CYCLE_ABILITY);
+ this.setLastProcessedMovementTime(Button.CYCLE_ABILITY);
} else if (this.buttonJustPressed(Button.CYCLE_NATURE)) {
inputSuccess = this.ui.processInput(Button.CYCLE_NATURE);
+ this.setLastProcessedMovementTime(Button.CYCLE_NATURE);
+ } else if (this.buttonJustPressed(Button.CYCLE_VARIANT)) {
+ inputSuccess = this.ui.processInput(Button.CYCLE_VARIANT);
+ this.setLastProcessedMovementTime(Button.CYCLE_VARIANT);
} else
return;
} else if (this.buttonJustPressed(Button.SPEED_UP)) {
@@ -1274,8 +1333,29 @@ export default class BattleScene extends SceneBase {
navigator.vibrate(vibrationLength || 10);
}
+ /**
+ * gamepadButtonJustDown returns true if @param button has just been pressed down
+ * or not. It will only return true once, until the key is released and pressed down
+ * again.
+ */
+ gamepadButtonJustDown(button: Phaser.Input.Gamepad.Button) : boolean {
+ if (!button || !this.gamepadSupport)
+ return false;
+
+ let ret = false;
+ if (button.pressed) {
+ if (!this.gamepadButtonStates[button.index])
+ ret = true;
+ this.gamepadButtonStates[button.index] = true;
+ } else
+ this.gamepadButtonStates[button.index] = false;
+
+ return ret;
+ }
+
buttonJustPressed(button: Button): boolean {
- return this.buttonKeys[button].some(k => Phaser.Input.Keyboard.JustDown(k));
+ const gamepad = this.input.gamepad?.gamepads[0];
+ return this.buttonKeys[button].some(k => Phaser.Input.Keyboard.JustDown(k)) || this.gamepadButtonJustDown(gamepad?.buttons[this.gamepadKeyConfig[button]]);
}
/**
@@ -1287,7 +1367,7 @@ export default class BattleScene extends SceneBase {
if (this.movementButtonLock !== null && this.movementButtonLock !== button) {
return false;
}
- if (this.buttonKeys[button].every(k => k.isUp)) {
+ if (this.buttonKeys[button].every(k => k.isUp) && this.gamepadButtonStates.every(b => b == false)) {
this.movementButtonLock = null;
return false;
}
@@ -1600,6 +1680,12 @@ export default class BattleScene extends SceneBase {
this.phaseQueue.push(new TurnInitPhase(this));
}
+ addMoney(amount: integer): void {
+ this.money = Math.min(this.money + amount, Number.MAX_SAFE_INTEGER);
+ this.updateMoneyText();
+ this.validateAchvs(MoneyAchv);
+ }
+
getWaveMoneyAmount(moneyMultiplier: number): integer {
const waveIndex = this.currentBattle.waveIndex;
const waveSetIndex = Math.ceil(waveIndex / 10) - 1;
@@ -1607,8 +1693,9 @@ export default class BattleScene extends SceneBase {
return Math.floor(moneyValue / 10) * 10;
}
- addModifier(modifier: Modifier, ignoreUpdate?: boolean, playSound?: boolean, virtual?: boolean, instant?: boolean): Promise {
+ addModifier(modifier: Modifier, ignoreUpdate?: boolean, playSound?: boolean, virtual?: boolean, instant?: boolean): Promise {
return new Promise(resolve => {
+ let success = false;
const soundName = modifier.type.soundName;
this.validateAchvs(ModifierAchv, modifier);
const modifiersToRemove: PersistentModifier[] = [];
@@ -1618,20 +1705,20 @@ export default class BattleScene extends SceneBase {
modifiersToRemove.push(...(this.findModifiers(m => m instanceof TerastallizeModifier && m.pokemonId === modifier.pokemonId)));
if ((modifier as PersistentModifier).add(this.modifiers, !!virtual, this)) {
if (modifier instanceof PokemonFormChangeItemModifier || modifier instanceof TerastallizeModifier)
- modifier.apply([ this.getPokemonById(modifier.pokemonId), true ]);
+ success = modifier.apply([ this.getPokemonById(modifier.pokemonId), true ]);
if (playSound && !this.sound.get(soundName))
this.playSound(soundName);
} else if (!virtual) {
const defaultModifierType = getDefaultModifierTypeForTier(modifier.type.tier);
this.queueMessage(`The stack for this item is full.\n You will receive ${defaultModifierType.name} instead.`, null, true);
- return this.addModifier(defaultModifierType.newModifier(), ignoreUpdate, playSound, false, instant).then(() => resolve());
+ return this.addModifier(defaultModifierType.newModifier(), ignoreUpdate, playSound, false, instant).then(success => resolve(success));
}
for (let rm of modifiersToRemove)
this.removeModifier(rm);
if (!ignoreUpdate && !virtual)
- return this.updateModifiers(true, instant).then(() => resolve());
+ return this.updateModifiers(true, instant).then(() => resolve(success));
} else if (modifier instanceof ConsumableModifier) {
if (playSound && !this.sound.get(soundName))
this.playSound(soundName);
@@ -1654,19 +1741,26 @@ export default class BattleScene extends SceneBase {
if (modifier.shouldApply(args)) {
const result = modifier.apply(args);
if (result instanceof Promise)
- modifierPromises.push(result);
+ modifierPromises.push(result.then(s => success ||= s));
+ else
+ success ||= result;
}
}
- return Promise.allSettled([this.party.map(p => p.updateInfo(instant)), ...modifierPromises]).then(() => resolve());
+ return Promise.allSettled([this.party.map(p => p.updateInfo(instant)), ...modifierPromises]).then(() => resolve(success));
} else {
const args = [ this ];
- if (modifier.shouldApply(args))
- modifier.apply(args);
+ if (modifier.shouldApply(args)) {
+ const result = modifier.apply(args);
+ if (result instanceof Promise) {
+ return result.then(success => resolve(success));
+ } else
+ success ||= result;
+ }
}
}
- resolve();
+ resolve(success);
});
}
diff --git a/src/battle.ts b/src/battle.ts
index b7dbb9a4219..97dec471649 100644
--- a/src/battle.ts
+++ b/src/battle.ts
@@ -157,10 +157,8 @@ export default class Battle {
const moneyAmount = new Utils.IntegerHolder(scene.currentBattle.moneyScattered);
scene.applyModifiers(MoneyMultiplierModifier, true, moneyAmount);
- scene.money += moneyAmount.value;
- scene.updateMoneyText();
-
- scene.validateAchvs(MoneyAchv);
+ scene.addMoney(moneyAmount.value);
+
scene.queueMessage(`You picked up ₽${moneyAmount.value.toLocaleString('en-US')}!`, null, true);
scene.currentBattle.moneyScattered = 0;
@@ -212,6 +210,8 @@ export default class Battle {
}
randSeedInt(scene: BattleScene, range: integer, min: integer = 0): integer {
+ if (range <= 1)
+ return min;
let ret: integer;
const tempRngCounter = scene.rngCounter;
const tempSeedOverride = scene.rngSeedOverride;
diff --git a/src/data/ability.ts b/src/data/ability.ts
index 2ad6959cbd7..bfc608dc7e0 100644
--- a/src/data/ability.ts
+++ b/src/data/ability.ts
@@ -9,7 +9,8 @@ import { BattlerTag } from "./battler-tags";
import { BattlerTagType } from "./enums/battler-tag-type";
import { StatusEffect, getStatusEffectDescriptor, getStatusEffectHealText } from "./status-effect";
import { Gender } from "./gender";
-import Move, { AttackMove, MoveCategory, MoveFlags, MoveTarget, RecoilAttr, StatusMoveTypeImmunityAttr, allMoves } from "./move";
+import Move, { AttackMove, MoveCategory, MoveFlags, MoveTarget, RecoilAttr, StatusMoveTypeImmunityAttr, FlinchAttr, OneHitKOAttr, HitHealAttr, StrengthSapHealAttr, allMoves } from "./move";
+import { ArenaTagSide, ArenaTrapTag } from "./arena-tag";
import { ArenaTagType } from "./enums/arena-tag-type";
import { Stat } from "./pokemon-stat";
import { PokemonHeldItemModifier } from "../modifier/modifier";
@@ -202,6 +203,25 @@ export class PreDefendAbAttr extends AbAttr {
}
}
+export class PreDefendFormChangeAbAttr extends PreDefendAbAttr {
+ private formFunc: (p: Pokemon) => integer;
+
+ constructor(formFunc: ((p: Pokemon) => integer)) {
+ super(true);
+
+ this.formFunc = formFunc;
+ }
+
+ applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, cancelled: Utils.BooleanHolder, args: any[]): boolean {
+ const formIndex = this.formFunc(pokemon);
+ if (formIndex !== pokemon.formIndex) {
+ pokemon.scene.triggerPokemonFormChange(pokemon, SpeciesFormChangeManualTrigger, false);
+ return true;
+ }
+
+ return false;
+ }
+}
export class PreDefendFullHpEndureAbAttr extends PreDefendAbAttr {
applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, cancelled: Utils.BooleanHolder, args: any[]): boolean {
if (pokemon.getHpRatio() < 1 || (args[0] as Utils.NumberHolder).value < pokemon.hp)
@@ -235,7 +255,7 @@ export class StabBoostAbAttr extends AbAttr {
}
export class ReceivedMoveDamageMultiplierAbAttr extends PreDefendAbAttr {
- private condition: PokemonDefendCondition;
+ protected condition: PokemonDefendCondition;
private powerMultiplier: number;
constructor(condition: PokemonDefendCondition, powerMultiplier: number) {
@@ -261,6 +281,21 @@ export class ReceivedTypeDamageMultiplierAbAttr extends ReceivedMoveDamageMultip
}
}
+export class PreDefendMovePowerToOneAbAttr extends ReceivedMoveDamageMultiplierAbAttr {
+ constructor(condition: PokemonDefendCondition) {
+ super(condition, 1);
+ }
+
+ applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, cancelled: Utils.BooleanHolder, args: any[]): boolean {
+ if (this.condition(pokemon, attacker, move.getMove())) {
+ (args[0] as Utils.NumberHolder).value = 1;
+ return true;
+ }
+
+ return false;
+ }
+}
+
export class TypeImmunityAbAttr extends PreDefendAbAttr {
private immuneType: Type;
private condition: AbAttrCondition;
@@ -386,6 +421,57 @@ export class PostDefendAbAttr extends AbAttr {
}
}
+export class PostDefendDisguiseAbAttr extends PostDefendAbAttr {
+
+ applyPostDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, hitResult: HitResult, args: any[]): boolean {
+ if (pokemon.formIndex == 0 && pokemon.battleData.hitCount != 0 && (move.getMove().category == MoveCategory.SPECIAL || move.getMove().category == MoveCategory.PHYSICAL)) {
+
+ const recoilDamage = Math.ceil((pokemon.getMaxHp() / 8) - attacker.turnData.damageDealt);
+ if (!recoilDamage)
+ return false;
+ pokemon.damageAndUpdate(recoilDamage, HitResult.OTHER);
+ pokemon.scene.queueMessage(getPokemonMessage(pokemon, '\'s disguise was busted!'));
+ return true;
+ }
+
+ return false;
+ }
+}
+
+export class PostDefendFormChangeAbAttr extends PostDefendAbAttr {
+ private formFunc: (p: Pokemon) => integer;
+
+ constructor(formFunc: ((p: Pokemon) => integer)) {
+ super(true);
+
+ this.formFunc = formFunc;
+ }
+
+ applyPostDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, hitResult: HitResult, args: any[]): boolean {
+ const formIndex = this.formFunc(pokemon);
+ if (formIndex !== pokemon.formIndex) {
+ pokemon.scene.triggerPokemonFormChange(pokemon, SpeciesFormChangeManualTrigger, false);
+ return true;
+ }
+
+ return false;
+ }
+}
+
+export class FieldPriorityMoveImmunityAbAttr extends PreDefendAbAttr {
+ applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, cancelled: Utils.BooleanHolder, args: any[]): boolean {
+ const attackPriority = new Utils.IntegerHolder(move.getMove().priority);
+ applyAbAttrs(IncrementMovePriorityAbAttr, attacker, null, move.getMove(), attackPriority);
+
+ if(attackPriority.value > 0 && !move.getMove().isMultiTarget()) {
+ cancelled.value = true;
+ return true;
+ }
+
+ return false;
+ }
+}
+
export class PostStatChangeAbAttr extends AbAttr {
applyPostStatChange(pokemon: Pokemon, statsChanged: BattleStat[], levelChanged: integer, selfTarget: boolean, args: any[]): boolean | Promise {
return false;
@@ -415,6 +501,36 @@ export class MoveImmunityAbAttr extends PreDefendAbAttr {
}
}
+export class MoveImmunityStatChangeAbAttr extends MoveImmunityAbAttr {
+ private stat: BattleStat;
+ private levels: integer;
+
+ constructor(immuneCondition: PreDefendAbAttrCondition, stat: BattleStat, levels: integer) {
+ super(immuneCondition);
+ this.stat = stat;
+ this.levels = levels;
+ }
+
+ applyPreDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, cancelled: Utils.BooleanHolder, args: any[]): boolean {
+ const ret = super.applyPreDefend(pokemon, passive, attacker, move, cancelled, args)
+ if (ret) {
+ pokemon.scene.unshiftPhase(new StatChangePhase(pokemon.scene, pokemon.getBattlerIndex(), true, [ this.stat ], this.levels));
+ }
+
+ return ret;
+ }
+}
+
+export class ReverseDrainAbAttr extends PostDefendAbAttr {
+ applyPostDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, hitResult: HitResult, args: any[]): boolean {
+ if (!!move.getMove().getAttrs(HitHealAttr).length || !!move.getMove().getAttrs(StrengthSapHealAttr).length ) {
+ pokemon.scene.queueMessage(getPokemonMessage(attacker, ` sucked up the liquid ooze!`));
+ return true;
+ }
+ return false;
+ }
+}
+
export class PostDefendStatChangeAbAttr extends PostDefendAbAttr {
private condition: PokemonDefendCondition;
private stat: BattleStat;
@@ -440,6 +556,48 @@ export class PostDefendStatChangeAbAttr extends PostDefendAbAttr {
}
}
+export class PostDefendApplyArenaTrapTagAbAttr extends PostDefendAbAttr {
+ private condition: PokemonDefendCondition;
+ private tagType: ArenaTagType;
+
+ constructor(condition: PokemonDefendCondition, tagType: ArenaTagType) {
+ super(true);
+
+ this.condition = condition;
+ this.tagType = tagType;
+ }
+
+ applyPostDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, hitResult: HitResult, args: any[]): boolean {
+ if (this.condition(pokemon, attacker, move.getMove())) {
+ const tag = pokemon.scene.arena.getTag(this.tagType) as ArenaTrapTag;
+ if (!pokemon.scene.arena.getTag(this.tagType) || tag.layers < tag.maxLayers) {
+ pokemon.scene.arena.addTag(this.tagType, 0, undefined, pokemon.id, pokemon.isPlayer() ? ArenaTagSide.ENEMY : ArenaTagSide.PLAYER);
+ return true;
+ }
+ }
+ return false;
+ }
+}
+
+export class PostDefendApplyBattlerTagAbAttr extends PostDefendAbAttr {
+ private condition: PokemonDefendCondition;
+ private tagType: BattlerTagType;
+ constructor(condition: PokemonDefendCondition, tagType: BattlerTagType) {
+ super(true);
+
+ this.condition = condition;
+ this.tagType = tagType;
+ }
+
+ applyPostDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, hitResult: HitResult, args: any[]): boolean {
+ if (this.condition(pokemon, attacker, move.getMove())) {
+ pokemon.addTag(this.tagType, undefined, undefined, pokemon.id);
+ return true;
+ }
+ return false;
+ }
+}
+
export class PostDefendTypeChangeAbAttr extends PostDefendAbAttr {
applyPostDefend(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, hitResult: HitResult, args: any[]): boolean {
if (hitResult < HitResult.NO_EFFECT) {
@@ -872,6 +1030,32 @@ export class PostAttackContactApplyStatusEffectAbAttr extends PostAttackApplySta
}
}
+export class PostAttackApplyBattlerTagAbAttr extends PostAttackAbAttr {
+ private contactRequired: boolean;
+ private chance: (user: Pokemon, target: Pokemon, move: PokemonMove) => integer;
+ private effects: BattlerTagType[];
+
+
+ constructor(contactRequired: boolean, chance: (user: Pokemon, target: Pokemon, move: PokemonMove) => integer, ...effects: BattlerTagType[]) {
+ super();
+
+ this.contactRequired = contactRequired;
+ this.chance = chance;
+ this.effects = effects;
+ }
+
+ applyPostAttack(pokemon: Pokemon, passive: boolean, attacker: Pokemon, move: PokemonMove, hitResult: HitResult, args: any[]): boolean {
+ if (pokemon != attacker && (!this.contactRequired || move.getMove().checkFlag(MoveFlags.MAKES_CONTACT, attacker, pokemon)) && pokemon.randSeedInt(100) < this.chance(attacker, pokemon, move) && !pokemon.status) {
+ const effect = this.effects.length === 1 ? this.effects[0] : this.effects[pokemon.randSeedInt(this.effects.length)];
+
+
+ return attacker.addTag(effect);
+ }
+
+ return false;
+ }
+}
+
export class PostDefendStealHeldItemAbAttr extends PostDefendAbAttr {
private condition: PokemonDefendCondition;
@@ -1141,6 +1325,8 @@ export class PostSummonFormChangeAbAttr extends PostSummonAbAttr {
export class TraceAbAttr extends PostSummonAbAttr {
applyPostSummon(pokemon: Pokemon, passive: boolean, args: any[]): boolean {
const targets = pokemon.getOpponents();
+ if (!targets.length)
+ return false;
let target: Pokemon;
if (targets.length > 1)
pokemon.scene.executeWithSeedOffset(() => target = Utils.randSeedItem(targets), pokemon.scene.currentBattle.waveIndex);
@@ -1417,6 +1603,43 @@ function getWeatherCondition(...weatherTypes: WeatherType[]): AbAttrCondition {
};
}
+function getAnticipationCondition(): AbAttrCondition {
+ return (pokemon: Pokemon) => {
+ for (let opponent of pokemon.getOpponents()) {
+ for (let move of opponent.moveset) {
+ // move is super effective
+ if (move.getMove() instanceof AttackMove && pokemon.getAttackTypeEffectiveness(move.getMove().type) >= 2) {
+ return true;
+ }
+ // move is a OHKO
+ if (move.getMove().findAttr(attr => attr instanceof OneHitKOAttr)) {
+ return true;
+ }
+ // edge case for hidden power, type is computed
+ if (move.getMove().id === Moves.HIDDEN_POWER) {
+ const iv_val = Math.floor(((opponent.ivs[Stat.HP] & 1)
+ +(opponent.ivs[Stat.ATK] & 1) * 2
+ +(opponent.ivs[Stat.DEF] & 1) * 4
+ +(opponent.ivs[Stat.SPD] & 1) * 8
+ +(opponent.ivs[Stat.SPATK] & 1) * 16
+ +(opponent.ivs[Stat.SPDEF] & 1) * 32) * 15/63);
+
+ const type = [
+ Type.FIGHTING, Type.FLYING, Type.POISON, Type.GROUND,
+ Type.ROCK, Type.BUG, Type.GHOST, Type.STEEL,
+ Type.FIRE, Type.WATER, Type.GRASS, Type.ELECTRIC,
+ Type.PSYCHIC, Type.ICE, Type.DRAGON, Type.DARK][iv_val];
+
+ if (pokemon.getAttackTypeEffectiveness(type) >= 2) {
+ return true;
+ }
+ }
+ }
+ }
+ return false;
+ };
+}
+
export class PostWeatherChangeAbAttr extends AbAttr {
applyPostWeatherChange(pokemon: Pokemon, passive: boolean, weather: WeatherType, args: any[]): boolean {
return false;
@@ -1908,16 +2131,41 @@ export class SyncEncounterNatureAbAttr extends AbAttr {
}
export class MoveAbilityBypassAbAttr extends AbAttr {
+ private moveIgnoreFunc: (pokemon: Pokemon, move: Move) => boolean;
+
+ constructor(moveIgnoreFunc?: (pokemon: Pokemon, move: Move) => boolean) {
+ super(false);
+
+ this.moveIgnoreFunc = moveIgnoreFunc || ((pokemon, move) => true);
+ }
+
+ apply(pokemon: Pokemon, passive: boolean, cancelled: Utils.BooleanHolder, args: any[]): boolean {
+ if (this.moveIgnoreFunc(pokemon, (args[0] as Move))) {
+ cancelled.value = true;
+ return true;
+ }
+ return false;
+ }
+}
+
+export class SuppressFieldAbilitiesAbAttr extends AbAttr {
constructor() {
super(false);
}
apply(pokemon: Pokemon, passive: boolean, cancelled: Utils.BooleanHolder, args: any[]): boolean {
- cancelled.value = true;
- return true;
+ const ability = (args[0] as Ability);
+ if (!ability.hasAttr(UnsuppressableAbilityAbAttr) && !ability.hasAttr(SuppressFieldAbilitiesAbAttr)) {
+ cancelled.value = true;
+ return true;
+ }
+ return false;
}
}
+
+export class AlwaysHitAbAttr extends AbAttr { }
+
export class UncopiableAbilityAbAttr extends AbAttr {
constructor() {
super(false);
@@ -1942,6 +2190,12 @@ export class NoTransformAbilityAbAttr extends AbAttr {
}
}
+export class NoFusionAbilityAbAttr extends AbAttr {
+ constructor() {
+ super(false);
+ }
+}
+
function applyAbAttrsInternal(attrType: { new(...args: any[]): TAttr },
pokemon: Pokemon, applyFunc: AbAttrApplyFunc, args: any[], isAsync: boolean = false, showAbilityInstant: boolean = false, quiet: boolean = false, passive: boolean = false): Promise {
return new Promise(resolve => {
@@ -2136,7 +2390,8 @@ export const allAbilities = [ new Ability(Abilities.NONE, "-", "", 3) ];
export function initAbilities() {
allAbilities.push(
- new Ability(Abilities.STENCH, "Stench (N)", "By releasing stench when attacking, this Pokémon may cause the target to flinch.", 3),
+ new Ability(Abilities.STENCH, "Stench", "By releasing stench when attacking, this Pokémon may cause the target to flinch.", 3)
+ .attr(PostAttackApplyBattlerTagAbAttr, false, (user, target, move) => !move.getMove().findAttr(attr => attr instanceof FlinchAttr) ? 10 : 0, BattlerTagType.FLINCHED),
new Ability(Abilities.DRIZZLE, "Drizzle", "The Pokémon makes it rain when it enters a battle.", 3)
.attr(PostSummonWeatherChangeAbAttr, WeatherType.RAIN)
.attr(PostBiomeChangeWeatherChangeAbAttr, WeatherType.RAIN),
@@ -2171,7 +2426,7 @@ export function initAbilities() {
.attr(BattlerTagImmunityAbAttr, BattlerTagType.INFATUATED)
.ignorable(),
new Ability(Abilities.CLOUD_NINE, "Cloud Nine", "Eliminates the effects of weather.", 3)
- .attr(SuppressWeatherEffectAbAttr),
+ .attr(SuppressWeatherEffectAbAttr, true),
new Ability(Abilities.COMPOUND_EYES, "Compound Eyes", "The Pokémon's compound eyes boost its accuracy.", 3)
.attr(BattleStatMultiplierAbAttr, BattleStat.ACC, 1.3),
new Ability(Abilities.INSOMNIA, "Insomnia", "The Pokémon is suffering from insomnia and cannot fall asleep.", 3)
@@ -2206,7 +2461,7 @@ export function initAbilities() {
.attr(UnswappableAbilityAbAttr)
.ignorable(),
new Ability(Abilities.LEVITATE, "Levitate", "By floating in the air, the Pokémon receives full immunity to all Ground-type moves.", 3)
- .attr(TypeImmunityAbAttr, Type.GROUND, (pokemon: Pokemon) => !pokemon.getTag(BattlerTagType.IGNORE_FLYING) && !pokemon.scene.arena.getTag(ArenaTagType.GRAVITY))
+ .attr(TypeImmunityAbAttr, Type.GROUND, (pokemon: Pokemon) => !pokemon.getTag(BattlerTagType.IGNORE_FLYING) && !pokemon.scene.arena.getTag(ArenaTagType.GRAVITY) && !pokemon.getTag(BattlerTagType.GROUNDED))
.ignorable(),
new Ability(Abilities.EFFECT_SPORE, "Effect Spore", "Contact with the Pokémon may inflict poison, sleep, or paralysis on its attacker.", 3)
.attr(PostDefendContactApplyStatusEffectAbAttr, 10, StatusEffect.POISON, StatusEffect.PARALYSIS, StatusEffect.SLEEP),
@@ -2260,6 +2515,7 @@ export function initAbilities() {
.attr(PostSummonWeatherChangeAbAttr, WeatherType.SANDSTORM)
.attr(PostBiomeChangeWeatherChangeAbAttr, WeatherType.SANDSTORM),
new Ability(Abilities.PRESSURE, "Pressure", "By putting pressure on the opposing Pokémon, it raises their PP usage.", 3)
+ .attr(IncreasePpAbAttr)
.attr(PostSummonMessageAbAttr, (pokemon: Pokemon) => getPokemonMessage(pokemon, ' is exerting its Pressure!')),
new Ability(Abilities.THICK_FAT, "Thick Fat", "The Pokémon is protected by a layer of thick fat, which halves the damage taken from Fire- and Ice-type moves.", 3)
.attr(ReceivedTypeDamageMultiplierAbAttr, Type.FIRE, 0.5)
@@ -2289,7 +2545,8 @@ export function initAbilities() {
new Ability(Abilities.PLUS, "Plus (N)", "Boosts the Sp. Atk stat of the Pokémon if an ally with the Plus or Minus Ability is also in battle.", 3),
new Ability(Abilities.MINUS, "Minus (N)", "Boosts the Sp. Atk stat of the Pokémon if an ally with the Plus or Minus Ability is also in battle.", 3),
new Ability(Abilities.FORECAST, "Forecast (N)", "The Pokémon transforms with the weather to change its type to Water, Fire, or Ice.", 3)
- .attr(UncopiableAbilityAbAttr),
+ .attr(UncopiableAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.STICKY_HOLD, "Sticky Hold", "Items held by the Pokémon are stuck fast and cannot be removed by other Pokémon.", 3)
.attr(BlockItemTheftAbAttr)
.bypassFaint()
@@ -2302,7 +2559,8 @@ export function initAbilities() {
new Ability(Abilities.MARVEL_SCALE, "Marvel Scale", "The Pokémon's marvelous scales boost the Defense stat if it has a status condition.", 3)
.conditionalAttr(pokemon => !!pokemon.status, BattleStatMultiplierAbAttr, BattleStat.DEF, 1.5)
.ignorable(),
- new Ability(Abilities.LIQUID_OOZE, "Liquid Ooze (N)", "The oozed liquid has a strong stench, which damages attackers using any draining move.", 3),
+ new Ability(Abilities.LIQUID_OOZE, "Liquid Ooze", "The oozed liquid has a strong stench, which damages attackers using any draining move.", 3)
+ .attr(ReverseDrainAbAttr),
new Ability(Abilities.OVERGROW, "Overgrow", "Powers up Grass-type moves when the Pokémon's HP is low.", 3)
.attr(LowHpMoveTypePowerBoostAbAttr, Type.GRASS),
new Ability(Abilities.BLAZE, "Blaze", "Powers up Fire-type moves when the Pokémon's HP is low.", 3)
@@ -2343,10 +2601,10 @@ export function initAbilities() {
.attr(MovePowerBoostAbAttr, (user, target, move) => user.gender !== Gender.GENDERLESS && target.gender !== Gender.GENDERLESS && user.gender !== target.gender, 0.75),
new Ability(Abilities.STEADFAST, "Steadfast", "The Pokémon's determination boosts the Speed stat each time the Pokémon flinches.", 4)
.attr(FlinchStatChangeAbAttr, BattleStat.SPD, 1),
- new Ability(Abilities.SNOW_CLOAK, "Snow Cloak", "Boosts evasiveness in a hailstorm.", 4)
+ new Ability(Abilities.SNOW_CLOAK, "Snow Cloak", "Boosts the Pokémon's evasiveness in snow.", 4)
.attr(BattleStatMultiplierAbAttr, BattleStat.EVA, 1.2)
.attr(BlockWeatherDamageAttr, WeatherType.HAIL)
- .condition(getWeatherCondition(WeatherType.HAIL))
+ .condition(getWeatherCondition(WeatherType.HAIL, WeatherType.SNOW))
.ignorable(),
new Ability(Abilities.GLUTTONY, "Gluttony", "Makes the Pokémon eat a held Berry when its HP drops to half or less, which is sooner than usual.", 4)
.attr(ReduceBerryUseThresholdAbAttr),
@@ -2382,7 +2640,7 @@ export function initAbilities() {
.attr(BattleStatMultiplierAbAttr, BattleStat.SPATK, 1.5)
.condition(getWeatherCondition(WeatherType.SUNNY, WeatherType.HARSH_SUN)),
new Ability(Abilities.QUICK_FEET, "Quick Feet", "Boosts the Speed stat if the Pokémon has a status condition.", 4)
- .conditionalAttr(pokemon => pokemon.status.effect === StatusEffect.PARALYSIS, BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
+ .conditionalAttr(pokemon => pokemon.status ? pokemon.status.effect === StatusEffect.PARALYSIS : false, BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
.conditionalAttr(pokemon => !!pokemon.status, BattleStatMultiplierAbAttr, BattleStat.SPD, 1.5),
new Ability(Abilities.NORMALIZE, "Normalize", "All the Pokémon's moves become Normal type. The power of those moves is boosted a little.", 4)
.attr(MoveTypeChangeAttr, Type.NORMAL, 1.2, (user, target, move) => move.id !== Moves.HIDDEN_POWER && move.id !== Moves.WEATHER_BALL &&
@@ -2390,7 +2648,9 @@ export function initAbilities() {
new Ability(Abilities.SNIPER, "Sniper (N)", "Powers up moves if they become critical hits when attacking.", 4),
new Ability(Abilities.MAGIC_GUARD, "Magic Guard", "The Pokémon only takes damage from attacks.", 4)
.attr(BlockNonDirectDamageAbAttr),
- new Ability(Abilities.NO_GUARD, "No Guard (N)", "The Pokémon employs no-guard tactics to ensure incoming and outgoing attacks always land.", 4),
+ new Ability(Abilities.NO_GUARD, "No Guard", "The Pokémon employs no-guard tactics to ensure incoming and outgoing attacks always land.", 4)
+ .attr(AlwaysHitAbAttr)
+ .attr(DoubleBattleChanceAbAttr),
new Ability(Abilities.STALL, "Stall (N)", "The Pokémon moves after all other Pokémon do.", 4),
new Ability(Abilities.TECHNICIAN, "Technician", "Powers up the Pokémon's weaker moves.", 4)
.attr(MovePowerBoostAbAttr, (user, target, move) => move.power <= 60, 1.5),
@@ -2407,7 +2667,8 @@ export function initAbilities() {
new Ability(Abilities.AFTERMATH, "Aftermath", "Damages the attacker if it contacts the Pokémon with a finishing hit.", 4)
.attr(PostFaintContactDamageAbAttr,4)
.bypassFaint(),
- new Ability(Abilities.ANTICIPATION, "Anticipation (N)", "The Pokémon can sense an opposing Pokémon's dangerous moves.", 4),
+ new Ability(Abilities.ANTICIPATION, "Anticipation", "The Pokémon can sense an opposing Pokémon's dangerous moves.", 4)
+ .conditionalAttr(getAnticipationCondition(), PostSummonMessageAbAttr, (pokemon: Pokemon) => getPokemonMessage(pokemon, ' shuddered!')),
new Ability(Abilities.FOREWARN, "Forewarn (N)", "When it enters a battle, the Pokémon can tell one of the moves an opposing Pokémon has.", 4),
new Ability(Abilities.UNAWARE, "Unaware", "When attacking, the Pokémon ignores the target Pokémon's stat changes.", 4)
.attr(IgnoreOpponentStatChangesAbAttr)
@@ -2424,14 +2685,15 @@ export function initAbilities() {
.attr(RedirectTypeMoveAbAttr, Type.WATER)
.attr(TypeImmunityStatChangeAbAttr, Type.WATER, BattleStat.SPATK, 1)
.ignorable(),
- new Ability(Abilities.ICE_BODY, "Ice Body", "The Pokémon gradually regains HP in a hailstorm.", 4)
- .attr(PostWeatherLapseHealAbAttr, 1, WeatherType.HAIL),
+ new Ability(Abilities.ICE_BODY, "Ice Body", "The Pokémon gradually regains HP in snow.", 4)
+ .attr(BlockWeatherDamageAttr, WeatherType.HAIL)
+ .attr(PostWeatherLapseHealAbAttr, 1, WeatherType.HAIL, WeatherType.SNOW),
new Ability(Abilities.SOLID_ROCK, "Solid Rock", "Reduces the power of supereffective attacks taken.", 4)
.attr(ReceivedMoveDamageMultiplierAbAttr,(target, user, move) => target.getAttackTypeEffectiveness(move.type) >= 2, 0.75)
.ignorable(),
- new Ability(Abilities.SNOW_WARNING, "Snow Warning", "The Pokémon summons a hailstorm when it enters a battle.", 4)
- .attr(PostSummonWeatherChangeAbAttr, WeatherType.HAIL)
- .attr(PostBiomeChangeWeatherChangeAbAttr, WeatherType.HAIL),
+ new Ability(Abilities.SNOW_WARNING, "Snow Warning", "The Pokémon makes it snow when it enters a battle.", 4)
+ .attr(PostSummonWeatherChangeAbAttr, WeatherType.SNOW)
+ .attr(PostBiomeChangeWeatherChangeAbAttr, WeatherType.SNOW),
new Ability(Abilities.HONEY_GATHER, "Honey Gather (N)", "The Pokémon may gather Honey after a battle.", 4),
new Ability(Abilities.FRISK, "Frisk (N)", "When it enters a battle, the Pokémon can check an opposing Pokémon's held item.", 4),
new Ability(Abilities.RECKLESS, "Reckless", "Powers up moves that have recoil damage.", 4)
@@ -2439,11 +2701,13 @@ export function initAbilities() {
new Ability(Abilities.MULTITYPE, "Multitype (N)", "Changes the Pokémon's type to match the Plate or Z-Crystal it holds.", 4)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
- .attr(UnsuppressableAbilityAbAttr),
+ .attr(UnsuppressableAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.FLOWER_GIFT, "Flower Gift (P)", "Boosts the Attack and Sp. Def stats of itself and allies in harsh sunlight.", 4)
.conditionalAttr(getWeatherCondition(WeatherType.SUNNY || WeatherType.HARSH_SUN), BattleStatMultiplierAbAttr, BattleStat.ATK, 1.5)
.conditionalAttr(getWeatherCondition(WeatherType.SUNNY || WeatherType.HARSH_SUN), BattleStatMultiplierAbAttr, BattleStat.SPDEF, 1.5)
.attr(UncopiableAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr)
.ignorable(),
new Ability(Abilities.BAD_DREAMS, "Bad Dreams (N)", "Reduces the HP of sleeping opposing Pokémon.", 4),
new Ability(Abilities.PICKPOCKET, "Pickpocket", "Steals an item from an attacker that made direct contact.", 5)
@@ -2518,7 +2782,9 @@ export function initAbilities() {
.attr(PostVictoryStatChangeAbAttr, BattleStat.ATK, 1),
new Ability(Abilities.JUSTIFIED, "Justified", "Being hit by a Dark-type move boosts the Attack stat of the Pokémon, for justice.", 5)
.attr(PostDefendStatChangeAbAttr, (target, user, move) => move.type === Type.DARK && move.category !== MoveCategory.STATUS, BattleStat.ATK, 1),
- new Ability(Abilities.RATTLED, "Rattled (N)", "Dark-, Ghost-, and Bug-type moves scare the Pokémon and boost its Speed stat.", 5),
+ new Ability(Abilities.RATTLED, "Rattled (P)", "Intimidate or being hit by a Dark-, Ghost-, or Bug-type move will scare the Pokémon and boost its Speed stat.", 5)
+ .attr(PostDefendStatChangeAbAttr, (target, user, move) => move.category !== MoveCategory.STATUS && (move.type === Type.DARK || move.type === Type.BUG ||
+ move.type === Type.GHOST), BattleStat.SPD, 1),
new Ability(Abilities.MAGIC_BOUNCE, "Magic Bounce (N)", "Reflects status moves instead of getting hit by them.", 5)
.ignorable(),
new Ability(Abilities.SAP_SIPPER, "Sap Sipper", "Boosts the Attack stat if hit by a Grass-type move instead of taking damage.", 5)
@@ -2536,13 +2802,15 @@ export function initAbilities() {
.attr(PostDefendContactDamageAbAttr, 8)
.bypassFaint(),
new Ability(Abilities.ZEN_MODE, "Zen Mode", "Changes the Pokémon's shape when HP is half or less.", 5)
- .attr(PostBattleInitFormChangeAbAttr, p => p.getHpRatio() >= 0.5 ? 0 : 1)
- .attr(PostSummonFormChangeAbAttr, p => p.getHpRatio() >= 0.5 ? 0 : 1)
- .attr(PostTurnFormChangeAbAttr, p => p.getHpRatio() >= 0.5 ? 0 : 1)
+ .attr(PostBattleInitFormChangeAbAttr, p => p.getHpRatio() <= 0.5 ? 1 : 0)
+ .attr(PostSummonFormChangeAbAttr, p => p.getHpRatio() <= 0.5 ? 1 : 0)
+ .attr(PostTurnFormChangeAbAttr, p => p.getHpRatio() <= 0.5 ? 1 : 0)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
- .attr(UnsuppressableAbilityAbAttr),
- new Ability(Abilities.VICTORY_STAR, "Victory Star (N)", "Boosts the accuracy of its allies and itself.", 5),
+ .attr(UnsuppressableAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
+ new Ability(Abilities.VICTORY_STAR, "Victory Star (P)", "Boosts the accuracy of its allies and itself.", 5)
+ .attr(BattleStatMultiplierAbAttr, BattleStat.ACC, 1.1),
new Ability(Abilities.TURBOBLAZE, "Turboblaze", "Moves can be used on the target regardless of its Abilities.", 5)
.attr(PostSummonMessageAbAttr, (pokemon: Pokemon) => getPokemonMessage(pokemon, ' is radiating a blazing aura!'))
.attr(MoveAbilityBypassAbAttr),
@@ -2563,17 +2831,21 @@ export function initAbilities() {
new Ability(Abilities.BULLETPROOF, "Bulletproof", "Protects the Pokémon from some ball and bomb moves.", 6)
.attr(MoveImmunityAbAttr, (pokemon, attacker, move) => pokemon !== attacker && move.getMove().hasFlag(MoveFlags.BALLBOMB_MOVE))
.ignorable(),
- new Ability(Abilities.COMPETITIVE, "Competitive (N)", "Boosts the Sp. Atk stat sharply when a stat is lowered.", 6),
+ new Ability(Abilities.COMPETITIVE, "Competitive", "Boosts the Sp. Atk stat sharply when a stat is lowered.", 6)
+ .attr(PostStatChangeStatChangeAbAttr, (target, statsChanged, levels) => levels < 0, [BattleStat.SPATK], 2),
new Ability(Abilities.STRONG_JAW, "Strong Jaw", "The Pokémon's strong jaw boosts the power of its biting moves.", 6)
.attr(MovePowerBoostAbAttr, (user, target, move) => move.hasFlag(MoveFlags.BITING_MOVE), 1.5),
new Ability(Abilities.REFRIGERATE, "Refrigerate", "Normal-type moves become Ice-type moves. The power of those moves is boosted a little.", 6)
.attr(MoveTypeChangePowerMultiplierAbAttr, Type.NORMAL, Type.ICE, 1.2),
- new Ability(Abilities.SWEET_VEIL, "Sweet Veil (N)", "Prevents itself and ally Pokémon from falling asleep.", 6)
+ new Ability(Abilities.SWEET_VEIL, "Sweet Veil (P)", "Prevents itself and ally Pokémon from falling asleep.", 6)
+ .attr(StatusEffectImmunityAbAttr, StatusEffect.SLEEP)
+ .attr(BattlerTagImmunityAbAttr, BattlerTagType.DROWSY)
.ignorable(),
new Ability(Abilities.STANCE_CHANGE, "Stance Change", "The Pokémon changes its form to Blade Forme when it uses an attack move and changes to Shield Forme when it uses King's Shield.", 6)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
- .attr(UnsuppressableAbilityAbAttr),
+ .attr(UnsuppressableAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.GALE_WINGS, "Gale Wings", "Gives priority to Flying-type moves when the Pokémon's HP is full.", 6)
.attr(IncrementMovePriorityAbAttr, (pokemon, move) => pokemon.getHpRatio() === 1 && move.type === Type.FLYING),
new Ability(Abilities.MEGA_LAUNCHER, "Mega Launcher", "Powers up aura and pulse moves.", 6)
@@ -2615,10 +2887,14 @@ export function initAbilities() {
new Ability(Abilities.WATER_COMPACTION, "Water Compaction", "Boosts the Pokémon's Defense stat sharply when hit by a Water-type move.", 7)
.attr(PostDefendStatChangeAbAttr, (target, user, move) => move.type === Type.WATER, BattleStat.DEF, 2),
new Ability(Abilities.MERCILESS, "Merciless (N)", "The Pokémon's attacks become critical hits if the target is poisoned.", 7),
- new Ability(Abilities.SHIELDS_DOWN, "Shields Down (N)", "When its HP becomes half or less, the Pokémon's shell breaks and it becomes aggressive.", 7)
+ new Ability(Abilities.SHIELDS_DOWN, "Shields Down (P)", "When its HP becomes half or less, the Pokémon's shell breaks and it becomes aggressive.", 7)
+ .attr(PostBattleInitFormChangeAbAttr, p => p.formIndex % 7 + (p.getHpRatio() <= 0.5 ? 7 : 0))
+ .attr(PostSummonFormChangeAbAttr, p => p.formIndex % 7 + (p.getHpRatio() <= 0.5 ? 7 : 0))
+ .attr(PostTurnFormChangeAbAttr, p => p.formIndex % 7 + (p.getHpRatio() <= 0.5 ? 7 : 0))
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
- .attr(UnsuppressableAbilityAbAttr),
+ .attr(UnsuppressableAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.STAKEOUT, "Stakeout (N)", "Doubles the damage dealt to the target's replacement if the target switches out.", 7),
new Ability(Abilities.WATER_BUBBLE, "Water Bubble", "Lowers the power of Fire-type moves done to the Pokémon and prevents the Pokémon from getting a burn.", 7)
.attr(ReceivedTypeDamageMultiplierAbAttr, Type.FIRE, 0.5)
@@ -2628,9 +2904,9 @@ export function initAbilities() {
new Ability(Abilities.STEELWORKER, "Steelworker", "Powers up Steel-type moves.", 7)
.attr(MoveTypePowerBoostAbAttr, Type.STEEL),
new Ability(Abilities.BERSERK, "Berserk (N)", "Boosts the Pokémon's Sp. Atk stat when it takes a hit that causes its HP to become half or less.", 7),
- new Ability(Abilities.SLUSH_RUSH, "Slush Rush", "Boosts the Pokémon's Speed stat in a hailstorm.", 7)
+ new Ability(Abilities.SLUSH_RUSH, "Slush Rush", "Boosts the Pokémon's Speed stat in snow.", 7)
.attr(BattleStatMultiplierAbAttr, BattleStat.SPD, 2)
- .condition(getWeatherCondition(WeatherType.HAIL)),
+ .condition(getWeatherCondition(WeatherType.HAIL, WeatherType.SNOW)),
new Ability(Abilities.LONG_REACH, "Long Reach", "The Pokémon uses its moves without making contact with the target.", 7)
.attr(IgnoreContactAbAttr),
new Ability(Abilities.LIQUID_VOICE, "Liquid Voice", "All sound-based moves become Water-type moves.", 7)
@@ -2647,27 +2923,38 @@ export function initAbilities() {
.attr(PostTurnFormChangeAbAttr, p => p.level < 20 || p.getHpRatio() <= 0.25 ? 0 : 1)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
- .attr(UnsuppressableAbilityAbAttr),
- new Ability(Abilities.DISGUISE, "Disguise (N)", "Once per battle, the shroud that covers the Pokémon can protect it from an attack.", 7)
+ .attr(UnsuppressableAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
+ new Ability(Abilities.DISGUISE, "Disguise (P)", "Once per battle, the shroud that covers the Pokémon can protect it from an attack.", 7)
+ .attr(PreDefendMovePowerToOneAbAttr, (target, user, move) => target.formIndex == 0 && target.getAttackTypeEffectiveness(move.type) > 0)
+ .attr(PostSummonFormChangeAbAttr, p => p.battleData.hitCount === 0 ? 0 : 1)
+ .attr(PostBattleInitFormChangeAbAttr, p => p.battleData.hitCount === 0 ? 0 : 1)
+ .attr(PostDefendFormChangeAbAttr, p => p.battleData.hitCount === 0 ? 0 : 1)
+ .attr(PreDefendFormChangeAbAttr, p => p.battleData.hitCount === 0 ? 0 : 1)
+ .attr(PostDefendDisguiseAbAttr)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
.attr(UnsuppressableAbilityAbAttr)
.attr(NoTransformAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr)
.ignorable(),
new Ability(Abilities.BATTLE_BOND, "Battle Bond (N)", "Defeating an opposing Pokémon strengthens the Pokémon's bond with its Trainer, and it becomes Ash-Greninja. Water Shuriken gets more powerful.", 7)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
- .attr(UnsuppressableAbilityAbAttr),
+ .attr(UnsuppressableAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.POWER_CONSTRUCT, "Power Construct (N)", "Other Cells gather to aid when its HP becomes half or less. Then the Pokémon changes its form to Complete Forme.", 7)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
- .attr(UnsuppressableAbilityAbAttr),
+ .attr(UnsuppressableAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.CORROSION, "Corrosion (N)", "The Pokémon can poison the target even if it's a Steel or Poison type.", 7),
new Ability(Abilities.COMATOSE, "Comatose (N)", "It's always drowsing and will never wake up. It can attack without waking up.", 7)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
.attr(UnsuppressableAbilityAbAttr),
- new Ability(Abilities.QUEENLY_MAJESTY, "Queenly Majesty (N)", "Its majesty pressures the opposing Pokémon, making it unable to attack using priority moves.", 7)
+ new Ability(Abilities.QUEENLY_MAJESTY, "Queenly Majesty", "Its majesty pressures the opposing Pokémon, making it unable to attack using priority moves.", 7)
+ .attr(FieldPriorityMoveImmunityAbAttr)
.ignorable(),
new Ability(Abilities.INNARDS_OUT, "Innards Out (N)", "Damages the attacker landing the finishing hit by the amount equal to its last HP.", 7),
new Ability(Abilities.DANCER, "Dancer (N)", "When another Pokémon uses a dance move, it can use a dance move following it regardless of its Speed.", 7),
@@ -2676,7 +2963,8 @@ export function initAbilities() {
.attr(ReceivedMoveDamageMultiplierAbAttr, (target, user, move) => move.hasFlag(MoveFlags.MAKES_CONTACT), 0.5)
.attr(ReceivedMoveDamageMultiplierAbAttr, (target, user, move) => move.type === Type.FIRE, 2)
.ignorable(),
- new Ability(Abilities.DAZZLING, "Dazzling (N)", "Surprises the opposing Pokémon, making it unable to attack using priority moves.", 7)
+ new Ability(Abilities.DAZZLING, "Dazzling", "Surprises the opposing Pokémon, making it unable to attack using priority moves.", 7)
+ .attr(FieldPriorityMoveImmunityAbAttr)
.ignorable(),
new Ability(Abilities.SOUL_HEART, "Soul-Heart", "Boosts its Sp. Atk stat every time a Pokémon faints.", 7)
.attr(PostKnockOutStatChangeAbAttr, BattleStat.SPATK, 1),
@@ -2705,7 +2993,8 @@ export function initAbilities() {
new Ability(Abilities.RKS_SYSTEM, "RKS System (N)", "Changes the Pokémon's type to match the memory disc it holds.", 7)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
- .attr(UnsuppressableAbilityAbAttr),
+ .attr(UnsuppressableAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.ELECTRIC_SURGE, "Electric Surge", "Turns the ground into Electric Terrain when the Pokémon enters a battle.", 7)
.attr(PostSummonTerrainChangeAbAttr, TerrainType.ELECTRIC)
.attr(PostBiomeChangeTerrainChangeAbAttr, TerrainType.ELECTRIC),
@@ -2738,10 +3027,11 @@ export function initAbilities() {
.ignorable(),
new Ability(Abilities.GULP_MISSILE, "Gulp Missile (N)", "When the Pokémon uses Surf or Dive, it will come back with prey. When it takes damage, it will spit out the prey to attack.", 8)
.attr(UnsuppressableAbilityAbAttr)
- .attr(NoTransformAbilityAbAttr),
+ .attr(NoTransformAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.STALWART, "Stalwart (N)", "Ignores the effects of opposing Pokémon's Abilities and moves that draw in moves.", 8),
new Ability(Abilities.STEAM_ENGINE, "Steam Engine", "Boosts the Pokémon's Speed stat drastically if hit by a Fire- or Water-type move.", 8)
- .attr(PostDefendStatChangeAbAttr, (target, user, move) => move.type === Type.FIRE || move.type === Type.WATER, BattleStat.SPD, 6),
+ .attr(PostDefendStatChangeAbAttr, (target, user, move) => (move.type === Type.FIRE || move.type === Type.WATER) && move.category !== MoveCategory.STATUS, BattleStat.SPD, 6),
new Ability(Abilities.PUNK_ROCK, "Punk Rock", "Boosts the power of sound-based moves. The Pokémon also takes half the damage from these kinds of moves.", 8)
.attr(MovePowerBoostAbAttr, (user, target, move) => move.hasFlag(MoveFlags.SOUND_BASED), 1.3)
.attr(ReceivedMoveDamageMultiplierAbAttr, (target, user, move) => move.hasFlag(MoveFlags.SOUND_BASED), 0.5)
@@ -2758,6 +3048,7 @@ export function initAbilities() {
.attr(UnswappableAbilityAbAttr)
.attr(UnsuppressableAbilityAbAttr)
.attr(NoTransformAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr)
.ignorable(),
new Ability(Abilities.POWER_SPOT, "Power Spot (N)", "Just being next to the Pokémon powers up moves.", 8),
new Ability(Abilities.MIMICRY, "Mimicry (N)", "Changes the Pokémon's type depending on the terrain.", 8),
@@ -2768,7 +3059,8 @@ export function initAbilities() {
.attr(PostDefendAbilitySwapAbAttr)
.bypassFaint(),
new Ability(Abilities.GORILLA_TACTICS, "Gorilla Tactics (N)", "Boosts the Pokémon's Attack stat but only allows the use of the first selected move.", 8),
- new Ability(Abilities.NEUTRALIZING_GAS, "Neutralizing Gas (N)", "If the Pokémon with Neutralizing Gas is in the battle, the effects of all Pokémon's Abilities will be nullified or will not be triggered.", 8)
+ new Ability(Abilities.NEUTRALIZING_GAS, "Neutralizing Gas (P)", "If the Pokémon with Neutralizing Gas is in the battle, the effects of all Pokémon's Abilities will be nullified or will not be triggered.", 8)
+ .attr(SuppressFieldAbilitiesAbAttr)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
.attr(NoTransformAbilityAbAttr),
@@ -2780,7 +3072,8 @@ export function initAbilities() {
.attr(PostTurnFormChangeAbAttr, p => p.getFormKey ? 1 : 0)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
- .attr(NoTransformAbilityAbAttr),
+ .attr(NoTransformAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.QUICK_DRAW, "Quick Draw (N)", "Enables the Pokémon to move first occasionally.", 8),
new Ability(Abilities.UNSEEN_FIST, "Unseen Fist (N)", "If the Pokémon uses moves that make direct contact, it can attack the target even if the target protects itself.", 8),
new Ability(Abilities.CURIOUS_MEDICINE, "Curious Medicine (N)", "When the Pokémon enters a battle, it scatters medicine from its shell, which removes all stat changes from allies.", 8),
@@ -2809,7 +3102,8 @@ export function initAbilities() {
.bypassFaint(),
new Ability(Abilities.SEED_SOWER, "Seed Sower", "Turns the ground into Grassy Terrain when the Pokémon is hit by an attack.", 9)
.attr(PostDefendTerrainChangeAbAttr, TerrainType.GRASSY),
- new Ability(Abilities.THERMAL_EXCHANGE, "Thermal Exchange (P)", "Boosts the Attack stat when the Pokémon is hit by a Fire-type move. The Pokémon also cannot be burned.", 9)
+ new Ability(Abilities.THERMAL_EXCHANGE, "Thermal Exchange", "Boosts the Attack stat when the Pokémon is hit by a Fire-type move. The Pokémon also cannot be burned.", 9)
+ .attr(PostDefendStatChangeAbAttr, (target, user, move) => move.type === Type.FIRE && move.category !== MoveCategory.STATUS, BattleStat.ATK, 1)
.attr(StatusEffectImmunityAbAttr, StatusEffect.BURN)
.ignorable(),
new Ability(Abilities.ANGER_SHELL, "Anger Shell (N)", "When an attack causes its HP to drop to half or less, the Pokémon gets angry. This lowers its Defense and Sp. Def stats but boosts its Attack, Sp. Atk, and Speed stats.", 9),
@@ -2820,22 +3114,26 @@ export function initAbilities() {
new Ability(Abilities.WELL_BAKED_BODY, "Well-Baked Body", "The Pokémon takes no damage when hit by Fire-type moves. Instead, its Defense stat is sharply boosted.", 9)
.attr(TypeImmunityStatChangeAbAttr, Type.FIRE, BattleStat.DEF, 2)
.ignorable(),
- new Ability(Abilities.WIND_RIDER, "Wind Rider (N)", "Boosts the Pokémon's Attack stat if Tailwind takes effect or if the Pokémon is hit by a wind move. The Pokémon also takes no damage from wind moves.", 9)
+ new Ability(Abilities.WIND_RIDER, "Wind Rider (P)", "Boosts the Pokémon's Attack stat if Tailwind takes effect or if the Pokémon is hit by a wind move. The Pokémon also takes no damage from wind moves.", 9)
+ .attr(MoveImmunityStatChangeAbAttr, (pokemon, attacker, move) => pokemon !== attacker && move.getMove().hasFlag(MoveFlags.WIND_MOVE), BattleStat.ATK, 1)
.ignorable(),
new Ability(Abilities.GUARD_DOG, "Guard Dog (N)", "Boosts the Pokémon's Attack stat if intimidated. Moves and items that would force the Pokémon to switch out also fail to work.", 9)
.ignorable(),
new Ability(Abilities.ROCKY_PAYLOAD, "Rocky Payload", "Powers up Rock-type moves.", 9)
.attr(MoveTypePowerBoostAbAttr, Type.ROCK),
- new Ability(Abilities.WIND_POWER, "Wind Power (N)", "The Pokémon becomes charged when it is hit by a wind move, boosting the power of the next Electric-type move the Pokémon uses.", 9),
+ new Ability(Abilities.WIND_POWER, "Wind Power (P)", "The Pokémon becomes charged when it is hit by a wind move, boosting the power of the next Electric-type move the Pokémon uses.", 9)
+ .attr(PostDefendApplyBattlerTagAbAttr, (target, user, move) => move.hasFlag(MoveFlags.WIND_MOVE), BattlerTagType.CHARGED),
new Ability(Abilities.ZERO_TO_HERO, "Zero to Hero (N)", "The Pokémon transforms into its Hero Form when it switches out.", 9)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
.attr(UnsuppressableAbilityAbAttr)
- .attr(NoTransformAbilityAbAttr),
+ .attr(NoTransformAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.COMMANDER, "Commander (N)", "When the Pokémon enters a battle, it goes inside the mouth of an ally Dondozo if one is on the field. The Pokémon then issues commands from there.", 9)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr),
- new Ability(Abilities.ELECTROMORPHOSIS, "Electromorphosis (N)", "The Pokémon becomes charged when it takes damage, boosting the power of the next Electric-type move the Pokémon uses.", 9),
+ new Ability(Abilities.ELECTROMORPHOSIS, "Electromorphosis", "The Pokémon becomes charged when it takes damage, boosting the power of the next Electric-type move the Pokémon uses.", 9)
+ .attr(PostDefendApplyBattlerTagAbAttr, (target, user, move) => move.category !== MoveCategory.STATUS, BattlerTagType.CHARGED),
new Ability(Abilities.PROTOSYNTHESIS, "Protosynthesis", "Boosts the Pokémon's most proficient stat in harsh sunlight or if the Pokémon is holding Booster Energy.", 9)
.conditionalAttr(getWeatherCondition(WeatherType.SUNNY, WeatherType.HARSH_SUN), PostSummonAddBattlerTagAbAttr, BattlerTagType.PROTOSYNTHESIS, 0, true)
.attr(PostWeatherChangeAddBattlerTagAttr, BattlerTagType.PROTOSYNTHESIS, 0, WeatherType.SUNNY, WeatherType.HARSH_SUN)
@@ -2873,13 +3171,17 @@ export function initAbilities() {
.attr(MovePowerBoostAbAttr, (user, target, move) => move.hasFlag(MoveFlags.SLICING_MOVE), 1.5),
new Ability(Abilities.SUPREME_OVERLORD, "Supreme Overlord (N)", "When the Pokémon enters a battle, its Attack and Sp. Atk stats are slightly boosted for each of the allies in its party that have already been defeated.", 9),
new Ability(Abilities.COSTAR, "Costar (N)", "When the Pokémon enters a battle, it copies an ally's stat changes.", 9),
- new Ability(Abilities.TOXIC_DEBRIS, "Toxic Debris (N)", "Scatters poison spikes at the feet of the opposing team when the Pokémon takes damage from physical moves.", 9),
- new Ability(Abilities.ARMOR_TAIL, "Armor Tail (N)", "The mysterious tail covering the Pokémon's head makes opponents unable to use priority moves against the Pokémon or its allies.", 9)
+ new Ability(Abilities.TOXIC_DEBRIS, "Toxic Debris", "Scatters poison spikes at the feet of the opposing team when the Pokémon takes damage from physical moves.", 9)
+ .attr(PostDefendApplyArenaTrapTagAbAttr, (target, user, move) => move.category === MoveCategory.PHYSICAL, ArenaTagType.TOXIC_SPIKES)
+ .bypassFaint(),
+ new Ability(Abilities.ARMOR_TAIL, "Armor Tail", "The mysterious tail covering the Pokémon's head makes opponents unable to use priority moves against the Pokémon or its allies.", 9)
+ .attr(FieldPriorityMoveImmunityAbAttr)
.ignorable(),
new Ability(Abilities.EARTH_EATER, "Earth Eater", "If hit by a Ground-type move, the Pokémon has its HP restored instead of taking damage.", 9)
.attr(TypeImmunityHealAbAttr, Type.GROUND)
.ignorable(),
- new Ability(Abilities.MYCELIUM_MIGHT, "Mycelium Might (N)", "The Pokémon will always act more slowly when using status moves, but these moves will be unimpeded by the Ability of the target.", 9),
+ new Ability(Abilities.MYCELIUM_MIGHT, "Mycelium Might (P)", "The Pokémon will always act more slowly when using status moves, but these moves will be unimpeded by the Ability of the target.", 9)
+ .attr(MoveAbilityBypassAbAttr, (pokemon, move: Move) => move.category === MoveCategory.STATUS),
new Ability(Abilities.MINDS_EYE, "Mind's Eye (N)", "The Pokémon ignores changes to opponents' evasiveness, its accuracy can't be lowered, and it can hit Ghost types with Normal- and Fighting-type moves.", 9)
.ignorable(),
new Ability(Abilities.SUPERSWEET_SYRUP, "Supersweet Syrup (N)", "A sickly sweet scent spreads across the field the first time the Pokémon enters a battle, lowering the evasiveness of opposing Pokémon.", 9),
@@ -2911,7 +3213,8 @@ export function initAbilities() {
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
.attr(UnsuppressableAbilityAbAttr)
- .attr(NoTransformAbilityAbAttr),
+ .attr(NoTransformAbilityAbAttr)
+ .attr(NoFusionAbilityAbAttr),
new Ability(Abilities.TERA_SHELL, "Tera Shell (N)", "The Pokémon's shell contains the powers of each type. All damage-dealing moves that hit the Pokémon when its HP is full will not be very effective.", 9)
.attr(UncopiableAbilityAbAttr)
.attr(UnswappableAbilityAbAttr)
diff --git a/src/data/api.ts b/src/data/api.ts
index 9d342dab288..1f2690c6a14 100644
--- a/src/data/api.ts
+++ b/src/data/api.ts
@@ -249,7 +249,7 @@ export async function printPokemon() {
Math.max(abilities.indexOf(pokemon.abilities.find(a => a.slot === 3)?.ability.name), 0)
];
- const pokemonSpecies = new PokemonSpecies(dexId, species.names.find(n => n.language.name === 'en').name, generationIndex, species.is_legendary && baseTotal < 660, species.is_legendary && baseTotal >= 660, species.is_mythical,
+ const pokemonSpecies = new PokemonSpecies(dexId, generationIndex, species.is_legendary && baseTotal < 660, species.is_legendary && baseTotal >= 660, species.is_mythical,
species.genera.find(g => g.language.name === 'en')?.genus, type1 as Type, type2 > -1 ? type2 as Type : null, pokemon.height / 10, pokemon.weight / 10, ability1 as Abilities, ability2 as Abilities, abilityHidden as Abilities,
baseTotal, baseStats[0], baseStats[1], baseStats[2], baseStats[3], baseStats[4], baseStats[5], species.capture_rate, species.base_happiness, pokemon.base_experience, growthRateMap[species.growth_rate.name],
species.gender_rate < 9 ? 100 - (species.gender_rate * 12.5) : null, species.has_gender_differences, species.forms_switchable);
diff --git a/src/data/arena-tag.ts b/src/data/arena-tag.ts
index 2f6305862d8..642cc72404a 100644
--- a/src/data/arena-tag.ts
+++ b/src/data/arena-tag.ts
@@ -175,7 +175,7 @@ class MudSportTag extends WeakenMoveTypeTag {
}
onRemove(arena: Arena): void {
- arena.scene.queueMessage('The effects of MUD SPORT\nhave faded.');
+ arena.scene.queueMessage('The effects of Mud Sport\nhave faded.');
}
}
@@ -189,7 +189,7 @@ class WaterSportTag extends WeakenMoveTypeTag {
}
onRemove(arena: Arena): void {
- arena.scene.queueMessage('The effects of WATER SPORT\nhave faded.');
+ arena.scene.queueMessage('The effects of Water Sport\nhave faded.');
}
}
diff --git a/src/data/battle-anims.ts b/src/data/battle-anims.ts
index 84bf6077449..e35914c941e 100644
--- a/src/data/battle-anims.ts
+++ b/src/data/battle-anims.ts
@@ -79,6 +79,7 @@ export enum CommonAnim {
MAGMA_STORM,
CLAMP,
THUNDER_CAGE,
+ INFESTATION,
ORDER_UP_CURLY,
ORDER_UP_DROOPY,
ORDER_UP_STRETCHY,
@@ -89,6 +90,7 @@ export enum CommonAnim {
RAIN,
SANDSTORM,
HAIL,
+ SNOW,
WIND,
HEAVY_RAIN,
HARSH_SUN,
@@ -795,7 +797,10 @@ export abstract class BattleAnim {
let sprite: Phaser.GameObjects.Sprite;
sprite = scene.addPokemonSprite(isUser ? user : target, 0, 0, spriteSource.texture, spriteSource.frame.name, true);
[ 'spriteColors', 'fusionSpriteColors' ].map(k => sprite.pipelineData[k] = (isUser ? user : target).getSprite().pipelineData[k]);
- sprite.pipelineData['ignoreFieldPos'] = true;
+ sprite.setPipelineData('spriteKey', (isUser ? user : target).getSpriteKey());
+ sprite.setPipelineData('shiny', (isUser ? user : target).shiny);
+ sprite.setPipelineData('variant', (isUser ? user : target).variant);
+ sprite.setPipelineData('ignoreFieldPos', true);
spriteSource.on('animationupdate', (_anim, frame) => sprite.setFrame(frame.textureFrame));
scene.field.add(sprite);
sprites.push(sprite);
diff --git a/src/data/battler-tags.ts b/src/data/battler-tags.ts
index 20946c784cb..25ff41ec3e2 100644
--- a/src/data/battler-tags.ts
+++ b/src/data/battler-tags.ts
@@ -8,7 +8,7 @@ import * as Utils from "../utils";
import { Moves } from "./enums/moves";
import { ChargeAttr, MoveFlags, allMoves } from "./move";
import { Type } from "./type";
-import { BlockNonDirectDamageAbAttr, FlinchEffectAbAttr, applyAbAttrs } from "./ability";
+import { BlockNonDirectDamageAbAttr, FlinchEffectAbAttr, ReverseDrainAbAttr, applyAbAttrs } from "./ability";
import { Abilities } from "./enums/abilities";
import { BattlerTagType } from "./enums/battler-tag-type";
import { TerrainType } from "./terrain";
@@ -292,7 +292,11 @@ export class SeedTag extends BattlerTag {
pokemon.scene.unshiftPhase(new CommonAnimPhase(pokemon.scene, source.getBattlerIndex(), pokemon.getBattlerIndex(), CommonAnim.LEECH_SEED));
const damage = pokemon.damageAndUpdate(Math.max(Math.floor(pokemon.getMaxHp() / 8), 1));
- pokemon.scene.unshiftPhase(new PokemonHealPhase(pokemon.scene, source.getBattlerIndex(), damage, getPokemonMessage(pokemon, '\'s health is\nsapped by Leech Seed!'), false, true));
+ const reverseDrain = pokemon.hasAbilityWithAttr(ReverseDrainAbAttr);
+ pokemon.scene.unshiftPhase(new PokemonHealPhase(pokemon.scene, source.getBattlerIndex(),
+ !reverseDrain ? damage : damage * -1,
+ !reverseDrain ? getPokemonMessage(pokemon, '\'s health is\nsapped by Leech Seed!') : getPokemonMessage(source, '\'s Leech Seed\nsucked up the liquid ooze!'),
+ false, true));
}
}
}
@@ -613,6 +617,16 @@ export class ThunderCageTag extends DamagingTrapTag {
}
}
+export class InfestationTag extends DamagingTrapTag {
+ constructor(turnCount: integer, sourceId: integer) {
+ super(BattlerTagType.INFESTATION, CommonAnim.INFESTATION, turnCount, Moves.INFESTATION, sourceId);
+ }
+
+ getTrapMessage(pokemon: Pokemon): string {
+ return getPokemonMessage(pokemon, ` has been afflicted \nwith an infestation by ${getPokemonPrefix(pokemon.scene.getPokemonById(this.sourceId))}${pokemon.scene.getPokemonById(this.sourceId).name}!`);
+ }
+}
+
export class ProtectedTag extends BattlerTag {
constructor(sourceMove: Moves, tagType: BattlerTagType = BattlerTagType.PROTECTED) {
@@ -799,7 +813,7 @@ export class TruantTag extends AbilityBattlerTag {
}
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
- if ((!pokemon.canApplyAbility() || pokemon.getAbility().id !== Abilities.TRUANT) && (!pokemon.canApplyAbility(true) || pokemon.getPassiveAbility().id !== Abilities.TRUANT))
+ if (!pokemon.hasAbility(Abilities.TRUANT))
return super.lapse(pokemon, lapseType);
const passive = pokemon.getAbility().id !== Abilities.TRUANT;
@@ -827,7 +841,7 @@ export class SlowStartTag extends AbilityBattlerTag {
}
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
- if ((!pokemon.canApplyAbility() || pokemon.getAbility().id !== this.ability) && (!pokemon.canApplyAbility(true) || pokemon.getPassiveAbility().id !== this.ability))
+ if (!pokemon.hasAbility(this.ability))
this.turnCount = 1;
return super.lapse(pokemon, lapseType);
@@ -922,11 +936,15 @@ export class HideSpriteTag extends BattlerTag {
export class TypeBoostTag extends BattlerTag {
public boostedType: Type;
+ public boostValue: number;
+ public oneUse: boolean;
- constructor(tagType: BattlerTagType, sourceMove: Moves, boostedType: Type) {
+ constructor(tagType: BattlerTagType, sourceMove: Moves, boostedType: Type, boostValue: number, oneUse: boolean) {
super(tagType, BattlerTagLapseType.TURN_END, 1, sourceMove);
this.boostedType = boostedType;
+ this.boostValue = boostValue;
+ this.oneUse = oneUse;
}
lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
@@ -1003,6 +1021,39 @@ export class SaltCuredTag extends BattlerTag {
}
}
+export class CursedTag extends BattlerTag {
+ private sourceIndex: integer;
+
+ constructor(sourceId: integer) {
+ super(BattlerTagType.CURSED, BattlerTagLapseType.TURN_END, 1, Moves.CURSE, sourceId);
+ }
+
+ onAdd(pokemon: Pokemon): void {
+ super.onAdd(pokemon);
+
+ pokemon.scene.queueMessage(getPokemonMessage(pokemon, ' has been cursed!'));
+ this.sourceIndex = pokemon.scene.getPokemonById(this.sourceId).getBattlerIndex();
+ }
+
+ lapse(pokemon: Pokemon, lapseType: BattlerTagLapseType): boolean {
+ const ret = lapseType !== BattlerTagLapseType.CUSTOM || super.lapse(pokemon, lapseType);
+
+ if (ret) {
+ pokemon.scene.unshiftPhase(new CommonAnimPhase(pokemon.scene, pokemon.getBattlerIndex(), pokemon.getBattlerIndex(), CommonAnim.SALT_CURE));
+
+ const cancelled = new Utils.BooleanHolder(false);
+ applyAbAttrs(BlockNonDirectDamageAbAttr, pokemon, cancelled);
+
+ if (!cancelled.value) {
+ pokemon.damageAndUpdate(Math.floor(pokemon.getMaxHp() / 4));
+ pokemon.scene.queueMessage(getPokemonMessage(pokemon, ` is hurt by the ${this.getMoveName()}!`));
+ }
+ }
+
+ return ret;
+ }
+}
+
export function getBattlerTag(tagType: BattlerTagType, turnCount: integer, sourceMove: Moves, sourceId: integer): BattlerTag {
switch (tagType) {
case BattlerTagType.RECHARGING:
@@ -1047,6 +1098,8 @@ export function getBattlerTag(tagType: BattlerTagType, turnCount: integer, sourc
return new MagmaStormTag(turnCount, sourceId);
case BattlerTagType.THUNDER_CAGE:
return new ThunderCageTag(turnCount, sourceId);
+ case BattlerTagType.INFESTATION:
+ return new InfestationTag(turnCount, sourceId);
case BattlerTagType.PROTECTED:
return new ProtectedTag(sourceMove);
case BattlerTagType.SPIKY_SHIELD:
@@ -1077,10 +1130,11 @@ export function getBattlerTag(tagType: BattlerTagType, turnCount: integer, sourc
return new TerrainHighestStatBoostTag(tagType, Abilities.QUARK_DRIVE, TerrainType.ELECTRIC);
case BattlerTagType.FLYING:
case BattlerTagType.UNDERGROUND:
+ case BattlerTagType.UNDERWATER:
case BattlerTagType.HIDDEN:
return new HideSpriteTag(tagType, turnCount, sourceMove);
case BattlerTagType.FIRE_BOOST:
- return new TypeBoostTag(tagType, sourceMove, Type.FIRE);
+ return new TypeBoostTag(tagType, sourceMove, Type.FIRE, 1.5, false);
case BattlerTagType.CRIT_BOOST:
return new CritBoostTag(tagType, sourceMove);
case BattlerTagType.ALWAYS_CRIT:
@@ -1093,10 +1147,17 @@ export function getBattlerTag(tagType: BattlerTagType, turnCount: integer, sourc
return new BattlerTag(BattlerTagType.BYPASS_SLEEP, BattlerTagLapseType.TURN_END, turnCount, sourceMove);
case BattlerTagType.IGNORE_FLYING:
return new BattlerTag(tagType, BattlerTagLapseType.TURN_END, turnCount, sourceMove);
+ case BattlerTagType.GROUNDED:
+ return new BattlerTag(tagType, BattlerTagLapseType.TURN_END, turnCount - 1, sourceMove);
case BattlerTagType.SALT_CURED:
return new SaltCuredTag(sourceId);
+ case BattlerTagType.CURSED:
+ return new CursedTag(sourceId);
+ case BattlerTagType.CHARGED:
+ return new TypeBoostTag(tagType, sourceMove, Type.ELECTRIC, 2, true);
case BattlerTagType.NONE:
default:
return new BattlerTag(tagType, BattlerTagLapseType.CUSTOM, turnCount, sourceMove, sourceId);
}
}
+
\ No newline at end of file
diff --git a/src/data/biomes.ts b/src/data/biomes.ts
index a917593a3fa..4f5a4e5af64 100644
--- a/src/data/biomes.ts
+++ b/src/data/biomes.ts
@@ -44,7 +44,7 @@ export const biomeLinks: BiomeLinks = {
[Biome.SEA]: [ Biome.SEABED, Biome.ICE_CAVE ],
[Biome.SWAMP]: [ Biome.GRAVEYARD, Biome.TALL_GRASS ],
[Biome.BEACH]: [ Biome.SEA, [ Biome.ISLAND, 4 ] ],
- [Biome.LAKE]: [ Biome.BEACH, Biome.SWAMP ],
+ [Biome.LAKE]: [ Biome.BEACH, Biome.SWAMP, Biome.CONSTRUCTION_SITE ],
[Biome.SEABED]: [ Biome.CAVE, [ Biome.VOLCANO, 4 ] ],
[Biome.MOUNTAIN]: [ Biome.VOLCANO, [ Biome.WASTELAND, 3 ] ],
[Biome.BADLANDS]: [ Biome.DESERT, Biome.MOUNTAIN ],
@@ -66,9 +66,9 @@ export const biomeLinks: BiomeLinks = {
[Biome.FAIRY_CAVE]: [ Biome.ICE_CAVE, [ Biome.SPACE, 3 ] ],
[Biome.TEMPLE]: [ Biome.SWAMP, [ Biome.RUINS, 3 ] ],
[Biome.METROPOLIS]: Biome.SLUM,
- [Biome.SNOWY_FOREST]: Biome.LAKE,
+ [Biome.SNOWY_FOREST]: [ Biome.FOREST, Biome.LAKE, Biome.MOUNTAIN ],
[Biome.ISLAND]: Biome.SEA,
- [Biome.LABORATORY]: Biome.METROPOLIS
+ [Biome.LABORATORY]: Biome.CONSTRUCTION_SITE
};
export const biomeDepths: BiomeDepths = {};
@@ -1844,7 +1844,7 @@ export const biomeTrainerPools: BiomeTrainerPools = {
[BiomePoolTier.RARE]: [],
[BiomePoolTier.SUPER_RARE]: [],
[BiomePoolTier.ULTRA_RARE]: [],
- [BiomePoolTier.BOSS]: [ TrainerType.BRAWLY, TrainerType.KORRINA, TrainerType.BEA ],
+ [BiomePoolTier.BOSS]: [ TrainerType.BRAWLY, TrainerType.KORRINA, TrainerType.BEA, TrainerType.MAYLENE ],
[BiomePoolTier.BOSS_RARE]: [],
[BiomePoolTier.BOSS_SUPER_RARE]: [],
[BiomePoolTier.BOSS_ULTRA_RARE]: []
@@ -4144,7 +4144,7 @@ export const biomeTrainerPools: BiomeTrainerPools = {
],
[ Species.MIME_JR, Type.PSYCHIC, Type.FAIRY, [ ]
],
- [ Species.HAPPINY, Type.NORMAL, -1, []
+ [ Species.HAPPINY, Type.NORMAL, -1, [ ]
],
[ Species.CHATOT, Type.NORMAL, Type.FLYING, [
[ Biome.JUNGLE, BiomePoolTier.SUPER_RARE ]
@@ -6057,7 +6057,7 @@ export const biomeTrainerPools: BiomeTrainerPools = {
[ Biome.SEABED, BiomePoolTier.BOSS ]
]
],
- [ Species.TOXEL, Type.ELECTRIC, Type.POISON, []
+ [ Species.TOXEL, Type.ELECTRIC, Type.POISON, [ ]
],
[ Species.TOXTRICITY, Type.ELECTRIC, Type.POISON, [
[ Biome.SLUM, BiomePoolTier.RARE, [ TimeOfDay.DUSK, TimeOfDay.NIGHT ] ],
@@ -7408,6 +7408,10 @@ export const biomeTrainerPools: BiomeTrainerPools = {
[ Biome.LAKE, BiomePoolTier.BOSS ]
]
],
+ [ TrainerType.MAYLENE, [
+ [ Biome.DOJO, BiomePoolTier.BOSS ]
+ ]
+ ],
[ TrainerType.FANTINA, [
[ Biome.TEMPLE, BiomePoolTier.BOSS ]
]
diff --git a/src/data/daily-run.ts b/src/data/daily-run.ts
index a5ea4e585a0..5371b87a684 100644
--- a/src/data/daily-run.ts
+++ b/src/data/daily-run.ts
@@ -60,12 +60,12 @@ export function getDailyRunStarters(scene: BattleScene, seed: string): Starter[]
function getDailyRunStarter(scene: BattleScene, starterSpeciesForm: PokemonSpeciesForm, startingLevel: integer): Starter {
const starterSpecies = starterSpeciesForm instanceof PokemonSpecies ? starterSpeciesForm : getPokemonSpecies(starterSpeciesForm.speciesId);
const formIndex = starterSpeciesForm instanceof PokemonSpecies ? undefined : starterSpeciesForm.formIndex;
- const pokemon = new PlayerPokemon(scene, starterSpecies, startingLevel, undefined, formIndex, undefined, undefined, undefined, undefined, undefined);
+ const pokemon = new PlayerPokemon(scene, starterSpecies, startingLevel, undefined, formIndex, undefined, undefined, undefined, undefined, undefined, undefined);
const starter: Starter = {
species: starterSpecies,
dexAttr: pokemon.getDexAttr(),
+ abilityIndex: pokemon.abilityIndex,
passive: false,
- variant: 0,
nature: pokemon.getNature(),
pokerus: pokemon.pokerus
};
diff --git a/src/data/dialogue.ts b/src/data/dialogue.ts
index dc1b346d513..daf12e5f03d 100644
--- a/src/data/dialogue.ts
+++ b/src/data/dialogue.ts
@@ -56,7 +56,8 @@ export const trainerTypeDialogue = {
`I'll show you the ropes of how to really use Pokémon!`,
`A serious battle starts from a serious beginning! Are you sure you're ready?`,
`You're only young once. And you only get one shot at a given battle. Soon, you'll be nothing but a memory.`,
- `You'd better go easy on me, OK? Though I'll be seriously fighting!`
+ `You'd better go easy on me, OK? Though I'll be seriously fighting!`,
+ `School is boring. I've got nothing to do. Yawn. I'm only battling to kill the time.`
],
victory: [
`That was impressive! I've got a lot to learn.`,
@@ -66,7 +67,8 @@ export const trainerTypeDialogue = {
`You actually taught me a lesson! You're pretty amazing!`,
`Seriously, I lost. That is, like, seriously depressing, but you were seriously cool.`,
`I don't need memories like this. Deleting memory…`,
- `Hey! I told you to go easy on me! Still, you're pretty cool when you're serious.`
+ `Hey! I told you to go easy on me! Still, you're pretty cool when you're serious.`,
+ `I'm actually getting tired of battling… There's gotta be something new to do…`
]
}
],
@@ -78,9 +80,14 @@ export const trainerTypeDialogue = {
`Hmm, do you discipline your Pokémon? Pampering them too much is no good.`,
],
victory: [
- `I am happy! Happy, I tell you! Don't look at me like that!`,
- `You don't seem to need any tips for training good Pokémon.`,
- `The hardest part of this job is saying farewell to Pokémon.`,
+ `It is important to nurture and train each Pokémon's characteristics.`,
+ `Unlike my diabolical self, these are some good Pokémon.`,
+ `Too much praise can spoil both Pokémon and people.`,
+ ],
+ defeat:[
+ `You should not get angry at your Pokémon, even if you lose a battle.`,
+ `Right? Pretty good Pokémon, huh? I'm suited to raising things.`,
+ `No matter how much you love your Pokémon, you still have to discipline them when they misbehave.`
]
},
{
@@ -93,6 +100,11 @@ export const trainerTypeDialogue = {
`Ugh… It wasn't supposed to be like this. Did I administer the wrong blend?`,
`How could that happen to my Pokémon… What are you feeding your Pokémon?`,
`If I lose, that tells you I was just killing time. It doesn't damage my ego at all.`
+ ],
+ defeat: [
+ `This proves my Pokémon have accepted my love.`,
+ `The real trick behind training good Pokémon is catching good Pokémon.`,
+ `Pokémon will be strong or weak depending on how you raise them.`
]
}
],
@@ -165,6 +177,12 @@ export const trainerTypeDialogue = {
`What?! But I'm a battling genius!`,
`Of course, you are the main character!`,
`OK! OK! You could be an Ace Trainer!`
+ ],
+ defeat: [
+ `I am devoting my body and soul to Pokémon battles!`,
+ `All within my expectations… Nothing to be surprised about…`,
+ `I thought I'd grow up to be a frail person who looked like they would break if you squeezed them too hard.`,
+ `Of course I'm strong and don't lose. It's important that I win gracefully.`
]
}
],
@@ -189,7 +207,12 @@ export const trainerTypeDialogue = {
`We may have lost this round, but our bond remains unbreakable!`,
`Our twin spirit won't be dimmed for long.`,
`We'll come back stronger as a dynamic duo!`
- ]
+ ],
+ defeat: [
+ `Twin power reigns supreme!`,
+ `Two hearts, one triumph!`,
+ `Double the smiles, double the victory dance!`
+ ],
}
],
[TrainerType.CYCLIST]: [
@@ -248,6 +271,10 @@ export const trainerTypeDialogue = {
victory: [
`It doesn't matter to the vastness of nature whether I win or lose…`,
`Something like this is pretty trivial compared to the stifling feelings of city life.`
+ ],
+ defeat: [
+ `I won the battle. But victory is nothing compared to the vastness of nature…`,
+ `I'm sure how you feel is not so bad if you compare it to my anxiety attacks…`
]
}
],
@@ -296,23 +323,46 @@ export const trainerTypeDialogue = {
[TrainerType.WORKER]: [
{
encounter: [
- `I'll show you we can break you. We've been training in the field!`,
+ `It bothers me that people always misunderstand me. I'm a lot more pure than everyone thinks.`
+ ],
+ victory: [
+ `I really don't want my skin to burn, so I want to stay in the shade while I work.`,
+ ]
+ },
+ {
+ encounter: [
`It bothers me that people always misunderstand me.
$I'm a lot more pure than everyone thinks.`
],
victory: [
- `How strange… How could this be… I shouldn't have been outmuscled.`,
`I really don't want my skin to burn, so I want to stay in the shade while I work.`
+ ],
+ defeat: [
+ `My body and mind aren't necessarily always in sync.`
]
- }
+ },
+ {
+ encounter: [
+ `I'll show you we can break you. We've been training in the field!`
+ ],
+ victory: [
+ `How strange… How could this be… I shouldn't have been outmuscled.`,
+ ]
+ },
],
[TrainerType.HEX_MANIAC]: [
{
encounter: [
`I normally only ever listen to classical music, but if I lose, I think I shall try a bit of new age!`,
+ `I grow stronger with each tear I cry.`
],
victory: [
`Is this the dawning of the age of Aquarius?`,
+ `Now I can get even stronger. I grow with every grudge.`
+ ],
+ defeat: [
+ `New age simply refers to twentieth century classical composers, right?`,
+ `Don't get hung up on sadness or frustration. You can use your grudges to motivate yourself.`
]
}
],
@@ -338,6 +388,36 @@ export const trainerTypeDialogue = {
]
}
],
+ [TrainerType.BEAUTY]: [
+ {
+ encounter: [
+ `My last ever battle… That's the way I'd like us to view this match…`
+ ],
+ victory: [
+ `It's been fun… Let's have another last battle again someday…`
+ ]
+ }
+ ],
+ [TrainerType.BAKER]: [
+ {
+ encounter: [
+ `Hope you're ready to taste defeat!`
+ ],
+ victory: [
+ `I'll bake a comeback.`
+ ]
+ }
+ ],
+ [TrainerType.BIKER]: [
+ {
+ encounter: [
+ `Time to rev up and leave you in the dust!`
+ ],
+ victory: [
+ `I'll tune up for the next race.`
+ ]
+ }
+ ],
[TrainerType.BROCK]: {
encounter: [
`My expertise on Rock-type Pokémon will take you down! Come on!`,
@@ -393,17 +473,20 @@ export const trainerTypeDialogue = {
encounter: [
`Ah, the weather is lovely here…\nOh, a battle? Very well then.`,
`My Pokémon battling skills rival that of my flower arranging skills.`,
- `Oh, I hope the pleasant aroma of my Pokémon doesn't put me to sleep again…`
+ `Oh, I hope the pleasant aroma of my Pokémon doesn't put me to sleep again…`,
+ `Seeing flowers in a garden is so soothing.`
],
victory: [
`Oh! I concede defeat.`,
`That match was most delightful.`,
- `Ah, it appears it is my loss…`
+ `Ah, it appears it is my loss…`,
+ `Oh, my goodness.`
],
defeat: [
`I was afraid I would doze off…`,
`Oh my, it seems my Grass Pokémon overwhelmed you.`,
- `That battle was such a soothing experience.`
+ `That battle was such a soothing experience.`,
+ `Oh… Is that all?`
]
},
[TrainerType.JANINE]: {
@@ -1723,12 +1806,17 @@ export const trainerTypeDialogue = {
encounter: [
`M'hm… If I win this battle, I feel like I can draw a picture unlike any before it.
$OK! I can hear my battle muse loud and clear. Let's get straight to it!`,
+ `Of course, I'm really proud of all of my Pokémon!
+ $Well now… Let's get right to it!`
],
victory: [
`Is it over? Has my muse abandoned me?`,
+ `Hmm… It's over! You're incredible!`
],
defeat: [
`Wow… It's beautiful somehow, isn't it…`,
+ `Sometimes I hear people say something was an ugly win.
+ $I think if you're trying your best, any win is beautiful.`
]
},
[TrainerType.ELESA]: {
@@ -2043,6 +2131,9 @@ export const trainerTypeDialogue = {
$@c{smile_wave}I also got you another one of these!\n@c{smile_wave_wink}No need to thank me~.
$@c{angry_mopen}This is the last one, though! You won't be getting anymore freebies from me after this!
$@c{smile_wave}Keep at it!`
+ ],
+ defeat: [
+ `It's OK to lose sometimes…`
]
}
],
@@ -2069,6 +2160,9 @@ export const trainerTypeDialogue = {
],
victory: [
`@c{shock}After all that… it wasn't enough…?\nYou'll never come back at this rate…`
+ ],
+ defeat: [
+ `You gave it your best, now let's go home.`
]
}
],
@@ -2101,6 +2195,9 @@ export const trainerTypeDialogue = {
],
victory: [
`@c{neutral}What…@d{64} What are you?`
+ ],
+ defeat: [
+ `$@c{smile}You should be proud of how far you made it.`
]
}
],
@@ -2120,6 +2217,11 @@ export const trainerTypeDialogue = {
victory: [
`@c{neutral}…`
]
+ },
+ {
+ defeat: [
+ `$@c{smile_ehalf}…`
+ ]
}
],
[TrainerType.RIVAL_6]: [
diff --git a/src/data/egg-moves.ts b/src/data/egg-moves.ts
index 1413bc4bf41..96053402828 100644
--- a/src/data/egg-moves.ts
+++ b/src/data/egg-moves.ts
@@ -26,7 +26,7 @@ export const speciesEggMoves = {
[Species.MEOWTH]: [ Moves.COVET, Moves.HAPPY_HOUR, Moves.PARTING_SHOT, Moves.MAKE_IT_RAIN ],
[Species.PSYDUCK]: [ Moves.MYSTICAL_POWER, Moves.AQUA_STEP, Moves.PSYCHIC, Moves.MIND_BLOWN ],
[Species.MANKEY]: [ Moves.BEAT_UP, Moves.PLAY_ROUGH, Moves.TAUNT, Moves.CLOSE_COMBAT ],
- [Species.GROWLITHE]: [ Moves.THUNDER_FANG, Moves.HYPER_VOICE, Moves.NOBLE_ROAR, Moves.RAGING_FURY ],
+ [Species.GROWLITHE]: [ Moves.TRAILBLAZE, Moves.U_TURN, Moves.MORNING_SUN, Moves.V_CREATE ],
[Species.POLIWAG]: [ Moves.BOUNCY_BUBBLE, Moves.AURORA_BEAM, Moves.ZEN_HEADBUTT, Moves.SURGING_STRIKES ],
[Species.ABRA]: [ Moves.MYSTICAL_FIRE, Moves.HEX, Moves.MAGICAL_LEAF, Moves.MYSTICAL_POWER ],
[Species.MACHOP]: [ Moves.BULLET_PUNCH, Moves.KNOCK_OFF, Moves.COACHING, Moves.CLOSE_COMBAT ],
@@ -41,7 +41,7 @@ export const speciesEggMoves = {
[Species.SEEL]: [ Moves.FREEZE_DRY, Moves.CHILLING_WATER, Moves.ENCORE, Moves.RECOVER ],
[Species.GRIMER]: [ Moves.SHADOW_SNEAK, Moves.CURSE, Moves.CORROSIVE_GAS, Moves.PAIN_SPLIT ],
[Species.SHELLDER]: [ Moves.BODY_PRESS, Moves.WATER_SHURIKEN, Moves.BANEFUL_BUNKER, Moves.RECOVER ],
- [Species.GASTLY]: [ Moves.CLEAR_SMOG, Moves.THIEF, Moves.NASTY_PLOT, Moves.SPECTRAL_THIEF ],
+ [Species.GASTLY]: [ Moves.CLEAR_SMOG, Moves.NIGHT_DAZE, Moves.NASTY_PLOT, Moves.SPECTRAL_THIEF ],
[Species.ONIX]: [ Moves.SHORE_UP, Moves.DRAGON_TAIL, Moves.HEAD_SMASH, Moves.BODY_PRESS ],
[Species.DROWZEE]: [ Moves.DREAM_EATER, Moves.METRONOME, Moves.NIGHTMARE, Moves.SYNCHRONOISE ],
[Species.KRABBY]: [ Moves.CRUSH_GRIP, Moves.CEASELESS_EDGE, Moves.SHORE_UP, Moves.SHELL_SMASH ],
@@ -72,7 +72,7 @@ export const speciesEggMoves = {
[Species.DRATINI]: [ Moves.SCALE_SHOT, Moves.AQUA_JET, Moves.WHIRLWIND, Moves.SHED_TAIL ],
[Species.MEWTWO]: [ Moves.PSYBLADE, Moves.POLTERGEIST, Moves.ARMOR_CANNON, Moves.PSYCHO_BOOST ],
[Species.MEW]: [ Moves.PSYSTRIKE, Moves.DECORATE, Moves.REVIVAL_BLESSING, Moves.SKETCH ],
- [Species.CHIKORITA]: [ Moves.ROCK_SLIDE, Moves.LUNGE, Moves.DRAGON_DANCE, Moves.SAPPY_SEED ],
+ [Species.CHIKORITA]: [ Moves.ROCK_SLIDE, Moves.PLAY_ROUGH, Moves.DRAGON_DANCE, Moves.SAPPY_SEED ],
[Species.CYNDAQUIL]: [ Moves.EXTRASENSORY, Moves.SCORCHING_SANDS, Moves.FIERY_DANCE, Moves.NASTY_PLOT ],
[Species.TOTODILE]: [ Moves.AQUA_JET, Moves.DRAGON_DANCE, Moves.ICE_PUNCH, Moves.WAVE_CRASH ],
[Species.SENTRET]: [ Moves.TIDY_UP, Moves.TAIL_SLAP, Moves.ENCORE, Moves.EXTREME_SPEED ],
@@ -149,7 +149,7 @@ export const speciesEggMoves = {
[Species.MAWILE]: [ Moves.SPIRIT_BREAK, Moves.JAW_LOCK, Moves.HYPER_FANG, Moves.HARD_PRESS ],
[Species.ARON]: [ Moves.HEAD_SMASH, Moves.BODY_PRESS, Moves.SHORE_UP, Moves.BEHEMOTH_BASH ],
[Species.MEDITITE]: [ Moves.TRAILBLAZE, Moves.FAKE_OUT, Moves.BULLET_PUNCH, Moves.PSYBLADE ],
- [Species.ELECTRIKE]: [ Moves.NUZZLE, Moves.JAW_LOCK, Moves.FLAME_CHARGE, Moves.WILDBOLT_STORM ],
+ [Species.ELECTRIKE]: [ Moves.NUZZLE, Moves.TEMPER_FLARE, Moves.TRAILBLAZE, Moves.WILDBOLT_STORM ],
[Species.PLUSLE]: [ Moves.FLAMETHROWER, Moves.PARABOLIC_CHARGE, Moves.ALLURING_VOICE, Moves.TAIL_GLOW ],
[Species.MINUN]: [ Moves.ICE_BEAM, Moves.PARABOLIC_CHARGE, Moves.ALLURING_VOICE, Moves.TAIL_GLOW ],
[Species.VOLBEAT]: [ Moves.FLAME_CHARGE, Moves.LUNGE, Moves.ACROBATICS, Moves.VICTORY_DANCE ],
@@ -198,66 +198,66 @@ export const speciesEggMoves = {
[Species.RAYQUAZA]: [ Moves.OBLIVION_WING, Moves.DRAGON_DARTS, Moves.SUPERCELL_SLAM, Moves.V_CREATE ],
[Species.JIRACHI]: [ Moves.IRON_HEAD, Moves.TRI_ATTACK, Moves.EERIE_SPELL, Moves.TAKE_HEART ],
[Species.DEOXYS]: [ Moves.CLOSE_COMBAT, Moves.METEOR_BEAM, Moves.NIGHT_DAZE, Moves.PHOTON_GEYSER ],
- [Species.TURTWIG]: [ Moves.HEADLONG_RUSH, Moves.SHELTER, Moves.BODY_PRESS, Moves.FRENZY_PLANT ],
- [Species.CHIMCHAR]: [ Moves.RAGING_FURY, Moves.BURN_UP, Moves.WORK_UP, Moves.WICKED_BLOW ],
- [Species.PIPLUP]: [ Moves.KINGS_SHIELD, Moves.FLIP_TURN, Moves.NOBLE_ROAR, Moves.SUNSTEEL_STRIKE ],
- [Species.STARLY]: [ Moves.SWORDS_DANCE, Moves.OUTRAGE, Moves.FLAME_CHARGE, Moves.COLLISION_COURSE ],
- [Species.BIDOOF]: [ Moves.SUPER_FANG, Moves.LIQUIDATION, Moves.BODY_PRESS, Moves.NO_RETREAT ],
- [Species.KRICKETOT]: [ Moves.BOOMBURST, Moves.ALLURING_VOICE, Moves.SPARKLING_ARIA, Moves.QUIVER_DANCE ],
- [Species.SHINX]: [ Moves.PSYCHIC_FANGS, Moves.JAW_LOCK, Moves.FACADE, Moves.VOLT_TACKLE ],
- [Species.BUDEW]: [ Moves.FLORAL_HEALING, Moves.ACID_SPRAY, Moves.SPORE, Moves.SEED_FLARE ],
- [Species.CRANIDOS]: [ Moves.STONE_AXE, Moves.DRAGON_RUSH, Moves.SUPERPOWER, Moves.ROCK_WRECKER ],
- [Species.SHIELDON]: [ Moves.COSMIC_POWER, Moves.BODY_PRESS, Moves.KINGS_SHIELD, Moves.BEHEMOTH_BASH ],
- [Species.BURMY]: [ Moves.BODY_PRESS, Moves.TOXIC, Moves.RECOVER, Moves.SHELTER ],
- [Species.COMBEE]: [ Moves.TWINEEDLE, Moves.AIR_SLASH, Moves.KINGS_SHIELD, Moves.SPORE ],
- [Species.PACHIRISU]: [ Moves.SUPER_FANG, Moves.EXTREME_SPEED, Moves.SUPERPOWER, Moves.VOLT_TACKLE ],
- [Species.BUIZEL]: [ Moves.JET_PUNCH, Moves.ICE_PUNCH, Moves.HIGH_HORSEPOWER, Moves.SURGING_STRIKES ],
- [Species.CHERUBI]: [ Moves.FLOWER_SHIELD, Moves.GRASSY_TERRAIN, Moves.GRASSY_GLIDE, Moves.SPORE ],
- [Species.SHELLOS]: [ Moves.LIFE_DEW, Moves.BOUNCY_BUBBLE, Moves.FREEZE_DRY, Moves.FREEZY_FROST ],
- [Species.DRIFLOON]: [ Moves.THIEF, Moves.ACUPRESSURE, Moves.WILL_O_WISP, Moves.HURRICANE ],
- [Species.BUNEARY]: [ Moves.TRIPLE_AXEL, Moves.TROP_KICK, Moves.FAKE_OUT, Moves.SWORDS_DANCE ],
- [Species.GLAMEOW]: [ Moves.U_TURN, Moves.STOMPING_TANTRUM, Moves.COVET, Moves.WICKED_BLOW ],
- [Species.CHINGLING]: [ Moves.BUZZY_BUZZ, Moves.BOOMBURST, Moves.TORCH_SONG, Moves.EERIE_SPELL ],
- [Species.STUNKY]: [ Moves.CORROSIVE_GAS, Moves.BURNING_JEALOUSY, Moves.SUPER_FANG, Moves.WICKED_BLOW ],
- [Species.BRONZOR]: [ Moves.PSYSHIELD_BASH, Moves.COSMIC_POWER, Moves.MIRROR_COAT, Moves.TACHYON_CUTTER ],
- [Species.BONSLY]: [ Moves.INGRAIN, Moves.GRASSY_GLIDE, Moves.EXTREME_SPEED, Moves.HEAD_SMASH ],
- [Species.MIME_JR]: [ Moves.CALM_MIND, Moves.ATTRACT, Moves.TAUNT, Moves.GLITZY_GLOW ],
- [Species.HAPPINY]: [ Moves.HAPPY_HOUR, Moves.SEISMIC_TOSS, Moves.STEALTH_ROCK, Moves.INSTRUCT ],
- [Species.CHATOT]: [ Moves.SPARKLING_ARIA, Moves.BOOMBURST, Moves.TAUNT, Moves.TORCH_SONG ],
- [Species.SPIRITOMB]: [ Moves.POLTERGEIST, Moves.PAIN_SPLIT, Moves.BURNING_JEALOUSY, Moves.MAKE_IT_RAIN ],
- [Species.GIBLE]: [ Moves.DRAGON_HAMMER, Moves.AQUA_JET, Moves.POISON_FANG, Moves.GLAIVE_RUSH ],
- [Species.MUNCHLAX]: [ Moves.TEATIME, Moves.BODY_PRESS, Moves.HEAVY_SLAM, Moves.SLACK_OFF ],
- [Species.RIOLU]: [ Moves.UPPER_HAND, Moves.ARM_THRUST, Moves.ICE_PUNCH, Moves.PLAY_ROUGH ],
- [Species.HIPPOPOTAS]: [ Moves.BODY_PRESS, Moves.HARD_PRESS, Moves.SCORCHING_SANDS, Moves.LANDS_WRATH ],
- [Species.SKORUPI]: [ Moves.COIL, Moves.DIRE_CLAW, Moves.PARTING_SHOT, Moves.WICKED_BLOW ],
- [Species.CROAGUNK]: [ Moves.GUNK_SHOT, Moves.LASH_OUT, Moves.MACH_PUNCH, Moves.SWORDS_DANCE ],
- [Species.CARNIVINE]: [ Moves.SNAP_TRAP, Moves.JAW_LOCK, Moves.RAGE_POWDER, Moves.FLOWER_TRICK ],
- [Species.FINNEON]: [ Moves.QUIVER_DANCE, Moves.BOUNCY_BUBBLE, Moves.MOONBLAST, Moves.MOONGEIST_BEAM ],
- [Species.MANTYKE]: [ Moves.BOUNCY_BUBBLE, Moves.ICY_WIND, Moves.TAILWIND, Moves.RECOVER ],
- [Species.SNOVER]: [ Moves.DRUM_BEATING, Moves.ICE_HAMMER, Moves.AURORA_VEIL, Moves.IVY_CUDGEL ],
- [Species.ROTOM]: [ Moves.FREEZE_DRY, Moves.FLAME_BURST, Moves.WATER_PULSE, Moves.AIR_SLASH ],
- [Species.UXIE]: [ Moves.REVELATION_DANCE, Moves.TEETER_DANCE, Moves.DARK_PULSE, Moves.PRISMATIC_LASER ],
- [Species.MESPRIT]: [ Moves.REVELATION_DANCE, Moves.LUNAR_DANCE, Moves.MOONBLAST, Moves.PRISMATIC_LASER ],
- [Species.AZELF]: [ Moves.REVELATION_DANCE, Moves.DRAGON_DANCE, Moves.PHANTOM_FORCE, Moves.PRISMATIC_LASER ],
- [Species.DIALGA]: [ Moves.SPACIAL_REND, Moves.EXTREME_SPEED, Moves.GEAR_GRIND, Moves.FREEZING_GLARE ],
- [Species.PALKIA]: [ Moves.ROAR_OF_TIME, Moves.LIQUIDATION, Moves.AQUA_CUTTER, Moves.DRAGON_ENERGY ],
- [Species.HEATRAN]: [ Moves.FIRE_LASH, Moves.HEAVY_SLAM, Moves.FIERY_DANCE, Moves.BEHEMOTH_BASH ],
- [Species.REGIGIGAS]: [ Moves.MIGHTY_CLEAVE, Moves.PRECIPICE_BLADES, Moves.EXTREME_SPEED, Moves.SKILL_SWAP ],
- [Species.GIRATINA]: [ Moves.DRAGON_HAMMER, Moves.SPACIAL_REND, Moves.SPIRIT_SHACKLE, Moves.ASTRAL_BARRAGE ],
- [Species.CRESSELIA]: [ Moves.MIST_BALL, Moves.LUMINA_CRASH, Moves.INFERNAL_PARADE, Moves.HYPERSPACE_HOLE ],
- [Species.PHIONE]: [ Moves.SPARKLING_ARIA, Moves.MAKE_IT_RAIN, Moves.TAIL_GLOW, Moves.LIGHT_OF_RUIN ],
- [Species.MANAPHY]: [ Moves.BOUNCY_BUBBLE, Moves.RECOVER, Moves.MOONBLAST, Moves.QUIVER_DANCE ],
- [Species.DARKRAI]: [ Moves.NIGHT_DAZE, Moves.KNOCK_OFF, Moves.BITTER_MALICE, Moves.SHADOW_FORCE ],
- [Species.SHAYMIN]: [ Moves.FLOWER_SHIELD, Moves.FLOWER_TRICK, Moves.CHLOROBLAST, Moves.FLEUR_CANNON ],
- [Species.ARCEUS]: [ Moves.SKETCH, Moves.ROAR_OF_TIME, Moves.SPACIAL_REND, Moves.GEOMANCY ],
- [Species.VICTINI]: [ Moves.VICTORY_DANCE, Moves.FUSION_BOLT, Moves.GLACIATE, Moves.BLUE_FLARE ],
+ [Species.TURTWIG]: [ Moves.SHELL_SMASH, Moves.SHELTER, Moves.BODY_PRESS, Moves.SAPPY_SEED ],
+ [Species.CHIMCHAR]: [ Moves.SWORDS_DANCE, Moves.THUNDEROUS_KICK, Moves.ICE_PUNCH, Moves.SACRED_FIRE ],
+ [Species.PIPLUP]: [ Moves.KINGS_SHIELD, Moves.FLASH_CANNON, Moves.ROOST, Moves.STEAM_ERUPTION ],
+ [Species.STARLY]: [ Moves.SWORDS_DANCE, Moves.EXTREME_SPEED, Moves.FLARE_BLITZ, Moves.HIGH_JUMP_KICK ],
+ [Species.BIDOOF]: [ Moves.EXTREME_SPEED, Moves.NO_RETREAT, Moves.BODY_PRESS, Moves.SURGING_STRIKES ],
+ [Species.KRICKETOT]: [ Moves.BONEMERANG, Moves.ROOST, Moves.ROCK_BLAST, Moves.VICTORY_DANCE ],
+ [Species.SHINX]: [ Moves.FIRE_LASH, Moves.TRIPLE_AXEL, Moves.FACADE, Moves.BOLT_STRIKE ],
+ [Species.BUDEW]: [ Moves.PARTING_SHOT, Moves.SPIKES, Moves.SPORE, Moves.MALIGNANT_CHAIN ],
+ [Species.CRANIDOS]: [ Moves.STONE_AXE, Moves.ACCELEROCK, Moves.HEADLONG_RUSH, Moves.DRAGON_DANCE ],
+ [Species.SHIELDON]: [ Moves.PAIN_SPLIT, Moves.BODY_PRESS, Moves.KINGS_SHIELD, Moves.DIAMOND_STORM ],
+ [Species.BURMY]: [ Moves.BODY_PRESS, Moves.TOXIC, Moves.RECOVER, Moves.DEFEND_ORDER ],
+ [Species.COMBEE]: [ Moves.SPORE, Moves.MYSTICAL_FIRE, Moves.KINGS_SHIELD, Moves.QUIVER_DANCE ],
+ [Species.PACHIRISU]: [ Moves.BADDY_BAD, Moves.BUZZY_BUZZ, Moves.U_TURN, Moves.SIZZLY_SLIDE ],
+ [Species.BUIZEL]: [ Moves.JET_PUNCH, Moves.TRIPLE_AXEL, Moves.THUNDER_PUNCH, Moves.SURGING_STRIKES ],
+ [Species.CHERUBI]: [ Moves.SPORE, Moves.STRENGTH_SAP, Moves.APPLE_ACID, Moves.FIERY_DANCE ],
+ [Species.SHELLOS]: [ Moves.SHORE_UP, Moves.SPIKES, Moves.FREEZE_DRY, Moves.STEAM_ERUPTION ],
+ [Species.DRIFLOON]: [ Moves.WILL_O_WISP, Moves.SHADOW_BONE, Moves.CALM_MIND, Moves.OBLIVION_WING ],
+ [Species.BUNEARY]: [ Moves.TRIPLE_AXEL, Moves.SWORDS_DANCE, Moves.THUNDEROUS_KICK, Moves.MULTI_ATTACK ],
+ [Species.GLAMEOW]: [ Moves.U_TURN, Moves.STOMPING_TANTRUM, Moves.BULK_UP, Moves.RAGING_BULL ],
+ [Species.CHINGLING]: [ Moves.BUZZY_BUZZ, Moves.COSMIC_POWER, Moves.TORCH_SONG, Moves.LUMINA_CRASH ],
+ [Species.STUNKY]: [ Moves.SPIKES, Moves.KNOCK_OFF, Moves.RECOVER, Moves.DIRE_CLAW ],
+ [Species.BRONZOR]: [ Moves.RECOVER, Moves.COSMIC_POWER, Moves.SPIKES, Moves.TACHYON_CUTTER ],
+ [Species.BONSLY]: [ Moves.STONE_AXE, Moves.LEAF_BLADE, Moves.STRENGTH_SAP, Moves.HEAD_SMASH ],
+ [Species.MIME_JR]: [ Moves.CALM_MIND, Moves.MOONBLAST, Moves.WILL_O_WISP, Moves.TWIN_BEAM ],
+ [Species.HAPPINY]: [ Moves.IRON_DEFENSE, Moves.SEISMIC_TOSS, Moves.STEALTH_ROCK, Moves.SIZZLY_SLIDE ],
+ [Species.CHATOT]: [ Moves.SPARKLING_ARIA, Moves.TORCH_SONG, Moves.BATON_PASS, Moves.BOOMBURST ],
+ [Species.SPIRITOMB]: [ Moves.PARTING_SHOT, Moves.FOUL_PLAY, Moves.RECOVER, Moves.POLTERGEIST ],
+ [Species.GIBLE]: [ Moves.DRAGON_HAMMER, Moves.LANDS_WRATH, Moves.SHORE_UP, Moves.BITTER_BLADE ],
+ [Species.MUNCHLAX]: [ Moves.IRON_DEFENSE, Moves.BODY_PRESS, Moves.HEAVY_SLAM, Moves.SLACK_OFF ],
+ [Species.RIOLU]: [ Moves.THUNDEROUS_KICK, Moves.BULLET_PUNCH, Moves.TRIPLE_AXEL, Moves.DOUBLE_IRON_BASH ],
+ [Species.HIPPOPOTAS]: [ Moves.BODY_PRESS, Moves.STONE_AXE, Moves.SALT_CURE, Moves.IRON_DEFENSE ],
+ [Species.SKORUPI]: [ Moves.CEASELESS_EDGE, Moves.DIRE_CLAW, Moves.PARTING_SHOT, Moves.WICKED_BLOW ],
+ [Species.CROAGUNK]: [ Moves.DIRE_CLAW, Moves.ICE_PUNCH, Moves.THUNDEROUS_KICK, Moves.VICTORY_DANCE ],
+ [Species.CARNIVINE]: [ Moves.SWORDS_DANCE, Moves.FIRE_LASH, Moves.MIGHTY_CLEAVE, Moves.FLOWER_TRICK ],
+ [Species.FINNEON]: [ Moves.QUIVER_DANCE, Moves.BOUNCY_BUBBLE, Moves.FREEZE_DRY, Moves.ORIGIN_PULSE ],
+ [Species.MANTYKE]: [ Moves.BOUNCY_BUBBLE, Moves.SPIKES, Moves.ROOST, Moves.STEAM_ERUPTION ],
+ [Species.SNOVER]: [ Moves.STOMPING_TANTRUM, Moves.ICE_HAMMER, Moves.AURORA_VEIL, Moves.IVY_CUDGEL ],
+ [Species.ROTOM]: [ Moves.RECOVER, Moves.FIERY_DANCE, Moves.SPLISHY_SPLASH, Moves.RISING_VOLTAGE ],
+ [Species.UXIE]: [ Moves.COSMIC_POWER, Moves.BODY_PRESS, Moves.RECOVER, Moves.LUMINA_CRASH ],
+ [Species.MESPRIT]: [ Moves.QUIVER_DANCE, Moves.AURA_SPHERE, Moves.RECOVER, Moves.LUMINA_CRASH ],
+ [Species.AZELF]: [ Moves.PHOTON_GEYSER, Moves.DRAGON_DANCE, Moves.RECOVER, Moves.LUMINA_CRASH ],
+ [Species.DIALGA]: [ Moves.CORE_ENFORCER, Moves.CALM_MIND, Moves.RECOVER, Moves.MAKE_IT_RAIN ],
+ [Species.PALKIA]: [ Moves.RECOVER, Moves.FREEZE_DRY, Moves.WATER_SPOUT, Moves.DRAGON_ENERGY ],
+ [Species.HEATRAN]: [ Moves.TORCH_SONG, Moves.SPIKES, Moves.FLASH_CANNON, Moves.RECOVER ],
+ [Species.REGIGIGAS]: [ Moves.MIGHTY_CLEAVE, Moves.SHORE_UP, Moves.EXTREME_SPEED, Moves.SKILL_SWAP ],
+ [Species.GIRATINA]: [ Moves.DRAGON_DANCE, Moves.GLAIVE_RUSH, Moves.RECOVER, Moves.ASTRAL_BARRAGE ],
+ [Species.CRESSELIA]: [ Moves.COSMIC_POWER, Moves.SECRET_SWORD, Moves.INFERNAL_PARADE, Moves.LUMINA_CRASH ],
+ [Species.PHIONE]: [ Moves.BOUNCY_BUBBLE, Moves.FREEZE_DRY, Moves.RECOVER, Moves.QUIVER_DANCE ],
+ [Species.MANAPHY]: [ Moves.BOUNCY_BUBBLE, Moves.FREEZE_DRY, Moves.RECOVER, Moves.QUIVER_DANCE ],
+ [Species.DARKRAI]: [ Moves.FIERY_WRATH, Moves.MOONBLAST, Moves.SEARING_SHOT, Moves.MALIGNANT_CHAIN ],
+ [Species.SHAYMIN]: [ Moves.SPRINGTIDE_STORM, Moves.HEAT_WAVE, Moves.BLEAKWIND_STORM, Moves.MATCHA_GOTCHA ],
+ [Species.ARCEUS]: [ Moves.QUIVER_DANCE, Moves.SPIRIT_SHACKLE, Moves.VICTORY_DANCE, Moves.COLLISION_COURSE ],
+ [Species.VICTINI]: [ Moves.PHOTON_GEYSER, Moves.BOLT_STRIKE, Moves.BLUE_FLARE, Moves.VICTORY_DANCE ],
[Species.SNIVY]: [ Moves.SYNTHESIS, Moves.SAPPY_SEED, Moves.POWER_GEM, Moves.DRACO_METEOR ],
[Species.TEPIG]: [ Moves.SUCKER_PUNCH, Moves.SLACK_OFF, Moves.MACH_PUNCH, Moves.VICTORY_DANCE ],
[Species.OSHAWOTT]: [ Moves.SECRET_SWORD, Moves.AQUA_CUTTER, Moves.NASTY_PLOT, Moves.BEHEMOTH_BLADE ],
[Species.PATRAT]: [ Moves.COVET, Moves.EXTREME_SPEED, Moves.ACUPRESSURE, Moves.LAST_RESORT ],
[Species.LILLIPUP]: [ Moves.COVET, Moves.LAST_RESPECTS, Moves.HIGH_HORSEPOWER, Moves.NO_RETREAT ],
- [Species.PURRLOIN]: [ Moves.THIEF, Moves.SWORDS_DANCE, Moves.PARTING_SHOT, Moves.WICKED_BLOW ],
- [Species.PANSAGE]: [ Moves.NASTY_PLOT, Moves.AURA_SPHERE, Moves.STRENGTH_SAP, Moves.FRENZY_PLANT ],
+ [Species.PURRLOIN]: [ Moves.PSYCHIC_FANGS, Moves.SWORDS_DANCE, Moves.PARTING_SHOT, Moves.WICKED_BLOW ],
+ [Species.PANSAGE]: [ Moves.NASTY_PLOT, Moves.AURA_SPHERE, Moves.TRAILBLAZE, Moves.FRENZY_PLANT ],
[Species.PANSEAR]: [ Moves.NASTY_PLOT, Moves.AURA_SPHERE, Moves.SCORCHING_SANDS, Moves.BLAST_BURN ],
[Species.PANPOUR]: [ Moves.NASTY_PLOT, Moves.AURA_SPHERE, Moves.FREEZE_DRY, Moves.HYDRO_CANNON ],
[Species.MUNNA]: [ Moves.COSMIC_POWER, Moves.AURA_SPHERE, Moves.EARTH_POWER, Moves.MYSTICAL_POWER ],
@@ -312,7 +312,7 @@ export const speciesEggMoves = {
[Species.MIENFOO]: [ Moves.TIDY_UP, Moves.ICE_SPINNER, Moves.SUPERCELL_SLAM, Moves.BRAVE_BIRD ],
[Species.DRUDDIGON]: [ Moves.SPIKY_SHIELD, Moves.STOMPING_TANTRUM, Moves.CLANGOROUS_SOUL, Moves.DIAMOND_STORM ],
[Species.GOLETT]: [ Moves.BULK_UP, Moves.RAGE_FIST, Moves.HEADLONG_RUSH, Moves.DOUBLE_IRON_BASH ],
- [Species.PAWNIARD]: [ Moves.ATTACK_ORDER, Moves.CEASELESS_EDGE, Moves.AQUA_CUTTER, Moves.PSYBLADE ],
+ [Species.PAWNIARD]: [ Moves.SUCKER_PUNCH, Moves.CEASELESS_EDGE, Moves.AQUA_CUTTER, Moves.PSYBLADE ],
[Species.BOUFFALANT]: [ Moves.EARTHQUAKE, Moves.FLAME_CHARGE, Moves.IRON_HEAD, Moves.RAGING_BULL ],
[Species.RUFFLET]: [ Moves.FLOATY_FALL, Moves.DAZZLING_GLEAM, Moves.HEAT_WAVE, Moves.BOLT_BEAK ],
[Species.VULLABY]: [ Moves.RUINATION, Moves.BODY_PRESS, Moves.ROOST, Moves.BADDY_BAD ],
@@ -320,16 +320,16 @@ export const speciesEggMoves = {
[Species.DURANT]: [ Moves.SMART_STRIKE, Moves.FIRST_IMPRESSION, Moves.HONE_CLAWS, Moves.EXTREME_SPEED ],
[Species.DEINO]: [ Moves.FIERY_WRATH, Moves.HYDRO_STEAM, Moves.CORROSIVE_GAS, Moves.FICKLE_BEAM ],
[Species.LARVESTA]: [ Moves.TORCH_SONG, Moves.POLLEN_PUFF, Moves.EARTH_POWER, Moves.BLUE_FLARE ],
- [Species.COBALION]: [ Moves.TACHYON_CUTTER, Moves.SIZZLY_SLIDE, Moves.CEASELESS_EDGE, Moves.VICTORY_DANCE ],
- [Species.TERRAKION]: [ Moves.MIGHTY_CLEAVE, Moves.SAPPY_SEED, Moves.CEASELESS_EDGE, Moves.VICTORY_DANCE ],
- [Species.VIRIZION]: [ Moves.PSYBLADE, Moves.AQUA_CUTTER, Moves.CEASELESS_EDGE, Moves.VICTORY_DANCE ],
+ [Species.COBALION]: [ Moves.TACHYON_CUTTER, Moves.BODY_PRESS, Moves.CEASELESS_EDGE, Moves.VICTORY_DANCE ],
+ [Species.TERRAKION]: [ Moves.MIGHTY_CLEAVE, Moves.HEADLONG_RUSH, Moves.CEASELESS_EDGE, Moves.VICTORY_DANCE ],
+ [Species.VIRIZION]: [ Moves.PSYBLADE, Moves.SAPPY_SEED, Moves.CEASELESS_EDGE, Moves.VICTORY_DANCE ],
[Species.TORNADUS]: [ Moves.MIST_BALL, Moves.BRAVE_BIRD, Moves.DRAIN_PUNCH, Moves.BLIZZARD ],
[Species.THUNDURUS]: [ Moves.THUNDER_CAGE, Moves.BULK_UP, Moves.FLOATY_FALL, Moves.THUNDERCLAP ],
[Species.RESHIRAM]: [ Moves.FUSION_BOLT, Moves.FIERY_DANCE, Moves.POWER_GEM, Moves.DRAGON_ENERGY ],
[Species.ZEKROM]: [ Moves.FUSION_FLARE, Moves.BOLT_BEAK, Moves.DRAGON_HAMMER, Moves.VOLT_TACKLE ],
[Species.LANDORUS]: [ Moves.ROCK_SLIDE, Moves.LANDS_WRATH, Moves.AERIAL_ACE, Moves.AQUA_TAIL ],
[Species.KYUREM]: [ Moves.ICICLE_CRASH, Moves.DRAGON_HAMMER, Moves.ICE_SHARD, Moves.GLACIAL_LANCE ],
- [Species.KELDEO]: [ Moves.WATER_PLEDGE, Moves.AIR_SLASH, Moves.PSYSTRIKE, Moves.TACHYON_CUTTER ],
+ [Species.KELDEO]: [ Moves.WATER_PLEDGE, Moves.AIR_SLASH, Moves.ICE_BEAM, Moves.TACHYON_CUTTER ],
[Species.MELOETTA]: [ Moves.TORCH_SONG, Moves.QUIVER_DANCE, Moves.VICTORY_DANCE, Moves.BOOMBURST ],
[Species.GENESECT]: [ Moves.FOCUS_BLAST, Moves.STEEL_BEAM, Moves.SHIFT_GEAR, Moves.QUIVER_DANCE ],
[Species.CHESPIN]: [ Moves.DRAIN_PUNCH, Moves.BELLY_DRUM, Moves.TAUNT, Moves.SAPPY_SEED ],
@@ -421,7 +421,7 @@ export const speciesEggMoves = {
[Species.MARSHADOW]: [ Moves.POWER_UP_PUNCH, Moves.THIEF, Moves.SNATCH, Moves.NO_RETREAT ],
[Species.POIPOLE]: [ Moves.POISON_STING, Moves.SHELL_SIDE_ARM, Moves.STICKY_WEB, Moves.DRAGON_ENERGY ],
[Species.STAKATAKA]: [ Moves.SHELTER, Moves.SHELL_TRAP, Moves.OBSTRUCT, Moves.CRUSH_GRIP ],
- [Species.BLACEPHALON]: [ Moves.PYRO_BALL, Moves.POLLEN_PUFF, Moves.BOOMBURST, Moves.RECOVER ],
+ [Species.BLACEPHALON]: [ Moves.PYRO_BALL, Moves.POLLEN_PUFF, Moves.BOOMBURST, Moves.ASTRAL_BARRAGE ],
[Species.ZERAORA]: [ Moves.ZIPPY_ZAP, Moves.EXTREME_SPEED, Moves.DOUBLE_SHOCK, Moves.WICKED_BLOW ],
[Species.MELTAN]: [ Moves.MAKE_IT_RAIN, Moves.DRAIN_PUNCH, Moves.BULLET_PUNCH, Moves.PLASMA_FISTS ],
[Species.GROOKEY]: [ Moves.JUNGLE_HEALING, Moves.CLOSE_COMBAT, Moves.BOOMBURST, Moves.BELLY_DRUM ],
@@ -456,7 +456,7 @@ export const speciesEggMoves = {
[Species.MORPEKO]: [ Moves.CLOSE_COMBAT, Moves.MILK_DRINK, Moves.TEMPER_FLARE, Moves.DOUBLE_SHOCK ],
[Species.CUFANT]: [ Moves.LIQUIDATION, Moves.HEAVY_SLAM, Moves.CLOSE_COMBAT, Moves.GIGATON_HAMMER ],
[Species.DRACOZOLT]: [ Moves.SUPERCELL_SLAM, Moves.DRAGON_HAMMER, Moves.BOLT_STRIKE, Moves.SHED_TAIL ],
- [Species.ARCTOZOLT]: [ Moves.SUPERCELL_SLAM, Moves.ICE_SPINNER, Moves.FREEZE_SHOCK, Moves.FREEZY_FROST ],
+ [Species.ARCTOZOLT]: [ Moves.SUPERCELL_SLAM, Moves.ICE_SPINNER, Moves.FREEZE_SHOCK, Moves.GLACIAL_LANCE ],
[Species.DRACOVISH]: [ Moves.SCALD, Moves.DRAGON_HAMMER, Moves.DUAL_CHOP, Moves.TRAILBLAZE ],
[Species.ARCTOVISH]: [ Moves.SCALD, Moves.ICE_SPINNER, Moves.WAVE_CRASH, Moves.BEHEMOTH_BASH ],
[Species.DURALUDON]: [ Moves.FLAMETHROWER, Moves.DRAGON_HAMMER, Moves.EARTH_POWER, Moves.AUTOTOMIZE ],
@@ -471,78 +471,78 @@ export const speciesEggMoves = {
[Species.SPECTRIER]: [ Moves.EARTH_POWER, Moves.PSYCHIC, Moves.GLARE, Moves.ASTRAL_BARRAGE ],
[Species.CALYREX]: [ Moves.POWER_GEM, Moves.ICE_BEAM, Moves.SHADOW_BALL, Moves.MALIGNANT_CHAIN ],
[Species.ENAMORUS]: [ Moves.SPIRIT_BREAK, Moves.TAKE_HEART, Moves.STORED_POWER, Moves.OVERHEAT ],
- [Species.SPRIGATITO]: [ Moves.PETAL_BLIZZARD, Moves.COPYCAT, Moves.SUCKER_PUNCH, Moves.WICKED_BLOW ],
- [Species.FUECOCO]: [ Moves.EARTHQUAKE, Moves.SLACK_OFF, Moves.INFERNAL_PARADE, Moves.SEARING_SHOT ],
- [Species.QUAXLY]: [ Moves.HIGH_JUMP_KICK, Moves.ROOST, Moves.REVELATION_DANCE, Moves.SURGING_STRIKES ],
- [Species.LECHONK]: [ Moves.PLUCK, Moves.RECYCLE, Moves.POWER_TRIP, Moves.FILLET_AWAY ],
- [Species.TAROUNTULA]: [ Moves.STEAMROLLER, Moves.LUNGE, Moves.SUCKER_PUNCH, Moves.FIRST_IMPRESSION ],
- [Species.NYMBLE]: [ Moves.POWER_UP_PUNCH, Moves.KNOCK_OFF, Moves.LEECH_LIFE, Moves.WICKED_BLOW ],
- [Species.PAWMI]: [ Moves.DRAIN_PUNCH, Moves.WISH, Moves.HELPING_HAND, Moves.VOLT_TACKLE ],
- [Species.TANDEMAUS]: [ Moves.BITE, Moves.FEINT, Moves.BARRAGE, Moves.BOOMBURST ],
- [Species.FIDOUGH]: [ Moves.COPYCAT, Moves.WISH, Moves.COVET, Moves.MAGICAL_TORQUE ],
- [Species.SMOLIV]: [ Moves.STRENGTH_SAP, Moves.SYNTHESIS, Moves.WEATHER_BALL, Moves.CHLOROBLAST ],
- [Species.SQUAWKABILLY]: [ Moves.PARTING_SHOT, Moves.FINAL_GAMBIT, Moves.DOUBLE_EDGE, Moves.BOOMBURST ],
- [Species.NACLI]: [ Moves.BODY_PRESS, Moves.POWER_GEM, Moves.EXPLOSION, Moves.PRECIPICE_BLADES ],
- [Species.CHARCADET]: [ Moves.DISABLE, Moves.FLASH_CANNON, Moves.THIEF, Moves.SPECTRAL_THIEF ],
- [Species.TADBULB]: [ Moves.MUDDY_WATER, Moves.PARABOLIC_CHARGE, Moves.NUZZLE, Moves.SURF ],
- [Species.WATTREL]: [ Moves.FEATHER_DANCE, Moves.WEATHER_BALL, Moves.ENDEAVOR, Moves.BOLT_BEAK ],
- [Species.MASCHIFF]: [ Moves.BADDY_BAD, Moves.RETALIATE, Moves.ENDEAVOR, Moves.PLAY_ROUGH ],
- [Species.SHROODLE]: [ Moves.COPYCAT, Moves.SUPER_FANG, Moves.TOXIC, Moves.SKETCH ],
- [Species.BRAMBLIN]: [ Moves.SHADOW_SNEAK, Moves.STRENGTH_SAP, Moves.POLTERGEIST, Moves.SAPPY_SEED ],
- [Species.TOEDSCOOL]: [ Moves.RAPID_SPIN, Moves.KNOCK_OFF, Moves.TOXIC, Moves.NOXIOUS_TORQUE ],
- [Species.KLAWF]: [ Moves.ANCIENT_POWER, Moves.KNOCK_OFF, Moves.CRABHAMMER, Moves.DIRE_CLAW ],
- [Species.CAPSAKID]: [ Moves.RAGE_POWDER, Moves.ROLLOUT, Moves.LEECH_SEED, Moves.FIERY_DANCE ],
- [Species.RELLOR]: [ Moves.COSMIC_POWER, Moves.RECOVER, Moves.WEATHER_BALL, Moves.GLITZY_GLOW ],
- [Species.FLITTLE]: [ Moves.GLITZY_GLOW, Moves.HYPNOSIS, Moves.ROOST, Moves.OBLIVION_WING ],
- [Species.TINKATINK]: [ Moves.FALSE_SURRENDER, Moves.DRAIN_PUNCH, Moves.ICE_HAMMER, Moves.NO_RETREAT ],
- [Species.WIGLETT]: [ Moves.FINAL_GAMBIT, Moves.THIEF, Moves.IRON_HEAD, Moves.SURGING_STRIKES ],
- [Species.BOMBIRDIER]: [ Moves.SKY_ATTACK, Moves.POWER_TRIP, Moves.SUCKER_PUNCH, Moves.POPULATION_BOMB ],
- [Species.FINIZEN]: [ Moves.BOUNCE, Moves.DRAIN_PUNCH, Moves.COUNTER, Moves.BOOMBURST ],
- [Species.VAROOM]: [ Moves.TOXIC, Moves.GEAR_GRIND, Moves.BLAZING_TORQUE, Moves.NOXIOUS_TORQUE ],
- [Species.CYCLIZAR]: [ Moves.AQUA_TAIL, Moves.IRON_TAIL, Moves.POWER_WHIP, Moves.DRAGON_DANCE ],
- [Species.ORTHWORM]: [ Moves.METAL_BURST, Moves.COIL, Moves.BODY_PRESS, Moves.DRAGON_HAMMER ],
- [Species.GLIMMET]: [ Moves.PURIFY, Moves.MOONBLAST, Moves.FLASH_CANNON, Moves.BANEFUL_BUNKER ],
- [Species.GREAVARD]: [ Moves.SHADOW_SNEAK, Moves.DISABLE, Moves.YAWN, Moves.SHADOW_FORCE ],
- [Species.FLAMIGO]: [ Moves.DOUBLE_TEAM, Moves.SKY_ATTACK, Moves.VICTORY_DANCE, Moves.HIGH_JUMP_KICK ],
- [Species.CETODDLE]: [ Moves.ICICLE_CRASH, Moves.SUPERPOWER, Moves.ENTRAINMENT, Moves.BELLY_DRUM ],
- [Species.VELUZA]: [ Moves.RECOVER, Moves.THRASH, Moves.KOWTOW_CLEAVE, Moves.PSYBLADE ],
- [Species.DONDOZO]: [ Moves.OUTRAGE, Moves.YAWN, Moves.HEAVY_SLAM, Moves.FISHIOUS_REND ],
- [Species.TATSUGIRI]: [ Moves.RAPID_SPIN, Moves.BATON_PASS, Moves.MIMIC, Moves.COUNTER ],
- [Species.GREAT_TUSK]: [ Moves.HIGH_HORSEPOWER, Moves.DRILL_RUN, Moves.SUPERPOWER, Moves.BEHEMOTH_BASH ],
- [Species.SCREAM_TAIL]: [ Moves.PSYCHIC, Moves.MOONBLAST, Moves.MOONLIGHT, Moves.LIGHT_OF_RUIN ],
- [Species.BRUTE_BONNET]: [ Moves.CRUNCH, Moves.SAPPY_SEED, Moves.FRENZY_PLANT, Moves.STRENGTH_SAP ],
- [Species.FLUTTER_MANE]: [ Moves.MOONLIGHT, Moves.SNARL, Moves.EARTH_POWER, Moves.MOONGEIST_BEAM ],
- [Species.SLITHER_WING]: [ Moves.DRAIN_PUNCH, Moves.VICTORY_DANCE, Moves.SIZZLY_SLIDE, Moves.COLLISION_COURSE ],
- [Species.SANDY_SHOCKS]: [ Moves.PARABOLIC_CHARGE, Moves.SCORCHING_SANDS, Moves.CALM_MIND, Moves.ELECTRO_SHOT ],
- [Species.IRON_TREADS]: [ Moves.SUPERCELL_SLAM, Moves.BULK_UP, Moves.HEAD_SMASH, Moves.COLLISION_COURSE ],
- [Species.IRON_BUNDLE]: [ Moves.PARABOLIC_CHARGE, Moves.SCALD, Moves.NASTY_PLOT, Moves.GLACIATE ],
- [Species.IRON_HANDS]: [ Moves.MACH_PUNCH, Moves.HIGH_HORSEPOWER, Moves.MAT_BLOCK, Moves.PLASMA_FISTS ],
- [Species.IRON_JUGULIS]: [ Moves.FIERY_WRATH, Moves.FLAMETHROWER, Moves.NASTY_PLOT, Moves.OBLIVION_WING ],
- [Species.IRON_MOTH]: [ Moves.PARABOLIC_CHARGE, Moves.QUIVER_DANCE, Moves.FLASH_CANNON, Moves.TORCH_SONG ],
- [Species.IRON_THORNS]: [ Moves.DRAIN_PUNCH, Moves.SUPERPOWER, Moves.SHIFT_GEAR, Moves.FUSION_BOLT ],
- [Species.FRIGIBAX]: [ Moves.ICICLE_SPEAR, Moves.AQUA_TAIL, Moves.FREEZE_DRY, Moves.DRAGON_RUSH ],
- [Species.GIMMIGHOUL]: [ Moves.PAY_DAY, Moves.HAPPY_HOUR, Moves.MIRROR_COAT, Moves.TECHNO_BLAST ],
- [Species.WO_CHIEN]: [ Moves.POLLEN_PUFF, Moves.FORESTS_CURSE, Moves.FOLLOW_ME, Moves.SPORE ],
- [Species.CHIEN_PAO]: [ Moves.STOMPING_TANTRUM, Moves.WATERFALL, Moves.CHILLY_RECEPTION, Moves.BEHEMOTH_BLADE ],
- [Species.TING_LU]: [ Moves.HEAT_CRASH, Moves.IRON_HEAD, Moves.HORN_LEECH, Moves.STRENGTH_SAP ],
- [Species.CHI_YU]: [ Moves.ENERGY_BALL, Moves.STORED_POWER, Moves.SCALD, Moves.BLUE_FLARE ],
- [Species.ROARING_MOON]: [ Moves.RAGING_FURY, Moves.FLOATY_FALL, Moves.OBSTRUCT, Moves.COLLISION_COURSE ],
- [Species.IRON_VALIANT]: [ Moves.SECRET_SWORD, Moves.PLAY_ROUGH, Moves.QUIVER_DANCE, Moves.ELECTRO_DRIFT ],
- [Species.KORAIDON]: [ Moves.HEAD_SMASH, Moves.BULK_UP, Moves.IRON_HEAD, Moves.CLANGOROUS_SOUL ],
- [Species.MIRAIDON]: [ Moves.ICE_BEAM, Moves.CALM_MIND, Moves.FLASH_CANNON, Moves.CLANGOROUS_SOUL ],
- [Species.WALKING_WAKE]: [ Moves.THUNDERCLAP, Moves.FLASH_CANNON, Moves.ALLURING_VOICE, Moves.ELECTRO_DRIFT ],
- [Species.IRON_LEAVES]: [ Moves.MIGHTY_CLEAVE, Moves.TACHYON_CUTTER, Moves.SPIRIT_BREAK, Moves.COLLISION_COURSE ],
- [Species.POLTCHAGEIST]: [ Moves.TEATIME, Moves.AROMATHERAPY, Moves.STRENGTH_SAP, Moves.MILK_DRINK ],
- [Species.OKIDOGI]: [ Moves.JAW_LOCK, Moves.OBSTRUCT, Moves.DIRE_CLAW, Moves.MALIGNANT_CHAIN ],
- [Species.MUNKIDORI]: [ Moves.PSYSTRIKE, Moves.MYSTICAL_FIRE, Moves.WILL_O_WISP, Moves.MALIGNANT_CHAIN ],
- [Species.FEZANDIPITI]: [ Moves.DUAL_WINGBEAT, Moves.DRAINING_KISS, Moves.TRIPLE_AXEL, Moves.MALIGNANT_CHAIN ],
- [Species.OGERPON]: [ Moves.JUNGLE_HEALING, Moves.NUZZLE, Moves.TRIPLE_AXEL, Moves.GIGATON_HAMMER ],
- [Species.GOUGING_FIRE]: [ Moves.PLAY_ROUGH, Moves.HORN_LEECH, Moves.HYDRO_STEAM, Moves.ELECTRO_DRIFT ],
- [Species.RAGING_BOLT]: [ Moves.HYDRO_STEAM, Moves.FLASH_CANNON, Moves.PARABOLIC_CHARGE, Moves.ELECTRO_DRIFT ],
- [Species.IRON_BOULDER]: [ Moves.PSYBLADE, Moves.TACHYON_CUTTER, Moves.LEAF_BLADE, Moves.COLLISION_COURSE ],
- [Species.IRON_CROWN]: [ Moves.MIGHTY_CLEAVE, Moves.PSYBLADE, Moves.AQUA_CUTTER, Moves.COLLISION_COURSE ],
- [Species.TERAPAGOS]: [ Moves.EARTH_POWER, Moves.BOOMBURST, Moves.ICE_BEAM, Moves.DIAMOND_STORM ],
- [Species.PECHARUNT]: [ Moves.VENOSHOCK, Moves.VENOM_DRENCH, Moves.HEX, Moves.BANEFUL_BUNKER ],
+ [Species.SPRIGATITO]: [ Moves.BLAZE_KICK, Moves.STRENGTH_SAP, Moves.SUCKER_PUNCH, Moves.WICKED_BLOW ],
+ [Species.FUECOCO]: [ Moves.COSMIC_POWER, Moves.SLACK_OFF, Moves.INFERNAL_PARADE, Moves.MOONGEIST_BEAM ],
+ [Species.QUAXLY]: [ Moves.DRAGON_DANCE, Moves.ROOST, Moves.TROP_KICK, Moves.THUNDEROUS_KICK ],
+ [Species.LECHONK]: [ Moves.MILK_DRINK, Moves.TEMPER_FLARE, Moves.FILLET_AWAY, Moves.HEAD_CHARGE ],
+ [Species.TAROUNTULA]: [ Moves.STRENGTH_SAP, Moves.LEECH_LIFE, Moves.PARTING_SHOT, Moves.STEALTH_ROCK ],
+ [Species.NYMBLE]: [ Moves.CEASELESS_EDGE, Moves.FELL_STINGER, Moves.LEECH_LIFE, Moves.WICKED_BLOW ],
+ [Species.PAWMI]: [ Moves.DRAIN_PUNCH, Moves.WISH, Moves.PARTING_SHOT, Moves.PLASMA_FISTS ],
+ [Species.TANDEMAUS]: [ Moves.BATON_PASS, Moves.BITE, Moves.NUZZLE, Moves.REVIVAL_BLESSING ],
+ [Species.FIDOUGH]: [ Moves.WISH, Moves.SPIKES, Moves.PARTING_SHOT, Moves.SIZZLY_SLIDE ],
+ [Species.SMOLIV]: [ Moves.STRENGTH_SAP, Moves.EARTH_POWER, Moves.CALM_MIND, Moves.BOOMBURST ],
+ [Species.SQUAWKABILLY]: [ Moves.PARTING_SHOT, Moves.BULK_UP, Moves.TEMPER_FLARE, Moves.HEAD_CHARGE ],
+ [Species.NACLI]: [ Moves.BODY_PRESS, Moves.SPIKES, Moves.CURSE, Moves.DIAMOND_STORM ],
+ [Species.CHARCADET]: [ Moves.SACRED_SWORD, Moves.BURNING_BULWARK, Moves.RECOVER, Moves.PHOTON_GEYSER ],
+ [Species.TADBULB]: [ Moves.PARABOLIC_CHARGE, Moves.MUDDY_WATER, Moves.EARTH_POWER, Moves.ELECTRO_SHOT ],
+ [Species.WATTREL]: [ Moves.NASTY_PLOT, Moves.TAILWIND, Moves.HEAT_WAVE, Moves.AEROBLAST ],
+ [Species.MASCHIFF]: [ Moves.PARTING_SHOT, Moves.DARKEST_LARIAT, Moves.NUZZLE, Moves.COLLISION_COURSE ],
+ [Species.SHROODLE]: [ Moves.TEMPER_FLARE, Moves.PARTING_SHOT, Moves.TOXIC, Moves.TIDY_UP ],
+ [Species.BRAMBLIN]: [ Moves.TAILWIND, Moves.STRENGTH_SAP, Moves.CEASELESS_EDGE, Moves.LAST_RESPECTS ],
+ [Species.TOEDSCOOL]: [ Moves.STRENGTH_SAP, Moves.SCALD, Moves.PARTING_SHOT, Moves.SAPPY_SEED ],
+ [Species.KLAWF]: [ Moves.CRABHAMMER, Moves.SHORE_UP, Moves.MIGHTY_CLEAVE, Moves.SHELL_SMASH ],
+ [Species.CAPSAKID]: [ Moves.STRENGTH_SAP, Moves.BURNING_BULWARK, Moves.ICE_SPINNER, Moves.TORCH_SONG ],
+ [Species.RELLOR]: [ Moves.TOXIC_SPIKES, Moves.RECOVER, Moves.MYSTICAL_FIRE, Moves.LUMINA_CRASH ],
+ [Species.FLITTLE]: [ Moves.COSMIC_POWER, Moves.AURA_SPHERE, Moves.ROOST, Moves.SEARING_SHOT ],
+ [Species.TINKATINK]: [ Moves.NUZZLE, Moves.SHIFT_GEAR, Moves.ICE_HAMMER, Moves.PYRO_BALL ],
+ [Species.WIGLETT]: [ Moves.SHELL_SMASH, Moves.ICICLE_CRASH, Moves.SEED_BOMB, Moves.SURGING_STRIKES ],
+ [Species.BOMBIRDIER]: [ Moves.U_TURN, Moves.SWORDS_DANCE, Moves.SUCKER_PUNCH, Moves.MIGHTY_CLEAVE ],
+ [Species.FINIZEN]: [ Moves.ICE_SPINNER, Moves.DRAIN_PUNCH, Moves.RECOVER, Moves.WOOD_HAMMER ],
+ [Species.VAROOM]: [ Moves.COMBAT_TORQUE, Moves.U_TURN, Moves.BLAZING_TORQUE, Moves.NOXIOUS_TORQUE ],
+ [Species.CYCLIZAR]: [ Moves.BATON_PASS, Moves.BLAZING_TORQUE, Moves.HEAD_CHARGE, Moves.CLANGOROUS_SOUL ],
+ [Species.ORTHWORM]: [ Moves.GLARE, Moves.COIL, Moves.BODY_PRESS, Moves.SHORE_UP ],
+ [Species.GLIMMET]: [ Moves.CALM_MIND, Moves.SHORE_UP, Moves.PARTING_SHOT, Moves.FIERY_DANCE ],
+ [Species.GREAVARD]: [ Moves.BULK_UP, Moves.AGILITY, Moves.SHORE_UP, Moves.COLLISION_COURSE ],
+ [Species.FLAMIGO]: [ Moves.THUNDEROUS_KICK, Moves.TRIPLE_AXEL, Moves.U_TURN, Moves.VICTORY_DANCE ],
+ [Species.CETODDLE]: [ Moves.ICICLE_CRASH, Moves.HIGH_HORSEPOWER, Moves.RECOVER, Moves.DRAGON_DANCE ],
+ [Species.VELUZA]: [ Moves.RECOVER, Moves.FLIP_TURN, Moves.ICE_SPINNER, Moves.PHOTON_GEYSER ],
+ [Species.DONDOZO]: [ Moves.RECOVER, Moves.ICE_SPINNER, Moves.CURSE, Moves.WOOD_HAMMER ],
+ [Species.TATSUGIRI]: [ Moves.ICE_BEAM, Moves.BATON_PASS, Moves.SCALD, Moves.CLANGOROUS_SOUL ],
+ [Species.GREAT_TUSK]: [ Moves.STONE_AXE, Moves.CEASELESS_EDGE, Moves.DRAGON_DANCE, Moves.COLLISION_COURSE ],
+ [Species.SCREAM_TAIL]: [ Moves.COSMIC_POWER, Moves.LUMINA_CRASH, Moves.MOONLIGHT, Moves.SHED_TAIL ],
+ [Species.BRUTE_BONNET]: [ Moves.DARKEST_LARIAT, Moves.STRENGTH_SAP, Moves.EARTHQUAKE, Moves.SAPPY_SEED ],
+ [Species.FLUTTER_MANE]: [ Moves.MOONLIGHT, Moves.FLAMETHROWER, Moves.EARTH_POWER, Moves.ASTRAL_BARRAGE ],
+ [Species.SLITHER_WING]: [ Moves.KNOCK_OFF, Moves.VICTORY_DANCE, Moves.FIRE_LASH, Moves.FLYING_PRESS ],
+ [Species.SANDY_SHOCKS]: [ Moves.SHORE_UP, Moves.ICE_BEAM, Moves.NASTY_PLOT, Moves.THUNDERCLAP ],
+ [Species.IRON_TREADS]: [ Moves.SUPERCELL_SLAM, Moves.BULK_UP, Moves.SPIKES, Moves.DOUBLE_IRON_BASH ],
+ [Species.IRON_BUNDLE]: [ Moves.EARTH_POWER, Moves.BOUNCY_BUBBLE, Moves.NASTY_PLOT, Moves.WATER_SPOUT ],
+ [Species.IRON_HANDS]: [ Moves.HAMMER_ARM, Moves.CURSE, Moves.PLASMA_FISTS, Moves.RECOVER ],
+ [Species.IRON_JUGULIS]: [ Moves.FIERY_WRATH, Moves.ROOST, Moves.NASTY_PLOT, Moves.OBLIVION_WING ],
+ [Species.IRON_MOTH]: [ Moves.EARTH_POWER, Moves.SEARING_SHOT, Moves.QUIVER_DANCE, Moves.MALIGNANT_CHAIN ],
+ [Species.IRON_THORNS]: [ Moves.MIGHTY_CLEAVE, Moves.SHORE_UP, Moves.SHIFT_GEAR, Moves.FUSION_BOLT ],
+ [Species.FRIGIBAX]: [ Moves.DRAGON_HAMMER, Moves.BULK_UP, Moves.SHORE_UP, Moves.GLACIAL_LANCE ],
+ [Species.GIMMIGHOUL]: [ Moves.COSMIC_POWER, Moves.STORED_POWER, Moves.BATON_PASS, Moves.ASTRAL_BARRAGE ],
+ [Species.WO_CHIEN]: [ Moves.SPORE, Moves.RAGE_POWDER, Moves.SAPPY_SEED, Moves.JUNGLE_HEALING ],
+ [Species.CHIEN_PAO]: [ Moves.HEAD_CHARGE, Moves.PARTING_SHOT, Moves.BITTER_BLADE, Moves.GLACIAL_LANCE ],
+ [Species.TING_LU]: [ Moves.SHORE_UP, Moves.CURSE, Moves.LEECH_SEED, Moves.THOUSAND_ARROWS ],
+ [Species.CHI_YU]: [ Moves.FIERY_WRATH, Moves.EARTH_POWER, Moves.BURNING_BULWARK, Moves.ERUPTION ],
+ [Species.ROARING_MOON]: [ Moves.FIRE_LASH, Moves.DRAGON_HAMMER, Moves.SUCKER_PUNCH, Moves.WICKED_BLOW ],
+ [Species.IRON_VALIANT]: [ Moves.PLASMA_FISTS, Moves.VICTORY_DANCE, Moves.QUIVER_DANCE, Moves.MAGICAL_TORQUE ],
+ [Species.KORAIDON]: [ Moves.MIGHTY_CLEAVE, Moves.RECOVER, Moves.GLAIVE_RUSH, Moves.CLANGOROUS_SOUL ],
+ [Species.MIRAIDON]: [ Moves.ICE_BEAM, Moves.RECOVER, Moves.RISING_VOLTAGE, Moves.DRAGON_ENERGY ],
+ [Species.WALKING_WAKE]: [ Moves.BOUNCY_BUBBLE, Moves.NASTY_PLOT, Moves.EARTH_POWER, Moves.DRAGON_ENERGY ],
+ [Species.IRON_LEAVES]: [ Moves.SPORE, Moves.BLAZING_TORQUE, Moves.SAPPY_SEED, Moves.PHOTON_GEYSER ],
+ [Species.POLTCHAGEIST]: [ Moves.COSMIC_POWER, Moves.INFERNAL_PARADE, Moves.LEECH_SEED, Moves.FOLLOW_ME ],
+ [Species.OKIDOGI]: [ Moves.MORNING_SUN, Moves.OBSTRUCT, Moves.DIRE_CLAW, Moves.COLLISION_COURSE ],
+ [Species.MUNKIDORI]: [ Moves.PSYSTRIKE, Moves.HEAT_WAVE, Moves.EARTH_POWER, Moves.MALIGNANT_CHAIN ],
+ [Species.FEZANDIPITI]: [ Moves.BATON_PASS, Moves.COSMIC_POWER, Moves.SIZZLY_SLIDE, Moves.MALIGNANT_CHAIN ],
+ [Species.OGERPON]: [ Moves.JUNGLE_HEALING, Moves.BONEMERANG, Moves.TRIPLE_AXEL, Moves.GIGATON_HAMMER ],
+ [Species.GOUGING_FIRE]: [ Moves.SUPERCELL_SLAM, Moves.BULK_UP, Moves.SACRED_FIRE, Moves.GLAIVE_RUSH ],
+ [Species.RAGING_BOLT]: [ Moves.NASTY_PLOT, Moves.FLAMETHROWER, Moves.RECOVER, Moves.ELECTRO_DRIFT ],
+ [Species.IRON_BOULDER]: [ Moves.PSYBLADE, Moves.TACHYON_CUTTER, Moves.STONE_AXE, Moves.BITTER_BLADE ],
+ [Species.IRON_CROWN]: [ Moves.KINGS_SHIELD, Moves.SECRET_SWORD, Moves.PHOTON_GEYSER, Moves.ELECTRO_DRIFT ],
+ [Species.TERAPAGOS]: [ Moves.EARTH_POWER, Moves.SHORE_UP, Moves.ICE_BEAM, Moves.SHELL_SMASH ],
+ [Species.PECHARUNT]: [ Moves.TOXIC_SPIKES, Moves.BODY_PRESS, Moves.HEX, Moves.BANEFUL_BUNKER ],
[Species.ALOLA_RATTATA]: [ Moves.STUFF_CHEEKS, Moves.BADDY_BAD, Moves.FLAME_WHEEL, Moves.RECYCLE ],
[Species.ALOLA_SANDSHREW]: [ Moves.SPIKY_SHIELD, Moves.ICE_SHARD, Moves.CRUSH_CLAW, Moves.SPIN_OUT ],
[Species.ALOLA_VULPIX]: [ Moves.MOONBLAST, Moves.HYPNOSIS, Moves.CHILLING_WATER, Moves.FREEZY_FROST ],
@@ -568,9 +568,9 @@ export const speciesEggMoves = {
[Species.HISUI_QWILFISH]: [ Moves.NUZZLE, Moves.SCALE_SHOT, Moves.SUPERSONIC, Moves.PARTING_SHOT ],
[Species.HISUI_SNEASEL]: [ Moves.DRAIN_PUNCH, Moves.BULLET_PUNCH, Moves.FAKE_OUT, Moves.VICTORY_DANCE ],
[Species.HISUI_ZORUA]: [ Moves.ALLURING_VOICE, Moves.GLARE, Moves.TORCH_SONG, Moves.TRANSFORM ],
- [Species.PALDEA_TAUROS]: [ Moves.HEAD_CHARGE, Moves.BLAZE_KICK, Moves.AQUA_STEP, Moves.NO_RETREAT ],
- [Species.PALDEA_WOOPER]: [ Moves.RECOVER, Moves.DOUBLE_KICK, Moves.ANCIENT_POWER, Moves.VENOM_DRENCH ],
- [Species.BLOODMOON_URSALUNA]: [ Moves.GLARE, Moves.SCORCHING_SANDS, Moves.CALM_MIND, Moves.BOOMBURST ]
+ [Species.PALDEA_TAUROS]: [ Moves.NO_RETREAT, Moves.FLARE_BLITZ, Moves.WAVE_CRASH, Moves.THUNDEROUS_KICK ],
+ [Species.PALDEA_WOOPER]: [ Moves.RECOVER, Moves.STONE_AXE, Moves.LEECH_SEED, Moves.BANEFUL_BUNKER ],
+ [Species.BLOODMOON_URSALUNA]: [ Moves.GLARE, Moves.OBSTRUCT, Moves.PARTING_SHOT, Moves.MIND_BLOWN ]
};
function parseEggMoves(content: string): void {
diff --git a/src/data/enums/battler-tag-type.ts b/src/data/enums/battler-tag-type.ts
index 85f00753457..9c740ef4629 100644
--- a/src/data/enums/battler-tag-type.ts
+++ b/src/data/enums/battler-tag-type.ts
@@ -22,6 +22,7 @@ export enum BattlerTagType {
SAND_TOMB = "SAND_TOMB",
MAGMA_STORM = "MAGMA_STORM",
THUNDER_CAGE = "THUNDER_CAGE",
+ INFESTATION = "INFESTATION",
PROTECTED = "PROTECTED",
SPIKY_SHIELD = "SPIKY_SHIELD",
KINGS_SHIELD = "KINGS_SHIELD",
@@ -38,6 +39,7 @@ export enum BattlerTagType {
QUARK_DRIVE = "QUARK_DRIVE",
FLYING = "FLYING",
UNDERGROUND = "UNDERGROUND",
+ UNDERWATER = "UNDERWATER",
HIDDEN = "HIDDEN",
FIRE_BOOST = "FIRE_BOOST",
CRIT_BOOST = "CRIT_BOOST",
@@ -46,5 +48,8 @@ export enum BattlerTagType {
IGNORE_ACCURACY = "IGNORE_ACCURACY",
BYPASS_SLEEP = "BYPASS_SLEEP",
IGNORE_FLYING = "IGNORE_FLYING",
- SALT_CURED = "SALT_CURED"
+ SALT_CURED = "SALT_CURED",
+ CURSED = "CURSED",
+ CHARGED = "CHARGED",
+ GROUNDED = "GROUNDED"
}
diff --git a/src/data/enums/species.ts b/src/data/enums/species.ts
index 1f449258ad8..0197a09ff85 100644
--- a/src/data/enums/species.ts
+++ b/src/data/enums/species.ts
@@ -1081,4 +1081,16 @@ export enum Species {
PALDEA_TAUROS = 8128,
PALDEA_WOOPER = 8194,
BLOODMOON_URSALUNA = 8901,
-};
\ No newline at end of file
+};
+
+export const defaultStarterSpecies: Species[] = [
+ Species.BULBASAUR, Species.CHARMANDER, Species.SQUIRTLE,
+ Species.CHIKORITA, Species.CYNDAQUIL, Species.TOTODILE,
+ Species.TREECKO, Species.TORCHIC, Species.MUDKIP,
+ Species.TURTWIG, Species.CHIMCHAR, Species.PIPLUP,
+ Species.SNIVY, Species.TEPIG, Species.OSHAWOTT,
+ Species.CHESPIN, Species.FENNEKIN, Species.FROAKIE,
+ Species.ROWLET, Species.LITTEN, Species.POPPLIO,
+ Species.GROOKEY, Species.SCORBUNNY, Species.SOBBLE,
+ Species.SPRIGATITO, Species.FUECOCO, Species.QUAXLY
+];
\ No newline at end of file
diff --git a/src/data/move.ts b/src/data/move.ts
index 8a63e9bc5ba..86d35f2cf70 100644
--- a/src/data/move.ts
+++ b/src/data/move.ts
@@ -12,7 +12,7 @@ import * as Utils from "../utils";
import { WeatherType } from "./weather";
import { ArenaTagSide, ArenaTrapTag } from "./arena-tag";
import { ArenaTagType } from "./enums/arena-tag-type";
-import { UnswappableAbilityAbAttr, UncopiableAbilityAbAttr, UnsuppressableAbilityAbAttr, NoTransformAbilityAbAttr, BlockRecoilDamageAttr, BlockOneHitKOAbAttr, IgnoreContactAbAttr, MaxMultiHitAbAttr, applyAbAttrs, BlockNonDirectDamageAbAttr, applyPreSwitchOutAbAttrs, PreSwitchOutAbAttr, applyPostDefendAbAttrs, PostDefendContactApplyStatusEffectAbAttr } from "./ability";
+import { UnswappableAbilityAbAttr, UncopiableAbilityAbAttr, UnsuppressableAbilityAbAttr, NoTransformAbilityAbAttr, BlockRecoilDamageAttr, BlockOneHitKOAbAttr, IgnoreContactAbAttr, MaxMultiHitAbAttr, applyAbAttrs, BlockNonDirectDamageAbAttr, applyPreSwitchOutAbAttrs, PreSwitchOutAbAttr, applyPostDefendAbAttrs, PostDefendContactApplyStatusEffectAbAttr, MoveAbilityBypassAbAttr, ReverseDrainAbAttr } from "./ability";
import { Abilities } from "./enums/abilities";
import { allAbilities } from './ability';
import { PokemonHeldItemModifier } from "../modifier/modifier";
@@ -23,6 +23,8 @@ import { SpeciesFormChangeActiveTrigger } from "./pokemon-forms";
import { Species } from "./enums/species";
import { ModifierPoolType } from "#app/modifier/modifier-type";
import { Command } from "../ui/command-ui-handler";
+import { Biome } from "./enums/biome";
+import i18next, { Localizable } from '../plugins/i18n';
export enum MoveCategory {
PHYSICAL,
@@ -66,13 +68,14 @@ export enum MoveFlags {
POWDER_MOVE = 2048,
DANCE_MOVE = 4096,
WIND_MOVE = 8192,
- TRIAGE_MOVE = 16384
+ TRIAGE_MOVE = 16384,
+ IGNORE_ABILITIES = 32768
}
type MoveConditionFunc = (user: Pokemon, target: Pokemon, move: Move) => boolean;
type UserMoveConditionFunc = (user: Pokemon, move: Move) => boolean;
-export default class Move {
+export default class Move implements Localizable {
public id: Moves;
public name: string;
public type: Type;
@@ -88,17 +91,18 @@ export default class Move {
public attrs: MoveAttr[];
private conditions: MoveCondition[];
private flags: integer;
+ private nameAppend: string;
- constructor(id: Moves, name: string, type: Type, category: MoveCategory, defaultMoveTarget: MoveTarget, power: integer, accuracy: integer, pp: integer, effect: string, chance: integer, priority: integer, generation: integer) {
+ constructor(id: Moves, type: Type, category: MoveCategory, defaultMoveTarget: MoveTarget, power: integer, accuracy: integer, pp: integer, chance: integer, priority: integer, generation: integer) {
this.id = id;
- this.name = name;
+
+ this.nameAppend = '';
this.type = type;
this.category = category;
this.moveTarget = defaultMoveTarget;
this.power = power;
this.accuracy = accuracy;
this.pp = pp;
- this.effect = effect;
this.chance = chance;
this.priority = priority;
this.generation = generation;
@@ -111,6 +115,15 @@ export default class Move {
this.setFlag(MoveFlags.IGNORE_PROTECT, true);
if (category === MoveCategory.PHYSICAL)
this.setFlag(MoveFlags.MAKES_CONTACT, true);
+
+ this.localize();
+ }
+
+ localize(): void {
+ const i18nKey = Moves[this.id].split('_').filter(f => f).map((f, i) => i ? `${f[0]}${f.slice(1).toLowerCase()}` : f.toLowerCase()).join('') as unknown as string;
+
+ this.name = this.id ? `${i18next.t(`move:${i18nKey}.name`).toString()}${this.nameAppend}` : '';
+ this.effect = this.id ? `${i18next.t(`move:${i18nKey}.effect`).toString()}${this.nameAppend}` : '';
}
getAttrs(attrType: { new(...args: any[]): MoveAttr }): MoveAttr[] {
@@ -188,6 +201,16 @@ export default class Move {
return this;
}
+
+ partial(): this {
+ this.nameAppend += ' (P)';
+ return this;
+ }
+
+ unimplemented(): this {
+ this.nameAppend += ' (N)';
+ return this;
+ }
private setFlag(flag: MoveFlags, on: boolean): void {
if (on)
@@ -271,12 +294,24 @@ export default class Move {
return this;
}
+ ignoresAbilities(ignoresAbilities?: boolean): this {
+ this.setFlag(MoveFlags.IGNORE_ABILITIES, ignoresAbilities);
+ return this;
+ }
+
checkFlag(flag: MoveFlags, user: Pokemon, target: Pokemon): boolean {
switch (flag) {
case MoveFlags.MAKES_CONTACT:
- if ((user.canApplyAbility() && user.getAbility().hasAttr(IgnoreContactAbAttr)) || (user.canApplyAbility(true) && user.getPassiveAbility().hasAttr(IgnoreContactAbAttr)))
+ if (user.hasAbilityWithAttr(IgnoreContactAbAttr))
return false;
break;
+ case MoveFlags.IGNORE_ABILITIES:
+ if (user.hasAbilityWithAttr(MoveAbilityBypassAbAttr)) {
+ const abilityEffectsIgnored = new Utils.BooleanHolder(false);
+ applyAbAttrs(MoveAbilityBypassAbAttr, user, abilityEffectsIgnored, this);
+ if (abilityEffectsIgnored.value)
+ return true;
+ }
}
return !!(this.flags & flag);
@@ -314,8 +349,8 @@ export default class Move {
}
export class AttackMove extends Move {
- constructor(id: Moves, name: string, type: Type, category: MoveCategory, power: integer, accuracy: integer, pp: integer, effect: string, chance: integer, priority: integer, generation: integer) {
- super(id, name, type, category, MoveTarget.NEAR_OTHER, power, accuracy, pp, effect, chance, priority, generation);
+ constructor(id: Moves, type: Type, category: MoveCategory, power: integer, accuracy: integer, pp: integer, chance: integer, priority: integer, generation: integer) {
+ super(id, type, category, MoveTarget.NEAR_OTHER, power, accuracy, pp, chance, priority, generation);
}
getTargetBenefitScore(user: Pokemon, target: Pokemon, move: Move): integer {
@@ -361,14 +396,14 @@ export class AttackMove extends Move {
}
export class StatusMove extends Move {
- constructor(id: Moves, name: string, type: Type, accuracy: integer, pp: integer, effect: string, chance: integer, priority: integer, generation: integer) {
- super(id, name, type, MoveCategory.STATUS, MoveTarget.NEAR_OTHER, -1, accuracy, pp, effect, chance, priority, generation);
+ constructor(id: Moves, type: Type, accuracy: integer, pp: integer, chance: integer, priority: integer, generation: integer) {
+ super(id, type, MoveCategory.STATUS, MoveTarget.NEAR_OTHER, -1, accuracy, pp, chance, priority, generation);
}
}
export class SelfStatusMove extends Move {
- constructor(id: Moves, name: string, type: Type, accuracy: integer, pp: integer, effect: string, chance: integer, priority: integer, generation: integer) {
- super(id, name, type, MoveCategory.STATUS, MoveTarget.USER, -1, accuracy, pp, effect, chance, priority, generation);
+ constructor(id: Moves, type: Type, accuracy: integer, pp: integer, chance: integer, priority: integer, generation: integer) {
+ super(id, type, MoveCategory.STATUS, MoveTarget.USER, -1, accuracy, pp, chance, priority, generation);
}
}
@@ -628,12 +663,14 @@ export class SurviveDamageAttr extends ModifiedDamageAttr {
export class RecoilAttr extends MoveEffectAttr {
private useHp: boolean;
private damageRatio: number;
+ private unblockable: boolean;
- constructor(useHp?: boolean, damageRatio?: number) {
+ constructor(useHp: boolean = false, damageRatio: number = 0.25, unblockable: boolean = false) {
super(true);
this.useHp = useHp;
- this.damageRatio = (damageRatio !== undefined ? damageRatio : 0.25) || 0.25;
+ this.damageRatio = damageRatio;
+ this.unblockable = unblockable;
}
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
@@ -641,7 +678,8 @@ export class RecoilAttr extends MoveEffectAttr {
return false;
const cancelled = new Utils.BooleanHolder(false);
- applyAbAttrs(BlockRecoilDamageAttr, user, cancelled);
+ if (!this.unblockable)
+ applyAbAttrs(BlockRecoilDamageAttr, user, cancelled);
if (cancelled.value)
return false;
@@ -776,6 +814,7 @@ export class PlantHealAttr extends WeatherHealAttr {
case WeatherType.RAIN:
case WeatherType.SANDSTORM:
case WeatherType.HAIL:
+ case WeatherType.SNOW:
case WeatherType.HEAVY_RAIN:
return 0.25;
default:
@@ -805,8 +844,12 @@ export class HitHealAttr extends MoveEffectAttr {
}
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+ const healAmount = Math.max(Math.floor(user.turnData.damageDealt * this.healRatio), 1);
+ const reverseDrain = user.hasAbilityWithAttr(ReverseDrainAbAttr);
user.scene.unshiftPhase(new PokemonHealPhase(user.scene, user.getBattlerIndex(),
- Math.max(Math.floor(user.turnData.damageDealt * this.healRatio), 1), getPokemonMessage(target, ` had its\nenergy drained!`), false, true));
+ !reverseDrain ? healAmount : healAmount * -1,
+ !reverseDrain ? getPokemonMessage(target, ` had its\nenergy drained!`) : undefined,
+ false, true));
return true;
}
@@ -821,9 +864,12 @@ export class StrengthSapHealAttr extends MoveEffectAttr {
}
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+ const healAmount = target.stats[Stat.ATK] * (Math.max(2, 2 + target.summonData.battleStats[BattleStat.ATK]) / Math.max(2, 2 - target.summonData.battleStats[BattleStat.ATK]));
+ const reverseDrain = user.hasAbilityWithAttr(ReverseDrainAbAttr);
user.scene.unshiftPhase(new PokemonHealPhase(user.scene, user.getBattlerIndex(),
- target.stats[Stat.ATK] * (Math.max(2, 2 + target.summonData.battleStats[BattleStat.ATK]) / Math.max(2, 2 - target.summonData.battleStats[BattleStat.ATK])),
- getPokemonMessage(user, ` regained\nhealth!`), false, true));
+ !reverseDrain ? healAmount : healAmount * -1,
+ !reverseDrain ? getPokemonMessage(user, ` regained\nhealth!`) : undefined,
+ false, true));
return true;
}
}
@@ -936,6 +982,34 @@ export class StatusEffectAttr extends MoveEffectAttr {
}
}
+export class PsychoShiftEffectAttr extends MoveEffectAttr {
+ constructor() {
+ super(false, MoveEffectTrigger.HIT);
+ }
+
+ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+ const statusToApply: StatusEffect = user.status?.effect;
+
+ if (target.status) {
+ return false;
+ }
+ if (!target.status || (target.status.effect === statusToApply && move.chance < 0))
+ var statusAfflictResult = target.trySetStatus(statusToApply, true);
+ if (statusAfflictResult) {
+ user.scene.queueMessage(getPokemonMessage(user, getStatusEffectHealText(user.status.effect)));
+ user.resetStatus();
+ user.updateInfo();
+ }
+ return statusAfflictResult;
+
+ return false;
+ }
+
+ getTargetBenefitScore(user: Pokemon, target: Pokemon, move: Move): number {
+ return !(this.selfTarget ? user : target).status && (this.selfTarget ? user : target).canSetStatus(user.status?.effect, true) ? Math.floor(move.chance * -0.1) : 0;
+ }
+}
+
export class StealHeldItemChanceAttr extends MoveEffectAttr {
private chance: number;
@@ -1237,17 +1311,38 @@ export class SunlightChargeAttr extends ChargeAttr {
}
export class ElectroShotChargeAttr extends ChargeAttr {
+ private statIncreaseApplied: boolean;
constructor() {
super(ChargeAnim.ELECTRO_SHOT_CHARGING, 'absorbed electricity!', null, true);
+ // Add a flag because ChargeAttr skills use themselves twice instead of once over one-to-two turns
+ this.statIncreaseApplied = false;
}
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): Promise {
return new Promise(resolve => {
const weatherType = user.scene.arena.weather?.weatherType;
- if (!user.scene.arena.weather?.isEffectSuppressed(user.scene) && (weatherType === WeatherType.RAIN || weatherType === WeatherType.HEAVY_RAIN))
+ if (!user.scene.arena.weather?.isEffectSuppressed(user.scene) && (weatherType === WeatherType.RAIN || weatherType === WeatherType.HEAVY_RAIN)) {
+ // Apply the SPATK increase every call when used in the rain
+ const statChangeAttr = new StatChangeAttr(BattleStat.SPATK, 1, true);
+ statChangeAttr.apply(user, target, move, args);
+ // After the SPATK is raised, execute the move resolution e.g. deal damage
resolve(false);
- else
- super.apply(user, target, move, args).then(result => resolve(result));
+ } else {
+ if (!this.statIncreaseApplied) {
+ // Apply the SPATK increase only if it hasn't been applied before e.g. on the first turn charge up animation
+ const statChangeAttr = new StatChangeAttr(BattleStat.SPATK, 1, true);
+ statChangeAttr.apply(user, target, move, args);
+ // Set the flag to true so that on the following turn it doesn't raise SPATK a second time
+ this.statIncreaseApplied = true;
+ }
+ super.apply(user, target, move, args).then(result => {
+ if (!result) {
+ // On the second turn, reset the statIncreaseApplied flag without applying the SPATK increase
+ this.statIncreaseApplied = false;
+ }
+ resolve(result);
+ });
+ }
});
}
}
@@ -1378,7 +1473,7 @@ export class HalfHpStatMaxAttr extends StatChangeAttr {
user.scene.damageNumberHandler.add(user, damage);
user.updateInfo().then(() => {
const ret = super.apply(user, target, move, args);
- user.scene.queueMessage(getPokemonMessage(user, ` cut its own hp\nand maximized its ${getBattleStatName(this.stats[0])}!`));
+ user.scene.queueMessage(getPokemonMessage(user, ` cut its own HP\nand maximized its ${getBattleStatName(this.stats[0])}!`));
resolve(ret);
});
});
@@ -1417,6 +1512,24 @@ export class CutHpStatBoostAttr extends StatChangeAttr {
}
}
+export class CopyStatsAttr extends MoveEffectAttr {
+ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+ if (!super.apply(user, target, move, args))
+ return false;
+
+ for (let s = 0; s < target.summonData.battleStats.length; s++)
+ user.summonData.battleStats[s] = target.summonData.battleStats[s];
+ if (target.getTag(BattlerTagType.CRIT_BOOST))
+ user.addTag(BattlerTagType.CRIT_BOOST, 0, move.id);
+ else
+ user.removeTag(BattlerTagType.CRIT_BOOST);
+
+ target.scene.queueMessage(getPokemonMessage(user, 'copied\n') + getPokemonMessage(target, `'s stat changes!`));
+
+ return true;
+ }
+}
+
export class InvertStatsAttr extends MoveEffectAttr {
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
if (!super.apply(user, target, move, args))
@@ -1431,6 +1544,20 @@ export class InvertStatsAttr extends MoveEffectAttr {
}
}
+export class ResetStatsAttr extends MoveEffectAttr {
+ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+ if (!super.apply(user, target, move, args))
+ return false;
+
+ for (let s = 0; s < target.summonData.battleStats.length; s++)
+ target.summonData.battleStats[s] = 0;
+
+ target.scene.queueMessage(getPokemonMessage(target, `'s stat changes\nwere eliminated!`));
+
+ return true;
+ }
+}
+
export class HpSplitAttr extends MoveEffectAttr {
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): Promise {
return new Promise(resolve => {
@@ -1588,8 +1715,18 @@ export class BattleStatRatioPowerAttr extends VariablePowerAttr {
const statThresholds = [ 0.25, 1 / 3, 0.5, 1, -1 ];
let statThresholdPowers = [ 150, 120, 80, 60, 40 ];
- if (this.invert)
- statThresholdPowers = statThresholdPowers.reverse();
+ if (this.invert) {
+ // Gyro ball uses a specific formula
+ let userSpeed = user.getStat(this.stat);
+ if (userSpeed < 1) {
+ // Gen 6+ always have 1 base power
+ power.value = 1;
+ return true;
+ }
+ let bp = Math.floor(Math.min(150, 25 * target.getStat(this.stat) / userSpeed + 1));
+ power.value = bp;
+ return true;
+ }
let w = 0;
while (w < statThresholds.length - 1 && statRatio > statThresholds[w]) {
@@ -1694,6 +1831,7 @@ export class FirstAttackDoublePowerAttr extends VariablePowerAttr {
}
}
+
export class TurnDamagedDoublePowerAttr extends VariablePowerAttr {
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
if (user.turnData.attacksReceived.find(r => r.damage && r.sourceId === target.id)) {
@@ -1755,6 +1893,7 @@ export class AntiSunlightPowerDecreaseAttr extends VariablePowerAttr {
case WeatherType.RAIN:
case WeatherType.SANDSTORM:
case WeatherType.HAIL:
+ case WeatherType.SNOW:
case WeatherType.HEAVY_RAIN:
power.value *= 0.5;
return true;
@@ -1804,6 +1943,28 @@ export class StatChangeCountPowerAttr extends VariablePowerAttr {
}
}
+export class PresentPowerAttr extends VariablePowerAttr {
+ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+
+ const powerSeed = Utils.randSeedInt(100);
+ if (powerSeed <= 40) {
+ (args[0] as Utils.NumberHolder).value = 40;
+ }
+ else if (40 < powerSeed && powerSeed <= 70) {
+ (args[0] as Utils.NumberHolder).value = 80;
+ }
+ else if (70 < powerSeed && powerSeed <= 80) {
+ (args[0] as Utils.NumberHolder).value = 120;
+ }
+ else if (80 < powerSeed && powerSeed <= 100) {
+ target.scene.unshiftPhase(new PokemonHealPhase(target.scene, target.getBattlerIndex(),
+ Math.max(Math.floor(target.getMaxHp() / 4), 1), getPokemonMessage(target, ' regained\nhealth!'), true));
+ }
+
+ return true;
+ }
+}
+
export class VariableAtkAttr extends MoveAttr {
constructor() {
super();
@@ -1904,7 +2065,7 @@ export class BlizzardAccuracyAttr extends VariableAccuracyAttr {
if (!user.scene.arena.weather?.isEffectSuppressed(user.scene)) {
const accuracy = args[0] as Utils.NumberHolder;
const weatherType = user.scene.arena.weather?.weatherType || WeatherType.NONE;
- if (weatherType === WeatherType.HAIL) {
+ if (weatherType === WeatherType.HAIL || weatherType === WeatherType.SNOW) {
accuracy.value = -1;
return true;
}
@@ -2033,6 +2194,45 @@ export class RagingBullTypeAttr extends VariableMoveTypeAttr {
}
}
+export class IvyCudgelTypeAttr extends VariableMoveTypeAttr {
+ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+ if ([user.species.speciesId, user.fusionSpecies?.speciesId].includes(Species.OGERPON)) {
+ const form = user.species.speciesId === Species.OGERPON ? user.formIndex : user.fusionSpecies.formIndex;
+ const type = (args[0] as Utils.IntegerHolder);
+
+ switch (form) {
+ case 1: // Wellspring Mask
+ type.value = Type.WATER;
+ break;
+ case 2: // Hearthflame Mask
+ type.value = Type.FIRE;
+ break;
+ case 3: // Cornerstone Mask
+ type.value = Type.ROCK;
+ break;
+ case 4: // Teal Mask Tera
+ type.value = Type.GRASS;
+ break;
+ case 5: // Wellspring Mask Tera
+ type.value = Type.WATER;
+ break;
+ case 6: // Hearthflame Mask Tera
+ type.value = Type.FIRE;
+ break;
+ case 7: // Cornerstone Mask Tera
+ type.value = Type.ROCK;
+ break;
+ default:
+ type.value = Type.GRASS;
+ break;
+ }
+ return true;
+ }
+
+ return false;
+ }
+}
+
export class WeatherBallTypeAttr extends VariableMoveTypeAttr {
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
if (!user.scene.arena.weather?.isEffectSuppressed(user.scene)) {
@@ -2051,6 +2251,7 @@ export class WeatherBallTypeAttr extends VariableMoveTypeAttr {
type.value = Type.ROCK;
break;
case WeatherType.HAIL:
+ case WeatherType.SNOW:
type.value = Type.ICE;
break;
default:
@@ -2117,10 +2318,13 @@ export class WaterSuperEffectTypeMultiplierAttr extends VariableMoveTypeMultipli
}
}
-export class OneHitKOAccuracyAttr extends MoveAttr {
+export class OneHitKOAccuracyAttr extends VariableAccuracyAttr {
apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
const accuracy = args[0] as Utils.NumberHolder;
- accuracy.value = 30 + 70 * Math.min(target.level / user.level, 0.5) * 2;
+ if (user.level < target.level)
+ accuracy.value = 0;
+ else
+ accuracy.value = Math.min(Math.max(30 + 100 * (1 - target.level / user.level), 0), 100);
return true;
}
}
@@ -2314,6 +2518,7 @@ export class AddBattlerTagAttr extends MoveEffectAttr {
return -5;
case BattlerTagType.SEEDED:
case BattlerTagType.SALT_CURED:
+ case BattlerTagType.CURSED:
case BattlerTagType.FRENZY:
case BattlerTagType.TRAPPED:
case BattlerTagType.BIND:
@@ -2324,6 +2529,7 @@ export class AddBattlerTagAttr extends MoveEffectAttr {
case BattlerTagType.SAND_TOMB:
case BattlerTagType.MAGMA_STORM:
case BattlerTagType.THUNDER_CAGE:
+ case BattlerTagType.INFESTATION:
return -3;
case BattlerTagType.ENCORE:
return -2;
@@ -2347,6 +2553,34 @@ export class AddBattlerTagAttr extends MoveEffectAttr {
}
}
+export class CurseAttr extends MoveEffectAttr {
+
+ apply(user: Pokemon, target: Pokemon, move:Move, args: any[]): boolean {
+ // Determine the correct target based on the user's type
+ if (!user.getTypes(true).includes(Type.GHOST)) {
+ // For non-Ghost types, target the user itself
+ target = user;
+ }
+
+ if (user.getTypes(true).includes(Type.GHOST)) {
+ if (target.getTag(BattlerTagType.CURSED)) {
+ user.scene.queueMessage('But it failed!');
+ return false;
+ }
+ let curseRecoilDamage = Math.floor(user.getMaxHp() / 2);
+ user.damageAndUpdate(curseRecoilDamage, HitResult.OTHER, false, true, true);
+ user.scene.queueMessage(getPokemonMessage(user, ' cut its own HP!'));
+ target.addTag(BattlerTagType.CURSED, 0, move.id, user.id);
+ return true;
+ } else {
+ target = user;
+ user.scene.unshiftPhase(new StatChangePhase(user.scene, user.getBattlerIndex(), this.selfTarget, [BattleStat.ATK, BattleStat.DEF], 1));
+ user.scene.unshiftPhase(new StatChangePhase(user.scene, user.getBattlerIndex(), this.selfTarget, [BattleStat.SPD], -1));
+ return true;
+ }
+ }
+}
+
export class LapseBattlerTagAttr extends MoveEffectAttr {
public tagTypes: BattlerTagType[];
@@ -2547,12 +2781,46 @@ export class AddArenaTrapTagAttr extends AddArenaTagAttr {
}
}
+export class RemoveScreensAttr extends MoveEffectAttr {
+
+ private targetBothSides: boolean;
+
+ constructor(targetBothSides: boolean = false) {
+ super(true, MoveEffectTrigger.PRE_APPLY);
+ this.targetBothSides = targetBothSides;
+ }
+
+ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+
+ if (!super.apply(user, target, move, args))
+ return false;
+
+ if(this.targetBothSides){
+ user.scene.arena.removeTagOnSide(ArenaTagType.REFLECT, ArenaTagSide.PLAYER);
+ user.scene.arena.removeTagOnSide(ArenaTagType.LIGHT_SCREEN, ArenaTagSide.PLAYER);
+ user.scene.arena.removeTagOnSide(ArenaTagType.AURORA_VEIL, ArenaTagSide.PLAYER);
+
+ user.scene.arena.removeTagOnSide(ArenaTagType.REFLECT, ArenaTagSide.ENEMY);
+ user.scene.arena.removeTagOnSide(ArenaTagType.LIGHT_SCREEN, ArenaTagSide.ENEMY);
+ user.scene.arena.removeTagOnSide(ArenaTagType.AURORA_VEIL, ArenaTagSide.ENEMY);
+ }
+ else{
+ user.scene.arena.removeTagOnSide(ArenaTagType.REFLECT, target.isPlayer() ? ArenaTagSide.PLAYER : ArenaTagSide.ENEMY);
+ user.scene.arena.removeTagOnSide(ArenaTagType.LIGHT_SCREEN, target.isPlayer() ? ArenaTagSide.PLAYER : ArenaTagSide.ENEMY);
+ user.scene.arena.removeTagOnSide(ArenaTagType.AURORA_VEIL, target.isPlayer() ? ArenaTagSide.PLAYER : ArenaTagSide.ENEMY);
+ }
+
+ return true;
+
+ }
+}
+
export class ForceSwitchOutAttr extends MoveEffectAttr {
private user: boolean;
private batonPass: boolean;
constructor(user?: boolean, batonPass?: boolean) {
- super(false, MoveEffectTrigger.HIT, true);
+ super(false, MoveEffectTrigger.POST_APPLY, true);
this.user = !!user;
this.batonPass = !!batonPass;
}
@@ -2649,6 +2917,39 @@ export class ForceSwitchOutAttr extends MoveEffectAttr {
}
}
+export class RemoveTypeAttr extends MoveEffectAttr {
+
+ private removedType: Type;
+ private messageCallback: ((user: Pokemon) => void) | undefined;
+
+ constructor(removedType: Type, messageCallback?: (user: Pokemon) => void) {
+ super(true, MoveEffectTrigger.POST_APPLY);
+ this.removedType = removedType;
+ this.messageCallback = messageCallback;
+
+ }
+
+ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+ if (!super.apply(user, target, move, args))
+ return false;
+
+ if(user.isTerastallized && user.getTeraType() == this.removedType) // active tera types cannot be removed
+ return false;
+
+ const userTypes = user.getTypes(true)
+ const modifiedTypes = userTypes.filter(type => type !== this.removedType);
+ user.summonData.types = modifiedTypes;
+ user.updateInfo();
+
+
+ if (this.messageCallback) {
+ this.messageCallback(user);
+ }
+
+ return true;
+ }
+}
+
export class CopyTypeAttr extends MoveEffectAttr {
constructor() {
super(true);
@@ -2659,11 +2960,16 @@ export class CopyTypeAttr extends MoveEffectAttr {
return false;
user.summonData.types = target.getTypes(true);
+ user.updateInfo();
user.scene.queueMessage(getPokemonMessage(user, `'s type\nchanged to match ${target.name}'s!`));
return true;
}
+
+ getCondition(): MoveConditionFunc {
+ return (user, target, move) => target.getTypes()[0] !== Type.UNKNOWN;
+ }
}
export class CopyBiomeTypeAttr extends MoveEffectAttr {
@@ -2678,6 +2984,7 @@ export class CopyBiomeTypeAttr extends MoveEffectAttr {
const biomeType = user.scene.arena.getTypeForBiome();
user.summonData.types = [ biomeType ];
+ user.updateInfo();
user.scene.queueMessage(getPokemonMessage(user, ` transformed\ninto the ${Utils.toReadableString(Type[biomeType])} type!`));
@@ -2685,6 +2992,54 @@ export class CopyBiomeTypeAttr extends MoveEffectAttr {
}
}
+export class ChangeTypeAttr extends MoveEffectAttr {
+ private type: Type;
+
+ constructor(type: Type) {
+ super(false, MoveEffectTrigger.HIT);
+
+ this.type = type;
+ }
+
+ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+ target.summonData.types = [this.type];
+ target.updateInfo();
+
+ user.scene.queueMessage(getPokemonMessage(target, ` transformed\ninto the ${Utils.toReadableString(Type[this.type])} type!`));
+
+ return true;
+ }
+
+ getCondition(): MoveConditionFunc {
+ return (user, target, move) => !target.isTerastallized() && !target.hasAbility(Abilities.MULTITYPE) && !target.hasAbility(Abilities.RKS_SYSTEM) && !(target.getTypes().length === 1 && target.getTypes()[0] === this.type);
+ }
+}
+
+export class AddTypeAttr extends MoveEffectAttr {
+ private type: Type;
+
+ constructor(type: Type) {
+ super(false, MoveEffectTrigger.HIT);
+
+ this.type = type;
+ }
+
+ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean {
+ const types = target.getTypes().slice(0, 2).filter(t => t !== Type.UNKNOWN); // TODO: Figure out some way to actually check if another version of this effect is already applied
+ types.push(this.type);
+ target.summonData.types = types;
+ target.updateInfo();
+
+ user.scene.queueMessage(`${Utils.toReadableString(Type[this.type])} was added to\n` + getPokemonMessage(target, '!'));
+
+ return true;
+ }
+
+ getCondition(): MoveConditionFunc {
+ return (user, target, move) => !target.isTerastallized()&& !target.getTypes().includes(this.type);
+ }
+}
+
export class FirstMoveTypeAttr extends MoveEffectAttr {
constructor() {
super(true);
@@ -2727,7 +3082,7 @@ export class RandomMovesetMoveAttr extends OverrideMoveEffectAttr {
: moveTargets.targets.indexOf(target.getBattlerIndex()) > -1
? [ target.getBattlerIndex() ]
: [ moveTargets.targets[user.randSeedInt(moveTargets.targets.length)] ];
- user.getMoveQueue().push({ move: move.moveId, targets: targets, ignorePP: this.enemyMoveset });
+ user.getMoveQueue().push({ move: move.moveId, targets: targets, ignorePP: true });
user.scene.unshiftPhase(new MovePhase(user.scene, user, targets, moveset[moveIndex], true));
return true;
}
@@ -2762,6 +3117,149 @@ export class RandomMoveAttr extends OverrideMoveEffectAttr {
}
}
+export class NaturePowerAttr extends OverrideMoveEffectAttr {
+ apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): Promise {
+ return new Promise(resolve => {
+ var moveId;
+ switch (user.scene.arena.getTerrainType()) {
+ // this allows terrains to 'override' the biome move
+ case TerrainType.NONE:
+ switch (user.scene.arena.biomeType) {
+ case Biome.TOWN:
+ moveId = Moves.ROUND;
+ break;
+ case Biome.METROPOLIS:
+ moveId = Moves.TRI_ATTACK;
+ break;
+ case Biome.SLUM:
+ moveId = Moves.SLUDGE_BOMB;
+ break;
+ case Biome.PLAINS:
+ moveId = Moves.SILVER_WIND;
+ break;
+ case Biome.GRASS:
+ moveId = Moves.GRASS_KNOT;
+ break;
+ case Biome.TALL_GRASS:
+ moveId = Moves.POLLEN_PUFF;
+ break;
+ case Biome.MEADOW:
+ moveId = Moves.GIGA_DRAIN;
+ break;
+ case Biome.FOREST:
+ moveId = Moves.BUG_BUZZ;
+ break;
+ case Biome.JUNGLE:
+ moveId = Moves.LEAF_STORM;
+ break;
+ case Biome.SEA:
+ moveId = Moves.HYDRO_PUMP;
+ break;
+ case Biome.SWAMP:
+ moveId = Moves.MUD_BOMB;
+ break;
+ case Biome.BEACH:
+ moveId = Moves.SCALD;
+ break;
+ case Biome.LAKE:
+ moveId = Moves.BUBBLE_BEAM;
+ break;
+ case Biome.SEABED:
+ moveId = Moves.BRINE;
+ break;
+ case Biome.ISLAND:
+ moveId = Moves.LEAF_TORNADO;
+ break;
+ case Biome.MOUNTAIN:
+ moveId = Moves.AIR_SLASH;
+ break;
+ case Biome.BADLANDS:
+ moveId = Moves.EARTH_POWER;
+ break;
+ case Biome.DESERT:
+ moveId = Moves.SCORCHING_SANDS;
+ break;
+ case Biome.WASTELAND:
+ moveId = Moves.DRAGON_PULSE;
+ break;
+ case Biome.CONSTRUCTION_SITE:
+ moveId = Moves.STEEL_BEAM;
+ break;
+ case Biome.CAVE:
+ moveId = Moves.POWER_GEM;
+ break;
+ case Biome.ICE_CAVE:
+ moveId = Moves.ICE_BEAM;
+ break;
+ case Biome.SNOWY_FOREST:
+ moveId = Moves.FROST_BREATH;
+ break;
+ case Biome.VOLCANO:
+ moveId = Moves.LAVA_PLUME;
+ break;
+ case Biome.GRAVEYARD:
+ moveId = Moves.SHADOW_BALL;
+ break;
+ case Biome.RUINS:
+ moveId = Moves.ANCIENT_POWER;
+ break;
+ case Biome.TEMPLE:
+ moveId = Moves.EXTRASENSORY;
+ break;
+ case Biome.DOJO:
+ moveId = Moves.FOCUS_BLAST;
+ break;
+ case Biome.FAIRY_CAVE:
+ moveId = Moves.ALLURING_VOICE;
+ break;
+ case Biome.ABYSS:
+ moveId = Moves.OMINOUS_WIND;
+ break;
+ case Biome.SPACE:
+ moveId = Moves.DRACO_METEOR;
+ break;
+ case Biome.FACTORY:
+ moveId = Moves.FLASH_CANNON;
+ break;
+ case Biome.LABORATORY:
+ moveId = Moves.ZAP_CANNON;
+ break;
+ case Biome.POWER_PLANT:
+ moveId = Moves.CHARGE_BEAM;
+ break;
+ case Biome.END:
+ moveId = Moves.ETERNABEAM;
+ break;
+ }
+ break;
+ case TerrainType.MISTY:
+ moveId = Moves.MOONBLAST;
+ break;
+ case TerrainType.ELECTRIC:
+ moveId = Moves.THUNDERBOLT;
+ break;
+ case TerrainType.GRASSY:
+ moveId = Moves.ENERGY_BALL;
+ break;
+ case TerrainType.PSYCHIC:
+ moveId = Moves.PSYCHIC;
+ break;
+ default:
+ // Just in case there's no match
+ moveId = Moves.TRI_ATTACK;
+ break;
+ }
+
+ user.getMoveQueue().push({ move: moveId, targets: [target.getBattlerIndex()], ignorePP: true });
+ user.scene.unshiftPhase(new MovePhase(user.scene, user, [target.getBattlerIndex()], new PokemonMove(moveId, 0, 0, true), true));
+ initMoveAnim(moveId).then(() => {
+ loadMoveAnimAssets(user.scene, [ moveId ], true)
+ .then(() => resolve(true));
+ });
+ });
+ }
+}
+
const lastMoveCopiableCondition: MoveConditionFunc = (user, target, move) => {
const copiableMove = user.scene.currentBattle.lastMove;
@@ -3197,984 +3695,1064 @@ export function getMoveTargets(user: Pokemon, move: Moves): MoveTargetSet {
}
export const allMoves: Move[] = [
- new SelfStatusMove(Moves.NONE, "-", Type.NORMAL, MoveCategory.STATUS, -1, "", -1, 0, 1),
+ new SelfStatusMove(Moves.NONE, Type.NORMAL, MoveCategory.STATUS, -1, -1, 0, 1),
];
export function initMoves() {
allMoves.push(
- new AttackMove(Moves.POUND, "Pound", Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 35, "The target is physically pounded with a long tail, a foreleg, or the like.", -1, 0, 1),
- new AttackMove(Moves.KARATE_CHOP, "Karate Chop", Type.FIGHTING, MoveCategory.PHYSICAL, 50, 100, 25, "The target is attacked with a sharp chop. Critical hits land more easily.", -1, 0, 1)
+ new AttackMove(Moves.POUND, Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 35, -1, 0, 1),
+ new AttackMove(Moves.KARATE_CHOP, Type.FIGHTING, MoveCategory.PHYSICAL, 50, 100, 25, -1, 0, 1)
.attr(HighCritAttr),
- new AttackMove(Moves.DOUBLE_SLAP, "Double Slap", Type.NORMAL, MoveCategory.PHYSICAL, 15, 85, 10, "The target is slapped repeatedly, back and forth, two to five times in a row.", -1, 0, 1)
+ new AttackMove(Moves.DOUBLE_SLAP, Type.NORMAL, MoveCategory.PHYSICAL, 15, 85, 10, -1, 0, 1)
.attr(MultiHitAttr),
- new AttackMove(Moves.COMET_PUNCH, "Comet Punch", Type.NORMAL, MoveCategory.PHYSICAL, 18, 85, 15, "The target is hit with a flurry of punches that strike two to five times in a row.", -1, 0, 1)
+ new AttackMove(Moves.COMET_PUNCH, Type.NORMAL, MoveCategory.PHYSICAL, 18, 85, 15, -1, 0, 1)
.attr(MultiHitAttr)
.punchingMove(),
- new AttackMove(Moves.MEGA_PUNCH, "Mega Punch", Type.NORMAL, MoveCategory.PHYSICAL, 80, 85, 20, "The target is slugged by a punch thrown with muscle-packed power.", -1, 0, 1)
+ new AttackMove(Moves.MEGA_PUNCH, Type.NORMAL, MoveCategory.PHYSICAL, 80, 85, 20, -1, 0, 1)
.punchingMove(),
- new AttackMove(Moves.PAY_DAY, "Pay Day", Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 20, "Numerous coins are hurled at the target to inflict damage. Money is earned after the battle.", -1, 0, 1)
+ new AttackMove(Moves.PAY_DAY, Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 20, -1, 0, 1)
.attr(MoneyAttr)
.makesContact(false),
- new AttackMove(Moves.FIRE_PUNCH, "Fire Punch", Type.FIRE, MoveCategory.PHYSICAL, 75, 100, 15, "The target is punched with a fiery fist. This may also leave the target with a burn.", 10, 0, 1)
+ new AttackMove(Moves.FIRE_PUNCH, Type.FIRE, MoveCategory.PHYSICAL, 75, 100, 15, 10, 0, 1)
.attr(StatusEffectAttr, StatusEffect.BURN)
.punchingMove(),
- new AttackMove(Moves.ICE_PUNCH, "Ice Punch", Type.ICE, MoveCategory.PHYSICAL, 75, 100, 15, "The target is punched with an icy fist. This may also leave the target frozen.", 10, 0, 1)
+ new AttackMove(Moves.ICE_PUNCH, Type.ICE, MoveCategory.PHYSICAL, 75, 100, 15, 10, 0, 1)
.attr(StatusEffectAttr, StatusEffect.FREEZE)
.punchingMove(),
- new AttackMove(Moves.THUNDER_PUNCH, "Thunder Punch", Type.ELECTRIC, MoveCategory.PHYSICAL, 75, 100, 15, "The target is punched with an electrified fist. This may also leave the target with paralysis.", 10, 0, 1)
+ new AttackMove(Moves.THUNDER_PUNCH, Type.ELECTRIC, MoveCategory.PHYSICAL, 75, 100, 15, 10, 0, 1)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.punchingMove(),
- new AttackMove(Moves.SCRATCH, "Scratch", Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 35, "Hard, pointed, sharp claws rake the target to inflict damage.", -1, 0, 1),
- new AttackMove(Moves.VISE_GRIP, "Vise Grip", Type.NORMAL, MoveCategory.PHYSICAL, 55, 100, 30, "The target is gripped and squeezed from both sides to inflict damage.", -1, 0, 1),
- new AttackMove(Moves.GUILLOTINE, "Guillotine", Type.NORMAL, MoveCategory.PHYSICAL, -1, 30, 5, "A vicious, tearing attack with big pincers. The target faints instantly if this attack hits.", -1, 0, 1)
+ new AttackMove(Moves.SCRATCH, Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 35, -1, 0, 1),
+ new AttackMove(Moves.VISE_GRIP, Type.NORMAL, MoveCategory.PHYSICAL, 55, 100, 30, -1, 0, 1),
+ new AttackMove(Moves.GUILLOTINE, Type.NORMAL, MoveCategory.PHYSICAL, 200, 30, 5, -1, 0, 1)
.attr(OneHitKOAttr)
.attr(OneHitKOAccuracyAttr),
- new AttackMove(Moves.RAZOR_WIND, "Razor Wind", Type.NORMAL, MoveCategory.SPECIAL, 80, 100, 10, "In this two-turn attack, blades of wind hit opposing Pokémon on the second turn. Critical hits land more easily.", -1, 0, 1)
+ new AttackMove(Moves.RAZOR_WIND, Type.NORMAL, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 1)
.attr(ChargeAttr, ChargeAnim.RAZOR_WIND_CHARGING, 'whipped\nup a whirlwind!')
.attr(HighCritAttr)
.windMove()
.ignoresVirtual()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new SelfStatusMove(Moves.SWORDS_DANCE, "Swords Dance", Type.NORMAL, -1, 20, "A frenetic dance to uplift the fighting spirit. This sharply raises the user's Attack stat.", -1, 0, 1)
+ new SelfStatusMove(Moves.SWORDS_DANCE, Type.NORMAL, -1, 20, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.ATK, 2, true)
.danceMove(),
- new AttackMove(Moves.CUT, "Cut", Type.NORMAL, MoveCategory.PHYSICAL, 50, 95, 30, "The target is cut with a scythe or claw.", -1, 0, 1)
+ new AttackMove(Moves.CUT, Type.NORMAL, MoveCategory.PHYSICAL, 50, 95, 30, -1, 0, 1)
.slicingMove(),
- new AttackMove(Moves.GUST, "Gust", Type.FLYING, MoveCategory.SPECIAL, 40, 100, 35, "A gust of wind is whipped up by wings and launched at the target to inflict damage.", -1, 0, 1)
+ new AttackMove(Moves.GUST, Type.FLYING, MoveCategory.SPECIAL, 40, 100, 35, -1, 0, 1)
.attr(HitsTagAttr, BattlerTagType.FLYING, true)
.windMove(),
- new AttackMove(Moves.WING_ATTACK, "Wing Attack", Type.FLYING, MoveCategory.PHYSICAL, 60, 100, 35, "The target is struck with large, imposing wings spread wide to inflict damage.", -1, 0, 1),
- new StatusMove(Moves.WHIRLWIND, "Whirlwind", Type.NORMAL, -1, 20, "The target is blown away, and a different Pokémon is dragged out. In the wild, this ends a battle against a single Pokémon.", -1, -6, 1)
+ new AttackMove(Moves.WING_ATTACK, Type.FLYING, MoveCategory.PHYSICAL, 60, 100, 35, -1, 0, 1),
+ new StatusMove(Moves.WHIRLWIND, Type.NORMAL, -1, 20, -1, -6, 1)
.attr(ForceSwitchOutAttr)
+ .attr(HitsTagAttr, BattlerTagType.FLYING, false)
.hidesTarget()
.windMove(),
- new AttackMove(Moves.FLY, "Fly", Type.FLYING, MoveCategory.PHYSICAL, 90, 95, 15, "The user flies up into the sky and then strikes its target on the next turn.", -1, 0, 1)
+ new AttackMove(Moves.FLY, Type.FLYING, MoveCategory.PHYSICAL, 90, 95, 15, -1, 0, 1)
.attr(ChargeAttr, ChargeAnim.FLY_CHARGING, 'flew\nup high!', BattlerTagType.FLYING)
.condition(failOnGravityCondition)
.ignoresVirtual(),
- new AttackMove(Moves.BIND, "Bind", Type.NORMAL, MoveCategory.PHYSICAL, 15, 85, 20, "Things such as long bodies or tentacles are used to bind and squeeze the target for four to five turns.", 100, 0, 1)
+ new AttackMove(Moves.BIND, Type.NORMAL, MoveCategory.PHYSICAL, 15, 85, 20, 100, 0, 1)
.attr(TrapAttr, BattlerTagType.BIND),
- new AttackMove(Moves.SLAM, "Slam", Type.NORMAL, MoveCategory.PHYSICAL, 80, 75, 20, "The target is slammed with a long tail, vines, or the like to inflict damage.", -1, 0, 1),
- new AttackMove(Moves.VINE_WHIP, "Vine Whip", Type.GRASS, MoveCategory.PHYSICAL, 45, 100, 25, "The target is struck with slender, whiplike vines to inflict damage.", -1, 0, 1),
- new AttackMove(Moves.STOMP, "Stomp", Type.NORMAL, MoveCategory.PHYSICAL, 65, 100, 20, "The target is stomped with a big foot. This may also make the target flinch.", 30, 0, 1)
+ new AttackMove(Moves.SLAM, Type.NORMAL, MoveCategory.PHYSICAL, 80, 75, 20, -1, 0, 1),
+ new AttackMove(Moves.VINE_WHIP, Type.GRASS, MoveCategory.PHYSICAL, 45, 100, 25, -1, 0, 1),
+ new AttackMove(Moves.STOMP, Type.NORMAL, MoveCategory.PHYSICAL, 65, 100, 20, 30, 0, 1)
.attr(FlinchAttr),
- new AttackMove(Moves.DOUBLE_KICK, "Double Kick", Type.FIGHTING, MoveCategory.PHYSICAL, 30, 100, 30, "The target is quickly kicked twice in succession using both feet.", -1, 0, 1)
+ new AttackMove(Moves.DOUBLE_KICK, Type.FIGHTING, MoveCategory.PHYSICAL, 30, 100, 30, -1, 0, 1)
.attr(MultiHitAttr, MultiHitType._2),
- new AttackMove(Moves.MEGA_KICK, "Mega Kick", Type.NORMAL, MoveCategory.PHYSICAL, 120, 75, 5, "The target is attacked by a kick launched with muscle-packed power.", -1, 0, 1),
- new AttackMove(Moves.JUMP_KICK, "Jump Kick", Type.FIGHTING, MoveCategory.PHYSICAL, 100, 95, 10, "The user jumps up high, then strikes with a kick. If the kick misses, the user hurts itself.", -1, 0, 1)
+ new AttackMove(Moves.MEGA_KICK, Type.NORMAL, MoveCategory.PHYSICAL, 120, 75, 5, -1, 0, 1),
+ new AttackMove(Moves.JUMP_KICK, Type.FIGHTING, MoveCategory.PHYSICAL, 100, 95, 10, -1, 0, 1)
.attr(MissEffectAttr, crashDamageFunc)
.attr(NoEffectAttr, crashDamageFunc)
.condition(failOnGravityCondition),
- new AttackMove(Moves.ROLLING_KICK, "Rolling Kick", Type.FIGHTING, MoveCategory.PHYSICAL, 60, 85, 15, "The user lashes out with a quick, spinning kick. This may also make the target flinch.", 30, 0, 1)
+ new AttackMove(Moves.ROLLING_KICK, Type.FIGHTING, MoveCategory.PHYSICAL, 60, 85, 15, 30, 0, 1)
.attr(FlinchAttr),
- new StatusMove(Moves.SAND_ATTACK, "Sand Attack", Type.GROUND, 100, 15, "Sand is hurled in the target's face, reducing the target's accuracy.", -1, 0, 1)
+ new StatusMove(Moves.SAND_ATTACK, Type.GROUND, 100, 15, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.ACC, -1),
- new AttackMove(Moves.HEADBUTT, "Headbutt", Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 15, "The user sticks out its head and attacks by charging straight into the target. This may also make the target flinch.", 30, 0, 1)
+ new AttackMove(Moves.HEADBUTT, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 15, 30, 0, 1)
.attr(FlinchAttr),
- new AttackMove(Moves.HORN_ATTACK, "Horn Attack", Type.NORMAL, MoveCategory.PHYSICAL, 65, 100, 25, "The target is jabbed with a sharply pointed horn to inflict damage.", -1, 0, 1),
- new AttackMove(Moves.FURY_ATTACK, "Fury Attack", Type.NORMAL, MoveCategory.PHYSICAL, 15, 85, 20, "The target is jabbed repeatedly with a horn or beak two to five times in a row.", -1, 0, 1)
+ new AttackMove(Moves.HORN_ATTACK, Type.NORMAL, MoveCategory.PHYSICAL, 65, 100, 25, -1, 0, 1),
+ new AttackMove(Moves.FURY_ATTACK, Type.NORMAL, MoveCategory.PHYSICAL, 15, 85, 20, -1, 0, 1)
.attr(MultiHitAttr),
- new AttackMove(Moves.HORN_DRILL, "Horn Drill", Type.NORMAL, MoveCategory.PHYSICAL, -1, 30, 5, "The user stabs the target with a horn that rotates like a drill. The target faints instantly if this attack hits.", -1, 0, 1)
+ new AttackMove(Moves.HORN_DRILL, Type.NORMAL, MoveCategory.PHYSICAL, 200, 30, 5, -1, 0, 1)
.attr(OneHitKOAttr)
.attr(OneHitKOAccuracyAttr),
- new AttackMove(Moves.TACKLE, "Tackle", Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 35, "A physical attack in which the user charges and slams into the target with its whole body.", -1, 0, 1),
- new AttackMove(Moves.BODY_SLAM, "Body Slam", Type.NORMAL, MoveCategory.PHYSICAL, 85, 100, 15, "The user drops onto the target with its full body weight. This may also leave the target with paralysis.", 30, 0, 1)
+ new AttackMove(Moves.TACKLE, Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 35, -1, 0, 1),
+ new AttackMove(Moves.BODY_SLAM, Type.NORMAL, MoveCategory.PHYSICAL, 85, 100, 15, 30, 0, 1)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new AttackMove(Moves.WRAP, "Wrap", Type.NORMAL, MoveCategory.PHYSICAL, 15, 90, 20, "A long body, vines, or the like are used to wrap and squeeze the target for four to five turns.", 100, 0, 1)
+ new AttackMove(Moves.WRAP, Type.NORMAL, MoveCategory.PHYSICAL, 15, 90, 20, 100, 0, 1)
.attr(TrapAttr, BattlerTagType.WRAP),
- new AttackMove(Moves.TAKE_DOWN, "Take Down", Type.NORMAL, MoveCategory.PHYSICAL, 90, 85, 20, "A reckless, full-body charge attack for slamming into the target. This also damages the user a little.", -1, 0, 1)
+ new AttackMove(Moves.TAKE_DOWN, Type.NORMAL, MoveCategory.PHYSICAL, 90, 85, 20, -1, 0, 1)
.attr(RecoilAttr),
- new AttackMove(Moves.THRASH, "Thrash", Type.NORMAL, MoveCategory.PHYSICAL, 120, 100, 10, "The user rampages and attacks for two to three turns. The user then becomes confused.", -1, 0, 1)
+ new AttackMove(Moves.THRASH, Type.NORMAL, MoveCategory.PHYSICAL, 120, 100, 10, -1, 0, 1)
.attr(FrenzyAttr)
.attr(MissEffectAttr, frenzyMissFunc)
.target(MoveTarget.RANDOM_NEAR_ENEMY),
- new AttackMove(Moves.DOUBLE_EDGE, "Double-Edge", Type.NORMAL, MoveCategory.PHYSICAL, 120, 100, 15, "A reckless, life-risking tackle in which the user rushes the target. This also damages the user quite a lot.", -1, 0, 1)
+ new AttackMove(Moves.DOUBLE_EDGE, Type.NORMAL, MoveCategory.PHYSICAL, 120, 100, 15, -1, 0, 1)
.attr(RecoilAttr, false, 0.33),
- new StatusMove(Moves.TAIL_WHIP, "Tail Whip", Type.NORMAL, 100, 30, "The user wags its tail cutely, making opposing Pokémon less wary and lowering their Defense stats.", -1, 0, 1)
+ new StatusMove(Moves.TAIL_WHIP, Type.NORMAL, 100, 30, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.DEF, -1)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.POISON_STING, "Poison Sting", Type.POISON, MoveCategory.PHYSICAL, 15, 100, 35, "The user stabs the target with a poisonous stinger. This may also poison the target.", 30, 0, 1)
+ new AttackMove(Moves.POISON_STING, Type.POISON, MoveCategory.PHYSICAL, 15, 100, 35, 30, 0, 1)
.attr(StatusEffectAttr, StatusEffect.POISON)
.makesContact(false),
- new AttackMove(Moves.TWINEEDLE, "Twineedle", Type.BUG, MoveCategory.PHYSICAL, 25, 100, 20, "The user damages the target twice in succession by jabbing it with two spikes. This may also poison the target.", 20, 0, 1)
+ new AttackMove(Moves.TWINEEDLE, Type.BUG, MoveCategory.PHYSICAL, 25, 100, 20, 20, 0, 1)
.attr(MultiHitAttr, MultiHitType._2)
.attr(StatusEffectAttr, StatusEffect.POISON)
.makesContact(false),
- new AttackMove(Moves.PIN_MISSILE, "Pin Missile", Type.BUG, MoveCategory.PHYSICAL, 25, 95, 20, "Sharp spikes are shot at the target in rapid succession. They hit two to five times in a row.", -1, 0, 1)
+ new AttackMove(Moves.PIN_MISSILE, Type.BUG, MoveCategory.PHYSICAL, 25, 95, 20, -1, 0, 1)
.attr(MultiHitAttr)
.makesContact(false),
- new StatusMove(Moves.LEER, "Leer", Type.NORMAL, 100, 30, "The user gives opposing Pokémon an intimidating leer that lowers the Defense stat.", 100, 0, 1)
+ new StatusMove(Moves.LEER, Type.NORMAL, 100, 30, 100, 0, 1)
.attr(StatChangeAttr, BattleStat.DEF, -1)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.BITE, "Bite", Type.DARK, MoveCategory.PHYSICAL, 60, 100, 25, "The target is bitten with viciously sharp fangs. This may also make the target flinch.", 30, 0, 1)
+ new AttackMove(Moves.BITE, Type.DARK, MoveCategory.PHYSICAL, 60, 100, 25, 30, 0, 1)
.attr(FlinchAttr)
.bitingMove(),
- new StatusMove(Moves.GROWL, "Growl", Type.NORMAL, 100, 40, "The user growls in an endearing way, making opposing Pokémon less wary. This lowers their Attack stats.", -1, 0, 1)
+ new StatusMove(Moves.GROWL, Type.NORMAL, 100, 40, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.ATK, -1)
.soundBased()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new StatusMove(Moves.ROAR, "Roar", Type.NORMAL, -1, 20, "The target is scared off, and a different Pokémon is dragged out. In the wild, this ends a battle against a single Pokémon.", -1, -6, 1)
+ new StatusMove(Moves.ROAR, Type.NORMAL, -1, 20, -1, -6, 1)
.attr(ForceSwitchOutAttr)
.soundBased()
.hidesTarget(),
- new StatusMove(Moves.SING, "Sing", Type.NORMAL, 55, 15, "A soothing lullaby is sung in a calming voice that puts the target into a deep slumber.", -1, 0, 1)
+ new StatusMove(Moves.SING, Type.NORMAL, 55, 15, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.SLEEP)
.soundBased(),
- new StatusMove(Moves.SUPERSONIC, "Supersonic", Type.NORMAL, 55, 20, "The user generates odd sound waves from its body that confuse the target.", -1, 0, 1)
+ new StatusMove(Moves.SUPERSONIC, Type.NORMAL, 55, 20, -1, 0, 1)
.attr(ConfuseAttr)
.soundBased(),
- new AttackMove(Moves.SONIC_BOOM, "Sonic Boom", Type.NORMAL, MoveCategory.SPECIAL, -1, 90, 20, "The target is hit with a destructive shock wave that always inflicts 20 HP damage.", -1, 0, 1)
+ new AttackMove(Moves.SONIC_BOOM, Type.NORMAL, MoveCategory.SPECIAL, -1, 90, 20, -1, 0, 1)
.attr(FixedDamageAttr, 20),
- new StatusMove(Moves.DISABLE, "Disable", Type.NORMAL, 100, 20, "For four turns, this move prevents the target from using the move it last used.", -1, 0, 1)
+ new StatusMove(Moves.DISABLE, Type.NORMAL, 100, 20, -1, 0, 1)
.attr(DisableMoveAttr),
- new AttackMove(Moves.ACID, "Acid", Type.POISON, MoveCategory.SPECIAL, 40, 100, 30, "Opposing Pokémon are attacked with a spray of harsh acid. This may also lower their Sp. Def stats.", 10, 0, 1)
+ new AttackMove(Moves.ACID, Type.POISON, MoveCategory.SPECIAL, 40, 100, 30, 10, 0, 1)
.attr(StatChangeAttr, BattleStat.SPDEF, -1)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.EMBER, "Ember", Type.FIRE, MoveCategory.SPECIAL, 40, 100, 25, "The target is attacked with small flames. This may also leave the target with a burn.", 10, 0, 1)
+ new AttackMove(Moves.EMBER, Type.FIRE, MoveCategory.SPECIAL, 40, 100, 25, 10, 0, 1)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new AttackMove(Moves.FLAMETHROWER, "Flamethrower", Type.FIRE, MoveCategory.SPECIAL, 90, 100, 15, "The target is scorched with an intense blast of fire. This may also leave the target with a burn.", 10, 0, 1)
+ new AttackMove(Moves.FLAMETHROWER, Type.FIRE, MoveCategory.SPECIAL, 90, 100, 15, 10, 0, 1)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new StatusMove(Moves.MIST, "Mist", Type.ICE, -1, 30, "The user cloaks itself and its allies in a white mist that prevents any of their stats from being lowered for five turns.", -1, 0, 1)
+ new StatusMove(Moves.MIST, Type.ICE, -1, 30, -1, 0, 1)
.attr(AddArenaTagAttr, ArenaTagType.MIST, 5, true)
.target(MoveTarget.USER_SIDE),
- new AttackMove(Moves.WATER_GUN, "Water Gun", Type.WATER, MoveCategory.SPECIAL, 40, 100, 25, "The target is blasted with a forceful shot of water.", -1, 0, 1),
- new AttackMove(Moves.HYDRO_PUMP, "Hydro Pump", Type.WATER, MoveCategory.SPECIAL, 110, 80, 5, "The target is blasted by a huge volume of water launched under great pressure.", -1, 0, 1),
- new AttackMove(Moves.SURF, "Surf", Type.WATER, MoveCategory.SPECIAL, 90, 100, 15, "The user attacks everything around it by swamping its surroundings with a giant wave.", -1, 0, 1)
- .target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.ICE_BEAM, "Ice Beam", Type.ICE, MoveCategory.SPECIAL, 90, 100, 10, "The target is struck with an icy-cold beam of energy. This may also leave the target frozen.", 10, 0, 1)
+ new AttackMove(Moves.WATER_GUN, Type.WATER, MoveCategory.SPECIAL, 40, 100, 25, -1, 0, 1),
+ new AttackMove(Moves.HYDRO_PUMP, Type.WATER, MoveCategory.SPECIAL, 110, 80, 5, -1, 0, 1),
+ new AttackMove(Moves.SURF, Type.WATER, MoveCategory.SPECIAL, 90, 100, 15, -1, 0, 1)
+ .target(MoveTarget.ALL_NEAR_OTHERS)
+ .attr(HitsTagAttr, BattlerTagType.UNDERWATER, true),
+ new AttackMove(Moves.ICE_BEAM, Type.ICE, MoveCategory.SPECIAL, 90, 100, 10, 10, 0, 1)
.attr(StatusEffectAttr, StatusEffect.FREEZE),
- new AttackMove(Moves.BLIZZARD, "Blizzard", Type.ICE, MoveCategory.SPECIAL, 110, 70, 5, "A howling blizzard is summoned to strike opposing Pokémon. This may also leave the opposing Pokémon frozen.", 10, 0, 1)
+ new AttackMove(Moves.BLIZZARD, Type.ICE, MoveCategory.SPECIAL, 110, 70, 5, 10, 0, 1)
.attr(BlizzardAccuracyAttr)
.attr(StatusEffectAttr, StatusEffect.FREEZE) // TODO: 30% chance to hit protect/detect in hail
.windMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.PSYBEAM, "Psybeam", Type.PSYCHIC, MoveCategory.SPECIAL, 65, 100, 20, "The target is attacked with a peculiar ray. This may also leave the target confused.", 10, 0, 1)
+ new AttackMove(Moves.PSYBEAM, Type.PSYCHIC, MoveCategory.SPECIAL, 65, 100, 20, 10, 0, 1)
.attr(ConfuseAttr),
- new AttackMove(Moves.BUBBLE_BEAM, "Bubble Beam", Type.WATER, MoveCategory.SPECIAL, 65, 100, 20, "A spray of bubbles is forcefully ejected at the target. This may also lower the target's Speed stat.", 10, 0, 1)
+ new AttackMove(Moves.BUBBLE_BEAM, Type.WATER, MoveCategory.SPECIAL, 65, 100, 20, 10, 0, 1)
.attr(StatChangeAttr, BattleStat.SPD, -1),
- new AttackMove(Moves.AURORA_BEAM, "Aurora Beam", Type.ICE, MoveCategory.SPECIAL, 65, 100, 20, "The target is hit with a rainbow-colored beam. This may also lower the target's Attack stat.", 10, 0, 1)
+ new AttackMove(Moves.AURORA_BEAM, Type.ICE, MoveCategory.SPECIAL, 65, 100, 20, 10, 0, 1)
.attr(StatChangeAttr, BattleStat.ATK, -1),
- new AttackMove(Moves.HYPER_BEAM, "Hyper Beam", Type.NORMAL, MoveCategory.SPECIAL, 150, 90, 5, "The target is attacked with a powerful beam. The user can't move on the next turn.", -1, 0, 1)
+ new AttackMove(Moves.HYPER_BEAM, Type.NORMAL, MoveCategory.SPECIAL, 150, 90, 5, -1, 0, 1)
.attr(RechargeAttr),
- new AttackMove(Moves.PECK, "Peck", Type.FLYING, MoveCategory.PHYSICAL, 35, 100, 35, "The target is jabbed with a sharply pointed beak or horn.", -1, 0, 1),
- new AttackMove(Moves.DRILL_PECK, "Drill Peck", Type.FLYING, MoveCategory.PHYSICAL, 80, 100, 20, "A corkscrewing attack that strikes the target with a sharp beak acting as a drill.", -1, 0, 1),
- new AttackMove(Moves.SUBMISSION, "Submission", Type.FIGHTING, MoveCategory.PHYSICAL, 80, 80, 20, "The user grabs the target and recklessly dives for the ground. This also damages the user a little.", -1, 0, 1)
+ new AttackMove(Moves.PECK, Type.FLYING, MoveCategory.PHYSICAL, 35, 100, 35, -1, 0, 1),
+ new AttackMove(Moves.DRILL_PECK, Type.FLYING, MoveCategory.PHYSICAL, 80, 100, 20, -1, 0, 1),
+ new AttackMove(Moves.SUBMISSION, Type.FIGHTING, MoveCategory.PHYSICAL, 80, 80, 20, -1, 0, 1)
.attr(RecoilAttr),
- new AttackMove(Moves.LOW_KICK, "Low Kick", Type.FIGHTING, MoveCategory.PHYSICAL, -1, 100, 20, "A powerful low kick that makes the target fall over. The heavier the target, the greater the move's power.", -1, 0, 1)
+ new AttackMove(Moves.LOW_KICK, Type.FIGHTING, MoveCategory.PHYSICAL, -1, 100, 20, -1, 0, 1)
.attr(WeightPowerAttr),
- new AttackMove(Moves.COUNTER, "Counter", Type.FIGHTING, MoveCategory.PHYSICAL, -1, 100, 20, "A retaliation move that counters any physical attack, inflicting double the damage taken.", -1, -5, 1)
+ new AttackMove(Moves.COUNTER, Type.FIGHTING, MoveCategory.PHYSICAL, -1, 100, 20, -1, -5, 1)
.attr(CounterDamageAttr, (move: Move) => move.category === MoveCategory.PHYSICAL, 2)
.target(MoveTarget.ATTACKER),
- new AttackMove(Moves.SEISMIC_TOSS, "Seismic Toss", Type.FIGHTING, MoveCategory.PHYSICAL, -1, 100, 20, "The target is thrown using the power of gravity. It inflicts damage equal to the user's level.", -1, 0, 1)
+ new AttackMove(Moves.SEISMIC_TOSS, Type.FIGHTING, MoveCategory.PHYSICAL, -1, 100, 20, -1, 0, 1)
.attr(LevelDamageAttr),
- new AttackMove(Moves.STRENGTH, "Strength", Type.NORMAL, MoveCategory.PHYSICAL, 80, 100, 15, "The target is slugged with a punch thrown at maximum power.", -1, 0, 1),
- new AttackMove(Moves.ABSORB, "Absorb", Type.GRASS, MoveCategory.SPECIAL, 20, 100, 25, "A nutrient-draining attack. The user's HP is restored by half the damage taken by the target.", -1, 0, 1)
+ new AttackMove(Moves.STRENGTH, Type.NORMAL, MoveCategory.PHYSICAL, 80, 100, 15, -1, 0, 1),
+ new AttackMove(Moves.ABSORB, Type.GRASS, MoveCategory.SPECIAL, 20, 100, 25, -1, 0, 1)
.attr(HitHealAttr)
.triageMove(),
- new AttackMove(Moves.MEGA_DRAIN, "Mega Drain", Type.GRASS, MoveCategory.SPECIAL, 40, 100, 15, "A nutrient-draining attack. The user's HP is restored by half the damage taken by the target.", -1, 0, 1)
+ new AttackMove(Moves.MEGA_DRAIN, Type.GRASS, MoveCategory.SPECIAL, 40, 100, 15, -1, 0, 1)
.attr(HitHealAttr)
.triageMove(),
- new StatusMove(Moves.LEECH_SEED, "Leech Seed", Type.GRASS, 90, 10, "A seed is planted on the target. It steals some HP from the target every turn.", -1, 0, 1)
+ new StatusMove(Moves.LEECH_SEED, Type.GRASS, 90, 10, -1, 0, 1)
.attr(AddBattlerTagAttr, BattlerTagType.SEEDED)
.condition((user, target, move) => !target.getTag(BattlerTagType.SEEDED) && !target.isOfType(Type.GRASS)),
- new SelfStatusMove(Moves.GROWTH, "Growth", Type.NORMAL, -1, 20, "The user's body grows all at once, raising the Attack and Sp. Atk stats.", -1, 0, 1)
+ new SelfStatusMove(Moves.GROWTH, Type.NORMAL, -1, 20, -1, 0, 1)
.attr(GrowthStatChangeAttr),
- new AttackMove(Moves.RAZOR_LEAF, "Razor Leaf", Type.GRASS, MoveCategory.PHYSICAL, 55, 95, 25, "Sharp-edged leaves are launched to slash at opposing Pokémon. Critical hits land more easily.", -1, 0, 1)
+ new AttackMove(Moves.RAZOR_LEAF, Type.GRASS, MoveCategory.PHYSICAL, 55, 95, 25, -1, 0, 1)
.attr(HighCritAttr)
.makesContact(false)
.slicingMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.SOLAR_BEAM, "Solar Beam", Type.GRASS, MoveCategory.SPECIAL, 120, 100, 10, "In this two-turn attack, the user gathers light, then blasts a bundled beam on the next turn.", -1, 0, 1)
+ new AttackMove(Moves.SOLAR_BEAM, Type.GRASS, MoveCategory.SPECIAL, 120, 100, 10, -1, 0, 1)
.attr(SunlightChargeAttr, ChargeAnim.SOLAR_BEAM_CHARGING, 'took\nin sunlight!')
.attr(AntiSunlightPowerDecreaseAttr)
.ignoresVirtual(),
- new StatusMove(Moves.POISON_POWDER, "Poison Powder", Type.POISON, 75, 35, "The user scatters a cloud of poisonous dust that poisons the target.", -1, 0, 1)
+ new StatusMove(Moves.POISON_POWDER, Type.POISON, 75, 35, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.POISON)
.powderMove(),
- new StatusMove(Moves.STUN_SPORE, "Stun Spore", Type.GRASS, 75, 30, "The user scatters a cloud of numbing powder that paralyzes the target.", -1, 0, 1)
+ new StatusMove(Moves.STUN_SPORE, Type.GRASS, 75, 30, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.powderMove(),
- new StatusMove(Moves.SLEEP_POWDER, "Sleep Powder", Type.GRASS, 75, 15, "The user scatters a big cloud of sleep-inducing dust around the target.", -1, 0, 1)
+ new StatusMove(Moves.SLEEP_POWDER, Type.GRASS, 75, 15, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.SLEEP)
.powderMove(),
- new AttackMove(Moves.PETAL_DANCE, "Petal Dance", Type.GRASS, MoveCategory.SPECIAL, 120, 100, 10, "The user attacks the target by scattering petals for two to three turns. The user then becomes confused.", -1, 0, 1)
+ new AttackMove(Moves.PETAL_DANCE, Type.GRASS, MoveCategory.SPECIAL, 120, 100, 10, -1, 0, 1)
.attr(FrenzyAttr)
.attr(MissEffectAttr, frenzyMissFunc)
.makesContact()
.danceMove()
.target(MoveTarget.RANDOM_NEAR_ENEMY),
- new StatusMove(Moves.STRING_SHOT, "String Shot", Type.BUG, 95, 40, "Opposing Pokémon are bound with silk blown from the user's mouth that harshly lowers the Speed stat.", -1, 0, 1)
+ new StatusMove(Moves.STRING_SHOT, Type.BUG, 95, 40, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.SPD, -2)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.DRAGON_RAGE, "Dragon Rage", Type.DRAGON, MoveCategory.SPECIAL, -1, 100, 10, "This attack hits the target with a shock wave of pure rage. This attack always inflicts 40 HP damage.", -1, 0, 1)
+ new AttackMove(Moves.DRAGON_RAGE, Type.DRAGON, MoveCategory.SPECIAL, -1, 100, 10, -1, 0, 1)
.attr(FixedDamageAttr, 40),
- new AttackMove(Moves.FIRE_SPIN, "Fire Spin", Type.FIRE, MoveCategory.SPECIAL, 35, 85, 15, "The target becomes trapped within a fierce vortex of fire that rages for four to five turns.", 100, 0, 1)
+ new AttackMove(Moves.FIRE_SPIN, Type.FIRE, MoveCategory.SPECIAL, 35, 85, 15, 100, 0, 1)
.attr(TrapAttr, BattlerTagType.FIRE_SPIN),
- new AttackMove(Moves.THUNDER_SHOCK, "Thunder Shock", Type.ELECTRIC, MoveCategory.SPECIAL, 40, 100, 30, "A jolt of electricity crashes down on the target to inflict damage. This may also leave the target with paralysis.", 10, 0, 1)
+ new AttackMove(Moves.THUNDER_SHOCK, Type.ELECTRIC, MoveCategory.SPECIAL, 40, 100, 30, 10, 0, 1)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new AttackMove(Moves.THUNDERBOLT, "Thunderbolt", Type.ELECTRIC, MoveCategory.SPECIAL, 90, 100, 15, "A strong electric blast crashes down on the target. This may also leave the target with paralysis.", 10, 0, 1)
+ new AttackMove(Moves.THUNDERBOLT, Type.ELECTRIC, MoveCategory.SPECIAL, 90, 100, 15, 10, 0, 1)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new StatusMove(Moves.THUNDER_WAVE, "Thunder Wave", Type.ELECTRIC, 90, 20, "The user launches a weak jolt of electricity that paralyzes the target.", -1, 0, 1)
+ new StatusMove(Moves.THUNDER_WAVE, Type.ELECTRIC, 90, 20, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.attr(StatusMoveTypeImmunityAttr, Type.GROUND),
- new AttackMove(Moves.THUNDER, "Thunder", Type.ELECTRIC, MoveCategory.SPECIAL, 110, 70, 10, "A wicked thunderbolt is dropped on the target to inflict damage. This may also leave the target with paralysis.", 30, 0, 1)
+ new AttackMove(Moves.THUNDER, Type.ELECTRIC, MoveCategory.SPECIAL, 110, 70, 10, 30, 0, 1)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
- .attr(ThunderAccuracyAttr),
- new AttackMove(Moves.ROCK_THROW, "Rock Throw", Type.ROCK, MoveCategory.PHYSICAL, 50, 90, 15, "The user picks up and throws a small rock at the target to attack.", -1, 0, 1)
+ .attr(ThunderAccuracyAttr)
+ .attr(HitsTagAttr, BattlerTagType.FLYING, false),
+ new AttackMove(Moves.ROCK_THROW, Type.ROCK, MoveCategory.PHYSICAL, 50, 90, 15, -1, 0, 1)
.makesContact(false),
- new AttackMove(Moves.EARTHQUAKE, "Earthquake", Type.GROUND, MoveCategory.PHYSICAL, 100, 100, 10, "The user sets off an earthquake that strikes every Pokémon around it.", -1, 0, 1)
+ new AttackMove(Moves.EARTHQUAKE, Type.GROUND, MoveCategory.PHYSICAL, 100, 100, 10, -1, 0, 1)
.attr(HitsTagAttr, BattlerTagType.UNDERGROUND, true)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.FISSURE, "Fissure", Type.GROUND, MoveCategory.PHYSICAL, -1, 30, 5, "The user opens up a fissure in the ground and drops the target in. The target faints instantly if this attack hits.", -1, 0, 1)
+ new AttackMove(Moves.FISSURE, Type.GROUND, MoveCategory.PHYSICAL, 200, 30, 5, -1, 0, 1)
.attr(OneHitKOAttr)
.attr(OneHitKOAccuracyAttr)
+ .attr(HitsTagAttr, BattlerTagType.UNDERGROUND, false)
.makesContact(false),
- new AttackMove(Moves.DIG, "Dig", Type.GROUND, MoveCategory.PHYSICAL, 80, 100, 10, "The user burrows into the ground, then attacks on the next turn.", -1, 0, 1)
+ new AttackMove(Moves.DIG, Type.GROUND, MoveCategory.PHYSICAL, 80, 100, 10, -1, 0, 1)
.attr(ChargeAttr, ChargeAnim.DIG_CHARGING, 'dug a hole!', BattlerTagType.UNDERGROUND)
.ignoresVirtual(),
- new StatusMove(Moves.TOXIC, "Toxic", Type.POISON, 90, 10, "A move that leaves the target badly poisoned. Its poison damage worsens every turn.", -1, 0, 1)
+ new StatusMove(Moves.TOXIC, Type.POISON, 90, 10, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.TOXIC)
.attr(ToxicAccuracyAttr),
- new AttackMove(Moves.CONFUSION, "Confusion", Type.PSYCHIC, MoveCategory.SPECIAL, 50, 100, 25, "The target is hit by a weak telekinetic force. This may also confuse the target.", 10, 0, 1)
+ new AttackMove(Moves.CONFUSION, Type.PSYCHIC, MoveCategory.SPECIAL, 50, 100, 25, 10, 0, 1)
.attr(ConfuseAttr),
- new AttackMove(Moves.PSYCHIC, "Psychic", Type.PSYCHIC, MoveCategory.SPECIAL, 90, 100, 10, "The target is hit by a strong telekinetic force. This may also lower the target's Sp. Def stat.", 10, 0, 1)
+ new AttackMove(Moves.PSYCHIC, Type.PSYCHIC, MoveCategory.SPECIAL, 90, 100, 10, 10, 0, 1)
.attr(StatChangeAttr, BattleStat.SPDEF, -1),
- new StatusMove(Moves.HYPNOSIS, "Hypnosis", Type.PSYCHIC, 60, 20, "The user employs hypnotic suggestion to make the target fall into a deep sleep.", -1, 0, 1)
+ new StatusMove(Moves.HYPNOSIS, Type.PSYCHIC, 60, 20, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.SLEEP),
- new SelfStatusMove(Moves.MEDITATE, "Meditate", Type.PSYCHIC, -1, 40, "The user meditates to awaken the power deep within its body and raise its Attack stat.", -1, 0, 1)
+ new SelfStatusMove(Moves.MEDITATE, Type.PSYCHIC, -1, 40, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.ATK, 1, true),
- new SelfStatusMove(Moves.AGILITY, "Agility", Type.PSYCHIC, -1, 30, "The user relaxes and lightens its body to move faster. This sharply raises the Speed stat.", -1, 0, 1)
+ new SelfStatusMove(Moves.AGILITY, Type.PSYCHIC, -1, 30, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.SPD, 2, true),
- new AttackMove(Moves.QUICK_ATTACK, "Quick Attack", Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 30, "The user lunges at the target at a speed that makes it almost invisible. This move always goes first.", -1, 1, 1),
- new AttackMove(Moves.RAGE, "Rage (P)", Type.NORMAL, MoveCategory.PHYSICAL, 20, 100, 20, "As long as this move is in use, the power of rage raises the Attack stat each time the user is hit in battle.", -1, 0, 1),
- new SelfStatusMove(Moves.TELEPORT, "Teleport", Type.PSYCHIC, -1, 20, "The user switches places with a party Pokémon in waiting, if any. If a wild Pokémon uses this move, it flees.", -1, -6, 1)
+ new AttackMove(Moves.QUICK_ATTACK, Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 30, -1, 1, 1),
+ new AttackMove(Moves.RAGE, Type.NORMAL, MoveCategory.PHYSICAL, 20, 100, 20, -1, 0, 1)
+ .partial(),
+ new SelfStatusMove(Moves.TELEPORT, Type.PSYCHIC, -1, 20, -1, -6, 1)
.attr(ForceSwitchOutAttr, true)
.hidesUser(),
- new AttackMove(Moves.NIGHT_SHADE, "Night Shade", Type.GHOST, MoveCategory.SPECIAL, -1, 100, 15, "The user makes the target see a frightening mirage. It inflicts damage equal to the user's level.", -1, 0, 1)
+ new AttackMove(Moves.NIGHT_SHADE, Type.GHOST, MoveCategory.SPECIAL, -1, 100, 15, -1, 0, 1)
.attr(LevelDamageAttr),
- new StatusMove(Moves.MIMIC, "Mimic", Type.NORMAL, -1, 10, "The user copies the target's last move. The move can be used during battle until the Pokémon is switched out.", -1, 0, 1)
+ new StatusMove(Moves.MIMIC, Type.NORMAL, -1, 10, -1, 0, 1)
.attr(MovesetCopyMoveAttr)
.ignoresVirtual(),
- new StatusMove(Moves.SCREECH, "Screech", Type.NORMAL, 85, 40, "An earsplitting screech harshly lowers the target's Defense stat.", -1, 0, 1)
+ new StatusMove(Moves.SCREECH, Type.NORMAL, 85, 40, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.DEF, -2)
.soundBased(),
- new SelfStatusMove(Moves.DOUBLE_TEAM, "Double Team", Type.NORMAL, -1, 15, "By moving rapidly, the user makes illusory copies of itself to raise its evasiveness.", -1, 0, 1)
+ new SelfStatusMove(Moves.DOUBLE_TEAM, Type.NORMAL, -1, 15, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.EVA, 1, true),
- new SelfStatusMove(Moves.RECOVER, "Recover", Type.NORMAL, -1, 5, "Restoring its own cells, the user restores its own HP by half of its max HP.", -1, 0, 1)
+ new SelfStatusMove(Moves.RECOVER, Type.NORMAL, -1, 5, -1, 0, 1)
.attr(HealAttr, 0.5)
.triageMove(),
- new SelfStatusMove(Moves.HARDEN, "Harden", Type.NORMAL, -1, 30, "The user stiffens all the muscles in its body to raise its Defense stat.", -1, 0, 1)
+ new SelfStatusMove(Moves.HARDEN, Type.NORMAL, -1, 30, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.DEF, 1, true),
- new SelfStatusMove(Moves.MINIMIZE, "Minimize", Type.NORMAL, -1, 10, "The user compresses its body to make itself look smaller, which sharply raises its evasiveness.", -1, 0, 1)
+ new SelfStatusMove(Moves.MINIMIZE, Type.NORMAL, -1, 10, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.EVA, 2, true),
- new StatusMove(Moves.SMOKESCREEN, "Smokescreen", Type.NORMAL, 100, 20, "The user releases an obscuring cloud of smoke or ink. This lowers the target's accuracy.", -1, 0, 1)
+ new StatusMove(Moves.SMOKESCREEN, Type.NORMAL, 100, 20, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.ACC, -1),
- new StatusMove(Moves.CONFUSE_RAY, "Confuse Ray", Type.GHOST, 100, 10, "The target is exposed to a sinister ray that triggers confusion.", -1, 0, 1)
+ new StatusMove(Moves.CONFUSE_RAY, Type.GHOST, 100, 10, -1, 0, 1)
.attr(ConfuseAttr),
- new SelfStatusMove(Moves.WITHDRAW, "Withdraw", Type.WATER, -1, 40, "The user withdraws its body into its hard shell, raising its Defense stat.", -1, 0, 1)
+ new SelfStatusMove(Moves.WITHDRAW, Type.WATER, -1, 40, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.DEF, 1, true),
- new SelfStatusMove(Moves.DEFENSE_CURL, "Defense Curl", Type.NORMAL, -1, 40, "The user curls up to conceal weak spots and raise its Defense stat.", -1, 0, 1)
+ new SelfStatusMove(Moves.DEFENSE_CURL, Type.NORMAL, -1, 40, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.DEF, 1, true),
- new SelfStatusMove(Moves.BARRIER, "Barrier", Type.PSYCHIC, -1, 20, "The user throws up a sturdy wall that sharply raises its Defense stat.", -1, 0, 1)
+ new SelfStatusMove(Moves.BARRIER, Type.PSYCHIC, -1, 20, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.DEF, 2, true),
- new StatusMove(Moves.LIGHT_SCREEN, "Light Screen", Type.PSYCHIC, -1, 30, "A wondrous wall of light is put up to reduce damage from special attacks for five turns.", -1, 0, 1)
+ new StatusMove(Moves.LIGHT_SCREEN, Type.PSYCHIC, -1, 30, -1, 0, 1)
.attr(AddArenaTagAttr, ArenaTagType.LIGHT_SCREEN, 5, true)
.target(MoveTarget.USER_SIDE),
- new StatusMove(Moves.HAZE, "Haze (N)", Type.ICE, -1, 30, "The user creates a haze that eliminates every stat change among all the Pokémon engaged in battle.", -1, 0, 1)
- .target(MoveTarget.BOTH_SIDES),
- new StatusMove(Moves.REFLECT, "Reflect", Type.PSYCHIC, -1, 20, "A wondrous wall of light is put up to reduce damage from physical attacks for five turns.", -1, 0, 1)
+ new StatusMove(Moves.HAZE, Type.ICE, -1, 30, -1, 0, 1)
+ .target(MoveTarget.BOTH_SIDES)
+ .attr(ResetStatsAttr),
+ new StatusMove(Moves.REFLECT, Type.PSYCHIC, -1, 20, -1, 0, 1)
.attr(AddArenaTagAttr, ArenaTagType.REFLECT, 5, true)
.target(MoveTarget.USER_SIDE),
- new SelfStatusMove(Moves.FOCUS_ENERGY, "Focus Energy", Type.NORMAL, -1, 30, "The user takes a deep breath and focuses so that critical hits land more easily.", -1, 0, 1)
+ new SelfStatusMove(Moves.FOCUS_ENERGY, Type.NORMAL, -1, 30, -1, 0, 1)
.attr(AddBattlerTagAttr, BattlerTagType.CRIT_BOOST, true, true),
- new AttackMove(Moves.BIDE, "Bide (N)", Type.NORMAL, MoveCategory.PHYSICAL, -1, -1, 10, "The user endures attacks for two turns, then strikes back to cause double the damage taken.", -1, 1, 1)
+ new AttackMove(Moves.BIDE, Type.NORMAL, MoveCategory.PHYSICAL, -1, -1, 10, -1, 1, 1)
.ignoresVirtual()
- .target(MoveTarget.USER),
- new SelfStatusMove(Moves.METRONOME, "Metronome", Type.NORMAL, -1, 10, "The user waggles a finger and stimulates its brain into randomly using nearly any move.", -1, 0, 1)
+ .target(MoveTarget.USER)
+ .unimplemented(),
+ new SelfStatusMove(Moves.METRONOME, Type.NORMAL, -1, 10, -1, 0, 1)
.attr(RandomMoveAttr)
.ignoresVirtual(),
- new StatusMove(Moves.MIRROR_MOVE, "Mirror Move", Type.FLYING, -1, 20, "The user counters the target by mimicking the target's last move.", -1, 0, 1)
+ new StatusMove(Moves.MIRROR_MOVE, Type.FLYING, -1, 20, -1, 0, 1)
.attr(CopyMoveAttr)
.ignoresVirtual(),
- new AttackMove(Moves.SELF_DESTRUCT, "Self-Destruct", Type.NORMAL, MoveCategory.PHYSICAL, 200, 100, 5, "The user attacks everything around it by causing an explosion. The user faints upon using this move.", -1, 0, 1)
+ new AttackMove(Moves.SELF_DESTRUCT, Type.NORMAL, MoveCategory.PHYSICAL, 200, 100, 5, -1, 0, 1)
.attr(SacrificialAttr)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.EGG_BOMB, "Egg Bomb", Type.NORMAL, MoveCategory.PHYSICAL, 100, 75, 10, "A large egg is hurled at the target with maximum force to inflict damage.", -1, 0, 1)
+ new AttackMove(Moves.EGG_BOMB, Type.NORMAL, MoveCategory.PHYSICAL, 100, 75, 10, -1, 0, 1)
.makesContact(false)
.ballBombMove(),
- new AttackMove(Moves.LICK, "Lick", Type.GHOST, MoveCategory.PHYSICAL, 30, 100, 30, "The target is licked with a long tongue, causing damage. This may also leave the target with paralysis.", 30, 0, 1)
+ new AttackMove(Moves.LICK, Type.GHOST, MoveCategory.PHYSICAL, 30, 100, 30, 30, 0, 1)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new AttackMove(Moves.SMOG, "Smog", Type.POISON, MoveCategory.SPECIAL, 30, 70, 20, "The target is attacked with a discharge of filthy gases. This may also poison the target.", 40, 0, 1)
+ new AttackMove(Moves.SMOG, Type.POISON, MoveCategory.SPECIAL, 30, 70, 20, 40, 0, 1)
.attr(StatusEffectAttr, StatusEffect.POISON),
- new AttackMove(Moves.SLUDGE, "Sludge", Type.POISON, MoveCategory.SPECIAL, 65, 100, 20, "Unsanitary sludge is hurled at the target. This may also poison the target.", 30, 0, 1)
+ new AttackMove(Moves.SLUDGE, Type.POISON, MoveCategory.SPECIAL, 65, 100, 20, 30, 0, 1)
.attr(StatusEffectAttr, StatusEffect.POISON),
- new AttackMove(Moves.BONE_CLUB, "Bone Club", Type.GROUND, MoveCategory.PHYSICAL, 65, 85, 20, "The user clubs the target with a bone. This may also make the target flinch.", 10, 0, 1)
+ new AttackMove(Moves.BONE_CLUB, Type.GROUND, MoveCategory.PHYSICAL, 65, 85, 20, 10, 0, 1)
.attr(FlinchAttr)
.makesContact(false),
- new AttackMove(Moves.FIRE_BLAST, "Fire Blast", Type.FIRE, MoveCategory.SPECIAL, 110, 85, 5, "The target is attacked with an intense blast of all-consuming fire. This may also leave the target with a burn.", 10, 0, 1)
+ new AttackMove(Moves.FIRE_BLAST, Type.FIRE, MoveCategory.SPECIAL, 110, 85, 5, 10, 0, 1)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new AttackMove(Moves.WATERFALL, "Waterfall", Type.WATER, MoveCategory.PHYSICAL, 80, 100, 15, "The user charges at the target and may make it flinch.", 20, 0, 1)
+ new AttackMove(Moves.WATERFALL, Type.WATER, MoveCategory.PHYSICAL, 80, 100, 15, 20, 0, 1)
.attr(FlinchAttr),
- new AttackMove(Moves.CLAMP, "Clamp", Type.WATER, MoveCategory.PHYSICAL, 35, 85, 15, "The target is clamped and squeezed by the user's very thick and sturdy shell for four to five turns.", 100, 0, 1)
+ new AttackMove(Moves.CLAMP, Type.WATER, MoveCategory.PHYSICAL, 35, 85, 15, 100, 0, 1)
.attr(TrapAttr, BattlerTagType.CLAMP),
- new AttackMove(Moves.SWIFT, "Swift", Type.NORMAL, MoveCategory.SPECIAL, 60, -1, 20, "Star-shaped rays are shot at opposing Pokémon. This attack never misses.", -1, 0, 1)
+ new AttackMove(Moves.SWIFT, Type.NORMAL, MoveCategory.SPECIAL, 60, -1, 20, -1, 0, 1)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.SKULL_BASH, "Skull Bash", Type.NORMAL, MoveCategory.PHYSICAL, 130, 100, 10, "The user tucks in its head to raise its Defense stat on the first turn, then rams the target on the next turn.", 100, 0, 1)
+ new AttackMove(Moves.SKULL_BASH, Type.NORMAL, MoveCategory.PHYSICAL, 130, 100, 10, 100, 0, 1)
.attr(ChargeAttr, ChargeAnim.SKULL_BASH_CHARGING, 'lowered\nits head!', null, true)
.attr(StatChangeAttr, BattleStat.DEF, 1, true)
.ignoresVirtual(),
- new AttackMove(Moves.SPIKE_CANNON, "Spike Cannon", Type.NORMAL, MoveCategory.PHYSICAL, 20, 100, 15, "Sharp spikes are shot at the target in rapid succession. They hit two to five times in a row.", -1, 0, 1)
+ new AttackMove(Moves.SPIKE_CANNON, Type.NORMAL, MoveCategory.PHYSICAL, 20, 100, 15, -1, 0, 1)
.attr(MultiHitAttr)
.makesContact(false),
- new AttackMove(Moves.CONSTRICT, "Constrict", Type.NORMAL, MoveCategory.PHYSICAL, 10, 100, 35, "The target is attacked with long, creeping tentacles, vines, or the like. This may also lower the target's Speed stat.", 10, 0, 1)
+ new AttackMove(Moves.CONSTRICT, Type.NORMAL, MoveCategory.PHYSICAL, 10, 100, 35, 10, 0, 1)
.attr(StatChangeAttr, BattleStat.SPD, -1),
- new SelfStatusMove(Moves.AMNESIA, "Amnesia", Type.PSYCHIC, -1, 20, "The user temporarily empties its mind to forget its concerns. This sharply raises the user's Sp. Def stat.", -1, 0, 1)
+ new SelfStatusMove(Moves.AMNESIA, Type.PSYCHIC, -1, 20, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.SPDEF, 2, true),
- new StatusMove(Moves.KINESIS, "Kinesis", Type.PSYCHIC, 80, 15, "The user distracts the target by bending a spoon. This lowers the target's accuracy.", -1, 0, 1)
+ new StatusMove(Moves.KINESIS, Type.PSYCHIC, 80, 15, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.ACC, -1),
- new SelfStatusMove(Moves.SOFT_BOILED, "Soft-Boiled", Type.NORMAL, -1, 5, "The user restores its own HP by up to half of its max HP.", -1, 0, 1)
+ new SelfStatusMove(Moves.SOFT_BOILED, Type.NORMAL, -1, 5, -1, 0, 1)
.attr(HealAttr, 0.5)
.triageMove(),
- new AttackMove(Moves.HIGH_JUMP_KICK, "High Jump Kick", Type.FIGHTING, MoveCategory.PHYSICAL, 130, 90, 10, "The target is attacked with a knee kick from a jump. If it misses, the user is hurt instead.", -1, 0, 1)
+ new AttackMove(Moves.HIGH_JUMP_KICK, Type.FIGHTING, MoveCategory.PHYSICAL, 130, 90, 10, -1, 0, 1)
.attr(MissEffectAttr, crashDamageFunc)
.attr(NoEffectAttr, crashDamageFunc)
.condition(failOnGravityCondition),
- new StatusMove(Moves.GLARE, "Glare", Type.NORMAL, 100, 30, "The user intimidates the target with the pattern on its belly to cause paralysis.", -1, 0, 1)
+ new StatusMove(Moves.GLARE, Type.NORMAL, 100, 30, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new AttackMove(Moves.DREAM_EATER, "Dream Eater", Type.PSYCHIC, MoveCategory.SPECIAL, 100, 100, 15, "The user eats the dreams of a sleeping target. The user's HP is restored by half the damage taken by the target.", -1, 0, 1)
+ new AttackMove(Moves.DREAM_EATER, Type.PSYCHIC, MoveCategory.SPECIAL, 100, 100, 15, -1, 0, 1)
.attr(HitHealAttr)
.condition((user, target, move) => target.status?.effect === StatusEffect.SLEEP)
.triageMove(),
- new StatusMove(Moves.POISON_GAS, "Poison Gas", Type.POISON, 90, 40, "A cloud of poison gas is sprayed in the face of opposing Pokémon, poisoning those it hits.", -1, 0, 1)
+ new StatusMove(Moves.POISON_GAS, Type.POISON, 90, 40, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.POISON)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.BARRAGE, "Barrage", Type.NORMAL, MoveCategory.PHYSICAL, 15, 85, 20, "Round objects are hurled at the target to strike two to five times in a row.", -1, 0, 1)
+ new AttackMove(Moves.BARRAGE, Type.NORMAL, MoveCategory.PHYSICAL, 15, 85, 20, -1, 0, 1)
.attr(MultiHitAttr)
.makesContact(false)
.ballBombMove(),
- new AttackMove(Moves.LEECH_LIFE, "Leech Life", Type.BUG, MoveCategory.PHYSICAL, 80, 100, 10, "The user drains the target's blood. The user's HP is restored by half the damage taken by the target.", -1, 0, 1)
+ new AttackMove(Moves.LEECH_LIFE, Type.BUG, MoveCategory.PHYSICAL, 80, 100, 10, -1, 0, 1)
.attr(HitHealAttr)
.triageMove(),
- new StatusMove(Moves.LOVELY_KISS, "Lovely Kiss", Type.NORMAL, 75, 10, "With a scary face, the user tries to force a kiss on the target. If it succeeds, the target falls asleep.", -1, 0, 1)
+ new StatusMove(Moves.LOVELY_KISS, Type.NORMAL, 75, 10, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.SLEEP),
- new AttackMove(Moves.SKY_ATTACK, "Sky Attack", Type.FLYING, MoveCategory.PHYSICAL, 140, 90, 5, "A second-turn attack move where critical hits land more easily. This may also make the target flinch.", 30, 0, 1)
+ new AttackMove(Moves.SKY_ATTACK, Type.FLYING, MoveCategory.PHYSICAL, 140, 90, 5, 30, 0, 1)
.attr(ChargeAttr, ChargeAnim.SKY_ATTACK_CHARGING, 'is glowing!')
.attr(HighCritAttr)
.attr(FlinchAttr)
.makesContact(false)
.ignoresVirtual(),
- new StatusMove(Moves.TRANSFORM, "Transform", Type.NORMAL, -1, 10, "The user transforms into a copy of the target right down to having the same move set.", -1, 0, 1)
+ new StatusMove(Moves.TRANSFORM, Type.NORMAL, -1, 10, -1, 0, 1)
.attr(TransformAttr)
.ignoresProtect(),
- new AttackMove(Moves.BUBBLE, "Bubble", Type.WATER, MoveCategory.SPECIAL, 40, 100, 30, "A spray of countless bubbles is jetted at the opposing Pokémon. This may also lower their Speed stat.", 10, 0, 1)
+ new AttackMove(Moves.BUBBLE, Type.WATER, MoveCategory.SPECIAL, 40, 100, 30, 10, 0, 1)
.attr(StatChangeAttr, BattleStat.SPD, -1)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.DIZZY_PUNCH, "Dizzy Punch", Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 10, "The target is hit with rhythmically launched punches. This may also leave the target confused.", 20, 0, 1)
+ new AttackMove(Moves.DIZZY_PUNCH, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 10, 20, 0, 1)
.attr(ConfuseAttr)
.punchingMove(),
- new StatusMove(Moves.SPORE, "Spore", Type.GRASS, 100, 15, "The user scatters bursts of spores that induce sleep.", -1, 0, 1)
+ new StatusMove(Moves.SPORE, Type.GRASS, 100, 15, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.SLEEP)
.powderMove(),
- new StatusMove(Moves.FLASH, "Flash", Type.NORMAL, 100, 20, "The user flashes a bright light that cuts the target's accuracy.", -1, 0, 1)
+ new StatusMove(Moves.FLASH, Type.NORMAL, 100, 20, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.ACC, -1),
- new AttackMove(Moves.PSYWAVE, "Psywave", Type.PSYCHIC, MoveCategory.SPECIAL, -1, 100, 15, "The target is attacked with an odd psychic wave. The attack varies in intensity.", -1, 0, 1)
+ new AttackMove(Moves.PSYWAVE, Type.PSYCHIC, MoveCategory.SPECIAL, -1, 100, 15, -1, 0, 1)
.attr(RandomLevelDamageAttr),
- new SelfStatusMove(Moves.SPLASH, "Splash", Type.NORMAL, -1, 40, "The user just flops and splashes around to no effect at all...", -1, 0, 1)
+ new SelfStatusMove(Moves.SPLASH, Type.NORMAL, -1, 40, -1, 0, 1)
.condition(failOnGravityCondition),
- new SelfStatusMove(Moves.ACID_ARMOR, "Acid Armor", Type.POISON, -1, 20, "The user alters its cellular structure to liquefy itself, sharply raising its Defense stat.", -1, 0, 1)
+ new SelfStatusMove(Moves.ACID_ARMOR, Type.POISON, -1, 20, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.DEF, 2, true),
- new AttackMove(Moves.CRABHAMMER, "Crabhammer", Type.WATER, MoveCategory.PHYSICAL, 100, 90, 10, "The target is hammered with a large pincer. Critical hits land more easily.", -1, 0, 1)
+ new AttackMove(Moves.CRABHAMMER, Type.WATER, MoveCategory.PHYSICAL, 100, 90, 10, -1, 0, 1)
.attr(HighCritAttr),
- new AttackMove(Moves.EXPLOSION, "Explosion", Type.NORMAL, MoveCategory.PHYSICAL, 250, 100, 5, "The user attacks everything around it by causing a tremendous explosion. The user faints upon using this move.", -1, 0, 1)
+ new AttackMove(Moves.EXPLOSION, Type.NORMAL, MoveCategory.PHYSICAL, 250, 100, 5, -1, 0, 1)
.attr(SacrificialAttr)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.FURY_SWIPES, "Fury Swipes", Type.NORMAL, MoveCategory.PHYSICAL, 18, 80, 15, "The target is raked with sharp claws or scythes quickly two to five times in a row.", -1, 0, 1)
+ new AttackMove(Moves.FURY_SWIPES, Type.NORMAL, MoveCategory.PHYSICAL, 18, 80, 15, -1, 0, 1)
.attr(MultiHitAttr),
- new AttackMove(Moves.BONEMERANG, "Bonemerang", Type.GROUND, MoveCategory.PHYSICAL, 50, 90, 10, "The user throws the bone it holds. The bone loops around to hit the target twice—coming and going.", -1, 0, 1)
+ new AttackMove(Moves.BONEMERANG, Type.GROUND, MoveCategory.PHYSICAL, 50, 90, 10, -1, 0, 1)
.attr(MultiHitAttr, MultiHitType._2)
.makesContact(false),
- new SelfStatusMove(Moves.REST, "Rest", Type.PSYCHIC, -1, 5, "The user goes to sleep for two turns. This fully restores the user's HP and heals any status conditions.", -1, 0, 1)
+ new SelfStatusMove(Moves.REST, Type.PSYCHIC, -1, 5, -1, 0, 1)
.attr(StatusEffectAttr, StatusEffect.SLEEP, true, 3, true)
.attr(HealAttr, 1, true)
.condition((user, target, move) => user.getHpRatio() < 1 && user.canSetStatus(StatusEffect.SLEEP, true, true))
.triageMove(),
- new AttackMove(Moves.ROCK_SLIDE, "Rock Slide", Type.ROCK, MoveCategory.PHYSICAL, 75, 90, 10, "Large boulders are hurled at opposing Pokémon to inflict damage. This may also make the opposing Pokémon flinch.", 30, 0, 1)
+ new AttackMove(Moves.ROCK_SLIDE, Type.ROCK, MoveCategory.PHYSICAL, 75, 90, 10, 30, 0, 1)
.attr(FlinchAttr)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.HYPER_FANG, "Hyper Fang", Type.NORMAL, MoveCategory.PHYSICAL, 80, 90, 15, "The user bites hard on the target with its sharp front fangs. This may also make the target flinch.", 10, 0, 1)
+ new AttackMove(Moves.HYPER_FANG, Type.NORMAL, MoveCategory.PHYSICAL, 80, 90, 15, 10, 0, 1)
.attr(FlinchAttr)
.bitingMove(),
- new SelfStatusMove(Moves.SHARPEN, "Sharpen", Type.NORMAL, -1, 30, "The user makes its edges more jagged, which raises its Attack stat.", -1, 0, 1)
+ new SelfStatusMove(Moves.SHARPEN, Type.NORMAL, -1, 30, -1, 0, 1)
.attr(StatChangeAttr, BattleStat.ATK, 1, true),
- new SelfStatusMove(Moves.CONVERSION, "Conversion", Type.NORMAL, -1, 30, "The user changes its type to become the same type as the move at the top of the list of moves it knows.", -1, 0, 1)
+ new SelfStatusMove(Moves.CONVERSION, Type.NORMAL, -1, 30, -1, 0, 1)
.attr(FirstMoveTypeAttr),
- new AttackMove(Moves.TRI_ATTACK, "Tri Attack", Type.NORMAL, MoveCategory.SPECIAL, 80, 100, 10, "The user strikes with a simultaneous three-beam attack. This may also burn, freeze, or paralyze the target.", 20, 0, 1)
+ new AttackMove(Moves.TRI_ATTACK, Type.NORMAL, MoveCategory.SPECIAL, 80, 100, 10, 20, 0, 1)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.attr(StatusEffectAttr, StatusEffect.BURN)
.attr(StatusEffectAttr, StatusEffect.FREEZE),
- new AttackMove(Moves.SUPER_FANG, "Super Fang", Type.NORMAL, MoveCategory.PHYSICAL, -1, 90, 10, "The user chomps hard on the target with its sharp front fangs. This cuts the target's HP in half.", -1, 0, 1)
+ new AttackMove(Moves.SUPER_FANG, Type.NORMAL, MoveCategory.PHYSICAL, -1, 90, 10, -1, 0, 1)
.attr(TargetHalfHpDamageAttr),
- new AttackMove(Moves.SLASH, "Slash", Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, "The target is attacked with a slash of claws or blades. Critical hits land more easily.", -1, 0, 1)
+ new AttackMove(Moves.SLASH, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, -1, 0, 1)
.attr(HighCritAttr)
.slicingMove(),
- new SelfStatusMove(Moves.SUBSTITUTE, "Substitute (N)", Type.NORMAL, -1, 10, "The user creates a substitute for itself using some of its HP. The substitute serves as the user's decoy.", -1, 0, 1)
- .attr(RecoilAttr),
- new AttackMove(Moves.STRUGGLE, "Struggle", Type.NORMAL, MoveCategory.PHYSICAL, 50, -1, 1, "This attack is used in desperation only if the user has no PP. It also damages the user a little.", -1, 0, 1)
- .attr(RecoilAttr, true)
+ new SelfStatusMove(Moves.SUBSTITUTE, Type.NORMAL, -1, 10, -1, 0, 1)
+ .attr(RecoilAttr)
+ .unimplemented(),
+ new AttackMove(Moves.STRUGGLE, Type.NORMAL, MoveCategory.PHYSICAL, 50, -1, 1, -1, 0, 1)
+ .attr(RecoilAttr, true, 0.25, true)
.attr(TypelessAttr)
.ignoresVirtual()
.target(MoveTarget.RANDOM_NEAR_ENEMY),
- new StatusMove(Moves.SKETCH, "Sketch", Type.NORMAL, -1, 1, "It enables the user to permanently learn the move last used by the target. Once used, Sketch disappears.", -1, 0, 2)
+ new StatusMove(Moves.SKETCH, Type.NORMAL, -1, 1, -1, 0, 2)
.attr(SketchAttr)
.ignoresVirtual(),
- new AttackMove(Moves.TRIPLE_KICK, "Triple Kick (P)", Type.FIGHTING, MoveCategory.PHYSICAL, 10, 90, 10, "A consecutive three-kick attack that becomes more powerful with each successful hit.", -1, 0, 2)
+ new AttackMove(Moves.TRIPLE_KICK, Type.FIGHTING, MoveCategory.PHYSICAL, 10, 90, 10, -1, 0, 2)
.attr(MultiHitAttr, MultiHitType._3_INCR)
.attr(MissEffectAttr, (user: Pokemon, move: Move) => {
user.turnData.hitsLeft = 1;
return true;
- }),
- new AttackMove(Moves.THIEF, "Thief", Type.DARK, MoveCategory.PHYSICAL, 60, 100, 25, "The user attacks and has a 30% chance to steal the target's held item simultaneously.", -1, 0, 2)
+ })
+ .partial(),
+ new AttackMove(Moves.THIEF, Type.DARK, MoveCategory.PHYSICAL, 60, 100, 25, -1, 0, 2)
.attr(StealHeldItemChanceAttr, 0.3),
- new StatusMove(Moves.SPIDER_WEB, "Spider Web", Type.BUG, -1, 10, "The user ensnares the target with thin, gooey silk so it can't flee from battle.", -1, 0, 2)
+ new StatusMove(Moves.SPIDER_WEB, Type.BUG, -1, 10, -1, 0, 2)
.attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, false, true, 1),
- new StatusMove(Moves.MIND_READER, "Mind Reader", Type.NORMAL, -1, 5, "The user senses the target's movements with its mind to ensure its next attack does not miss the target.", -1, 0, 2)
+ new StatusMove(Moves.MIND_READER, Type.NORMAL, -1, 5, -1, 0, 2)
.attr(IgnoreAccuracyAttr),
- new StatusMove(Moves.NIGHTMARE, "Nightmare", Type.GHOST, 100, 15, "A sleeping target sees a nightmare that inflicts some damage every turn.", -1, 0, 2)
+ new StatusMove(Moves.NIGHTMARE, Type.GHOST, 100, 15, -1, 0, 2)
.attr(AddBattlerTagAttr, BattlerTagType.NIGHTMARE)
.condition((user, target, move) => target.status?.effect === StatusEffect.SLEEP),
- new AttackMove(Moves.FLAME_WHEEL, "Flame Wheel", Type.FIRE, MoveCategory.PHYSICAL, 60, 100, 25, "The user cloaks itself in fire and charges at the target. This may also leave the target with a burn.", 10, 0, 2)
+ new AttackMove(Moves.FLAME_WHEEL, Type.FIRE, MoveCategory.PHYSICAL, 60, 100, 25, 10, 0, 2)
.attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new AttackMove(Moves.SNORE, "Snore", Type.NORMAL, MoveCategory.SPECIAL, 50, 100, 15, "This attack can be used only if the user is asleep. The harsh noise may also make the target flinch.", 30, 0, 2)
+ new AttackMove(Moves.SNORE, Type.NORMAL, MoveCategory.SPECIAL, 50, 100, 15, 30, 0, 2)
.attr(BypassSleepAttr)
.attr(FlinchAttr)
.condition((user, target, move) => user.status?.effect === StatusEffect.SLEEP)
.soundBased(),
- new StatusMove(Moves.CURSE, "Curse (P)", Type.GHOST, -1, 10, "A move that works differently for the Ghost type than for all other types.", -1, 0, 2)
+ new StatusMove(Moves.CURSE, Type.GHOST, -1, 10, -1, 0, 2)
.attr(StatChangeAttr, BattleStat.SPD, -1, true)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF ], 1, true)
- .target(MoveTarget.USER),
- new AttackMove(Moves.FLAIL, "Flail", Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 15, "The user flails about aimlessly to attack. The less HP the user has, the greater the move's power.", -1, 0, 2)
+ .target(MoveTarget.USER)
+ .partial(),
+ new AttackMove(Moves.FLAIL, Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 15, -1, 0, 2)
.attr(LowHpPowerAttr),
- new StatusMove(Moves.CONVERSION_2, "Conversion 2 (N)", Type.NORMAL, -1, 30, "The user changes its type to make itself resistant to the type of the attack the target used last.", -1, 0, 2),
- new AttackMove(Moves.AEROBLAST, "Aeroblast", Type.FLYING, MoveCategory.SPECIAL, 100, 95, 5, "A vortex of air is shot at the target to inflict damage. Critical hits land more easily.", -1, 0, 2)
+ new StatusMove(Moves.CONVERSION_2, Type.NORMAL, -1, 30, -1, 0, 2)
+ .unimplemented(),
+ new AttackMove(Moves.AEROBLAST, Type.FLYING, MoveCategory.SPECIAL, 100, 95, 5, -1, 0, 2)
.attr(HighCritAttr),
- new StatusMove(Moves.COTTON_SPORE, "Cotton Spore", Type.GRASS, 100, 40, "The user releases cotton-like spores that cling to opposing Pokémon, which harshly lowers their Speed stats.", -1, 0, 2)
+ new StatusMove(Moves.COTTON_SPORE, Type.GRASS, 100, 40, -1, 0, 2)
.attr(StatChangeAttr, BattleStat.SPD, -2)
.powderMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.REVERSAL, "Reversal", Type.FIGHTING, MoveCategory.PHYSICAL, -1, 100, 15, "An all-out attack that becomes more powerful the less HP the user has.", -1, 0, 2)
+ new AttackMove(Moves.REVERSAL, Type.FIGHTING, MoveCategory.PHYSICAL, -1, 100, 15, -1, 0, 2)
.attr(LowHpPowerAttr),
- new StatusMove(Moves.SPITE, "Spite", Type.GHOST, 100, 10, "The user unleashes its grudge on the move last used by the target by cutting 4 PP from it.", -1, 0, 2)
+ new StatusMove(Moves.SPITE, Type.GHOST, 100, 10, -1, 0, 2)
.attr(ReducePpMoveAttr),
- new AttackMove(Moves.POWDER_SNOW, "Powder Snow", Type.ICE, MoveCategory.SPECIAL, 40, 100, 25, "The user attacks with a chilling gust of powdery snow. This may also freeze opposing Pokémon.", 10, 0, 2)
+ new AttackMove(Moves.POWDER_SNOW, Type.ICE, MoveCategory.SPECIAL, 40, 100, 25, 10, 0, 2)
.attr(StatusEffectAttr, StatusEffect.FREEZE)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new SelfStatusMove(Moves.PROTECT, "Protect", Type.NORMAL, -1, 10, "This move enables the user to protect itself from all attacks. Its chance of failing rises if it is used in succession.", -1, 4, 2)
+ new SelfStatusMove(Moves.PROTECT, Type.NORMAL, -1, 10, -1, 4, 2)
.attr(ProtectAttr),
- new AttackMove(Moves.MACH_PUNCH, "Mach Punch", Type.FIGHTING, MoveCategory.PHYSICAL, 40, 100, 30, "The user throws a punch at blinding speed. This move always goes first.", -1, 1, 2)
+ new AttackMove(Moves.MACH_PUNCH, Type.FIGHTING, MoveCategory.PHYSICAL, 40, 100, 30, -1, 1, 2)
.punchingMove(),
- new StatusMove(Moves.SCARY_FACE, "Scary Face", Type.NORMAL, 100, 10, "The user frightens the target with a scary face to harshly lower its Speed stat.", -1, 0, 2)
+ new StatusMove(Moves.SCARY_FACE, Type.NORMAL, 100, 10, -1, 0, 2)
.attr(StatChangeAttr, BattleStat.SPD, -2),
- new AttackMove(Moves.FEINT_ATTACK, "Feint Attack", Type.DARK, MoveCategory.PHYSICAL, 60, -1, 20, "The user approaches the target disarmingly, then throws a sucker punch. This attack never misses.", -1, 0, 2),
- new StatusMove(Moves.SWEET_KISS, "Sweet Kiss", Type.FAIRY, 75, 10, "The user kisses the target with a sweet, angelic cuteness that causes confusion.", -1, 0, 2)
+ new AttackMove(Moves.FEINT_ATTACK, Type.DARK, MoveCategory.PHYSICAL, 60, -1, 20, -1, 0, 2),
+ new StatusMove(Moves.SWEET_KISS, Type.FAIRY, 75, 10, -1, 0, 2)
.attr(ConfuseAttr),
- new SelfStatusMove(Moves.BELLY_DRUM, "Belly Drum", Type.NORMAL, -1, 10, "The user maximizes its Attack stat in exchange for HP equal to half its max HP.", -1, 0, 2)
+ new SelfStatusMove(Moves.BELLY_DRUM, Type.NORMAL, -1, 10, -1, 0, 2)
.attr(HalfHpStatMaxAttr, BattleStat.ATK),
- new AttackMove(Moves.SLUDGE_BOMB, "Sludge Bomb", Type.POISON, MoveCategory.SPECIAL, 90, 100, 10, "Unsanitary sludge is hurled at the target. This may also poison the target.", 30, 0, 2)
+ new AttackMove(Moves.SLUDGE_BOMB, Type.POISON, MoveCategory.SPECIAL, 90, 100, 10, 30, 0, 2)
.attr(StatusEffectAttr, StatusEffect.POISON)
.ballBombMove(),
- new AttackMove(Moves.MUD_SLAP, "Mud-Slap", Type.GROUND, MoveCategory.SPECIAL, 20, 100, 10, "The user hurls mud in the target's face to inflict damage and lower its accuracy.", 100, 0, 2)
+ new AttackMove(Moves.MUD_SLAP, Type.GROUND, MoveCategory.SPECIAL, 20, 100, 10, 100, 0, 2)
.attr(StatChangeAttr, BattleStat.ACC, -1),
- new AttackMove(Moves.OCTAZOOKA, "Octazooka", Type.WATER, MoveCategory.SPECIAL, 65, 85, 10, "The user attacks by spraying ink in the target's face or eyes. This may also lower the target's accuracy.", 50, 0, 2)
+ new AttackMove(Moves.OCTAZOOKA, Type.WATER, MoveCategory.SPECIAL, 65, 85, 10, 50, 0, 2)
.attr(StatChangeAttr, BattleStat.ACC, -1)
.ballBombMove(),
- new StatusMove(Moves.SPIKES, "Spikes", Type.GROUND, -1, 20, "The user lays a trap of spikes at the opposing team's feet. The trap hurts Pokémon that switch into battle.", -1, 0, 2)
+ new StatusMove(Moves.SPIKES, Type.GROUND, -1, 20, -1, 0, 2)
.attr(AddArenaTrapTagAttr, ArenaTagType.SPIKES)
.target(MoveTarget.ENEMY_SIDE),
- new AttackMove(Moves.ZAP_CANNON, "Zap Cannon", Type.ELECTRIC, MoveCategory.SPECIAL, 120, 50, 5, "The user fires an electric blast like a cannon to inflict damage and cause paralysis.", 100, 0, 2)
+ new AttackMove(Moves.ZAP_CANNON, Type.ELECTRIC, MoveCategory.SPECIAL, 120, 50, 5, 100, 0, 2)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.ballBombMove(),
- new StatusMove(Moves.FORESIGHT, "Foresight (N)", Type.NORMAL, -1, 40, "Enables a Ghost-type target to be hit by Normal- and Fighting-type attacks. This also enables an evasive target to be hit.", -1, 0, 2),
- new SelfStatusMove(Moves.DESTINY_BOND, "Destiny Bond (N)", Type.GHOST, -1, 5, "After using this move, if the user faints, the Pokémon that landed the knockout hit also faints. Its chance of failing rises if it is used in succession.", -1, 0, 2)
+ new StatusMove(Moves.FORESIGHT, Type.NORMAL, -1, 40, -1, 0, 2)
+ .unimplemented(),
+ new SelfStatusMove(Moves.DESTINY_BOND, Type.GHOST, -1, 5, -1, 0, 2)
.ignoresProtect()
- .condition(failOnBossCondition),
- new StatusMove(Moves.PERISH_SONG, "Perish Song", Type.NORMAL, -1, 5, "Any Pokémon that hears this song faints in three turns, unless it switches out of battle.", -1, 0, 2)
+ .condition(failOnBossCondition)
+ .unimplemented(),
+ new StatusMove(Moves.PERISH_SONG, Type.NORMAL, -1, 5, -1, 0, 2)
.attr(FaintCountdownAttr)
.ignoresProtect()
.soundBased()
.condition(failOnBossCondition)
.target(MoveTarget.ALL),
- new AttackMove(Moves.ICY_WIND, "Icy Wind", Type.ICE, MoveCategory.SPECIAL, 55, 95, 15, "The user attacks with a gust of chilled air. This also lowers opposing Pokémon's Speed stats.", 100, 0, 2)
+ new AttackMove(Moves.ICY_WIND, Type.ICE, MoveCategory.SPECIAL, 55, 95, 15, 100, 0, 2)
.attr(StatChangeAttr, BattleStat.SPD, -1)
.windMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new SelfStatusMove(Moves.DETECT, "Detect", Type.FIGHTING, -1, 5, "This move enables the user to protect itself from all attacks. Its chance of failing rises if it is used in succession.", -1, 4, 2)
+ new SelfStatusMove(Moves.DETECT, Type.FIGHTING, -1, 5, -1, 4, 2)
.attr(ProtectAttr),
- new AttackMove(Moves.BONE_RUSH, "Bone Rush", Type.GROUND, MoveCategory.PHYSICAL, 25, 90, 10, "The user strikes the target with a hard bone two to five times in a row.", -1, 0, 2)
+ new AttackMove(Moves.BONE_RUSH, Type.GROUND, MoveCategory.PHYSICAL, 25, 90, 10, -1, 0, 2)
.attr(MultiHitAttr)
.makesContact(false),
- new StatusMove(Moves.LOCK_ON, "Lock-On", Type.NORMAL, -1, 5, "The user takes sure aim at the target. This ensures the next attack does not miss the target.", -1, 0, 2)
+ new StatusMove(Moves.LOCK_ON, Type.NORMAL, -1, 5, -1, 0, 2)
.attr(IgnoreAccuracyAttr),
- new AttackMove(Moves.OUTRAGE, "Outrage", Type.DRAGON, MoveCategory.PHYSICAL, 120, 100, 10, "The user rampages and attacks for two to three turns. The user then becomes confused.", -1, 0, 2)
+ new AttackMove(Moves.OUTRAGE, Type.DRAGON, MoveCategory.PHYSICAL, 120, 100, 10, -1, 0, 2)
.attr(FrenzyAttr)
.attr(MissEffectAttr, frenzyMissFunc)
.target(MoveTarget.RANDOM_NEAR_ENEMY),
- new StatusMove(Moves.SANDSTORM, "Sandstorm", Type.ROCK, -1, 10, "A five-turn sandstorm is summoned to hurt all combatants except Rock, Ground, and Steel types. It raises the Sp. Def stat of Rock types.", -1, 0, 2)
+ new StatusMove(Moves.SANDSTORM, Type.ROCK, -1, 10, -1, 0, 2)
.attr(WeatherChangeAttr, WeatherType.SANDSTORM)
- .windMove()
.target(MoveTarget.BOTH_SIDES),
- new AttackMove(Moves.GIGA_DRAIN, "Giga Drain", Type.GRASS, MoveCategory.SPECIAL, 75, 100, 10, "A nutrient-draining attack. The user's HP is restored by half the damage taken by the target.", -1, 0, 2)
+ new AttackMove(Moves.GIGA_DRAIN, Type.GRASS, MoveCategory.SPECIAL, 75, 100, 10, -1, 0, 2)
.attr(HitHealAttr)
.triageMove(),
- new SelfStatusMove(Moves.ENDURE, "Endure", Type.NORMAL, -1, 10, "The user endures any attack with at least 1 HP. Its chance of failing rises if it is used in succession.", -1, 4, 2)
+ new SelfStatusMove(Moves.ENDURE, Type.NORMAL, -1, 10, -1, 4, 2)
.attr(EndureAttr),
- new StatusMove(Moves.CHARM, "Charm", Type.FAIRY, 100, 20, "The user gazes at the target rather charmingly, making it less wary. This harshly lowers the target's Attack stat.", -1, 0, 2)
+ new StatusMove(Moves.CHARM, Type.FAIRY, 100, 20, -1, 0, 2)
.attr(StatChangeAttr, BattleStat.ATK, -2),
- new AttackMove(Moves.ROLLOUT, "Rollout", Type.ROCK, MoveCategory.PHYSICAL, 30, 90, 20, "The user continually rolls into the target over five turns. It becomes more powerful each time it hits.", -1, 0, 2)
+ new AttackMove(Moves.ROLLOUT, Type.ROCK, MoveCategory.PHYSICAL, 30, 90, 20, -1, 0, 2)
.attr(ConsecutiveUseDoublePowerAttr, 5, true, true, Moves.DEFENSE_CURL),
- new AttackMove(Moves.FALSE_SWIPE, "False Swipe", Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 40, "A restrained attack that prevents the target from fainting. The target is left with at least 1 HP.", -1, 0, 2)
+ new AttackMove(Moves.FALSE_SWIPE, Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 40, -1, 0, 2)
.attr(SurviveDamageAttr),
- new StatusMove(Moves.SWAGGER, "Swagger", Type.NORMAL, 85, 15, "The user enrages and confuses the target. However, this also sharply raises the target's Attack stat.", -1, 0, 2)
+ new StatusMove(Moves.SWAGGER, Type.NORMAL, 85, 15, -1, 0, 2)
.attr(StatChangeAttr, BattleStat.ATK, 2)
.attr(ConfuseAttr),
- new SelfStatusMove(Moves.MILK_DRINK, "Milk Drink", Type.NORMAL, -1, 5, "The user restores its own HP by up to half of its max HP.", -1, 0, 2)
+ new SelfStatusMove(Moves.MILK_DRINK, Type.NORMAL, -1, 5, -1, 0, 2)
.attr(HealAttr, 0.5)
.triageMove(),
- new AttackMove(Moves.SPARK, "Spark", Type.ELECTRIC, MoveCategory.PHYSICAL, 65, 100, 20, "The user throws an electrically charged tackle at the target. This may also leave the target with paralysis.", 30, 0, 2)
+ new AttackMove(Moves.SPARK, Type.ELECTRIC, MoveCategory.PHYSICAL, 65, 100, 20, 30, 0, 2)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new AttackMove(Moves.FURY_CUTTER, "Fury Cutter", Type.BUG, MoveCategory.PHYSICAL, 40, 95, 20, "The target is slashed with scythes or claws. This attack becomes more powerful if it hits in succession.", -1, 0, 2)
+ new AttackMove(Moves.FURY_CUTTER, Type.BUG, MoveCategory.PHYSICAL, 40, 95, 20, -1, 0, 2)
.attr(ConsecutiveUseDoublePowerAttr, 3, true)
.slicingMove(),
- new AttackMove(Moves.STEEL_WING, "Steel Wing", Type.STEEL, MoveCategory.PHYSICAL, 70, 90, 25, "The target is hit with wings of steel. This may also raise the user's Defense stat.", 10, 0, 2)
+ new AttackMove(Moves.STEEL_WING, Type.STEEL, MoveCategory.PHYSICAL, 70, 90, 25, 10, 0, 2)
.attr(StatChangeAttr, BattleStat.DEF, 1, true),
- new StatusMove(Moves.MEAN_LOOK, "Mean Look", Type.NORMAL, -1, 5, "The user pins the target with a dark, arresting look. The target becomes unable to flee.", -1, 0, 2)
+ new StatusMove(Moves.MEAN_LOOK, Type.NORMAL, -1, 5, -1, 0, 2)
.attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, false, true, 1),
- new StatusMove(Moves.ATTRACT, "Attract", Type.NORMAL, 100, 15, "If it is the opposite gender of the user, the target becomes infatuated and less likely to attack.", -1, 0, 2)
+ new StatusMove(Moves.ATTRACT, Type.NORMAL, 100, 15, -1, 0, 2)
.attr(AddBattlerTagAttr, BattlerTagType.INFATUATED)
.condition((user, target, move) => user.isOppositeGender(target)),
- new SelfStatusMove(Moves.SLEEP_TALK, "Sleep Talk", Type.NORMAL, -1, 10, "While it is asleep, the user randomly uses one of the moves it knows.", -1, 0, 2)
+ new SelfStatusMove(Moves.SLEEP_TALK, Type.NORMAL, -1, 10, -1, 0, 2)
.attr(BypassSleepAttr)
.attr(RandomMovesetMoveAttr)
- .condition((user, target, move) => user.status?.effect === StatusEffect.SLEEP),
- new StatusMove(Moves.HEAL_BELL, "Heal Bell (N)", Type.NORMAL, -1, 5, "The user makes a soothing bell chime to heal the status conditions of all the party Pokémon.", -1, 0, 2)
+ .condition((user, target, move) => user.status?.effect === StatusEffect.SLEEP)
+ .ignoresVirtual(),
+ new StatusMove(Moves.HEAL_BELL, Type.NORMAL, -1, 5, -1, 0, 2)
.soundBased()
- .target(MoveTarget.USER_AND_ALLIES),
- new AttackMove(Moves.RETURN, "Return", Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 20, "This full-power attack grows more powerful the more the user likes its Trainer.", -1, 0, 2)
+ .target(MoveTarget.USER_AND_ALLIES)
+ .unimplemented(),
+ new AttackMove(Moves.RETURN, Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 20, -1, 0, 2)
.attr(FriendshipPowerAttr),
- new AttackMove(Moves.PRESENT, "Present (N)", Type.NORMAL, MoveCategory.PHYSICAL, -1, 90, 15, "The user attacks by giving the target a gift with a hidden trap. It restores HP sometimes, however.", -1, 0, 2)
+ new AttackMove(Moves.PRESENT, Type.NORMAL, MoveCategory.PHYSICAL, -1, 90, 15, -1, 0, 2)
+ .attr(PresentPowerAttr)
.makesContact(false),
- new AttackMove(Moves.FRUSTRATION, "Frustration", Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 20, "This full-power attack grows more powerful the less the user likes its Trainer.", -1, 0, 2)
+ new AttackMove(Moves.FRUSTRATION, Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 20, -1, 0, 2)
.attr(FriendshipPowerAttr, true),
- new StatusMove(Moves.SAFEGUARD, "Safeguard (N)", Type.NORMAL, -1, 25, "The user creates a protective field that prevents status conditions for five turns.", -1, 0, 2)
- .target(MoveTarget.USER_SIDE),
- new StatusMove(Moves.PAIN_SPLIT, "Pain Split", Type.NORMAL, -1, 20, "The user adds its HP to the target's HP, then equally shares the combined HP with the target.", -1, 0, 2)
+ new StatusMove(Moves.SAFEGUARD, Type.NORMAL, -1, 25, -1, 0, 2)
+ .target(MoveTarget.USER_SIDE)
+ .unimplemented(),
+ new StatusMove(Moves.PAIN_SPLIT, Type.NORMAL, -1, 20, -1, 0, 2)
.attr(HpSplitAttr)
.condition(failOnBossCondition),
- new AttackMove(Moves.SACRED_FIRE, "Sacred Fire", Type.FIRE, MoveCategory.PHYSICAL, 100, 95, 5, "The target is razed with a mystical fire of great intensity. This may also leave the target with a burn.", 50, 0, 2)
+ new AttackMove(Moves.SACRED_FIRE, Type.FIRE, MoveCategory.PHYSICAL, 100, 95, 5, 50, 0, 2)
.attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
.attr(StatusEffectAttr, StatusEffect.BURN)
.makesContact(false),
- new AttackMove(Moves.MAGNITUDE, "Magnitude", Type.GROUND, MoveCategory.PHYSICAL, -1, 100, 30, "The user attacks everything around it with a ground-shaking quake. Its power varies.", -1, 0, 2)
+ new AttackMove(Moves.MAGNITUDE, Type.GROUND, MoveCategory.PHYSICAL, -1, 100, 30, -1, 0, 2)
.attr(PreMoveMessageAttr, magnitudeMessageFunc)
.attr(MagnitudePowerAttr)
+ .attr(HitsTagAttr, BattlerTagType.UNDERGROUND, true)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.DYNAMIC_PUNCH, "Dynamic Punch", Type.FIGHTING, MoveCategory.PHYSICAL, 100, 50, 5, "The user punches the target with full, concentrated power. This confuses the target if it hits.", 100, 0, 2)
+ new AttackMove(Moves.DYNAMIC_PUNCH, Type.FIGHTING, MoveCategory.PHYSICAL, 100, 50, 5, 100, 0, 2)
.attr(ConfuseAttr)
.punchingMove(),
- new AttackMove(Moves.MEGAHORN, "Megahorn", Type.BUG, MoveCategory.PHYSICAL, 120, 85, 10, "Using its tough and impressive horn, the user rams into the target with no letup.", -1, 0, 2),
- new AttackMove(Moves.DRAGON_BREATH, "Dragon Breath", Type.DRAGON, MoveCategory.SPECIAL, 60, 100, 20, "The user exhales a mighty gust that inflicts damage. This may also leave the target with paralysis.", 30, 0, 2)
+ new AttackMove(Moves.MEGAHORN, Type.BUG, MoveCategory.PHYSICAL, 120, 85, 10, -1, 0, 2),
+ new AttackMove(Moves.DRAGON_BREATH, Type.DRAGON, MoveCategory.SPECIAL, 60, 100, 20, 30, 0, 2)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new SelfStatusMove(Moves.BATON_PASS, "Baton Pass", Type.NORMAL, -1, 40, "The user switches places with a party Pokémon in waiting and passes along any stat changes.", -1, 0, 2)
+ new SelfStatusMove(Moves.BATON_PASS, Type.NORMAL, -1, 40, -1, 0, 2)
.attr(ForceSwitchOutAttr, true, true)
.hidesUser(),
- new StatusMove(Moves.ENCORE, "Encore", Type.NORMAL, 100, 5, "The user compels the target to keep using the move it encored for three turns.", -1, 0, 2)
+ new StatusMove(Moves.ENCORE, Type.NORMAL, 100, 5, -1, 0, 2)
.attr(AddBattlerTagAttr, BattlerTagType.ENCORE, false, true)
.condition((user, target, move) => new EncoreTag(user.id).canAdd(target)),
- new AttackMove(Moves.PURSUIT, "Pursuit (P)", Type.DARK, MoveCategory.PHYSICAL, 40, 100, 20, "The power of this attack move is doubled if it's used on a target that's switching out of battle.", -1, 0, 2),
- new AttackMove(Moves.RAPID_SPIN, "Rapid Spin (P)", Type.NORMAL, MoveCategory.PHYSICAL, 50, 100, 40, "A spin attack that can also eliminate such moves as Bind, Wrap, and Leech Seed. This also raises the user's Speed stat.", 100, 0, 2)
+ new AttackMove(Moves.PURSUIT, Type.DARK, MoveCategory.PHYSICAL, 40, 100, 20, -1, 0, 2)
+ .partial(),
+ new AttackMove(Moves.RAPID_SPIN, Type.NORMAL, MoveCategory.PHYSICAL, 50, 100, 40, 100, 0, 2)
.attr(StatChangeAttr, BattleStat.SPD, 1, true)
- .attr(RemoveBattlerTagAttr, [ BattlerTagType.BIND, BattlerTagType.WRAP, BattlerTagType.FIRE_SPIN, BattlerTagType.WHIRLPOOL, BattlerTagType.CLAMP, BattlerTagType.SAND_TOMB, BattlerTagType.MAGMA_STORM, BattlerTagType.THUNDER_CAGE, BattlerTagType.SEEDED ], true),
- new StatusMove(Moves.SWEET_SCENT, "Sweet Scent", Type.NORMAL, 100, 20, "A sweet scent that harshly lowers opposing Pokémon's evasiveness.", -1, 0, 2)
+ .attr(RemoveBattlerTagAttr, [
+ BattlerTagType.BIND,
+ BattlerTagType.WRAP,
+ BattlerTagType.FIRE_SPIN,
+ BattlerTagType.WHIRLPOOL,
+ BattlerTagType.CLAMP,
+ BattlerTagType.SAND_TOMB,
+ BattlerTagType.MAGMA_STORM,
+ BattlerTagType.THUNDER_CAGE,
+ BattlerTagType.SEEDED,
+ BattlerTagType.INFESTATION
+ ], true)
+ .partial(),
+ new StatusMove(Moves.SWEET_SCENT, Type.NORMAL, 100, 20, -1, 0, 2)
.attr(StatChangeAttr, BattleStat.EVA, -1)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.IRON_TAIL, "Iron Tail", Type.STEEL, MoveCategory.PHYSICAL, 100, 75, 15, "The target is slammed with a steel-hard tail. This may also lower the target's Defense stat.", 30, 0, 2)
+ new AttackMove(Moves.IRON_TAIL, Type.STEEL, MoveCategory.PHYSICAL, 100, 75, 15, 30, 0, 2)
.attr(StatChangeAttr, BattleStat.DEF, -1),
- new AttackMove(Moves.METAL_CLAW, "Metal Claw", Type.STEEL, MoveCategory.PHYSICAL, 50, 95, 35, "The target is raked with steel claws. This may also raise the user's Attack stat.", 10, 0, 2)
+ new AttackMove(Moves.METAL_CLAW, Type.STEEL, MoveCategory.PHYSICAL, 50, 95, 35, 10, 0, 2)
.attr(StatChangeAttr, BattleStat.ATK, 1, true),
- new AttackMove(Moves.VITAL_THROW, "Vital Throw", Type.FIGHTING, MoveCategory.PHYSICAL, 70, -1, 10, "The user attacks last. In return, this throw move never misses.", -1, -1, 2),
- new SelfStatusMove(Moves.MORNING_SUN, "Morning Sun", Type.NORMAL, -1, 5, "The user restores its own HP. The amount of HP regained varies with the weather.", -1, 0, 2)
+ new AttackMove(Moves.VITAL_THROW, Type.FIGHTING, MoveCategory.PHYSICAL, 70, -1, 10, -1, -1, 2),
+ new SelfStatusMove(Moves.MORNING_SUN, Type.NORMAL, -1, 5, -1, 0, 2)
.attr(PlantHealAttr)
.triageMove(),
- new SelfStatusMove(Moves.SYNTHESIS, "Synthesis", Type.GRASS, -1, 5, "The user restores its own HP. The amount of HP regained varies with the weather.", -1, 0, 2)
+ new SelfStatusMove(Moves.SYNTHESIS, Type.GRASS, -1, 5, -1, 0, 2)
.attr(PlantHealAttr)
.triageMove(),
- new SelfStatusMove(Moves.MOONLIGHT, "Moonlight", Type.FAIRY, -1, 5, "The user restores its own HP. The amount of HP regained varies with the weather.", -1, 0, 2)
+ new SelfStatusMove(Moves.MOONLIGHT, Type.FAIRY, -1, 5, -1, 0, 2)
.attr(PlantHealAttr)
.triageMove(),
- new AttackMove(Moves.HIDDEN_POWER, "Hidden Power", Type.NORMAL, MoveCategory.SPECIAL, 60, 100, 15, "A unique attack that varies in type depending on the Pokémon using it.", -1, 0, 2)
+ new AttackMove(Moves.HIDDEN_POWER, Type.NORMAL, MoveCategory.SPECIAL, 60, 100, 15, -1, 0, 2)
.attr(HiddenPowerTypeAttr),
- new AttackMove(Moves.CROSS_CHOP, "Cross Chop", Type.FIGHTING, MoveCategory.PHYSICAL, 100, 80, 5, "The user delivers a double chop with its forearms crossed. Critical hits land more easily.", -1, 0, 2)
+ new AttackMove(Moves.CROSS_CHOP, Type.FIGHTING, MoveCategory.PHYSICAL, 100, 80, 5, -1, 0, 2)
.attr(HighCritAttr),
- new AttackMove(Moves.TWISTER, "Twister", Type.DRAGON, MoveCategory.SPECIAL, 40, 100, 20, "The user whips up a vicious tornado to tear at opposing Pokémon. This may also make them flinch.", 20, 0, 2)
+ new AttackMove(Moves.TWISTER, Type.DRAGON, MoveCategory.SPECIAL, 40, 100, 20, 20, 0, 2)
.attr(HitsTagAttr, BattlerTagType.FLYING, true)
.attr(FlinchAttr)
.windMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new StatusMove(Moves.RAIN_DANCE, "Rain Dance", Type.WATER, -1, 5, "The user summons a heavy rain that falls for five turns, powering up Water-type moves. It lowers the power of Fire-type moves.", -1, 0, 2)
+ new StatusMove(Moves.RAIN_DANCE, Type.WATER, -1, 5, -1, 0, 2)
.attr(WeatherChangeAttr, WeatherType.RAIN)
.target(MoveTarget.BOTH_SIDES),
- new StatusMove(Moves.SUNNY_DAY, "Sunny Day", Type.FIRE, -1, 5, "The user intensifies the sun for five turns, powering up Fire-type moves. It lowers the power of Water-type moves.", -1, 0, 2)
+ new StatusMove(Moves.SUNNY_DAY, Type.FIRE, -1, 5, -1, 0, 2)
.attr(WeatherChangeAttr, WeatherType.SUNNY)
.target(MoveTarget.BOTH_SIDES),
- new AttackMove(Moves.CRUNCH, "Crunch", Type.DARK, MoveCategory.PHYSICAL, 80, 100, 15, "The user crunches up the target with sharp fangs. This may also lower the target's Defense stat.", 20, 0, 2)
+ new AttackMove(Moves.CRUNCH, Type.DARK, MoveCategory.PHYSICAL, 80, 100, 15, 20, 0, 2)
.attr(StatChangeAttr, BattleStat.DEF, -1)
.bitingMove(),
- new AttackMove(Moves.MIRROR_COAT, "Mirror Coat", Type.PSYCHIC, MoveCategory.SPECIAL, -1, 100, 20, "A retaliation move that counters any special attack, inflicting double the damage taken.", -1, -5, 2)
+ new AttackMove(Moves.MIRROR_COAT, Type.PSYCHIC, MoveCategory.SPECIAL, -1, 100, 20, -1, -5, 2)
.attr(CounterDamageAttr, (move: Move) => move.category === MoveCategory.SPECIAL, 2)
.target(MoveTarget.ATTACKER),
- new StatusMove(Moves.PSYCH_UP, "Psych Up (N)", Type.NORMAL, -1, 10, "The user hypnotizes itself into copying any stat change made by the target.", -1, 0, 2),
- new AttackMove(Moves.EXTREME_SPEED, "Extreme Speed", Type.NORMAL, MoveCategory.PHYSICAL, 80, 100, 5, "The user charges the target at blinding speed. This move always goes first.", -1, 2, 2),
- new AttackMove(Moves.ANCIENT_POWER, "Ancient Power", Type.ROCK, MoveCategory.SPECIAL, 60, 100, 5, "The user attacks with a prehistoric power. This may also raise all the user's stats at once.", 10, 0, 2)
+ new StatusMove(Moves.PSYCH_UP, Type.NORMAL, -1, 10, -1, 0, 2)
+ .attr(CopyStatsAttr),
+ new AttackMove(Moves.EXTREME_SPEED, Type.NORMAL, MoveCategory.PHYSICAL, 80, 100, 5, -1, 2, 2),
+ new AttackMove(Moves.ANCIENT_POWER, Type.ROCK, MoveCategory.SPECIAL, 60, 100, 5, 10, 0, 2)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF, BattleStat.SPATK, BattleStat.SPDEF, BattleStat.SPD ], 1, true),
- new AttackMove(Moves.SHADOW_BALL, "Shadow Ball", Type.GHOST, MoveCategory.SPECIAL, 80, 100, 15, "The user hurls a shadowy blob at the target. This may also lower the target's Sp. Def stat.", 20, 0, 2)
+ new AttackMove(Moves.SHADOW_BALL, Type.GHOST, MoveCategory.SPECIAL, 80, 100, 15, 20, 0, 2)
.attr(StatChangeAttr, BattleStat.SPDEF, -1)
.ballBombMove(),
- new AttackMove(Moves.FUTURE_SIGHT, "Future Sight", Type.PSYCHIC, MoveCategory.SPECIAL, 120, 100, 10, "Two turns after this move is used, a hunk of psychic energy attacks the target.", -1, 0, 2)
+ new AttackMove(Moves.FUTURE_SIGHT, Type.PSYCHIC, MoveCategory.SPECIAL, 120, 100, 10, -1, 0, 2)
.attr(DelayedAttackAttr, ArenaTagType.FUTURE_SIGHT, ChargeAnim.FUTURE_SIGHT_CHARGING, 'foresaw\nan attack!'),
- new AttackMove(Moves.ROCK_SMASH, "Rock Smash", Type.FIGHTING, MoveCategory.PHYSICAL, 40, 100, 15, "The user attacks with a punch. This may also lower the target's Defense stat.", 50, 0, 2)
+ new AttackMove(Moves.ROCK_SMASH, Type.FIGHTING, MoveCategory.PHYSICAL, 40, 100, 15, 50, 0, 2)
.attr(StatChangeAttr, BattleStat.DEF, -1),
- new AttackMove(Moves.WHIRLPOOL, "Whirlpool", Type.WATER, MoveCategory.SPECIAL, 35, 85, 15, "The user traps the target in a violent swirling whirlpool for four to five turns.", 100, 0, 2)
- .attr(TrapAttr, BattlerTagType.WHIRLPOOL),
- new AttackMove(Moves.BEAT_UP, "Beat Up (N)", Type.DARK, MoveCategory.PHYSICAL, -1, 100, 10, "The user gets all party Pokémon to attack the target. The more party Pokémon, the greater the number of attacks.", -1, 0, 2)
- .makesContact(false),
- new AttackMove(Moves.FAKE_OUT, "Fake Out", Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 10, "This attack hits first and makes the target flinch. It only works the first turn each time the user enters battle.", 100, 3, 3)
+ new AttackMove(Moves.WHIRLPOOL, Type.WATER, MoveCategory.SPECIAL, 35, 85, 15, 100, 0, 2)
+ .attr(TrapAttr, BattlerTagType.WHIRLPOOL)
+ .attr(HitsTagAttr, BattlerTagType.UNDERWATER, true),
+ new AttackMove(Moves.BEAT_UP, Type.DARK, MoveCategory.PHYSICAL, -1, 100, 10, -1, 0, 2)
+ .makesContact(false)
+ .unimplemented(),
+ new AttackMove(Moves.FAKE_OUT, Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 10, 100, 3, 3)
.attr(FlinchAttr)
.condition(new FirstMoveCondition()),
- new AttackMove(Moves.UPROAR, "Uproar (P)", Type.NORMAL, MoveCategory.SPECIAL, 90, 100, 10, "The user attacks in an uproar for three turns. During that time, no Pokémon can fall asleep.", -1, 0, 3)
+ new AttackMove(Moves.UPROAR, Type.NORMAL, MoveCategory.SPECIAL, 90, 100, 10, -1, 0, 3)
.ignoresVirtual()
.soundBased()
- .target(MoveTarget.RANDOM_NEAR_ENEMY),
- new SelfStatusMove(Moves.STOCKPILE, "Stockpile (N)", Type.NORMAL, -1, 20, "The user charges up power and raises both its Defense and Sp. Def stats. The move can be used three times.", -1, 0, 3),
- new AttackMove(Moves.SPIT_UP, "Spit Up (N)", Type.NORMAL, MoveCategory.SPECIAL, -1, 100, 10, "The power stored using the move Stockpile is released at once in an attack. The more power is stored, the greater the move's power.", -1, 0, 3),
- new SelfStatusMove(Moves.SWALLOW, "Swallow (N)", Type.NORMAL, -1, 10, "The power stored using the move Stockpile is absorbed by the user to heal its HP. Storing more power heals more HP.", -1, 0, 3)
- .triageMove(),
- new AttackMove(Moves.HEAT_WAVE, "Heat Wave", Type.FIRE, MoveCategory.SPECIAL, 95, 90, 10, "The user attacks by exhaling hot breath on opposing Pokémon. This may also leave those Pokémon with a burn.", 10, 0, 3)
+ .target(MoveTarget.RANDOM_NEAR_ENEMY)
+ .partial(),
+ new SelfStatusMove(Moves.STOCKPILE, Type.NORMAL, -1, 20, -1, 0, 3)
+ .unimplemented(),
+ new AttackMove(Moves.SPIT_UP, Type.NORMAL, MoveCategory.SPECIAL, -1, 100, 10, -1, 0, 3)
+ .unimplemented(),
+ new SelfStatusMove(Moves.SWALLOW, Type.NORMAL, -1, 10, -1, 0, 3)
+ .triageMove()
+ .unimplemented(),
+ new AttackMove(Moves.HEAT_WAVE, Type.FIRE, MoveCategory.SPECIAL, 95, 90, 10, 10, 0, 3)
.attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
.attr(StatusEffectAttr, StatusEffect.BURN)
.windMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new StatusMove(Moves.HAIL, "Hail", Type.ICE, -1, 10, "The user summons a hailstorm lasting five turns. It damages all Pokémon except Ice types.", -1, 0, 3)
+ new StatusMove(Moves.HAIL, Type.ICE, -1, 10, -1, 0, 3)
.attr(WeatherChangeAttr, WeatherType.HAIL)
.target(MoveTarget.BOTH_SIDES),
- new StatusMove(Moves.TORMENT, "Torment (N)", Type.DARK, 100, 15, "The user torments and enrages the target, making it incapable of using the same move twice in a row.", -1, 0, 3),
- new StatusMove(Moves.FLATTER, "Flatter", Type.DARK, 100, 15, "Flattery is used to confuse the target. However, this also raises the target's Sp. Atk stat.", -1, 0, 3)
+ new StatusMove(Moves.TORMENT, Type.DARK, 100, 15, -1, 0, 3)
+ .unimplemented(),
+ new StatusMove(Moves.FLATTER, Type.DARK, 100, 15, -1, 0, 3)
.attr(StatChangeAttr, BattleStat.SPATK, 1)
.attr(ConfuseAttr),
- new StatusMove(Moves.WILL_O_WISP, "Will-O-Wisp", Type.FIRE, 85, 15, "The user shoots a sinister flame at the target to inflict a burn.", -1, 0, 3)
+ new StatusMove(Moves.WILL_O_WISP, Type.FIRE, 85, 15, -1, 0, 3)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new StatusMove(Moves.MEMENTO, "Memento", Type.DARK, 100, 10, "The user faints when using this move. In return, this harshly lowers the target's Attack and Sp. Atk stats.", -1, 0, 3)
+ new StatusMove(Moves.MEMENTO, Type.DARK, 100, 10, -1, 0, 3)
.attr(SacrificialAttr)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPATK ], -2),
- new AttackMove(Moves.FACADE, "Facade", Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, "This attack move doubles its power if the user is poisoned, burned, or paralyzed.", -1, 0, 3)
+ new AttackMove(Moves.FACADE, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, -1, 0, 3)
.attr(MovePowerMultiplierAttr, (user, target, move) => user.status
&& (user.status.effect === StatusEffect.BURN || user.status.effect === StatusEffect.POISON || user.status.effect === StatusEffect.TOXIC || user.status.effect === StatusEffect.PARALYSIS) ? 2 : 1),
- new AttackMove(Moves.FOCUS_PUNCH, "Focus Punch", Type.FIGHTING, MoveCategory.PHYSICAL, 150, 100, 20, "The user focuses its mind before launching a punch. This move fails if the user is hit before it is used.", -1, -3, 3)
+ new AttackMove(Moves.FOCUS_PUNCH, Type.FIGHTING, MoveCategory.PHYSICAL, 150, 100, 20, -1, -3, 3)
.punchingMove()
.ignoresVirtual()
.condition((user, target, move) => !user.turnData.attacksReceived.find(r => r.damage)),
- new AttackMove(Moves.SMELLING_SALTS, "Smelling Salts", Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 10, "This attack's power is doubled when used on a target with paralysis. This also cures the target's paralysis, however.", -1, 0, 3)
+ new AttackMove(Moves.SMELLING_SALTS, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 10, -1, 0, 3)
.attr(MovePowerMultiplierAttr, (user, target, move) => target.status?.effect === StatusEffect.PARALYSIS ? 2 : 1)
.attr(HealStatusEffectAttr, true, StatusEffect.PARALYSIS),
- new SelfStatusMove(Moves.FOLLOW_ME, "Follow Me (N)", Type.NORMAL, -1, 20, "The user draws attention to itself, making all targets take aim only at the user.", -1, 2, 3),
- new StatusMove(Moves.NATURE_POWER, "Nature Power (N)", Type.NORMAL, -1, 20, "This attack makes use of nature's power. Its effects vary depending on the user's environment.", -1, 0, 3),
- new SelfStatusMove(Moves.CHARGE, "Charge (P)", Type.ELECTRIC, -1, 20, "The user boosts the power of the Electric move it uses on the next turn. This also raises the user's Sp. Def stat.", -1, 0, 3)
- .attr(StatChangeAttr, BattleStat.SPDEF, 1, true),
- new StatusMove(Moves.TAUNT, "Taunt (N)", Type.DARK, 100, 20, "The target is taunted into a rage that allows it to use only attack moves for three turns.", -1, 0, 3),
- new StatusMove(Moves.HELPING_HAND, "Helping Hand", Type.NORMAL, -1, 20, "The user assists an ally by boosting the power of that ally's attack.", -1, 5, 3)
+ new SelfStatusMove(Moves.FOLLOW_ME, Type.NORMAL, -1, 20, -1, 2, 3)
+ .unimplemented(),
+ new StatusMove(Moves.NATURE_POWER, Type.NORMAL, -1, 20, -1, 0, 3)
+ .attr(NaturePowerAttr)
+ .ignoresVirtual(),
+ new SelfStatusMove(Moves.CHARGE, Type.ELECTRIC, -1, 20, -1, 0, 3)
+ .attr(StatChangeAttr, BattleStat.SPDEF, 1, true)
+ .attr(AddBattlerTagAttr, BattlerTagType.CHARGED, true, true),
+ new StatusMove(Moves.TAUNT, Type.DARK, 100, 20, -1, 0, 3)
+ .unimplemented(),
+ new StatusMove(Moves.HELPING_HAND, Type.NORMAL, -1, 20, -1, 5, 3)
.attr(AddBattlerTagAttr, BattlerTagType.HELPING_HAND)
.target(MoveTarget.NEAR_ALLY),
- new StatusMove(Moves.TRICK, "Trick (N)", Type.PSYCHIC, 100, 10, "The user catches the target off guard and swaps its held item with its own.", -1, 0, 3),
- new StatusMove(Moves.ROLE_PLAY, "Role Play", Type.PSYCHIC, -1, 10, "The user mimics the target completely, copying the target's Ability.", -1, 0, 3)
+ new StatusMove(Moves.TRICK, Type.PSYCHIC, 100, 10, -1, 0, 3)
+ .unimplemented(),
+ new StatusMove(Moves.ROLE_PLAY, Type.PSYCHIC, -1, 10, -1, 0, 3)
.attr(AbilityCopyAttr),
- new SelfStatusMove(Moves.WISH, "Wish (N)", Type.NORMAL, -1, 10, "One turn after this move is used, the user's or its replacement's HP is restored by half the user's max HP.", -1, 0, 3)
- .triageMove(),
- new SelfStatusMove(Moves.ASSIST, "Assist", Type.NORMAL, -1, 20, "The user hurriedly and randomly uses a move among those known by ally Pokémon.", -1, 0, 3)
+ new SelfStatusMove(Moves.WISH, Type.NORMAL, -1, 10, -1, 0, 3)
+ .triageMove()
+ .unimplemented(),
+ new SelfStatusMove(Moves.ASSIST, Type.NORMAL, -1, 20, -1, 0, 3)
.attr(RandomMovesetMoveAttr, true)
.ignoresVirtual(),
- new SelfStatusMove(Moves.INGRAIN, "Ingrain", Type.GRASS, -1, 20, "The user lays roots that restore its HP on every turn. Because it's rooted, it can't switch out.", -1, 0, 3)
+ new SelfStatusMove(Moves.INGRAIN, Type.GRASS, -1, 20, -1, 0, 3)
.attr(AddBattlerTagAttr, BattlerTagType.INGRAIN, true, true),
- new AttackMove(Moves.SUPERPOWER, "Superpower", Type.FIGHTING, MoveCategory.PHYSICAL, 120, 100, 5, "The user attacks the target with great power. However, this also lowers the user's Attack and Defense stats.", 100, 0, 3)
+ new AttackMove(Moves.SUPERPOWER, Type.FIGHTING, MoveCategory.PHYSICAL, 120, 100, 5, 100, 0, 3)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF ], -1, true),
- new SelfStatusMove(Moves.MAGIC_COAT, "Magic Coat (N)", Type.PSYCHIC, -1, 15, "Moves like Leech Seed and moves that inflict status conditions are blocked by a barrier and reflected back to the user of those moves.", -1, 4, 3),
- new SelfStatusMove(Moves.RECYCLE, "Recycle (N)", Type.NORMAL, -1, 10, "The user recycles a held item that has been used in battle so it can be used again.", -1, 0, 3),
- new AttackMove(Moves.REVENGE, "Revenge", Type.FIGHTING, MoveCategory.PHYSICAL, 60, 100, 10, "This attack move's power is doubled if the user has been hurt by the opponent in the same turn.", -1, -4, 3)
+ new SelfStatusMove(Moves.MAGIC_COAT, Type.PSYCHIC, -1, 15, -1, 4, 3)
+ .unimplemented(),
+ new SelfStatusMove(Moves.RECYCLE, Type.NORMAL, -1, 10, -1, 0, 3)
+ .unimplemented(),
+ new AttackMove(Moves.REVENGE, Type.FIGHTING, MoveCategory.PHYSICAL, 60, 100, 10, -1, -4, 3)
.attr(TurnDamagedDoublePowerAttr),
- new AttackMove(Moves.BRICK_BREAK, "Brick Break (P)", Type.FIGHTING, MoveCategory.PHYSICAL, 75, 100, 15, "The user attacks with a swift chop. It can also break barriers, such as Light Screen and Reflect.", -1, 0, 3),
- new StatusMove(Moves.YAWN, "Yawn", Type.NORMAL, -1, 10, "The user lets loose a huge yawn that lulls the target into falling asleep on the next turn.", -1, 0, 3)
+ new AttackMove(Moves.BRICK_BREAK, Type.FIGHTING, MoveCategory.PHYSICAL, 75, 100, 15, -1, 0, 3)
+ .attr(RemoveScreensAttr),
+ new StatusMove(Moves.YAWN, Type.NORMAL, -1, 10, -1, 0, 3)
.attr(AddBattlerTagAttr, BattlerTagType.DROWSY, false, true)
.condition((user, target, move) => !target.status),
- new AttackMove(Moves.KNOCK_OFF, "Knock Off (P)", Type.DARK, MoveCategory.PHYSICAL, 65, 100, 20, "The user slaps down the target's held item, and that item can't be used in that battle. The move does more damage if the target has a held item.", -1, 0, 3),
- new AttackMove(Moves.ENDEAVOR, "Endeavor", Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 5, "This attack move cuts down the target's HP to equal the user's HP.", -1, 0, 3)
+ new AttackMove(Moves.KNOCK_OFF, Type.DARK, MoveCategory.PHYSICAL, 65, 100, 20, -1, 0, 3)
+ .partial(),
+ new AttackMove(Moves.ENDEAVOR, Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 5, -1, 0, 3)
.attr(MatchHpAttr)
.condition(failOnBossCondition),
- new AttackMove(Moves.ERUPTION, "Eruption", Type.FIRE, MoveCategory.SPECIAL, 150, 100, 5, "The user attacks opposing Pokémon with explosive fury. The lower the user's HP, the lower the move's power.", -1, 0, 3)
+ new AttackMove(Moves.ERUPTION, Type.FIRE, MoveCategory.SPECIAL, 150, 100, 5, -1, 0, 3)
.attr(HpPowerAttr)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new StatusMove(Moves.SKILL_SWAP, "Skill Swap", Type.PSYCHIC, -1, 10, "The user employs its psychic power to exchange Abilities with the target.", -1, 0, 3)
+ new StatusMove(Moves.SKILL_SWAP, Type.PSYCHIC, -1, 10, -1, 0, 3)
.attr(SwitchAbilitiesAttr),
- new SelfStatusMove(Moves.IMPRISON, "Imprison (N)", Type.PSYCHIC, -1, 10, "If opposing Pokémon know any move also known by the user, they are prevented from using it.", -1, 0, 3),
- new SelfStatusMove(Moves.REFRESH, "Refresh", Type.NORMAL, -1, 20, "The user rests to cure itself of poisoning, a burn, or paralysis.", -1, 0, 3)
+ new SelfStatusMove(Moves.IMPRISON, Type.PSYCHIC, -1, 10, -1, 0, 3)
+ .unimplemented(),
+ new SelfStatusMove(Moves.REFRESH, Type.NORMAL, -1, 20, -1, 0, 3)
.attr(HealStatusEffectAttr, true, StatusEffect.PARALYSIS, StatusEffect.POISON, StatusEffect.TOXIC, StatusEffect.BURN)
.condition((user, target, move) => user.status && (user.status.effect === StatusEffect.PARALYSIS || user.status.effect === StatusEffect.POISON || user.status.effect === StatusEffect.TOXIC || user.status.effect === StatusEffect.BURN)),
- new SelfStatusMove(Moves.GRUDGE, "Grudge (N)", Type.GHOST, -1, 5, "If the user faints, the user's grudge fully depletes the PP of the opponent's move that knocked it out.", -1, 0, 3),
- new SelfStatusMove(Moves.SNATCH, "Snatch (N)", Type.DARK, -1, 10, "The user steals the effects of any attempts to use a healing or stat-changing move.", -1, 4, 3),
- new AttackMove(Moves.SECRET_POWER, "Secret Power (P)", Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, "The additional effects of this attack depend upon where it was used.", 30, 0, 3)
- .makesContact(false),
- new AttackMove(Moves.DIVE, "Dive", Type.WATER, MoveCategory.PHYSICAL, 80, 100, 10, "Diving on the first turn, the user floats up and attacks on the next turn.", -1, 0, 3)
- .attr(ChargeAttr, ChargeAnim.DIVE_CHARGING, 'hid\nunderwater!', BattlerTagType.UNDERGROUND)
+ new SelfStatusMove(Moves.GRUDGE, Type.GHOST, -1, 5, -1, 0, 3)
+ .unimplemented(),
+ new SelfStatusMove(Moves.SNATCH, Type.DARK, -1, 10, -1, 4, 3)
+ .unimplemented(),
+ new AttackMove(Moves.SECRET_POWER, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, 30, 0, 3)
+ .makesContact(false)
+ .partial(),
+ new AttackMove(Moves.DIVE, Type.WATER, MoveCategory.PHYSICAL, 80, 100, 10, -1, 0, 3)
+ .attr(ChargeAttr, ChargeAnim.DIVE_CHARGING, 'hid\nunderwater!', BattlerTagType.UNDERWATER)
.ignoresVirtual(),
- new AttackMove(Moves.ARM_THRUST, "Arm Thrust", Type.FIGHTING, MoveCategory.PHYSICAL, 15, 100, 20, "The user lets loose a flurry of open-palmed arm thrusts that hit two to five times in a row.", -1, 0, 3)
+ new AttackMove(Moves.ARM_THRUST, Type.FIGHTING, MoveCategory.PHYSICAL, 15, 100, 20, -1, 0, 3)
.attr(MultiHitAttr),
- new SelfStatusMove(Moves.CAMOUFLAGE, "Camouflage", Type.NORMAL, -1, 20, "The user's type is changed depending on its environment, such as at water's edge, in grass, or in a cave.", -1, 0, 3)
+ new SelfStatusMove(Moves.CAMOUFLAGE, Type.NORMAL, -1, 20, -1, 0, 3)
.attr(CopyBiomeTypeAttr),
- new SelfStatusMove(Moves.TAIL_GLOW, "Tail Glow", Type.BUG, -1, 20, "The user stares at flashing lights to focus its mind, drastically raising its Sp. Atk stat.", -1, 0, 3)
+ new SelfStatusMove(Moves.TAIL_GLOW, Type.BUG, -1, 20, -1, 0, 3)
.attr(StatChangeAttr, BattleStat.SPATK, 3, true),
- new AttackMove(Moves.LUSTER_PURGE, "Luster Purge", Type.PSYCHIC, MoveCategory.SPECIAL, 95, 100, 5, "The user lets loose a damaging burst of light. This may also lower the target's Sp. Def stat.", 50, 0, 3)
+ new AttackMove(Moves.LUSTER_PURGE, Type.PSYCHIC, MoveCategory.SPECIAL, 95, 100, 5, 50, 0, 3)
.attr(StatChangeAttr, BattleStat.SPDEF, -1),
- new AttackMove(Moves.MIST_BALL, "Mist Ball", Type.PSYCHIC, MoveCategory.SPECIAL, 95, 100, 5, "A mist-like flurry of down envelops and damages the target. This may also lower the target's Sp. Atk stat.", 50, 0, 3)
+ new AttackMove(Moves.MIST_BALL, Type.PSYCHIC, MoveCategory.SPECIAL, 95, 100, 5, 50, 0, 3)
.attr(StatChangeAttr, BattleStat.SPATK, -1)
.ballBombMove(),
- new StatusMove(Moves.FEATHER_DANCE, "Feather Dance", Type.FLYING, 100, 15, "The user covers the target's body with a mass of down that harshly lowers its Attack stat.", -1, 0, 3)
+ new StatusMove(Moves.FEATHER_DANCE, Type.FLYING, 100, 15, -1, 0, 3)
.attr(StatChangeAttr, BattleStat.ATK, -2)
.danceMove(),
- new StatusMove(Moves.TEETER_DANCE, "Teeter Dance", Type.NORMAL, 100, 20, "The user performs a wobbly dance that confuses the Pokémon around it.", -1, 0, 3)
+ new StatusMove(Moves.TEETER_DANCE, Type.NORMAL, 100, 20, -1, 0, 3)
.attr(ConfuseAttr)
.danceMove()
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.BLAZE_KICK, "Blaze Kick", Type.FIRE, MoveCategory.PHYSICAL, 85, 90, 10, "The user launches a kick that lands a critical hit more easily. This may also leave the target with a burn.", 10, 0, 3)
+ new AttackMove(Moves.BLAZE_KICK, Type.FIRE, MoveCategory.PHYSICAL, 85, 90, 10, 10, 0, 3)
.attr(HighCritAttr)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new StatusMove(Moves.MUD_SPORT, "Mud Sport", Type.GROUND, -1, 15, "The user kicks up mud on the battlefield. This weakens Electric-type moves for five turns.", -1, 0, 3)
+ new StatusMove(Moves.MUD_SPORT, Type.GROUND, -1, 15, -1, 0, 3)
.attr(AddArenaTagAttr, ArenaTagType.MUD_SPORT, 5)
.target(MoveTarget.BOTH_SIDES),
- new AttackMove(Moves.ICE_BALL, "Ice Ball", Type.ICE, MoveCategory.PHYSICAL, 30, 90, 20, "The user attacks the target for five turns. The move's power increases each time it hits.", -1, 0, 3)
+ new AttackMove(Moves.ICE_BALL, Type.ICE, MoveCategory.PHYSICAL, 30, 90, 20, -1, 0, 3)
.attr(ConsecutiveUseDoublePowerAttr, 5, true, true, Moves.DEFENSE_CURL)
.ballBombMove(),
- new AttackMove(Moves.NEEDLE_ARM, "Needle Arm", Type.GRASS, MoveCategory.PHYSICAL, 60, 100, 15, "The user attacks by wildly swinging its thorny arms. This may also make the target flinch.", 30, 0, 3)
+ new AttackMove(Moves.NEEDLE_ARM, Type.GRASS, MoveCategory.PHYSICAL, 60, 100, 15, 30, 0, 3)
.attr(FlinchAttr),
- new SelfStatusMove(Moves.SLACK_OFF, "Slack Off", Type.NORMAL, -1, 5, "The user slacks off, restoring its own HP by up to half of its max HP.", -1, 0, 3)
+ new SelfStatusMove(Moves.SLACK_OFF, Type.NORMAL, -1, 5, -1, 0, 3)
.attr(HealAttr, 0.5)
.triageMove(),
- new AttackMove(Moves.HYPER_VOICE, "Hyper Voice", Type.NORMAL, MoveCategory.SPECIAL, 90, 100, 10, "The user lets loose a horribly echoing shout with the power to inflict damage.", -1, 0, 3)
+ new AttackMove(Moves.HYPER_VOICE, Type.NORMAL, MoveCategory.SPECIAL, 90, 100, 10, -1, 0, 3)
.soundBased()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.POISON_FANG, "Poison Fang", Type.POISON, MoveCategory.PHYSICAL, 50, 100, 15, "The user bites the target with toxic fangs. This may also leave the target badly poisoned.", 50, 0, 3)
+ new AttackMove(Moves.POISON_FANG, Type.POISON, MoveCategory.PHYSICAL, 50, 100, 15, 50, 0, 3)
.attr(StatusEffectAttr, StatusEffect.TOXIC)
.bitingMove(),
- new AttackMove(Moves.CRUSH_CLAW, "Crush Claw", Type.NORMAL, MoveCategory.PHYSICAL, 75, 95, 10, "The user slashes the target with hard and sharp claws. This may also lower the target's Defense stat.", 50, 0, 3)
+ new AttackMove(Moves.CRUSH_CLAW, Type.NORMAL, MoveCategory.PHYSICAL, 75, 95, 10, 50, 0, 3)
.attr(StatChangeAttr, BattleStat.DEF, -1),
- new AttackMove(Moves.BLAST_BURN, "Blast Burn", Type.FIRE, MoveCategory.SPECIAL, 150, 90, 5, "The target is razed by a fiery explosion. The user can't move on the next turn.", -1, 0, 3)
+ new AttackMove(Moves.BLAST_BURN, Type.FIRE, MoveCategory.SPECIAL, 150, 90, 5, -1, 0, 3)
.attr(RechargeAttr),
- new AttackMove(Moves.HYDRO_CANNON, "Hydro Cannon", Type.WATER, MoveCategory.SPECIAL, 150, 90, 5, "The target is hit with a watery blast. The user can't move on the next turn.", -1, 0, 3)
+ new AttackMove(Moves.HYDRO_CANNON, Type.WATER, MoveCategory.SPECIAL, 150, 90, 5, -1, 0, 3)
.attr(RechargeAttr),
- new AttackMove(Moves.METEOR_MASH, "Meteor Mash", Type.STEEL, MoveCategory.PHYSICAL, 90, 90, 10, "The target is hit with a hard punch fired like a meteor. This may also raise the user's Attack stat.", 20, 0, 3)
+ new AttackMove(Moves.METEOR_MASH, Type.STEEL, MoveCategory.PHYSICAL, 90, 90, 10, 20, 0, 3)
.attr(StatChangeAttr, BattleStat.ATK, 1, true)
.punchingMove(),
- new AttackMove(Moves.ASTONISH, "Astonish", Type.GHOST, MoveCategory.PHYSICAL, 30, 100, 15, "The user attacks the target while shouting in a startling fashion. This may also make the target flinch.", 30, 0, 3)
+ new AttackMove(Moves.ASTONISH, Type.GHOST, MoveCategory.PHYSICAL, 30, 100, 15, 30, 0, 3)
.attr(FlinchAttr),
- new AttackMove(Moves.WEATHER_BALL, "Weather Ball", Type.NORMAL, MoveCategory.SPECIAL, 50, 100, 10, "This attack move varies in power and type depending on the weather.", -1, 0, 3)
+ new AttackMove(Moves.WEATHER_BALL, Type.NORMAL, MoveCategory.SPECIAL, 50, 100, 10, -1, 0, 3)
.attr(WeatherBallTypeAttr)
- .attr(MovePowerMultiplierAttr, (user, target, move) => [WeatherType.SUNNY, WeatherType.RAIN, WeatherType.SANDSTORM, WeatherType.HAIL, WeatherType.FOG, WeatherType.HEAVY_RAIN, WeatherType.HARSH_SUN].includes(user.scene.arena.weather?.weatherType) && !user.scene.arena.weather?.isEffectSuppressed(user.scene) ? 2 : 1)
+ .attr(MovePowerMultiplierAttr, (user, target, move) => [WeatherType.SUNNY, WeatherType.RAIN, WeatherType.SANDSTORM, WeatherType.HAIL, WeatherType.SNOW, WeatherType.FOG, WeatherType.HEAVY_RAIN, WeatherType.HARSH_SUN].includes(user.scene.arena.weather?.weatherType) && !user.scene.arena.weather?.isEffectSuppressed(user.scene) ? 2 : 1)
.ballBombMove(),
- new StatusMove(Moves.AROMATHERAPY, "Aromatherapy (N)", Type.GRASS, -1, 5, "The user releases a soothing scent that heals all status conditions affecting the user's party.", -1, 0, 3)
- .target(MoveTarget.USER_AND_ALLIES),
- new StatusMove(Moves.FAKE_TEARS, "Fake Tears", Type.DARK, 100, 20, "The user feigns crying to fluster the target, harshly lowering its Sp. Def stat.", -1, 0, 3)
+ new StatusMove(Moves.AROMATHERAPY, Type.GRASS, -1, 5, -1, 0, 3)
+ .target(MoveTarget.USER_AND_ALLIES)
+ .unimplemented(),
+ new StatusMove(Moves.FAKE_TEARS, Type.DARK, 100, 20, -1, 0, 3)
.attr(StatChangeAttr, BattleStat.SPDEF, -2),
- new AttackMove(Moves.AIR_CUTTER, "Air Cutter", Type.FLYING, MoveCategory.SPECIAL, 60, 95, 25, "The user launches razor-like wind to slash opposing Pokémon. Critical hits land more easily.", -1, 0, 3)
+ new AttackMove(Moves.AIR_CUTTER, Type.FLYING, MoveCategory.SPECIAL, 60, 95, 25, -1, 0, 3)
.attr(HighCritAttr)
.slicingMove()
.windMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.OVERHEAT, "Overheat", Type.FIRE, MoveCategory.SPECIAL, 130, 90, 5, "The user attacks the target at full power. The attack's recoil harshly lowers the user's Sp. Atk stat.", 100, 0, 3)
+ new AttackMove(Moves.OVERHEAT, Type.FIRE, MoveCategory.SPECIAL, 130, 90, 5, 100, 0, 3)
.attr(StatChangeAttr, BattleStat.SPATK, -2, true)
.attr(HealStatusEffectAttr, true, StatusEffect.FREEZE),
- new StatusMove(Moves.ODOR_SLEUTH, "Odor Sleuth (N)", Type.NORMAL, -1, 40, "Enables a Ghost-type target to be hit by Normal- and Fighting-type attacks. This also enables an evasive target to be hit.", -1, 0, 3),
- new AttackMove(Moves.ROCK_TOMB, "Rock Tomb", Type.ROCK, MoveCategory.PHYSICAL, 60, 95, 15, "Boulders are hurled at the target. This also lowers the target's Speed stat by preventing its movement.", 100, 0, 3)
+ new StatusMove(Moves.ODOR_SLEUTH, Type.NORMAL, -1, 40, -1, 0, 3)
+ .unimplemented(),
+ new AttackMove(Moves.ROCK_TOMB, Type.ROCK, MoveCategory.PHYSICAL, 60, 95, 15, 100, 0, 3)
.attr(StatChangeAttr, BattleStat.SPD, -1)
.makesContact(false),
- new AttackMove(Moves.SILVER_WIND, "Silver Wind", Type.BUG, MoveCategory.SPECIAL, 60, 100, 5, "The target is attacked with powdery scales blown by the wind. This may also raise all the user's stats.", 10, 0, 3)
+ new AttackMove(Moves.SILVER_WIND, Type.BUG, MoveCategory.SPECIAL, 60, 100, 5, 10, 0, 3)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF, BattleStat.SPATK, BattleStat.SPDEF, BattleStat.SPD ], 1, true)
.windMove(),
- new StatusMove(Moves.METAL_SOUND, "Metal Sound", Type.STEEL, 85, 40, "A horrible sound like scraping metal harshly lowers the target's Sp. Def stat.", -1, 0, 3)
+ new StatusMove(Moves.METAL_SOUND, Type.STEEL, 85, 40, -1, 0, 3)
.attr(StatChangeAttr, BattleStat.SPDEF, -2)
.soundBased(),
- new StatusMove(Moves.GRASS_WHISTLE, "Grass Whistle", Type.GRASS, 55, 15, "The user plays a pleasant melody that lulls the target into a deep sleep.", -1, 0, 3)
+ new StatusMove(Moves.GRASS_WHISTLE, Type.GRASS, 55, 15, -1, 0, 3)
.attr(StatusEffectAttr, StatusEffect.SLEEP)
.soundBased(),
- new StatusMove(Moves.TICKLE, "Tickle", Type.NORMAL, 100, 20, "The user tickles the target into laughing, reducing its Attack and Defense stats.", -1, 0, 3)
+ new StatusMove(Moves.TICKLE, Type.NORMAL, 100, 20, -1, 0, 3)
.attr(StatChangeAttr, BattleStat.ATK, -1)
.attr(StatChangeAttr, BattleStat.DEF, -1),
- new SelfStatusMove(Moves.COSMIC_POWER, "Cosmic Power", Type.PSYCHIC, -1, 20, "The user absorbs a mystical power from space to raise its Defense and Sp. Def stats.", -1, 0, 3)
+ new SelfStatusMove(Moves.COSMIC_POWER, Type.PSYCHIC, -1, 20, -1, 0, 3)
.attr(StatChangeAttr, [ BattleStat.DEF, BattleStat.SPDEF ], 1, true),
- new AttackMove(Moves.WATER_SPOUT, "Water Spout", Type.WATER, MoveCategory.SPECIAL, 150, 100, 5, "The user spouts water to damage opposing Pokémon. The lower the user's HP, the lower the move's power.", -1, 0, 3)
+ new AttackMove(Moves.WATER_SPOUT, Type.WATER, MoveCategory.SPECIAL, 150, 100, 5, -1, 0, 3)
.attr(HpPowerAttr)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.SIGNAL_BEAM, "Signal Beam", Type.BUG, MoveCategory.SPECIAL, 75, 100, 15, "The user attacks with a sinister beam of light. This may also confuse the target.", 10, 0, 3)
+ new AttackMove(Moves.SIGNAL_BEAM, Type.BUG, MoveCategory.SPECIAL, 75, 100, 15, 10, 0, 3)
.attr(ConfuseAttr),
- new AttackMove(Moves.SHADOW_PUNCH, "Shadow Punch", Type.GHOST, MoveCategory.PHYSICAL, 60, -1, 20, "The user throws a punch from the shadows. This attack never misses.", -1, 0, 3)
+ new AttackMove(Moves.SHADOW_PUNCH, Type.GHOST, MoveCategory.PHYSICAL, 60, -1, 20, -1, 0, 3)
.punchingMove(),
- new AttackMove(Moves.EXTRASENSORY, "Extrasensory", Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 20, "The user attacks with an odd, unseeable power. This may also make the target flinch.", 10, 0, 3)
+ new AttackMove(Moves.EXTRASENSORY, Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 20, 10, 0, 3)
.attr(FlinchAttr),
- new AttackMove(Moves.SKY_UPPERCUT, "Sky Uppercut", Type.FIGHTING, MoveCategory.PHYSICAL, 85, 90, 15, "The user attacks the target with an uppercut thrown skyward with force.", -1, 0, 3)
+ new AttackMove(Moves.SKY_UPPERCUT, Type.FIGHTING, MoveCategory.PHYSICAL, 85, 90, 15, -1, 0, 3)
.attr(HitsTagAttr, BattlerTagType.FLYING)
.punchingMove(),
- new AttackMove(Moves.SAND_TOMB, "Sand Tomb", Type.GROUND, MoveCategory.PHYSICAL, 35, 85, 15, "The user traps the target inside a harshly raging sandstorm for four to five turns.", 100, 0, 3)
+ new AttackMove(Moves.SAND_TOMB, Type.GROUND, MoveCategory.PHYSICAL, 35, 85, 15, 100, 0, 3)
.attr(TrapAttr, BattlerTagType.SAND_TOMB)
.makesContact(false),
- new AttackMove(Moves.SHEER_COLD, "Sheer Cold", Type.ICE, MoveCategory.SPECIAL, -1, 30, 5, "The target faints instantly. It's less likely to hit the target if it's used by Pokémon other than Ice types.", -1, 0, 3)
+ new AttackMove(Moves.SHEER_COLD, Type.ICE, MoveCategory.SPECIAL, 200, 30, 5, -1, 0, 3)
.attr(OneHitKOAttr)
.attr(OneHitKOAccuracyAttr),
- new AttackMove(Moves.MUDDY_WATER, "Muddy Water", Type.WATER, MoveCategory.SPECIAL, 90, 85, 10, "The user attacks by shooting muddy water at opposing Pokémon. This may also lower their accuracy.", 30, 0, 3)
+ new AttackMove(Moves.MUDDY_WATER, Type.WATER, MoveCategory.SPECIAL, 90, 85, 10, 30, 0, 3)
.attr(StatChangeAttr, BattleStat.ACC, -1)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.BULLET_SEED, "Bullet Seed", Type.GRASS, MoveCategory.PHYSICAL, 25, 100, 30, "The user forcefully shoots seeds at the target two to five times in a row.", -1, 0, 3)
+ new AttackMove(Moves.BULLET_SEED, Type.GRASS, MoveCategory.PHYSICAL, 25, 100, 30, -1, 0, 3)
.attr(MultiHitAttr)
.makesContact(false)
.ballBombMove(),
- new AttackMove(Moves.AERIAL_ACE, "Aerial Ace", Type.FLYING, MoveCategory.PHYSICAL, 60, -1, 20, "The user confounds the target with speed, then slashes. This attack never misses.", -1, 0, 3)
+ new AttackMove(Moves.AERIAL_ACE, Type.FLYING, MoveCategory.PHYSICAL, 60, -1, 20, -1, 0, 3)
.slicingMove(),
- new AttackMove(Moves.ICICLE_SPEAR, "Icicle Spear", Type.ICE, MoveCategory.PHYSICAL, 25, 100, 30, "The user launches sharp icicles at the target two to five times in a row.", -1, 0, 3)
+ new AttackMove(Moves.ICICLE_SPEAR, Type.ICE, MoveCategory.PHYSICAL, 25, 100, 30, -1, 0, 3)
.attr(MultiHitAttr)
.makesContact(false),
- new SelfStatusMove(Moves.IRON_DEFENSE, "Iron Defense", Type.STEEL, -1, 15, "The user hardens its body's surface like iron, sharply raising its Defense stat.", -1, 0, 3)
+ new SelfStatusMove(Moves.IRON_DEFENSE, Type.STEEL, -1, 15, -1, 0, 3)
.attr(StatChangeAttr, BattleStat.DEF, 2, true),
- new StatusMove(Moves.BLOCK, "Block", Type.NORMAL, -1, 5, "The user blocks the target's way with arms spread wide to prevent escape.", -1, 0, 3)
+ new StatusMove(Moves.BLOCK, Type.NORMAL, -1, 5, -1, 0, 3)
.attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, false, true, 1),
- new StatusMove(Moves.HOWL, "Howl", Type.NORMAL, -1, 40, "The user howls loudly to raise the spirit of itself and allies. This raises their Attack stats.", -1, 0, 3)
+ new StatusMove(Moves.HOWL, Type.NORMAL, -1, 40, -1, 0, 3)
.attr(StatChangeAttr, BattleStat.ATK, 1)
.soundBased()
.target(MoveTarget.USER_AND_ALLIES),
- new AttackMove(Moves.DRAGON_CLAW, "Dragon Claw", Type.DRAGON, MoveCategory.PHYSICAL, 80, 100, 15, "The user slashes the target with huge sharp claws.", -1, 0, 3),
- new AttackMove(Moves.FRENZY_PLANT, "Frenzy Plant", Type.GRASS, MoveCategory.SPECIAL, 150, 90, 5, "The user slams the target with the roots of an enormous tree. The user can't move on the next turn.", -1, 0, 3)
+ new AttackMove(Moves.DRAGON_CLAW, Type.DRAGON, MoveCategory.PHYSICAL, 80, 100, 15, -1, 0, 3),
+ new AttackMove(Moves.FRENZY_PLANT, Type.GRASS, MoveCategory.SPECIAL, 150, 90, 5, -1, 0, 3)
.attr(RechargeAttr),
- new SelfStatusMove(Moves.BULK_UP, "Bulk Up", Type.FIGHTING, -1, 20, "The user tenses its muscles to bulk up its body, raising both its Attack and Defense stats.", -1, 0, 3)
+ new SelfStatusMove(Moves.BULK_UP, Type.FIGHTING, -1, 20, -1, 0, 3)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF ], 1, true),
- new AttackMove(Moves.BOUNCE, "Bounce", Type.FLYING, MoveCategory.PHYSICAL, 85, 85, 5, "The user bounces up high, then drops on the target on the second turn. This may also leave the target with paralysis.", 30, 0, 3)
+ new AttackMove(Moves.BOUNCE, Type.FLYING, MoveCategory.PHYSICAL, 85, 85, 5, 30, 0, 3)
.attr(ChargeAttr, ChargeAnim.BOUNCE_CHARGING, 'sprang up!', BattlerTagType.FLYING)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.condition(failOnGravityCondition)
.ignoresVirtual(),
- new AttackMove(Moves.MUD_SHOT, "Mud Shot", Type.GROUND, MoveCategory.SPECIAL, 55, 95, 15, "The user attacks by hurling a blob of mud at the target. This also lowers the target's Speed stat.", 100, 0, 3)
+ new AttackMove(Moves.MUD_SHOT, Type.GROUND, MoveCategory.SPECIAL, 55, 95, 15, 100, 0, 3)
.attr(StatChangeAttr, BattleStat.SPD, -1),
- new AttackMove(Moves.POISON_TAIL, "Poison Tail", Type.POISON, MoveCategory.PHYSICAL, 50, 100, 25, "The user hits the target with its tail. This may also poison the target. Critical hits land more easily.", 10, 0, 3)
+ new AttackMove(Moves.POISON_TAIL, Type.POISON, MoveCategory.PHYSICAL, 50, 100, 25, 10, 0, 3)
.attr(HighCritAttr)
.attr(StatusEffectAttr, StatusEffect.POISON),
- new AttackMove(Moves.COVET, "Covet", Type.NORMAL, MoveCategory.PHYSICAL, 60, 100, 25, "The user endearingly approaches the target, then has a 30% chance to steal the target's held item.", -1, 0, 3)
+ new AttackMove(Moves.COVET, Type.NORMAL, MoveCategory.PHYSICAL, 60, 100, 25, -1, 0, 3)
.attr(StealHeldItemChanceAttr, 0.3),
- new AttackMove(Moves.VOLT_TACKLE, "Volt Tackle", Type.ELECTRIC, MoveCategory.PHYSICAL, 120, 100, 15, "The user electrifies itself and charges the target. This also damages the user quite a lot. This attack may leave the target with paralysis.", 10, 0, 3)
+ new AttackMove(Moves.VOLT_TACKLE, Type.ELECTRIC, MoveCategory.PHYSICAL, 120, 100, 15, 10, 0, 3)
.attr(RecoilAttr, false, 0.33)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new AttackMove(Moves.MAGICAL_LEAF, "Magical Leaf", Type.GRASS, MoveCategory.SPECIAL, 60, -1, 20, "The user scatters curious leaves that chase the target. This attack never misses.", -1, 0, 3),
- new StatusMove(Moves.WATER_SPORT, "Water Sport", Type.WATER, -1, 15, "The user soaks the battlefield with water. This weakens Fire-type moves for five turns.", -1, 0, 3)
+ new AttackMove(Moves.MAGICAL_LEAF, Type.GRASS, MoveCategory.SPECIAL, 60, -1, 20, -1, 0, 3),
+ new StatusMove(Moves.WATER_SPORT, Type.WATER, -1, 15, -1, 0, 3)
.attr(AddArenaTagAttr, ArenaTagType.WATER_SPORT, 5)
.target(MoveTarget.BOTH_SIDES),
- new SelfStatusMove(Moves.CALM_MIND, "Calm Mind", Type.PSYCHIC, -1, 20, "The user quietly focuses its mind and calms its spirit to raise its Sp. Atk and Sp. Def stats.", -1, 0, 3)
+ new SelfStatusMove(Moves.CALM_MIND, Type.PSYCHIC, -1, 20, -1, 0, 3)
.attr(StatChangeAttr, [ BattleStat.SPATK, BattleStat.SPDEF ], 1, true),
- new AttackMove(Moves.LEAF_BLADE, "Leaf Blade", Type.GRASS, MoveCategory.PHYSICAL, 90, 100, 15, "The user handles a sharp leaf like a sword and attacks by cutting its target. Critical hits land more easily.", -1, 0, 3)
+ new AttackMove(Moves.LEAF_BLADE, Type.GRASS, MoveCategory.PHYSICAL, 90, 100, 15, -1, 0, 3)
.attr(HighCritAttr)
.slicingMove(),
- new SelfStatusMove(Moves.DRAGON_DANCE, "Dragon Dance", Type.DRAGON, -1, 20, "The user vigorously performs a mystic, powerful dance that raises its Attack and Speed stats.", -1, 0, 3)
+ new SelfStatusMove(Moves.DRAGON_DANCE, Type.DRAGON, -1, 20, -1, 0, 3)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPD ], 1, true)
.danceMove(),
- new AttackMove(Moves.ROCK_BLAST, "Rock Blast", Type.ROCK, MoveCategory.PHYSICAL, 25, 90, 10, "The user hurls hard rocks at the target. Two to five rocks are launched in a row.", -1, 0, 3)
+ new AttackMove(Moves.ROCK_BLAST, Type.ROCK, MoveCategory.PHYSICAL, 25, 90, 10, -1, 0, 3)
.attr(MultiHitAttr)
.makesContact(false)
.ballBombMove(),
- new AttackMove(Moves.SHOCK_WAVE, "Shock Wave", Type.ELECTRIC, MoveCategory.SPECIAL, 60, -1, 20, "The user strikes the target with a quick jolt of electricity. This attack never misses.", -1, 0, 3),
- new AttackMove(Moves.WATER_PULSE, "Water Pulse", Type.WATER, MoveCategory.SPECIAL, 60, 100, 20, "The user attacks the target with a pulsing blast of water. This may also confuse the target.", 20, 0, 3)
+ new AttackMove(Moves.SHOCK_WAVE, Type.ELECTRIC, MoveCategory.SPECIAL, 60, -1, 20, -1, 0, 3),
+ new AttackMove(Moves.WATER_PULSE, Type.WATER, MoveCategory.SPECIAL, 60, 100, 20, 20, 0, 3)
.attr(ConfuseAttr)
.pulseMove(),
- new AttackMove(Moves.DOOM_DESIRE, "Doom Desire", Type.STEEL, MoveCategory.SPECIAL, 140, 100, 5, "Two turns after this move is used, a concentrated bundle of light blasts the target.", -1, 0, 3)
- .attr(DelayedAttackAttr, ArenaTagType.DOOM_DESIRE, ChargeAnim.DOOM_DESIRE_CHARGING, 'chose\nDOOM DESIRE as its destiny!'),
- new AttackMove(Moves.PSYCHO_BOOST, "Psycho Boost", Type.PSYCHIC, MoveCategory.SPECIAL, 140, 90, 5, "The user attacks the target at full power. The attack's recoil harshly lowers the user's Sp. Atk stat.", 100, 0, 3)
+ new AttackMove(Moves.DOOM_DESIRE, Type.STEEL, MoveCategory.SPECIAL, 140, 100, 5, -1, 0, 3)
+ .attr(DelayedAttackAttr, ArenaTagType.DOOM_DESIRE, ChargeAnim.DOOM_DESIRE_CHARGING, 'chose\nDoom Desire as its destiny!'),
+ new AttackMove(Moves.PSYCHO_BOOST, Type.PSYCHIC, MoveCategory.SPECIAL, 140, 90, 5, 100, 0, 3)
.attr(StatChangeAttr, BattleStat.SPATK, -2, true),
- new SelfStatusMove(Moves.ROOST, "Roost", Type.FLYING, -1, 5, "The user lands and rests its body. This move restores the user's HP by up to half of its max HP.", -1, 0, 4)
+ new SelfStatusMove(Moves.ROOST, Type.FLYING, -1, 5, -1, 0, 4)
.attr(HealAttr, 0.5)
- .attr(AddBattlerTagAttr, BattlerTagType.IGNORE_FLYING, true, false, 1)
+ .attr(AddBattlerTagAttr, BattlerTagType.GROUNDED, true, false, 1)
.triageMove(),
- new StatusMove(Moves.GRAVITY, "Gravity", Type.PSYCHIC, -1, 5, "This move enables Flying-type Pokémon or Pokémon with the Levitate Ability to be hit by Ground-type moves. Moves that involve flying can't be used.", -1, 0, 4)
+ new StatusMove(Moves.GRAVITY, Type.PSYCHIC, -1, 5, -1, 0, 4)
.attr(AddArenaTagAttr, ArenaTagType.GRAVITY, 5)
.target(MoveTarget.BOTH_SIDES),
- new StatusMove(Moves.MIRACLE_EYE, "Miracle Eye (N)", Type.PSYCHIC, -1, 40, "Enables a Dark-type target to be hit by Psychic-type attacks. This also enables an evasive target to be hit.", -1, 0, 4),
- new AttackMove(Moves.WAKE_UP_SLAP, "Wake-Up Slap", Type.FIGHTING, MoveCategory.PHYSICAL, 70, 100, 10, "This attack inflicts big damage on a sleeping target. This also wakes the target up, however.", -1, 0, 4)
+ new StatusMove(Moves.MIRACLE_EYE, Type.PSYCHIC, -1, 40, -1, 0, 4)
+ .unimplemented(),
+ new AttackMove(Moves.WAKE_UP_SLAP, Type.FIGHTING, MoveCategory.PHYSICAL, 70, 100, 10, -1, 0, 4)
.attr(MovePowerMultiplierAttr, (user, target, move) => target.status?.effect === StatusEffect.SLEEP ? 2 : 1)
.attr(HealStatusEffectAttr, false, StatusEffect.SLEEP),
- new AttackMove(Moves.HAMMER_ARM, "Hammer Arm", Type.FIGHTING, MoveCategory.PHYSICAL, 100, 90, 10, "The user swings and hits with its strong, heavy fist. It lowers the user's Speed, however.", 100, 0, 4)
+ new AttackMove(Moves.HAMMER_ARM, Type.FIGHTING, MoveCategory.PHYSICAL, 100, 90, 10, 100, 0, 4)
.attr(StatChangeAttr, BattleStat.SPD, -1, true)
.punchingMove(),
- new AttackMove(Moves.GYRO_BALL, "Gyro Ball", Type.STEEL, MoveCategory.PHYSICAL, -1, 100, 5, "The user tackles the target with a high-speed spin. The slower the user compared to the target, the greater the move's power.", -1, 0, 4)
+ new AttackMove(Moves.GYRO_BALL, Type.STEEL, MoveCategory.PHYSICAL, -1, 100, 5, -1, 0, 4)
.attr(BattleStatRatioPowerAttr, Stat.SPD, true)
.ballBombMove(),
- new SelfStatusMove(Moves.HEALING_WISH, "Healing Wish", Type.PSYCHIC, -1, 10, "The user faints. In return, the Pokémon taking its place will have its HP restored and status conditions cured.", -1, 0, 4)
+ new SelfStatusMove(Moves.HEALING_WISH, Type.PSYCHIC, -1, 10, -1, 0, 4)
.attr(SacrificialFullRestoreAttr)
.triageMove(),
- new AttackMove(Moves.BRINE, "Brine", Type.WATER, MoveCategory.SPECIAL, 65, 100, 10, "If the target's HP is half or less, this attack will hit with double the power.", -1, 0, 4)
+ new AttackMove(Moves.BRINE, Type.WATER, MoveCategory.SPECIAL, 65, 100, 10, -1, 0, 4)
.attr(MovePowerMultiplierAttr, (user, target, move) => target.getHpRatio() < 0.5 ? 2 : 1),
- new AttackMove(Moves.NATURAL_GIFT, "Natural Gift (N)", Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 15, "The user draws power to attack by using its held Berry. The Berry determines the move's type and power.", -1, 0, 4)
- .makesContact(false),
- new AttackMove(Moves.FEINT, "Feint", Type.NORMAL, MoveCategory.PHYSICAL, 30, 100, 10, "This attack hits a target using a move such as Protect or Detect. This also lifts the effects of those moves.", -1, 2, 4)
+ new AttackMove(Moves.NATURAL_GIFT, Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 15, -1, 0, 4)
+ .makesContact(false)
+ .unimplemented(),
+ new AttackMove(Moves.FEINT, Type.NORMAL, MoveCategory.PHYSICAL, 30, 100, 10, -1, 2, 4)
.attr(RemoveBattlerTagAttr, [ BattlerTagType.PROTECTED ])
.makesContact(false)
.ignoresProtect(),
- new AttackMove(Moves.PLUCK, "Pluck (P)", Type.FLYING, MoveCategory.PHYSICAL, 60, 100, 20, "The user pecks the target. If the target is holding a Berry, the user eats it and gains its effect.", -1, 0, 4),
- new StatusMove(Moves.TAILWIND, "Tailwind (N)", Type.FLYING, -1, 15, "The user whips up a turbulent whirlwind that ups the Speed stats of the user and its allies for four turns.", -1, 0, 4)
+ new AttackMove(Moves.PLUCK, Type.FLYING, MoveCategory.PHYSICAL, 60, 100, 20, -1, 0, 4)
+ .partial(),
+ new StatusMove(Moves.TAILWIND, Type.FLYING, -1, 15, -1, 0, 4)
.windMove()
- .target(MoveTarget.USER_SIDE),
- new StatusMove(Moves.ACUPRESSURE, "Acupressure", Type.NORMAL, -1, 30, "The user applies pressure to stress points, sharply boosting one of its or its allies' stats.", -1, 0, 4)
+ .target(MoveTarget.USER_SIDE)
+ .unimplemented(),
+ new StatusMove(Moves.ACUPRESSURE, Type.NORMAL, -1, 30, -1, 0, 4)
.attr(StatChangeAttr, BattleStat.RAND, 2)
.target(MoveTarget.USER_OR_NEAR_ALLY),
- new AttackMove(Moves.METAL_BURST, "Metal Burst", Type.STEEL, MoveCategory.PHYSICAL, -1, 100, 10, "The user retaliates with much greater force against the opponent that last inflicted damage on it.", -1, 0, 4)
+ new AttackMove(Moves.METAL_BURST, Type.STEEL, MoveCategory.PHYSICAL, -1, 100, 10, -1, 0, 4)
.attr(CounterDamageAttr, (move: Move) => (move.category === MoveCategory.PHYSICAL || move.category === MoveCategory.SPECIAL), 1.5)
.makesContact(false)
.target(MoveTarget.ATTACKER),
- new AttackMove(Moves.U_TURN, "U-turn", Type.BUG, MoveCategory.PHYSICAL, 70, 100, 20, "After making its attack, the user rushes back to switch places with a party Pokémon in waiting.", -1, 0, 4)
- .attr(ForceSwitchOutAttr, true),
- new AttackMove(Moves.CLOSE_COMBAT, "Close Combat", Type.FIGHTING, MoveCategory.PHYSICAL, 120, 100, 5, "The user fights the target up close without guarding itself. This also lowers the user's Defense and Sp. Def stats.", 100, 0, 4)
+ new AttackMove(Moves.U_TURN, Type.BUG, MoveCategory.PHYSICAL, 70, 100, 20, -1, 0, 4)
+ .attr(ForceSwitchOutAttr, true, false),
+ new AttackMove(Moves.CLOSE_COMBAT, Type.FIGHTING, MoveCategory.PHYSICAL, 120, 100, 5, 100, 0, 4)
.attr(StatChangeAttr, [ BattleStat.DEF, BattleStat.SPDEF ], -1, true),
- new AttackMove(Moves.PAYBACK, "Payback (P)", Type.DARK, MoveCategory.PHYSICAL, 50, 100, 10, "The user stores power, then attacks. If the user moves after the target, this attack's power will be doubled.", -1, 0, 4),
- new AttackMove(Moves.ASSURANCE, "Assurance (P)", Type.DARK, MoveCategory.PHYSICAL, 60, 100, 10, "If the target has already taken some damage in the same turn, this attack's power is doubled.", -1, 0, 4),
- new StatusMove(Moves.EMBARGO, "Embargo (N)", Type.DARK, 100, 15, "This move prevents the target from using its held item for five turns. Its Trainer is also prevented from using items on it.", -1, 0, 4),
- new AttackMove(Moves.FLING, "Fling (N)", Type.DARK, MoveCategory.PHYSICAL, -1, 100, 10, "The user flings its held item at the target to attack. This move's power and effects depend on the item.", -1, 0, 4)
- .makesContact(false),
- new StatusMove(Moves.PSYCHO_SHIFT, "Psycho Shift (N)", Type.PSYCHIC, 100, 10, "Using its psychic power of suggestion, the user transfers its status conditions to the target.", -1, 0, 4),
- new AttackMove(Moves.TRUMP_CARD, "Trump Card (N)", Type.NORMAL, MoveCategory.SPECIAL, -1, -1, 5, "The fewer PP this move has, the greater its power.", -1, 0, 4)
- .makesContact(),
- new StatusMove(Moves.HEAL_BLOCK, "Heal Block (N)", Type.PSYCHIC, 100, 15, "For five turns, the user prevents the opposing team from using any moves, Abilities, or held items that recover HP.", -1, 0, 4)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.WRING_OUT, "Wring Out", Type.NORMAL, MoveCategory.SPECIAL, -1, 100, 5, "The user powerfully wrings the target. The more HP the target has, the greater the move's power.", -1, 0, 4)
+ new AttackMove(Moves.PAYBACK, Type.DARK, MoveCategory.PHYSICAL, 50, 100, 10, -1, 0, 4)
+ .attr(MovePowerMultiplierAttr, (user, target, move) => target.getLastXMoves(1).find(m => m.turn === target.scene.currentBattle.turn) || user.scene.currentBattle.turnCommands[target.getBattlerIndex()].command === Command.BALL ? 2 : 1),
+ new AttackMove(Moves.ASSURANCE, Type.DARK, MoveCategory.PHYSICAL, 60, 100, 10, -1, 0, 4)
+ .partial(),
+ new StatusMove(Moves.EMBARGO, Type.DARK, 100, 15, -1, 0, 4)
+ .unimplemented(),
+ new AttackMove(Moves.FLING, Type.DARK, MoveCategory.PHYSICAL, -1, 100, 10, -1, 0, 4)
+ .makesContact(false)
+ .unimplemented(),
+ new StatusMove(Moves.PSYCHO_SHIFT, Type.PSYCHIC, 100, 10, -1, 0, 4)
+ .attr(PsychoShiftEffectAttr)
+ .condition((user, target, move) => (user.status?.effect === StatusEffect.BURN
+ || user.status?.effect === StatusEffect.POISON
+ || user.status?.effect === StatusEffect.TOXIC
+ || user.status?.effect === StatusEffect.PARALYSIS
+ || user.status?.effect === StatusEffect.SLEEP)
+ && target.canSetStatus(user.status?.effect)
+ ),
+ new AttackMove(Moves.TRUMP_CARD, Type.NORMAL, MoveCategory.SPECIAL, -1, -1, 5, -1, 0, 4)
+ .makesContact()
+ .unimplemented(),
+ new StatusMove(Moves.HEAL_BLOCK, Type.PSYCHIC, 100, 15, -1, 0, 4)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.WRING_OUT, Type.NORMAL, MoveCategory.SPECIAL, -1, 100, 5, -1, 0, 4)
.attr(OpponentHighHpPowerAttr)
.makesContact(),
- new SelfStatusMove(Moves.POWER_TRICK, "Power Trick (N)", Type.PSYCHIC, -1, 10, "The user employs its psychic power to switch its Attack stat with its Defense stat.", -1, 0, 4),
- new StatusMove(Moves.GASTRO_ACID, "Gastro Acid (N)", Type.POISON, 100, 10, "The user hurls up its stomach acids on the target. The fluid eliminates the effect of the target's Ability.", -1, 0, 4),
- new StatusMove(Moves.LUCKY_CHANT, "Lucky Chant (N)", Type.NORMAL, -1, 30, "The user chants an incantation toward the sky, preventing opposing Pokémon from landing critical hits for five turns.", -1, 0, 4)
+ new SelfStatusMove(Moves.POWER_TRICK, Type.PSYCHIC, -1, 10, -1, 0, 4)
+ .unimplemented(),
+ new StatusMove(Moves.GASTRO_ACID, Type.POISON, 100, 10, -1, 0, 4)
+ .unimplemented(),
+ new StatusMove(Moves.LUCKY_CHANT, Type.NORMAL, -1, 30, -1, 0, 4)
.attr(AddBattlerTagAttr, BattlerTagType.NO_CRIT, false, false, 5)
- .target(MoveTarget.USER_SIDE),
- new StatusMove(Moves.ME_FIRST, "Me First (N)", Type.NORMAL, -1, 20, "The user cuts ahead of the target to copy and use the target's intended move with greater power. This move fails if it isn't used first.", -1, 0, 4)
+ .target(MoveTarget.USER_SIDE)
+ .unimplemented(),
+ new StatusMove(Moves.ME_FIRST, Type.NORMAL, -1, 20, -1, 0, 4)
.ignoresVirtual()
- .target(MoveTarget.NEAR_ENEMY),
- new SelfStatusMove(Moves.COPYCAT, "Copycat", Type.NORMAL, -1, 20, "The user mimics the move used immediately before it. The move fails if no other move has been used yet.", -1, 0, 4)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new SelfStatusMove(Moves.COPYCAT, Type.NORMAL, -1, 20, -1, 0, 4)
.attr(CopyMoveAttr)
.ignoresVirtual(),
- new StatusMove(Moves.POWER_SWAP, "Power Swap (N)", Type.PSYCHIC, -1, 10, "The user employs its psychic power to switch changes to its Attack and Sp. Atk stats with the target.", -1, 0, 4),
- new StatusMove(Moves.GUARD_SWAP, "Guard Swap (N)", Type.PSYCHIC, -1, 10, "The user employs its psychic power to switch changes to its Defense and Sp. Def stats with the target.", -1, 0, 4),
- new AttackMove(Moves.PUNISHMENT, "Punishment (N)", Type.DARK, MoveCategory.PHYSICAL, -1, 100, 5, "The more the target has powered up with stat changes, the greater the move's power.", -1, 0, 4),
- new AttackMove(Moves.LAST_RESORT, "Last Resort", Type.NORMAL, MoveCategory.PHYSICAL, 140, 100, 5, "This move can be used only after the user has used all the other moves it knows in the battle.", -1, 0, 4)
+ new StatusMove(Moves.POWER_SWAP, Type.PSYCHIC, -1, 10, -1, 0, 4)
+ .unimplemented(),
+ new StatusMove(Moves.GUARD_SWAP, Type.PSYCHIC, -1, 10, -1, 0, 4)
+ .unimplemented(),
+ new AttackMove(Moves.PUNISHMENT, Type.DARK, MoveCategory.PHYSICAL, -1, 100, 5, -1, 0, 4)
+ .unimplemented(),
+ new AttackMove(Moves.LAST_RESORT, Type.NORMAL, MoveCategory.PHYSICAL, 140, 100, 5, -1, 0, 4)
.condition((user, target, move) => {
const uniqueUsedMoveIds = new Set();
const movesetMoveIds = user.getMoveset().map(m => m.moveId);
@@ -4184,1314 +4762,1563 @@ export function initMoves() {
});
return uniqueUsedMoveIds.size >= movesetMoveIds.length - 1;
}),
- new StatusMove(Moves.WORRY_SEED, "Worry Seed", Type.GRASS, 100, 10, "A seed that causes worry is planted on the target. It prevents sleep by making the target's Ability Insomnia.", -1, 0, 4)
+ new StatusMove(Moves.WORRY_SEED, Type.GRASS, 100, 10, -1, 0, 4)
.attr(AbilityChangeAttr, Abilities.INSOMNIA),
- new AttackMove(Moves.SUCKER_PUNCH, "Sucker Punch", Type.DARK, MoveCategory.PHYSICAL, 70, 100, 5, "This move enables the user to attack first. This move fails if the target is not readying an attack.", -1, 1, 4)
+ new AttackMove(Moves.SUCKER_PUNCH, Type.DARK, MoveCategory.PHYSICAL, 70, 100, 5, -1, 1, 4)
.condition((user, target, move) => user.scene.currentBattle.turnCommands[target.getBattlerIndex()].command === Command.FIGHT && !target.turnData.acted && allMoves[user.scene.currentBattle.turnCommands[target.getBattlerIndex()].move.move].category !== MoveCategory.STATUS),
- new StatusMove(Moves.TOXIC_SPIKES, "Toxic Spikes", Type.POISON, -1, 20, "The user lays a trap of poison spikes at the feet of the opposing team. The spikes will poison opposing Pokémon that switch into battle.", -1, 0, 4)
+ new StatusMove(Moves.TOXIC_SPIKES, Type.POISON, -1, 20, -1, 0, 4)
.attr(AddArenaTrapTagAttr, ArenaTagType.TOXIC_SPIKES)
.target(MoveTarget.ENEMY_SIDE),
- new StatusMove(Moves.HEART_SWAP, "Heart Swap (N)", Type.PSYCHIC, -1, 10, "The user employs its psychic power to switch stat changes with the target.", -1, 0, 4),
- new SelfStatusMove(Moves.AQUA_RING, "Aqua Ring", Type.WATER, -1, 20, "The user envelops itself in a veil made of water. It regains some HP every turn.", -1, 0, 4)
+ new StatusMove(Moves.HEART_SWAP, Type.PSYCHIC, -1, 10, -1, 0, 4)
+ .unimplemented(),
+ new SelfStatusMove(Moves.AQUA_RING, Type.WATER, -1, 20, -1, 0, 4)
.attr(AddBattlerTagAttr, BattlerTagType.AQUA_RING, true, true),
- new SelfStatusMove(Moves.MAGNET_RISE, "Magnet Rise (N)", Type.ELECTRIC, -1, 10, "The user levitates using electrically generated magnetism for five turns.", -1, 0, 4),
- new AttackMove(Moves.FLARE_BLITZ, "Flare Blitz", Type.FIRE, MoveCategory.PHYSICAL, 120, 100, 15, "The user cloaks itself in fire and charges the target. This also damages the user quite a lot. This attack may leave the target with a burn.", 10, 0, 4)
+ new SelfStatusMove(Moves.MAGNET_RISE, Type.ELECTRIC, -1, 10, -1, 0, 4)
+ .unimplemented(),
+ new AttackMove(Moves.FLARE_BLITZ, Type.FIRE, MoveCategory.PHYSICAL, 120, 100, 15, 10, 0, 4)
.attr(RecoilAttr, false, 0.33)
.attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
.attr(StatusEffectAttr, StatusEffect.BURN)
.condition(failOnGravityCondition),
- new AttackMove(Moves.FORCE_PALM, "Force Palm", Type.FIGHTING, MoveCategory.PHYSICAL, 60, 100, 10, "The target is attacked with a shock wave. This may also leave the target with paralysis.", 30, 0, 4)
+ new AttackMove(Moves.FORCE_PALM, Type.FIGHTING, MoveCategory.PHYSICAL, 60, 100, 10, 30, 0, 4)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new AttackMove(Moves.AURA_SPHERE, "Aura Sphere", Type.FIGHTING, MoveCategory.SPECIAL, 80, -1, 20, "The user lets loose a blast of aura power from deep within its body at the target. This attack never misses.", -1, 0, 4)
+ new AttackMove(Moves.AURA_SPHERE, Type.FIGHTING, MoveCategory.SPECIAL, 80, -1, 20, -1, 0, 4)
.pulseMove()
.ballBombMove(),
- new SelfStatusMove(Moves.ROCK_POLISH, "Rock Polish", Type.ROCK, -1, 20, "The user polishes its body to reduce drag. This sharply raises the Speed stat.", -1, 0, 4)
+ new SelfStatusMove(Moves.ROCK_POLISH, Type.ROCK, -1, 20, -1, 0, 4)
.attr(StatChangeAttr, BattleStat.SPD, 2, true),
- new AttackMove(Moves.POISON_JAB, "Poison Jab", Type.POISON, MoveCategory.PHYSICAL, 80, 100, 20, "The target is stabbed with a tentacle, arm, or the like steeped in poison. This may also poison the target.", 30, 0, 4)
+ new AttackMove(Moves.POISON_JAB, Type.POISON, MoveCategory.PHYSICAL, 80, 100, 20, 30, 0, 4)
.attr(StatusEffectAttr, StatusEffect.POISON),
- new AttackMove(Moves.DARK_PULSE, "Dark Pulse", Type.DARK, MoveCategory.SPECIAL, 80, 100, 15, "The user releases a horrible aura imbued with dark thoughts. This may also make the target flinch.", 20, 0, 4)
+ new AttackMove(Moves.DARK_PULSE, Type.DARK, MoveCategory.SPECIAL, 80, 100, 15, 20, 0, 4)
.attr(FlinchAttr)
.pulseMove(),
- new AttackMove(Moves.NIGHT_SLASH, "Night Slash", Type.DARK, MoveCategory.PHYSICAL, 70, 100, 15, "The user slashes the target the instant an opportunity arises. Critical hits land more easily.", -1, 0, 4)
+ new AttackMove(Moves.NIGHT_SLASH, Type.DARK, MoveCategory.PHYSICAL, 70, 100, 15, -1, 0, 4)
.attr(HighCritAttr)
.slicingMove(),
- new AttackMove(Moves.AQUA_TAIL, "Aqua Tail", Type.WATER, MoveCategory.PHYSICAL, 90, 90, 10, "The user attacks by swinging its tail as if it were a vicious wave in a raging storm.", -1, 0, 4),
- new AttackMove(Moves.SEED_BOMB, "Seed Bomb", Type.GRASS, MoveCategory.PHYSICAL, 80, 100, 15, "The user slams a barrage of hard-shelled seeds down on the target from above.", -1, 0, 4)
+ new AttackMove(Moves.AQUA_TAIL, Type.WATER, MoveCategory.PHYSICAL, 90, 90, 10, -1, 0, 4),
+ new AttackMove(Moves.SEED_BOMB, Type.GRASS, MoveCategory.PHYSICAL, 80, 100, 15, -1, 0, 4)
.makesContact(false)
.ballBombMove(),
- new AttackMove(Moves.AIR_SLASH, "Air Slash", Type.FLYING, MoveCategory.SPECIAL, 75, 95, 15, "The user attacks with a blade of air that slices even the sky. This may also make the target flinch.", 30, 0, 4)
+ new AttackMove(Moves.AIR_SLASH, Type.FLYING, MoveCategory.SPECIAL, 75, 95, 15, 30, 0, 4)
.attr(FlinchAttr)
.slicingMove(),
- new AttackMove(Moves.X_SCISSOR, "X-Scissor", Type.BUG, MoveCategory.PHYSICAL, 80, 100, 15, "The user slashes at the target by crossing its scythes or claws as if they were a pair of scissors.", -1, 0, 4)
+ new AttackMove(Moves.X_SCISSOR, Type.BUG, MoveCategory.PHYSICAL, 80, 100, 15, -1, 0, 4)
.slicingMove(),
- new AttackMove(Moves.BUG_BUZZ, "Bug Buzz", Type.BUG, MoveCategory.SPECIAL, 90, 100, 10, "The user generates a damaging sound wave by vibration. This may also lower the target's Sp. Def stat.", 10, 0, 4)
+ new AttackMove(Moves.BUG_BUZZ, Type.BUG, MoveCategory.SPECIAL, 90, 100, 10, 10, 0, 4)
.attr(StatChangeAttr, BattleStat.SPDEF, -1)
.soundBased(),
- new AttackMove(Moves.DRAGON_PULSE, "Dragon Pulse", Type.DRAGON, MoveCategory.SPECIAL, 85, 100, 10, "The target is attacked with a shock wave generated by the user's gaping mouth.", -1, 0, 4)
+ new AttackMove(Moves.DRAGON_PULSE, Type.DRAGON, MoveCategory.SPECIAL, 85, 100, 10, -1, 0, 4)
.pulseMove(),
- new AttackMove(Moves.DRAGON_RUSH, "Dragon Rush", Type.DRAGON, MoveCategory.PHYSICAL, 100, 75, 10, "The user tackles the target while exhibiting overwhelming menace. This may also make the target flinch.", 20, 0, 4)
+ new AttackMove(Moves.DRAGON_RUSH, Type.DRAGON, MoveCategory.PHYSICAL, 100, 75, 10, 20, 0, 4)
.attr(FlinchAttr),
- new AttackMove(Moves.POWER_GEM, "Power Gem", Type.ROCK, MoveCategory.SPECIAL, 80, 100, 20, "The user attacks with a ray of light that sparkles as if it were made of gemstones.", -1, 0, 4),
- new AttackMove(Moves.DRAIN_PUNCH, "Drain Punch", Type.FIGHTING, MoveCategory.PHYSICAL, 75, 100, 10, "An energy-draining punch. The user's HP is restored by half the damage taken by the target.", -1, 0, 4)
+ new AttackMove(Moves.POWER_GEM, Type.ROCK, MoveCategory.SPECIAL, 80, 100, 20, -1, 0, 4),
+ new AttackMove(Moves.DRAIN_PUNCH, Type.FIGHTING, MoveCategory.PHYSICAL, 75, 100, 10, -1, 0, 4)
.attr(HitHealAttr)
.punchingMove()
.triageMove(),
- new AttackMove(Moves.VACUUM_WAVE, "Vacuum Wave", Type.FIGHTING, MoveCategory.SPECIAL, 40, 100, 30, "The user whirls its fists to send a wave of pure vacuum at the target. This move always goes first.", -1, 1, 4),
- new AttackMove(Moves.FOCUS_BLAST, "Focus Blast", Type.FIGHTING, MoveCategory.SPECIAL, 120, 70, 5, "The user heightens its mental focus and unleashes its power. This may also lower the target's Sp. Def stat.", 10, 0, 4)
+ new AttackMove(Moves.VACUUM_WAVE, Type.FIGHTING, MoveCategory.SPECIAL, 40, 100, 30, -1, 1, 4),
+ new AttackMove(Moves.FOCUS_BLAST, Type.FIGHTING, MoveCategory.SPECIAL, 120, 70, 5, 10, 0, 4)
.attr(StatChangeAttr, BattleStat.SPDEF, -1)
.ballBombMove(),
- new AttackMove(Moves.ENERGY_BALL, "Energy Ball", Type.GRASS, MoveCategory.SPECIAL, 90, 100, 10, "The user draws power from nature and fires it at the target. This may also lower the target's Sp. Def stat.", 10, 0, 4)
+ new AttackMove(Moves.ENERGY_BALL, Type.GRASS, MoveCategory.SPECIAL, 90, 100, 10, 10, 0, 4)
.attr(StatChangeAttr, BattleStat.SPDEF, -1)
.ballBombMove(),
- new AttackMove(Moves.BRAVE_BIRD, "Brave Bird", Type.FLYING, MoveCategory.PHYSICAL, 120, 100, 15, "The user tucks in its wings and charges from a low altitude. This also damages the user quite a lot.", -1, 0, 4)
+ new AttackMove(Moves.BRAVE_BIRD, Type.FLYING, MoveCategory.PHYSICAL, 120, 100, 15, -1, 0, 4)
.attr(RecoilAttr, false, 0.33),
- new AttackMove(Moves.EARTH_POWER, "Earth Power", Type.GROUND, MoveCategory.SPECIAL, 90, 100, 10, "The user makes the ground under the target erupt with power. This may also lower the target's Sp. Def stat.", 10, 0, 4)
+ new AttackMove(Moves.EARTH_POWER, Type.GROUND, MoveCategory.SPECIAL, 90, 100, 10, 10, 0, 4)
.attr(StatChangeAttr, BattleStat.SPDEF, -1),
- new StatusMove(Moves.SWITCHEROO, "Switcheroo (N)", Type.DARK, 100, 10, "The user trades held items with the target faster than the eye can follow.", -1, 0, 4),
- new AttackMove(Moves.GIGA_IMPACT, "Giga Impact", Type.NORMAL, MoveCategory.PHYSICAL, 150, 90, 5, "The user charges at the target using every bit of its power. The user can't move on the next turn.", -1, 0, 4)
+ new StatusMove(Moves.SWITCHEROO, Type.DARK, 100, 10, -1, 0, 4)
+ .unimplemented(),
+ new AttackMove(Moves.GIGA_IMPACT, Type.NORMAL, MoveCategory.PHYSICAL, 150, 90, 5, -1, 0, 4)
.attr(RechargeAttr),
- new SelfStatusMove(Moves.NASTY_PLOT, "Nasty Plot", Type.DARK, -1, 20, "The user stimulates its brain by thinking bad thoughts. This sharply raises the user's Sp. Atk stat.", -1, 0, 4)
+ new SelfStatusMove(Moves.NASTY_PLOT, Type.DARK, -1, 20, -1, 0, 4)
.attr(StatChangeAttr, BattleStat.SPATK, 2, true),
- new AttackMove(Moves.BULLET_PUNCH, "Bullet Punch", Type.STEEL, MoveCategory.PHYSICAL, 40, 100, 30, "The user strikes the target with tough punches as fast as bullets. This move always goes first.", -1, 1, 4)
+ new AttackMove(Moves.BULLET_PUNCH, Type.STEEL, MoveCategory.PHYSICAL, 40, 100, 30, -1, 1, 4)
.punchingMove(),
- new AttackMove(Moves.AVALANCHE, "Avalanche", Type.ICE, MoveCategory.PHYSICAL, 60, 100, 10, "The power of this attack move is doubled if the user has been hurt by the target in the same turn.", -1, -4, 4)
+ new AttackMove(Moves.AVALANCHE, Type.ICE, MoveCategory.PHYSICAL, 60, 100, 10, -1, -4, 4)
.attr(TurnDamagedDoublePowerAttr),
- new AttackMove(Moves.ICE_SHARD, "Ice Shard", Type.ICE, MoveCategory.PHYSICAL, 40, 100, 30, "The user flash-freezes chunks of ice and hurls them at the target. This move always goes first.", -1, 1, 4)
+ new AttackMove(Moves.ICE_SHARD, Type.ICE, MoveCategory.PHYSICAL, 40, 100, 30, -1, 1, 4)
.makesContact(false),
- new AttackMove(Moves.SHADOW_CLAW, "Shadow Claw", Type.GHOST, MoveCategory.PHYSICAL, 70, 100, 15, "The user slashes with a sharp claw made from shadows. Critical hits land more easily.", -1, 0, 4)
+ new AttackMove(Moves.SHADOW_CLAW, Type.GHOST, MoveCategory.PHYSICAL, 70, 100, 15, -1, 0, 4)
.attr(HighCritAttr),
- new AttackMove(Moves.THUNDER_FANG, "Thunder Fang", Type.ELECTRIC, MoveCategory.PHYSICAL, 65, 95, 15, "The user bites with electrified fangs. This may also make the target flinch or leave it with paralysis.", 10, 0, 4)
+ new AttackMove(Moves.THUNDER_FANG, Type.ELECTRIC, MoveCategory.PHYSICAL, 65, 95, 15, 10, 0, 4)
.attr(FlinchAttr)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.bitingMove(),
- new AttackMove(Moves.ICE_FANG, "Ice Fang", Type.ICE, MoveCategory.PHYSICAL, 65, 95, 15, "The user bites with cold-infused fangs. This may also make the target flinch or leave it frozen.", 10, 0, 4)
+ new AttackMove(Moves.ICE_FANG, Type.ICE, MoveCategory.PHYSICAL, 65, 95, 15, 10, 0, 4)
.attr(FlinchAttr)
.attr(StatusEffectAttr, StatusEffect.FREEZE)
.bitingMove(),
- new AttackMove(Moves.FIRE_FANG, "Fire Fang", Type.FIRE, MoveCategory.PHYSICAL, 65, 95, 15, "The user bites with flame-cloaked fangs. This may also make the target flinch or leave it with a burn.", 10, 0, 4)
+ new AttackMove(Moves.FIRE_FANG, Type.FIRE, MoveCategory.PHYSICAL, 65, 95, 15, 10, 0, 4)
.attr(FlinchAttr)
.attr(StatusEffectAttr, StatusEffect.BURN)
.bitingMove(),
- new AttackMove(Moves.SHADOW_SNEAK, "Shadow Sneak", Type.GHOST, MoveCategory.PHYSICAL, 40, 100, 30, "The user extends its shadow and attacks the target from behind. This move always goes first.", -1, 1, 4),
- new AttackMove(Moves.MUD_BOMB, "Mud Bomb", Type.GROUND, MoveCategory.SPECIAL, 65, 85, 10, "The user launches a hard-packed mud ball to attack. This may also lower the target's accuracy.", 30, 0, 4)
+ new AttackMove(Moves.SHADOW_SNEAK, Type.GHOST, MoveCategory.PHYSICAL, 40, 100, 30, -1, 1, 4),
+ new AttackMove(Moves.MUD_BOMB, Type.GROUND, MoveCategory.SPECIAL, 65, 85, 10, 30, 0, 4)
.attr(StatChangeAttr, BattleStat.ACC, -1)
.ballBombMove(),
- new AttackMove(Moves.PSYCHO_CUT, "Psycho Cut", Type.PSYCHIC, MoveCategory.PHYSICAL, 70, 100, 20, "The user tears at the target with blades formed by psychic power. Critical hits land more easily.", -1, 0, 4)
+ new AttackMove(Moves.PSYCHO_CUT, Type.PSYCHIC, MoveCategory.PHYSICAL, 70, 100, 20, -1, 0, 4)
.attr(HighCritAttr)
.slicingMove()
.makesContact(false),
- new AttackMove(Moves.ZEN_HEADBUTT, "Zen Headbutt", Type.PSYCHIC, MoveCategory.PHYSICAL, 80, 90, 15, "The user focuses its willpower to its head and attacks the target. This may also make the target flinch.", 20, 0, 4)
+ new AttackMove(Moves.ZEN_HEADBUTT, Type.PSYCHIC, MoveCategory.PHYSICAL, 80, 90, 15, 20, 0, 4)
.attr(FlinchAttr),
- new AttackMove(Moves.MIRROR_SHOT, "Mirror Shot", Type.STEEL, MoveCategory.SPECIAL, 65, 85, 10, "The user lets loose a flash of energy at the target from its polished body. This may also lower the target's accuracy.", 30, 0, 4)
+ new AttackMove(Moves.MIRROR_SHOT, Type.STEEL, MoveCategory.SPECIAL, 65, 85, 10, 30, 0, 4)
.attr(StatChangeAttr, BattleStat.ACC, -1),
- new AttackMove(Moves.FLASH_CANNON, "Flash Cannon", Type.STEEL, MoveCategory.SPECIAL, 80, 100, 10, "The user gathers all its light energy and releases it all at once. This may also lower the target's Sp. Def stat.", 10, 0, 4)
+ new AttackMove(Moves.FLASH_CANNON, Type.STEEL, MoveCategory.SPECIAL, 80, 100, 10, 10, 0, 4)
.attr(StatChangeAttr, BattleStat.SPDEF, -1),
- new AttackMove(Moves.ROCK_CLIMB, "Rock Climb", Type.NORMAL, MoveCategory.PHYSICAL, 90, 85, 20, "The user attacks the target by smashing into it with incredible force. This may also confuse the target.", 20, 0, 4)
+ new AttackMove(Moves.ROCK_CLIMB, Type.NORMAL, MoveCategory.PHYSICAL, 90, 85, 20, 20, 0, 4)
.attr(ConfuseAttr),
- new StatusMove(Moves.DEFOG, "Defog", Type.FLYING, -1, 15, "A strong wind blows away the target's barriers such as Reflect or Light Screen. This also lowers the target's evasiveness.", -1, 0, 4)
+ new StatusMove(Moves.DEFOG, Type.FLYING, -1, 15, -1, 0, 4)
.attr(StatChangeAttr, BattleStat.EVA, -1)
.attr(ClearWeatherAttr, WeatherType.FOG)
- .attr(ClearTerrainAttr),
- new StatusMove(Moves.TRICK_ROOM, "Trick Room", Type.PSYCHIC, -1, 5, "The user creates a bizarre area in which slower Pokémon get to move first for five turns.", -1, -7, 4)
+ .attr(ClearTerrainAttr)
+ .attr(RemoveScreensAttr, true),
+ new StatusMove(Moves.TRICK_ROOM, Type.PSYCHIC, -1, 5, -1, -7, 4)
.attr(AddArenaTagAttr, ArenaTagType.TRICK_ROOM, 5)
.ignoresProtect()
.target(MoveTarget.BOTH_SIDES),
- new AttackMove(Moves.DRACO_METEOR, "Draco Meteor", Type.DRAGON, MoveCategory.SPECIAL, 130, 90, 5, "Comets are summoned down from the sky onto the target. The attack's recoil harshly lowers the user's Sp. Atk stat.", 100, 0, 4)
+ new AttackMove(Moves.DRACO_METEOR, Type.DRAGON, MoveCategory.SPECIAL, 130, 90, 5, 100, 0, 4)
.attr(StatChangeAttr, BattleStat.SPATK, -2, true),
- new AttackMove(Moves.DISCHARGE, "Discharge", Type.ELECTRIC, MoveCategory.SPECIAL, 80, 100, 15, "The user strikes everything around it by letting loose a flare of electricity. This may also cause paralysis.", 30, 0, 4)
+ new AttackMove(Moves.DISCHARGE, Type.ELECTRIC, MoveCategory.SPECIAL, 80, 100, 15, 30, 0, 4)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.LAVA_PLUME, "Lava Plume", Type.FIRE, MoveCategory.SPECIAL, 80, 100, 15, "The user torches everything around it in an inferno of scarlet flames. This may also leave those it hits with a burn.", 30, 0, 4)
+ new AttackMove(Moves.LAVA_PLUME, Type.FIRE, MoveCategory.SPECIAL, 80, 100, 15, 30, 0, 4)
.attr(StatusEffectAttr, StatusEffect.BURN)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.LEAF_STORM, "Leaf Storm", Type.GRASS, MoveCategory.SPECIAL, 130, 90, 5, "The user whips up a storm of leaves around the target. The attack's recoil harshly lowers the user's Sp. Atk stat.", 100, 0, 4)
+ new AttackMove(Moves.LEAF_STORM, Type.GRASS, MoveCategory.SPECIAL, 130, 90, 5, 100, 0, 4)
.attr(StatChangeAttr, BattleStat.SPATK, -2, true),
- new AttackMove(Moves.POWER_WHIP, "Power Whip", Type.GRASS, MoveCategory.PHYSICAL, 120, 85, 10, "The user violently whirls its vines, tentacles, or the like to harshly lash the target.", -1, 0, 4),
- new AttackMove(Moves.ROCK_WRECKER, "Rock Wrecker", Type.ROCK, MoveCategory.PHYSICAL, 150, 90, 5, "The user launches a huge boulder at the target to attack. The user can't move on the next turn.", -1, 0, 4)
+ new AttackMove(Moves.POWER_WHIP, Type.GRASS, MoveCategory.PHYSICAL, 120, 85, 10, -1, 0, 4),
+ new AttackMove(Moves.ROCK_WRECKER, Type.ROCK, MoveCategory.PHYSICAL, 150, 90, 5, -1, 0, 4)
.attr(RechargeAttr)
.makesContact(false)
.ballBombMove(),
- new AttackMove(Moves.CROSS_POISON, "Cross Poison", Type.POISON, MoveCategory.PHYSICAL, 70, 100, 20, "A slashing attack with a poisonous blade that may also poison the target. Critical hits land more easily.", 10, 0, 4)
+ new AttackMove(Moves.CROSS_POISON, Type.POISON, MoveCategory.PHYSICAL, 70, 100, 20, 10, 0, 4)
.attr(HighCritAttr)
.attr(StatusEffectAttr, StatusEffect.POISON)
.slicingMove(),
- new AttackMove(Moves.GUNK_SHOT, "Gunk Shot", Type.POISON, MoveCategory.PHYSICAL, 120, 80, 5, "The user shoots filthy garbage at the target to attack. This may also poison the target.", 30, 0, 4)
+ new AttackMove(Moves.GUNK_SHOT, Type.POISON, MoveCategory.PHYSICAL, 120, 80, 5, 30, 0, 4)
.attr(StatusEffectAttr, StatusEffect.POISON)
.makesContact(false),
- new AttackMove(Moves.IRON_HEAD, "Iron Head", Type.STEEL, MoveCategory.PHYSICAL, 80, 100, 15, "The user slams the target with its steel-hard head. This may also make the target flinch.", 30, 0, 4)
+ new AttackMove(Moves.IRON_HEAD, Type.STEEL, MoveCategory.PHYSICAL, 80, 100, 15, 30, 0, 4)
.attr(FlinchAttr),
- new AttackMove(Moves.MAGNET_BOMB, "Magnet Bomb", Type.STEEL, MoveCategory.PHYSICAL, 60, -1, 20, "The user launches steel bombs that stick to the target. This attack never misses.", -1, 0, 4)
+ new AttackMove(Moves.MAGNET_BOMB, Type.STEEL, MoveCategory.PHYSICAL, 60, -1, 20, -1, 0, 4)
.makesContact(false)
.ballBombMove(),
- new AttackMove(Moves.STONE_EDGE, "Stone Edge", Type.ROCK, MoveCategory.PHYSICAL, 100, 80, 5, "The user stabs the target from below with sharpened stones. Critical hits land more easily.", -1, 0, 4)
+ new AttackMove(Moves.STONE_EDGE, Type.ROCK, MoveCategory.PHYSICAL, 100, 80, 5, -1, 0, 4)
.attr(HighCritAttr)
.makesContact(false),
- new StatusMove(Moves.CAPTIVATE, "Captivate", Type.NORMAL, 100, 20, "If any opposing Pokémon is the opposite gender of the user, it is charmed, which harshly lowers its Sp. Atk stat.", -1, 0, 4)
+ new StatusMove(Moves.CAPTIVATE, Type.NORMAL, 100, 20, -1, 0, 4)
.attr(StatChangeAttr, BattleStat.SPATK, -2)
.condition((user, target, move) => target.isOppositeGender(user))
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new StatusMove(Moves.STEALTH_ROCK, "Stealth Rock", Type.ROCK, -1, 20, "The user lays a trap of levitating stones around the opposing team. The trap hurts opposing Pokémon that switch into battle.", -1, 0, 4)
+ new StatusMove(Moves.STEALTH_ROCK, Type.ROCK, -1, 20, -1, 0, 4)
.attr(AddArenaTrapTagAttr, ArenaTagType.STEALTH_ROCK)
.target(MoveTarget.ENEMY_SIDE),
- new AttackMove(Moves.GRASS_KNOT, "Grass Knot", Type.GRASS, MoveCategory.SPECIAL, -1, 100, 20, "The user snares the target with grass and trips it. The heavier the target, the greater the move's power.", -1, 0, 4)
+ new AttackMove(Moves.GRASS_KNOT, Type.GRASS, MoveCategory.SPECIAL, -1, 100, 20, -1, 0, 4)
.attr(WeightPowerAttr)
.makesContact(),
- new AttackMove(Moves.CHATTER, "Chatter", Type.FLYING, MoveCategory.SPECIAL, 65, 100, 20, "The user attacks the target with sound waves of deafening chatter. This confuses the target.", 100, 0, 4)
+ new AttackMove(Moves.CHATTER, Type.FLYING, MoveCategory.SPECIAL, 65, 100, 20, 100, 0, 4)
.attr(ConfuseAttr)
.soundBased(),
- new AttackMove(Moves.JUDGMENT, "Judgment (P)", Type.NORMAL, MoveCategory.SPECIAL, 100, 100, 10, "The user releases countless shots of light at the target. This move's type varies depending on the kind of Plate the user is holding.", -1, 0, 4),
- new AttackMove(Moves.BUG_BITE, "Bug Bite (P)", Type.BUG, MoveCategory.PHYSICAL, 60, 100, 20, "The user bites the target. If the target is holding a Berry, the user eats it and gains its effect.", -1, 0, 4),
- new AttackMove(Moves.CHARGE_BEAM, "Charge Beam", Type.ELECTRIC, MoveCategory.SPECIAL, 50, 90, 10, "The user attacks the target with an electric charge. The user may use any remaining electricity to raise its Sp. Atk stat.", 70, 0, 4)
+ new AttackMove(Moves.JUDGMENT, Type.NORMAL, MoveCategory.SPECIAL, 100, 100, 10, -1, 0, 4)
+ .partial(),
+ new AttackMove(Moves.BUG_BITE, Type.BUG, MoveCategory.PHYSICAL, 60, 100, 20, -1, 0, 4)
+ .partial(),
+ new AttackMove(Moves.CHARGE_BEAM, Type.ELECTRIC, MoveCategory.SPECIAL, 50, 90, 10, 70, 0, 4)
.attr(StatChangeAttr, BattleStat.SPATK, 1, true),
- new AttackMove(Moves.WOOD_HAMMER, "Wood Hammer", Type.GRASS, MoveCategory.PHYSICAL, 120, 100, 15, "The user slams its rugged body into the target to attack. This also damages the user quite a lot.", -1, 0, 4)
+ new AttackMove(Moves.WOOD_HAMMER, Type.GRASS, MoveCategory.PHYSICAL, 120, 100, 15, -1, 0, 4)
.attr(RecoilAttr, false, 0.33),
- new AttackMove(Moves.AQUA_JET, "Aqua Jet", Type.WATER, MoveCategory.PHYSICAL, 40, 100, 20, "The user lunges at the target at a speed that makes it almost invisible. This move always goes first.", -1, 1, 4),
- new AttackMove(Moves.ATTACK_ORDER, "Attack Order", Type.BUG, MoveCategory.PHYSICAL, 90, 100, 15, "The user calls out its underlings to pummel the target. Critical hits land more easily.", -1, 0, 4)
+ new AttackMove(Moves.AQUA_JET, Type.WATER, MoveCategory.PHYSICAL, 40, 100, 20, -1, 1, 4),
+ new AttackMove(Moves.ATTACK_ORDER, Type.BUG, MoveCategory.PHYSICAL, 90, 100, 15, -1, 0, 4)
.attr(HighCritAttr)
.makesContact(false),
- new SelfStatusMove(Moves.DEFEND_ORDER, "Defend Order", Type.BUG, -1, 10, "The user calls out its underlings to shield its body, raising its Defense and Sp. Def stats.", -1, 0, 4)
+ new SelfStatusMove(Moves.DEFEND_ORDER, Type.BUG, -1, 10, -1, 0, 4)
.attr(StatChangeAttr, [ BattleStat.DEF, BattleStat.SPDEF ], 1, true),
- new SelfStatusMove(Moves.HEAL_ORDER, "Heal Order", Type.BUG, -1, 10, "The user calls out its underlings to heal it. The user regains up to half of its max HP.", -1, 0, 4)
+ new SelfStatusMove(Moves.HEAL_ORDER, Type.BUG, -1, 10, -1, 0, 4)
.attr(HealAttr, 0.5)
.triageMove(),
- new AttackMove(Moves.HEAD_SMASH, "Head Smash", Type.ROCK, MoveCategory.PHYSICAL, 150, 80, 5, "The user attacks the target with a hazardous, full-power headbutt. This also damages the user terribly.", -1, 0, 4)
+ new AttackMove(Moves.HEAD_SMASH, Type.ROCK, MoveCategory.PHYSICAL, 150, 80, 5, -1, 0, 4)
.attr(RecoilAttr, false, 0.5),
- new AttackMove(Moves.DOUBLE_HIT, "Double Hit", Type.NORMAL, MoveCategory.PHYSICAL, 35, 90, 10, "The user slams the target with a long tail, vines, or a tentacle. The target is hit twice in a row.", -1, 0, 4)
+ new AttackMove(Moves.DOUBLE_HIT, Type.NORMAL, MoveCategory.PHYSICAL, 35, 90, 10, -1, 0, 4)
.attr(MultiHitAttr, MultiHitType._2),
- new AttackMove(Moves.ROAR_OF_TIME, "Roar of Time", Type.DRAGON, MoveCategory.SPECIAL, 150, 90, 5, "The user blasts the target with power that distorts even time. The user can't move on the next turn.", -1, 0, 4)
+ new AttackMove(Moves.ROAR_OF_TIME, Type.DRAGON, MoveCategory.SPECIAL, 150, 90, 5, -1, 0, 4)
.attr(RechargeAttr),
- new AttackMove(Moves.SPACIAL_REND, "Spacial Rend", Type.DRAGON, MoveCategory.SPECIAL, 100, 95, 5, "The user tears the target along with the space around it. Critical hits land more easily.", -1, 0, 4)
+ new AttackMove(Moves.SPACIAL_REND, Type.DRAGON, MoveCategory.SPECIAL, 100, 95, 5, -1, 0, 4)
.attr(HighCritAttr),
- new SelfStatusMove(Moves.LUNAR_DANCE, "Lunar Dance (N)", Type.PSYCHIC, -1, 10, "The user faints. In return, the Pokémon taking its place will have its status and HP fully restored.", -1, 0, 4)
+ new SelfStatusMove(Moves.LUNAR_DANCE, Type.PSYCHIC, -1, 10, -1, 0, 4)
.attr(SacrificialAttr)
.danceMove()
- .triageMove(),
- new AttackMove(Moves.CRUSH_GRIP, "Crush Grip", Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 5, "The target is crushed with great force. The more HP the target has left, the greater this move's power.", -1, 0, 4)
+ .triageMove()
+ .unimplemented(),
+ new AttackMove(Moves.CRUSH_GRIP, Type.NORMAL, MoveCategory.PHYSICAL, -1, 100, 5, -1, 0, 4)
.attr(OpponentHighHpPowerAttr),
- new AttackMove(Moves.MAGMA_STORM, "Magma Storm", Type.FIRE, MoveCategory.SPECIAL, 100, 75, 5, "The target becomes trapped within a maelstrom of fire that rages for four to five turns.", 100, 0, 4)
+ new AttackMove(Moves.MAGMA_STORM, Type.FIRE, MoveCategory.SPECIAL, 100, 75, 5, 100, 0, 4)
.attr(TrapAttr, BattlerTagType.MAGMA_STORM),
- new StatusMove(Moves.DARK_VOID, "Dark Void", Type.DARK, 50, 10, "Opposing Pokémon are dragged into a world of total darkness that makes them sleep.", -1, 0, 4)
+ new StatusMove(Moves.DARK_VOID, Type.DARK, 50, 10, -1, 0, 4)
.attr(StatusEffectAttr, StatusEffect.SLEEP)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.SEED_FLARE, "Seed Flare", Type.GRASS, MoveCategory.SPECIAL, 120, 85, 5, "The user emits a shock wave from its body to attack its target. This may also harshly lower the target's Sp. Def stat.", 40, 0, 4)
+ new AttackMove(Moves.SEED_FLARE, Type.GRASS, MoveCategory.SPECIAL, 120, 85, 5, 40, 0, 4)
.attr(StatChangeAttr, BattleStat.SPDEF, -1),
- new AttackMove(Moves.OMINOUS_WIND, "Ominous Wind", Type.GHOST, MoveCategory.SPECIAL, 60, 100, 5, "The user blasts the target with a gust of repulsive wind. This may also raise all the user's stats at once.", 10, 0, 4)
+ new AttackMove(Moves.OMINOUS_WIND, Type.GHOST, MoveCategory.SPECIAL, 60, 100, 5, 10, 0, 4)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF, BattleStat.SPATK, BattleStat.SPDEF, BattleStat.SPD ], 1, true)
.windMove(),
- new AttackMove(Moves.SHADOW_FORCE, "Shadow Force", Type.GHOST, MoveCategory.PHYSICAL, 120, 100, 5, "The user disappears, then strikes the target on the next turn. This move hits even if the target protects itself.", -1, 0, 4)
+ new AttackMove(Moves.SHADOW_FORCE, Type.GHOST, MoveCategory.PHYSICAL, 120, 100, 5, -1, 0, 4)
.attr(ChargeAttr, ChargeAnim.SHADOW_FORCE_CHARGING, 'vanished\ninstantly!', BattlerTagType.HIDDEN)
.ignoresProtect()
.ignoresVirtual(),
- new SelfStatusMove(Moves.HONE_CLAWS, "Hone Claws", Type.DARK, -1, 15, "The user sharpens its claws to boost its Attack stat and accuracy.", -1, 0, 5)
+ new SelfStatusMove(Moves.HONE_CLAWS, Type.DARK, -1, 15, -1, 0, 5)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.ACC ], 1, true),
- new StatusMove(Moves.WIDE_GUARD, "Wide Guard (N)", Type.ROCK, -1, 10, "The user and its allies are protected from wide-ranging attacks for one turn.", -1, 3, 5)
- .target(MoveTarget.USER_SIDE),
- new StatusMove(Moves.GUARD_SPLIT, "Guard Split (N)", Type.PSYCHIC, -1, 10, "The user employs its psychic power to average its Defense and Sp. Def stats with those of the target.", -1, 0, 5),
- new StatusMove(Moves.POWER_SPLIT, "Power Split (N)", Type.PSYCHIC, -1, 10, "The user employs its psychic power to average its Attack and Sp. Atk stats with those of the target.", -1, 0, 5),
- new StatusMove(Moves.WONDER_ROOM, "Wonder Room (N)", Type.PSYCHIC, -1, 10, "The user creates a bizarre area in which Pokémon's Defense and Sp. Def stats are swapped for five turns.", -1, 0, 5)
+ new StatusMove(Moves.WIDE_GUARD, Type.ROCK, -1, 10, -1, 3, 5)
+ .target(MoveTarget.USER_SIDE)
+ .unimplemented(),
+ new StatusMove(Moves.GUARD_SPLIT, Type.PSYCHIC, -1, 10, -1, 0, 5)
+ .unimplemented(),
+ new StatusMove(Moves.POWER_SPLIT, Type.PSYCHIC, -1, 10, -1, 0, 5)
+ .unimplemented(),
+ new StatusMove(Moves.WONDER_ROOM, Type.PSYCHIC, -1, 10, -1, 0, 5)
.ignoresProtect()
- .target(MoveTarget.BOTH_SIDES),
- new AttackMove(Moves.PSYSHOCK, "Psyshock", Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 10, "The user materializes an odd psychic wave to attack the target. This attack does physical damage.", -1, 0, 5)
+ .target(MoveTarget.BOTH_SIDES)
+ .unimplemented(),
+ new AttackMove(Moves.PSYSHOCK, Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 5)
.attr(DefDefAttr),
- new AttackMove(Moves.VENOSHOCK, "Venoshock", Type.POISON, MoveCategory.SPECIAL, 65, 100, 10, "The user drenches the target in a special poisonous liquid. This move's power is doubled if the target is poisoned.", -1, 0, 5)
+ new AttackMove(Moves.VENOSHOCK, Type.POISON, MoveCategory.SPECIAL, 65, 100, 10, -1, 0, 5)
.attr(MovePowerMultiplierAttr, (user, target, move) => target.status && (target.status.effect === StatusEffect.POISON || target.status.effect === StatusEffect.TOXIC) ? 2 : 1),
- new SelfStatusMove(Moves.AUTOTOMIZE, "Autotomize (P)", Type.STEEL, -1, 15, "The user sheds part of its body to make itself lighter and sharply raise its Speed stat.", -1, 0, 5)
- .attr(StatChangeAttr, BattleStat.SPD, 2, true),
- new SelfStatusMove(Moves.RAGE_POWDER, "Rage Powder (N)", Type.BUG, -1, 20, "The user scatters a cloud of irritating powder to draw attention to itself. Opposing Pokémon aim only at the user.", -1, 2, 5)
- .powderMove(),
- new StatusMove(Moves.TELEKINESIS, "Telekinesis (N)", Type.PSYCHIC, -1, 15, "The user makes the target float with its psychic power. The target is easier to hit for three turns.", -1, 0, 5)
- .condition(failOnGravityCondition),
- new StatusMove(Moves.MAGIC_ROOM, "Magic Room (N)", Type.PSYCHIC, -1, 10, "The user creates a bizarre area in which Pokémon's held items lose their effects for five turns.", -1, 0, 5)
+ new SelfStatusMove(Moves.AUTOTOMIZE, Type.STEEL, -1, 15, -1, 0, 5)
+ .attr(StatChangeAttr, BattleStat.SPD, 2, true)
+ .partial(),
+ new SelfStatusMove(Moves.RAGE_POWDER, Type.BUG, -1, 20, -1, 2, 5)
+ .powderMove()
+ .unimplemented(),
+ new StatusMove(Moves.TELEKINESIS, Type.PSYCHIC, -1, 15, -1, 0, 5)
+ .condition(failOnGravityCondition)
+ .unimplemented(),
+ new StatusMove(Moves.MAGIC_ROOM, Type.PSYCHIC, -1, 10, -1, 0, 5)
.ignoresProtect()
- .target(MoveTarget.BOTH_SIDES),
- new AttackMove(Moves.SMACK_DOWN, "Smack Down", Type.ROCK, MoveCategory.PHYSICAL, 50, 100, 15, "The user throws a stone or similar projectile to attack the target. A flying Pokémon will fall to the ground when it's hit.", 100, 0, 5)
+ .target(MoveTarget.BOTH_SIDES)
+ .unimplemented(),
+ new AttackMove(Moves.SMACK_DOWN, Type.ROCK, MoveCategory.PHYSICAL, 50, 100, 15, 100, 0, 5)
.attr(AddBattlerTagAttr, BattlerTagType.IGNORE_FLYING, false, false, 5)
+ .attr(HitsTagAttr, BattlerTagType.FLYING, false)
.makesContact(false),
- new AttackMove(Moves.STORM_THROW, "Storm Throw", Type.FIGHTING, MoveCategory.PHYSICAL, 60, 100, 10, "The user strikes the target with a fierce blow. This attack always results in a critical hit.", -1, 0, 5)
+ new AttackMove(Moves.STORM_THROW, Type.FIGHTING, MoveCategory.PHYSICAL, 60, 100, 10, -1, 0, 5)
.attr(CritOnlyAttr),
- new AttackMove(Moves.FLAME_BURST, "Flame Burst (P)", Type.FIRE, MoveCategory.SPECIAL, 70, 100, 15, "The user attacks the target with a bursting flame. The bursting flame damages Pokémon next to the target as well.", -1, 0, 5),
- new AttackMove(Moves.SLUDGE_WAVE, "Sludge Wave", Type.POISON, MoveCategory.SPECIAL, 95, 100, 10, "The user strikes everything around it by swamping the area with a giant sludge wave. This may also poison those hit.", 10, 0, 5)
+ new AttackMove(Moves.FLAME_BURST, Type.FIRE, MoveCategory.SPECIAL, 70, 100, 15, -1, 0, 5)
+ .partial(),
+ new AttackMove(Moves.SLUDGE_WAVE, Type.POISON, MoveCategory.SPECIAL, 95, 100, 10, 10, 0, 5)
.attr(StatusEffectAttr, StatusEffect.POISON)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new SelfStatusMove(Moves.QUIVER_DANCE, "Quiver Dance", Type.BUG, -1, 20, "The user lightly performs a beautiful, mystic dance. This boosts the user's Sp. Atk, Sp. Def, and Speed stats.", -1, 0, 5)
+ new SelfStatusMove(Moves.QUIVER_DANCE, Type.BUG, -1, 20, -1, 0, 5)
.attr(StatChangeAttr, [ BattleStat.SPATK, BattleStat.SPDEF, BattleStat.SPD ], 1, true)
.danceMove(),
- new AttackMove(Moves.HEAVY_SLAM, "Heavy Slam", Type.STEEL, MoveCategory.PHYSICAL, -1, 100, 10, "The user slams into the target with its heavy body. The more the user outweighs the target, the greater the move's power.", -1, 0, 5)
+ new AttackMove(Moves.HEAVY_SLAM, Type.STEEL, MoveCategory.PHYSICAL, -1, 100, 10, -1, 0, 5)
.attr(CompareWeightPowerAttr),
- new AttackMove(Moves.SYNCHRONOISE, "Synchronoise (P)", Type.PSYCHIC, MoveCategory.SPECIAL, 120, 100, 10, "Using an odd shock wave, the user inflicts damage on any Pokémon of the same type in the area around it.", -1, 0, 5)
- .target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.ELECTRO_BALL, "Electro Ball", Type.ELECTRIC, MoveCategory.SPECIAL, -1, 100, 10, "The user hurls an electric orb at the target. The faster the user is than the target, the greater the move's power.", -1, 0, 5)
+ new AttackMove(Moves.SYNCHRONOISE, Type.PSYCHIC, MoveCategory.SPECIAL, 120, 100, 10, -1, 0, 5)
+ .target(MoveTarget.ALL_NEAR_OTHERS)
+ .partial(),
+ new AttackMove(Moves.ELECTRO_BALL, Type.ELECTRIC, MoveCategory.SPECIAL, -1, 100, 10, -1, 0, 5)
.attr(BattleStatRatioPowerAttr, Stat.SPD)
.ballBombMove(),
- new StatusMove(Moves.SOAK, "Soak (N)", Type.WATER, 100, 20, "The user shoots a torrent of water at the target and changes the target's type to Water.", -1, 0, 5),
- new AttackMove(Moves.FLAME_CHARGE, "Flame Charge", Type.FIRE, MoveCategory.PHYSICAL, 50, 100, 20, "Cloaking itself in flame, the user attacks the target. Then, building up more power, the user raises its Speed stat.", 100, 0, 5)
+ new StatusMove(Moves.SOAK, Type.WATER, 100, 20, -1, 0, 5)
+ .attr(ChangeTypeAttr, Type.WATER),
+ new AttackMove(Moves.FLAME_CHARGE, Type.FIRE, MoveCategory.PHYSICAL, 50, 100, 20, 100, 0, 5)
.attr(StatChangeAttr, BattleStat.SPD, 1, true),
- new SelfStatusMove(Moves.COIL, "Coil", Type.POISON, -1, 20, "The user coils up and concentrates. This raises its Attack and Defense stats as well as its accuracy.", -1, 0, 5)
+ new SelfStatusMove(Moves.COIL, Type.POISON, -1, 20, -1, 0, 5)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF, BattleStat.ACC ], 1, true),
- new AttackMove(Moves.LOW_SWEEP, "Low Sweep", Type.FIGHTING, MoveCategory.PHYSICAL, 65, 100, 20, "The user makes a swift attack on the target's legs, which lowers the target's Speed stat.", 100, 0, 5)
+ new AttackMove(Moves.LOW_SWEEP, Type.FIGHTING, MoveCategory.PHYSICAL, 65, 100, 20, 100, 0, 5)
.attr(StatChangeAttr, BattleStat.SPD, -1),
- new AttackMove(Moves.ACID_SPRAY, "Acid Spray", Type.POISON, MoveCategory.SPECIAL, 40, 100, 20, "The user spits fluid that works to melt the target. This harshly lowers the target's Sp. Def stat.", 100, 0, 5)
+ new AttackMove(Moves.ACID_SPRAY, Type.POISON, MoveCategory.SPECIAL, 40, 100, 20, 100, 0, 5)
.attr(StatChangeAttr, BattleStat.SPDEF, -2)
.ballBombMove(),
- new AttackMove(Moves.FOUL_PLAY, "Foul Play", Type.DARK, MoveCategory.PHYSICAL, 95, 100, 15, "The user turns the target's power against it. The higher the target's Attack stat, the greater the damage it deals.", -1, 0, 5)
+ new AttackMove(Moves.FOUL_PLAY, Type.DARK, MoveCategory.PHYSICAL, 95, 100, 15, -1, 0, 5)
.attr(TargetAtkUserAtkAttr),
- new StatusMove(Moves.SIMPLE_BEAM, "Simple Beam", Type.NORMAL, 100, 15, "The user's mysterious psychic wave changes the target's Ability to Simple.", -1, 0, 5)
+ new StatusMove(Moves.SIMPLE_BEAM, Type.NORMAL, 100, 15, -1, 0, 5)
.attr(AbilityChangeAttr, Abilities.SIMPLE),
- new StatusMove(Moves.ENTRAINMENT, "Entrainment", Type.NORMAL, 100, 15, "The user dances with an odd rhythm that compels the target to mimic it, making the target's Ability the same as the user's.", -1, 0, 5)
+ new StatusMove(Moves.ENTRAINMENT, Type.NORMAL, 100, 15, -1, 0, 5)
.attr(AbilityGiveAttr),
- new StatusMove(Moves.AFTER_YOU, "After You (N)", Type.NORMAL, -1, 15, "The user helps the target and makes it use its move right after the user.", -1, 0, 5)
- .ignoresProtect(),
- new AttackMove(Moves.ROUND, "Round (P)", Type.NORMAL, MoveCategory.SPECIAL, 60, 100, 15, "The user attacks the target with a song. Others can join in the Round to increase the power of the attack.", -1, 0, 5)
- .soundBased(),
- new AttackMove(Moves.ECHOED_VOICE, "Echoed Voice", Type.NORMAL, MoveCategory.SPECIAL, 40, 100, 15, "The user attacks the target with an echoing voice. If this move is used every turn, its power is increased.", -1, 0, 5)
+ new StatusMove(Moves.AFTER_YOU, Type.NORMAL, -1, 15, -1, 0, 5)
+ .ignoresProtect()
+ .unimplemented(),
+ new AttackMove(Moves.ROUND, Type.NORMAL, MoveCategory.SPECIAL, 60, 100, 15, -1, 0, 5)
+ .soundBased()
+ .partial(),
+ new AttackMove(Moves.ECHOED_VOICE, Type.NORMAL, MoveCategory.SPECIAL, 40, 100, 15, -1, 0, 5)
.attr(ConsecutiveUseMultiBasePowerAttr, 5, false)
.soundBased(),
- new AttackMove(Moves.CHIP_AWAY, "Chip Away", Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, "Looking for an opening, the user strikes consistently. The target's stat changes don't affect this attack's damage.", -1, 0, 5)
+ new AttackMove(Moves.CHIP_AWAY, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 20, -1, 0, 5)
.attr(IgnoreOpponentStatChangesAttr),
- new AttackMove(Moves.CLEAR_SMOG, "Clear Smog (P)", Type.POISON, MoveCategory.SPECIAL, 50, -1, 15, "The user attacks the target by throwing a clump of special mud. All stat changes are returned to normal.", -1, 0, 5),
- new AttackMove(Moves.STORED_POWER, "Stored Power", Type.PSYCHIC, MoveCategory.SPECIAL, 20, 100, 10, "The user attacks the target with stored power. The more the user's stats are raised, the greater the move's power.", -1, 0, 5)
+ new AttackMove(Moves.CLEAR_SMOG, Type.POISON, MoveCategory.SPECIAL, 50, -1, 15, -1, 0, 5)
+ .attr(ResetStatsAttr),
+ new AttackMove(Moves.STORED_POWER, Type.PSYCHIC, MoveCategory.SPECIAL, 20, 100, 10, -1, 0, 5)
.attr(StatChangeCountPowerAttr),
- new StatusMove(Moves.QUICK_GUARD, "Quick Guard (N)", Type.FIGHTING, -1, 15, "The user protects itself and its allies from priority moves.", -1, 3, 5)
- .target(MoveTarget.USER_SIDE),
- new SelfStatusMove(Moves.ALLY_SWITCH, "Ally Switch (N)", Type.PSYCHIC, -1, 15, "The user teleports using a strange power and switches places with one of its allies.", -1, 2, 5)
- .ignoresProtect(),
- new AttackMove(Moves.SCALD, "Scald", Type.WATER, MoveCategory.SPECIAL, 80, 100, 15, "The user shoots boiling hot water at its target. This may also leave the target with a burn.", 30, 0, 5)
+ new StatusMove(Moves.QUICK_GUARD, Type.FIGHTING, -1, 15, -1, 3, 5)
+ .target(MoveTarget.USER_SIDE)
+ .unimplemented(),
+ new SelfStatusMove(Moves.ALLY_SWITCH, Type.PSYCHIC, -1, 15, -1, 2, 5)
+ .ignoresProtect()
+ .unimplemented(),
+ new AttackMove(Moves.SCALD, Type.WATER, MoveCategory.SPECIAL, 80, 100, 15, 30, 0, 5)
.attr(HealStatusEffectAttr, false, StatusEffect.FREEZE)
.attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new SelfStatusMove(Moves.SHELL_SMASH, "Shell Smash", Type.NORMAL, -1, 15, "The user breaks its shell, which lowers Defense and Sp. Def stats but sharply raises its Attack, Sp. Atk, and Speed stats.", -1, 0, 5)
+ new SelfStatusMove(Moves.SHELL_SMASH, Type.NORMAL, -1, 15, -1, 0, 5)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPATK, BattleStat.SPD ], 2, true)
.attr(StatChangeAttr, [ BattleStat.DEF, BattleStat.SPDEF ], -1, true),
- new StatusMove(Moves.HEAL_PULSE, "Heal Pulse", Type.PSYCHIC, -1, 10, "The user emits a healing pulse that restores the target's HP by up to half of its max HP.", -1, 0, 5)
+ new StatusMove(Moves.HEAL_PULSE, Type.PSYCHIC, -1, 10, -1, 0, 5)
.attr(HealAttr, 0.5, false, false)
.pulseMove()
.triageMove(),
- new AttackMove(Moves.HEX, "Hex", Type.GHOST, MoveCategory.SPECIAL, 65, 100, 10, "This relentless attack does massive damage to a target affected by status conditions.", -1, 0, 5)
+ new AttackMove(Moves.HEX, Type.GHOST, MoveCategory.SPECIAL, 65, 100, 10, -1, 0, 5)
.attr(MovePowerMultiplierAttr, (user, target, move) => target.status ? 2 : 1),
- new AttackMove(Moves.SKY_DROP, "Sky Drop", Type.FLYING, MoveCategory.PHYSICAL, 60, 100, 10, "The user takes the target into the sky, then drops it during the next turn. The target cannot attack while in the sky.", -1, 0, 5)
+ new AttackMove(Moves.SKY_DROP, Type.FLYING, MoveCategory.PHYSICAL, 60, 100, 10, -1, 0, 5)
.attr(ChargeAttr, ChargeAnim.SKY_DROP_CHARGING, 'took {TARGET}\ninto the sky!', BattlerTagType.FLYING) // TODO: Add 2nd turn message
.condition(failOnGravityCondition)
.ignoresVirtual(),
- new SelfStatusMove(Moves.SHIFT_GEAR, "Shift Gear", Type.STEEL, -1, 10, "The user rotates its gears, raising its Attack stat and sharply raising its Speed stat.", -1, 0, 5)
+ new SelfStatusMove(Moves.SHIFT_GEAR, Type.STEEL, -1, 10, -1, 0, 5)
.attr(StatChangeAttr, BattleStat.ATK, 1, true)
.attr(StatChangeAttr, BattleStat.SPD, 2, true),
- new AttackMove(Moves.CIRCLE_THROW, "Circle Throw", Type.FIGHTING, MoveCategory.PHYSICAL, 60, 90, 10, "The target is thrown, and a different Pokémon is dragged out. In the wild, this ends a battle against a single Pokémon.", -1, -6, 5)
+ new AttackMove(Moves.CIRCLE_THROW, Type.FIGHTING, MoveCategory.PHYSICAL, 60, 90, 10, -1, -6, 5)
.attr(ForceSwitchOutAttr),
- new AttackMove(Moves.INCINERATE, "Incinerate (P)", Type.FIRE, MoveCategory.SPECIAL, 60, 100, 15, "The user attacks opposing Pokémon with fire. If a Pokémon is holding a certain item, such as a Berry, the item becomes burned up and unusable.", -1, 0, 5)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new StatusMove(Moves.QUASH, "Quash (N)", Type.DARK, 100, 15, "The user suppresses the target and makes its move go last.", -1, 0, 5),
- new AttackMove(Moves.ACROBATICS, "Acrobatics (P)", Type.FLYING, MoveCategory.PHYSICAL, 55, 100, 15, "The user nimbly strikes the target. If the user is not holding an item, this attack inflicts massive damage.", -1, 0, 5),
- new StatusMove(Moves.REFLECT_TYPE, "Reflect Type", Type.NORMAL, -1, 15, "The user reflects the target's type, making the user the same type as the target.", -1, 0, 5)
+ new AttackMove(Moves.INCINERATE, Type.FIRE, MoveCategory.SPECIAL, 60, 100, 15, -1, 0, 5)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .partial(),
+ new StatusMove(Moves.QUASH, Type.DARK, 100, 15, -1, 0, 5)
+ .unimplemented(),
+ new AttackMove(Moves.ACROBATICS, Type.FLYING, MoveCategory.PHYSICAL, 55, 100, 15, -1, 0, 5)
+ .partial(),
+ new StatusMove(Moves.REFLECT_TYPE, Type.NORMAL, -1, 15, -1, 0, 5)
.attr(CopyTypeAttr),
- new AttackMove(Moves.RETALIATE, "Retaliate (P)", Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 5, "The user gets revenge for a fainted ally. If an ally fainted in the previous turn, this move's power is increased.", -1, 0, 5),
- new AttackMove(Moves.FINAL_GAMBIT, "Final Gambit", Type.FIGHTING, MoveCategory.SPECIAL, -1, 100, 5, "The user risks everything to attack its target. The user faints but does damage equal to its HP.", -1, 0, 5)
+ new AttackMove(Moves.RETALIATE, Type.NORMAL, MoveCategory.PHYSICAL, 70, 100, 5, -1, 0, 5)
+ .partial(),
+ new AttackMove(Moves.FINAL_GAMBIT, Type.FIGHTING, MoveCategory.SPECIAL, -1, 100, 5, -1, 0, 5)
.attr(UserHpDamageAttr)
.attr(SacrificialAttr),
- new StatusMove(Moves.BESTOW, "Bestow (N)", Type.NORMAL, -1, 15, "The user passes its held item to the target when the target isn't holding an item.", -1, 0, 5)
- .ignoresProtect(),
- new AttackMove(Moves.INFERNO, "Inferno", Type.FIRE, MoveCategory.SPECIAL, 100, 50, 5, "The user attacks by engulfing the target in an intense fire. This leaves the target with a burn.", 100, 0, 5)
+ new StatusMove(Moves.BESTOW, Type.NORMAL, -1, 15, -1, 0, 5)
+ .ignoresProtect()
+ .unimplemented(),
+ new AttackMove(Moves.INFERNO, Type.FIRE, MoveCategory.SPECIAL, 100, 50, 5, 100, 0, 5)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new AttackMove(Moves.WATER_PLEDGE, "Water Pledge (P)", Type.WATER, MoveCategory.SPECIAL, 80, 100, 10, "A column of water hits the target. When used with its fire equivalent, its power increases and a rainbow appears.", -1, 0, 5),
- new AttackMove(Moves.FIRE_PLEDGE, "Fire Pledge (P)", Type.FIRE, MoveCategory.SPECIAL, 80, 100, 10, "A column of fire hits the target. When used with its grass equivalent, its power increases and a vast sea of fire appears.", -1, 0, 5),
- new AttackMove(Moves.GRASS_PLEDGE, "Grass Pledge (P)", Type.GRASS, MoveCategory.SPECIAL, 80, 100, 10, "A column of grass hits the target. When used with its water equivalent, its power increases and a vast swamp appears.", -1, 0, 5),
- new AttackMove(Moves.VOLT_SWITCH, "Volt Switch", Type.ELECTRIC, MoveCategory.SPECIAL, 70, 100, 20, "After making its attack, the user rushes back to switch places with a party Pokémon in waiting.", -1, 0, 5)
- .attr(ForceSwitchOutAttr, true),
- new AttackMove(Moves.STRUGGLE_BUG, "Struggle Bug", Type.BUG, MoveCategory.SPECIAL, 50, 100, 20, "While resisting, the user attacks opposing Pokémon. This lowers the Sp. Atk stats of those hit.", 100, 0, 5)
+ new AttackMove(Moves.WATER_PLEDGE, Type.WATER, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 5)
+ .partial(),
+ new AttackMove(Moves.FIRE_PLEDGE, Type.FIRE, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 5)
+ .partial(),
+ new AttackMove(Moves.GRASS_PLEDGE, Type.GRASS, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 5)
+ .partial(),
+ new AttackMove(Moves.VOLT_SWITCH, Type.ELECTRIC, MoveCategory.SPECIAL, 70, 100, 20, -1, 0, 5)
+ .attr(ForceSwitchOutAttr, true, false),
+ new AttackMove(Moves.STRUGGLE_BUG, Type.BUG, MoveCategory.SPECIAL, 50, 100, 20, 100, 0, 5)
.attr(StatChangeAttr, BattleStat.SPATK, -1)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.BULLDOZE, "Bulldoze", Type.GROUND, MoveCategory.PHYSICAL, 60, 100, 20, "The user strikes everything around it by stomping down on the ground. This lowers the Speed stats of those hit.", 100, 0, 5)
+ new AttackMove(Moves.BULLDOZE, Type.GROUND, MoveCategory.PHYSICAL, 60, 100, 20, 100, 0, 5)
.attr(StatChangeAttr, BattleStat.SPD, -1)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.FROST_BREATH, "Frost Breath", Type.ICE, MoveCategory.SPECIAL, 60, 90, 10, "The user blows its cold breath on the target. This attack always results in a critical hit.", 100, 0, 5)
+ new AttackMove(Moves.FROST_BREATH, Type.ICE, MoveCategory.SPECIAL, 60, 90, 10, 100, 0, 5)
.attr(CritOnlyAttr),
- new AttackMove(Moves.DRAGON_TAIL, "Dragon Tail", Type.DRAGON, MoveCategory.PHYSICAL, 60, 90, 10, "The target is knocked away, and a different Pokémon is dragged out. In the wild, this ends a battle against a single Pokémon.", -1, -6, 5)
+ new AttackMove(Moves.DRAGON_TAIL, Type.DRAGON, MoveCategory.PHYSICAL, 60, 90, 10, -1, -6, 5)
.attr(ForceSwitchOutAttr),
- new SelfStatusMove(Moves.WORK_UP, "Work Up", Type.NORMAL, -1, 30, "The user is roused, and its Attack and Sp. Atk stats increase.", -1, 0, 5)
+ new SelfStatusMove(Moves.WORK_UP, Type.NORMAL, -1, 30, -1, 0, 5)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPATK ], 1, true),
- new AttackMove(Moves.ELECTROWEB, "Electroweb", Type.ELECTRIC, MoveCategory.SPECIAL, 55, 95, 15, "The user attacks and captures opposing Pokémon using an electric net. This lowers their Speed stats.", 100, 0, 5)
+ new AttackMove(Moves.ELECTROWEB, Type.ELECTRIC, MoveCategory.SPECIAL, 55, 95, 15, 100, 0, 5)
.attr(StatChangeAttr, BattleStat.SPD, -1)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.WILD_CHARGE, "Wild Charge", Type.ELECTRIC, MoveCategory.PHYSICAL, 90, 100, 15, "The user shrouds itself in electricity and smashes into its target. This also damages the user a little.", -1, 0, 5)
+ new AttackMove(Moves.WILD_CHARGE, Type.ELECTRIC, MoveCategory.PHYSICAL, 90, 100, 15, -1, 0, 5)
.attr(RecoilAttr),
- new AttackMove(Moves.DRILL_RUN, "Drill Run", Type.GROUND, MoveCategory.PHYSICAL, 80, 95, 10, "The user crashes into its target while rotating its body like a drill. Critical hits land more easily.", -1, 0, 5)
+ new AttackMove(Moves.DRILL_RUN, Type.GROUND, MoveCategory.PHYSICAL, 80, 95, 10, -1, 0, 5)
.attr(HighCritAttr),
- new AttackMove(Moves.DUAL_CHOP, "Dual Chop", Type.DRAGON, MoveCategory.PHYSICAL, 40, 90, 15, "The user attacks its target by hitting it with brutal strikes. The target is hit twice in a row.", -1, 0, 5)
+ new AttackMove(Moves.DUAL_CHOP, Type.DRAGON, MoveCategory.PHYSICAL, 40, 90, 15, -1, 0, 5)
.attr(MultiHitAttr, MultiHitType._2),
- new AttackMove(Moves.HEART_STAMP, "Heart Stamp", Type.PSYCHIC, MoveCategory.PHYSICAL, 60, 100, 25, "The user unleashes a vicious blow after its cute act makes the target less wary. This may also make the target flinch.", 30, 0, 5)
+ new AttackMove(Moves.HEART_STAMP, Type.PSYCHIC, MoveCategory.PHYSICAL, 60, 100, 25, 30, 0, 5)
.attr(FlinchAttr),
- new AttackMove(Moves.HORN_LEECH, "Horn Leech", Type.GRASS, MoveCategory.PHYSICAL, 75, 100, 10, "The user drains the target's energy with its horns. The user's HP is restored by half the damage taken by the target.", -1, 0, 5)
+ new AttackMove(Moves.HORN_LEECH, Type.GRASS, MoveCategory.PHYSICAL, 75, 100, 10, -1, 0, 5)
.attr(HitHealAttr)
.triageMove(),
- new AttackMove(Moves.SACRED_SWORD, "Sacred Sword", Type.FIGHTING, MoveCategory.PHYSICAL, 90, 100, 15, "The user attacks by slicing with a long horn. The target's stat changes don't affect this attack's damage.", -1, 0, 5)
+ new AttackMove(Moves.SACRED_SWORD, Type.FIGHTING, MoveCategory.PHYSICAL, 90, 100, 15, -1, 0, 5)
.attr(IgnoreOpponentStatChangesAttr)
.slicingMove(),
- new AttackMove(Moves.RAZOR_SHELL, "Razor Shell", Type.WATER, MoveCategory.PHYSICAL, 75, 95, 10, "The user cuts its target with sharp shells. This may also lower the target's Defense stat.", 50, 0, 5)
+ new AttackMove(Moves.RAZOR_SHELL, Type.WATER, MoveCategory.PHYSICAL, 75, 95, 10, 50, 0, 5)
.attr(StatChangeAttr, BattleStat.DEF, -1)
.slicingMove(),
- new AttackMove(Moves.HEAT_CRASH, "Heat Crash", Type.FIRE, MoveCategory.PHYSICAL, -1, 100, 10, "The user slams its target with its flame-covered body. The more the user outweighs the target, the greater the move's power.", -1, 0, 5)
+ new AttackMove(Moves.HEAT_CRASH, Type.FIRE, MoveCategory.PHYSICAL, -1, 100, 10, -1, 0, 5)
.attr(CompareWeightPowerAttr),
- new AttackMove(Moves.LEAF_TORNADO, "Leaf Tornado", Type.GRASS, MoveCategory.SPECIAL, 65, 90, 10, "The user attacks its target by encircling it in sharp leaves. This attack may also lower the target's accuracy.", 50, 0, 5)
+ new AttackMove(Moves.LEAF_TORNADO, Type.GRASS, MoveCategory.SPECIAL, 65, 90, 10, 50, 0, 5)
.attr(StatChangeAttr, BattleStat.ACC, -1),
- new AttackMove(Moves.STEAMROLLER, "Steamroller", Type.BUG, MoveCategory.PHYSICAL, 65, 100, 20, "The user crushes its target by rolling over the target with its rolled-up body. This may also make the target flinch.", 30, 0, 5)
+ new AttackMove(Moves.STEAMROLLER, Type.BUG, MoveCategory.PHYSICAL, 65, 100, 20, 30, 0, 5)
.attr(FlinchAttr),
- new SelfStatusMove(Moves.COTTON_GUARD, "Cotton Guard", Type.GRASS, -1, 10, "The user protects itself by wrapping its body in soft cotton, which drastically raises the user's Defense stat.", -1, 0, 5)
+ new SelfStatusMove(Moves.COTTON_GUARD, Type.GRASS, -1, 10, -1, 0, 5)
.attr(StatChangeAttr, BattleStat.DEF, 3, true),
- new AttackMove(Moves.NIGHT_DAZE, "Night Daze", Type.DARK, MoveCategory.SPECIAL, 85, 95, 10, "The user lets loose a pitch-black shock wave at its target. This may also lower the target's accuracy.", 40, 0, 5)
+ new AttackMove(Moves.NIGHT_DAZE, Type.DARK, MoveCategory.SPECIAL, 85, 95, 10, 40, 0, 5)
.attr(StatChangeAttr, BattleStat.ACC, -1),
- new AttackMove(Moves.PSYSTRIKE, "Psystrike", Type.PSYCHIC, MoveCategory.SPECIAL, 100, 100, 10, "The user materializes an odd psychic wave to attack the target. This attack does physical damage.", -1, 0, 5)
+ new AttackMove(Moves.PSYSTRIKE, Type.PSYCHIC, MoveCategory.SPECIAL, 100, 100, 10, -1, 0, 5)
.attr(DefDefAttr),
- new AttackMove(Moves.TAIL_SLAP, "Tail Slap", Type.NORMAL, MoveCategory.PHYSICAL, 25, 85, 10, "The user attacks by striking the target with its hard tail. It hits the target two to five times in a row.", -1, 0, 5)
+ new AttackMove(Moves.TAIL_SLAP, Type.NORMAL, MoveCategory.PHYSICAL, 25, 85, 10, -1, 0, 5)
.attr(MultiHitAttr),
- new AttackMove(Moves.HURRICANE, "Hurricane", Type.FLYING, MoveCategory.SPECIAL, 110, 70, 10, "The user attacks by wrapping its opponent in a fierce wind that flies up into the sky. This may also confuse the target.", 30, 0, 5)
+ new AttackMove(Moves.HURRICANE, Type.FLYING, MoveCategory.SPECIAL, 110, 70, 10, 30, 0, 5)
.attr(ThunderAccuracyAttr)
.attr(ConfuseAttr)
+ .attr(HitsTagAttr, BattlerTagType.FLYING, false)
.windMove(),
- new AttackMove(Moves.HEAD_CHARGE, "Head Charge", Type.NORMAL, MoveCategory.PHYSICAL, 120, 100, 15, "The user charges its head into its target, using its powerful guard hair. This also damages the user a little.", -1, 0, 5)
+ new AttackMove(Moves.HEAD_CHARGE, Type.NORMAL, MoveCategory.PHYSICAL, 120, 100, 15, -1, 0, 5)
.attr(RecoilAttr),
- new AttackMove(Moves.GEAR_GRIND, "Gear Grind", Type.STEEL, MoveCategory.PHYSICAL, 50, 85, 15, "The user attacks by throwing steel gears at its target twice.", -1, 0, 5)
+ new AttackMove(Moves.GEAR_GRIND, Type.STEEL, MoveCategory.PHYSICAL, 50, 85, 15, -1, 0, 5)
.attr(MultiHitAttr, MultiHitType._2),
- new AttackMove(Moves.SEARING_SHOT, "Searing Shot", Type.FIRE, MoveCategory.SPECIAL, 100, 100, 5, "The user torches everything around it in an inferno of scarlet flames. This may also leave those it hits with a burn.", 30, 0, 5)
+ new AttackMove(Moves.SEARING_SHOT, Type.FIRE, MoveCategory.SPECIAL, 100, 100, 5, 30, 0, 5)
.attr(StatusEffectAttr, StatusEffect.BURN)
.ballBombMove()
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.TECHNO_BLAST, "Techno Blast (P)", Type.NORMAL, MoveCategory.SPECIAL, 120, 100, 5, "The user fires a beam of light at its target. The move's type changes depending on the Drive the user holds.", -1, 0, 5),
- new AttackMove(Moves.RELIC_SONG, "Relic Song", Type.NORMAL, MoveCategory.SPECIAL, 75, 100, 10, "The user sings an ancient song and attacks by appealing to the hearts of the listening opposing Pokémon. This may also induce sleep.", 10, 0, 5)
+ new AttackMove(Moves.TECHNO_BLAST, Type.NORMAL, MoveCategory.SPECIAL, 120, 100, 5, -1, 0, 5)
+ .partial(),
+ new AttackMove(Moves.RELIC_SONG, Type.NORMAL, MoveCategory.SPECIAL, 75, 100, 10, 10, 0, 5)
.attr(StatusEffectAttr, StatusEffect.SLEEP)
.soundBased()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.SECRET_SWORD, "Secret Sword", Type.FIGHTING, MoveCategory.SPECIAL, 85, 100, 10, "The user cuts with its long horn. The odd power contained in the horn does physical damage to the target.", -1, 0, 5)
+ new AttackMove(Moves.SECRET_SWORD, Type.FIGHTING, MoveCategory.SPECIAL, 85, 100, 10, -1, 0, 5)
.attr(DefDefAttr)
.slicingMove(),
- new AttackMove(Moves.GLACIATE, "Glaciate", Type.ICE, MoveCategory.SPECIAL, 65, 95, 10, "The user attacks by blowing freezing cold air at opposing Pokémon. This lowers their Speed stats.", 100, 0, 5)
+ new AttackMove(Moves.GLACIATE, Type.ICE, MoveCategory.SPECIAL, 65, 95, 10, 100, 0, 5)
.attr(StatChangeAttr, BattleStat.SPD, -1)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.BOLT_STRIKE, "Bolt Strike", Type.ELECTRIC, MoveCategory.PHYSICAL, 130, 85, 5, "The user surrounds itself with a great amount of electricity and charges its target. This may also leave the target with paralysis.", 20, 0, 5)
+ new AttackMove(Moves.BOLT_STRIKE, Type.ELECTRIC, MoveCategory.PHYSICAL, 130, 85, 5, 20, 0, 5)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new AttackMove(Moves.BLUE_FLARE, "Blue Flare", Type.FIRE, MoveCategory.SPECIAL, 130, 85, 5, "The user attacks by engulfing the target in an intense, yet beautiful, blue flame. This may also leave the target with a burn.", 20, 0, 5)
+ new AttackMove(Moves.BLUE_FLARE, Type.FIRE, MoveCategory.SPECIAL, 130, 85, 5, 20, 0, 5)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new AttackMove(Moves.FIERY_DANCE, "Fiery Dance", Type.FIRE, MoveCategory.SPECIAL, 80, 100, 10, "Cloaked in flames, the user attacks the target by dancing and flapping its wings. This may also raise the user's Sp. Atk stat.", 50, 0, 5)
+ new AttackMove(Moves.FIERY_DANCE, Type.FIRE, MoveCategory.SPECIAL, 80, 100, 10, 50, 0, 5)
.attr(StatChangeAttr, BattleStat.SPATK, 1, true)
.danceMove(),
- new AttackMove(Moves.FREEZE_SHOCK, "Freeze Shock", Type.ICE, MoveCategory.PHYSICAL, 140, 90, 5, "On the second turn, the user hits the target with electrically charged ice. This may also leave the target with paralysis.", 30, 0, 5)
+ new AttackMove(Moves.FREEZE_SHOCK, Type.ICE, MoveCategory.PHYSICAL, 140, 90, 5, 30, 0, 5)
+ .attr(ChargeAttr, ChargeAnim.FREEZE_SHOCK_CHARGING, 'became cloaked\nin a freezing light!')
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.makesContact(false),
- new AttackMove(Moves.ICE_BURN, "Ice Burn", Type.ICE, MoveCategory.SPECIAL, 140, 90, 5, "On the second turn, an ultracold, freezing wind surrounds the target. This may leave the target with a burn.", 30, 0, 5)
+ new AttackMove(Moves.ICE_BURN, Type.ICE, MoveCategory.SPECIAL, 140, 90, 5, 30, 0, 5)
.attr(ChargeAttr, ChargeAnim.ICE_BURN_CHARGING, 'became cloaked\nin freezing air!')
.attr(StatusEffectAttr, StatusEffect.BURN)
.ignoresVirtual(),
- new AttackMove(Moves.SNARL, "Snarl", Type.DARK, MoveCategory.SPECIAL, 55, 95, 15, "The user yells as if it's ranting about something, which lowers the Sp. Atk stats of opposing Pokémon.", 100, 0, 5)
+ new AttackMove(Moves.SNARL, Type.DARK, MoveCategory.SPECIAL, 55, 95, 15, 100, 0, 5)
.attr(StatChangeAttr, BattleStat.SPATK, -1)
.soundBased()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.ICICLE_CRASH, "Icicle Crash", Type.ICE, MoveCategory.PHYSICAL, 85, 90, 10, "The user attacks by harshly dropping large icicles onto the target. This may also make the target flinch.", 30, 0, 5)
+ new AttackMove(Moves.ICICLE_CRASH, Type.ICE, MoveCategory.PHYSICAL, 85, 90, 10, 30, 0, 5)
.attr(FlinchAttr)
.makesContact(false),
- new AttackMove(Moves.V_CREATE, "V-create", Type.FIRE, MoveCategory.PHYSICAL, 180, 95, 5, "With a hot flame on its forehead, the user hurls itself at its target. This lowers the user's Defense, Sp. Def, and Speed stats.", 100, 0, 5)
+ new AttackMove(Moves.V_CREATE, Type.FIRE, MoveCategory.PHYSICAL, 180, 95, 5, 100, 0, 5)
.attr(StatChangeAttr, [ BattleStat.DEF, BattleStat.SPDEF, BattleStat.SPD ], -1, true),
- new AttackMove(Moves.FUSION_FLARE, "Fusion Flare (P)", Type.FIRE, MoveCategory.SPECIAL, 100, 100, 5, "The user brings down a giant flame. This move's power is increased when influenced by an enormous lightning bolt.", -1, 0, 5)
- .attr(HealStatusEffectAttr, true, StatusEffect.FREEZE),
- new AttackMove(Moves.FUSION_BOLT, "Fusion Bolt (P)", Type.ELECTRIC, MoveCategory.PHYSICAL, 100, 100, 5, "The user throws down a giant lightning bolt. This move's power is increased when influenced by an enormous flame.", -1, 0, 5)
- .makesContact(false),
- new AttackMove(Moves.FLYING_PRESS, "Flying Press (P)", Type.FIGHTING, MoveCategory.PHYSICAL, 100, 95, 10, "The user dives down onto the target from the sky. This move is Fighting and Flying type simultaneously.", -1, 0, 6),
- new StatusMove(Moves.MAT_BLOCK, "Mat Block (N)", Type.FIGHTING, -1, 10, "Using a pulled-up mat as a shield, the user protects itself and its allies from damaging moves. This does not stop status moves.", -1, 0, 6),
- new AttackMove(Moves.BELCH, "Belch (P)", Type.POISON, MoveCategory.SPECIAL, 120, 90, 10, "The user lets out a damaging belch at the target. The user must eat a held Berry to use this move.", -1, 0, 6),
- new StatusMove(Moves.ROTOTILLER, "Rototiller (N)", Type.GROUND, -1, 10, "Tilling the soil, the user makes it easier for plants to grow. This raises the Attack and Sp. Atk stats of Grass-type Pokémon.", 100, 0, 6)
- .target(MoveTarget.ALL),
- new StatusMove(Moves.STICKY_WEB, "Sticky Web", Type.BUG, -1, 20, "The user weaves a sticky net around the opposing team, which lowers their Speed stats upon switching into battle.", -1, 0, 6)
+ new AttackMove(Moves.FUSION_FLARE, Type.FIRE, MoveCategory.SPECIAL, 100, 100, 5, -1, 0, 5)
+ .attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
+ .partial(),
+ new AttackMove(Moves.FUSION_BOLT, Type.ELECTRIC, MoveCategory.PHYSICAL, 100, 100, 5, -1, 0, 5)
+ .makesContact(false)
+ .partial(),
+ new AttackMove(Moves.FLYING_PRESS, Type.FIGHTING, MoveCategory.PHYSICAL, 100, 95, 10, -1, 0, 6)
+ .partial(),
+ new StatusMove(Moves.MAT_BLOCK, Type.FIGHTING, -1, 10, -1, 0, 6)
+ .unimplemented(),
+ new AttackMove(Moves.BELCH, Type.POISON, MoveCategory.SPECIAL, 120, 90, 10, -1, 0, 6)
+ .partial(),
+ new StatusMove(Moves.ROTOTILLER, Type.GROUND, -1, 10, 100, 0, 6)
+ .target(MoveTarget.ALL)
+ .unimplemented(),
+ new StatusMove(Moves.STICKY_WEB, Type.BUG, -1, 20, -1, 0, 6)
.attr(AddArenaTrapTagAttr, ArenaTagType.STICKY_WEB)
.target(MoveTarget.ENEMY_SIDE),
- new AttackMove(Moves.FELL_STINGER, "Fell Stinger (P)", Type.BUG, MoveCategory.PHYSICAL, 50, 100, 25, "When the user knocks out a target with this move, the user's Attack stat rises drastically.", -1, 0, 6),
- new AttackMove(Moves.PHANTOM_FORCE, "Phantom Force", Type.GHOST, MoveCategory.PHYSICAL, 90, 100, 10, "The user vanishes somewhere, then strikes the target on the next turn. This move hits even if the target protects itself.", -1, 0, 6)
+ new AttackMove(Moves.FELL_STINGER, Type.BUG, MoveCategory.PHYSICAL, 50, 100, 25, -1, 0, 6)
+ .partial(),
+ new AttackMove(Moves.PHANTOM_FORCE, Type.GHOST, MoveCategory.PHYSICAL, 90, 100, 10, -1, 0, 6)
.attr(ChargeAttr, ChargeAnim.PHANTOM_FORCE_CHARGING, 'vanished\ninstantly!', BattlerTagType.HIDDEN)
.ignoresProtect()
.ignoresVirtual(),
- new StatusMove(Moves.TRICK_OR_TREAT, "Trick-or-Treat (N)", Type.GHOST, 100, 20, "The user takes the target trick-or-treating. This adds Ghost type to the target's type.", -1, 0, 6),
- new StatusMove(Moves.NOBLE_ROAR, "Noble Roar", Type.NORMAL, 100, 30, "Letting out a noble roar, the user intimidates the target and lowers its Attack and Sp. Atk stats.", 100, 0, 6)
+ new StatusMove(Moves.TRICK_OR_TREAT, Type.GHOST, 100, 20, -1, 0, 6)
+ .attr(AddTypeAttr, Type.GHOST)
+ .partial(),
+ new StatusMove(Moves.NOBLE_ROAR, Type.NORMAL, 100, 30, 100, 0, 6)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPATK ], -1)
.soundBased(),
- new StatusMove(Moves.ION_DELUGE, "Ion Deluge (N)", Type.ELECTRIC, -1, 25, "The user disperses electrically charged particles, which changes Normal-type moves to Electric-type moves.", -1, 1, 6)
- .target(MoveTarget.BOTH_SIDES),
- new AttackMove(Moves.PARABOLIC_CHARGE, "Parabolic Charge", Type.ELECTRIC, MoveCategory.SPECIAL, 65, 100, 20, "The user attacks everything around it. The user's HP is restored by half the damage taken by those hit.", -1, 0, 6)
+ new StatusMove(Moves.ION_DELUGE, Type.ELECTRIC, -1, 25, -1, 1, 6)
+ .target(MoveTarget.BOTH_SIDES)
+ .unimplemented(),
+ new AttackMove(Moves.PARABOLIC_CHARGE, Type.ELECTRIC, MoveCategory.SPECIAL, 65, 100, 20, -1, 0, 6)
.attr(HitHealAttr)
.target(MoveTarget.ALL_NEAR_OTHERS)
.triageMove(),
- new StatusMove(Moves.FORESTS_CURSE, "Forest's Curse (N)", Type.GRASS, 100, 20, "The user puts a forest curse on the target. The target is now Grass type as well.", -1, 0, 6),
- new AttackMove(Moves.PETAL_BLIZZARD, "Petal Blizzard", Type.GRASS, MoveCategory.PHYSICAL, 90, 100, 15, "The user stirs up a violent petal blizzard and attacks everything around it.", -1, 0, 6)
+ new StatusMove(Moves.FORESTS_CURSE, Type.GRASS, 100, 20, -1, 0, 6)
+ .attr(AddTypeAttr, Type.GRASS)
+ .partial(),
+ new AttackMove(Moves.PETAL_BLIZZARD, Type.GRASS, MoveCategory.PHYSICAL, 90, 100, 15, -1, 0, 6)
.windMove()
.makesContact(false)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.FREEZE_DRY, "Freeze-Dry", Type.ICE, MoveCategory.SPECIAL, 70, 100, 20, "The user rapidly cools the target. This may also leave the target frozen. This move is super effective on Water types.", 10, 0, 6)
+ new AttackMove(Moves.FREEZE_DRY, Type.ICE, MoveCategory.SPECIAL, 70, 100, 20, 10, 0, 6)
.attr(StatusEffectAttr, StatusEffect.FREEZE)
.attr(WaterSuperEffectTypeMultiplierAttr),
- new AttackMove(Moves.DISARMING_VOICE, "Disarming Voice", Type.FAIRY, MoveCategory.SPECIAL, 40, -1, 15, "Letting out a charming cry, the user does emotional damage to opposing Pokémon. This attack never misses.", -1, 0, 6)
+ new AttackMove(Moves.DISARMING_VOICE, Type.FAIRY, MoveCategory.SPECIAL, 40, -1, 15, -1, 0, 6)
.soundBased()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new StatusMove(Moves.PARTING_SHOT, "Parting Shot", Type.DARK, 100, 20, "With a parting threat, the user lowers the target's Attack and Sp. Atk stats. Then it switches with a party Pokémon.", 100, 0, 6)
+ new StatusMove(Moves.PARTING_SHOT, Type.DARK, 100, 20, 100, 0, 6)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPATK ], -1)
- .attr(ForceSwitchOutAttr, true)
+ .attr(ForceSwitchOutAttr, true, false)
.soundBased(),
- new StatusMove(Moves.TOPSY_TURVY, "Topsy-Turvy", Type.DARK, -1, 20, "All stat changes affecting the target turn topsy-turvy and become the opposite of what they were.", -1, 0, 6)
+ new StatusMove(Moves.TOPSY_TURVY, Type.DARK, -1, 20, -1, 0, 6)
.attr(InvertStatsAttr),
- new AttackMove(Moves.DRAINING_KISS, "Draining Kiss", Type.FAIRY, MoveCategory.SPECIAL, 50, 100, 10, "The user steals the target's HP with a kiss. The user's HP is restored by over half of the damage taken by the target.", -1, 0, 6)
+ new AttackMove(Moves.DRAINING_KISS, Type.FAIRY, MoveCategory.SPECIAL, 50, 100, 10, -1, 0, 6)
.attr(HitHealAttr, 0.75)
.makesContact()
.triageMove(),
- new StatusMove(Moves.CRAFTY_SHIELD, "Crafty Shield (N)", Type.FAIRY, -1, 10, "The user protects itself and its allies from status moves with a mysterious power. This does not stop moves that do damage.", -1, 3, 6)
- .target(MoveTarget.USER_SIDE),
- new StatusMove(Moves.FLOWER_SHIELD, "Flower Shield (N)", Type.FAIRY, -1, 10, "The user raises the Defense stats of all Grass-type Pokémon in battle with a mysterious power.", 100, 0, 6)
- .target(MoveTarget.ALL),
- new StatusMove(Moves.GRASSY_TERRAIN, "Grassy Terrain", Type.GRASS, -1, 10, "The user turns the ground to grass for five turns. This restores the HP of Pokémon on the ground a little every turn and powers up Grass-type moves.", -1, 0, 6)
+ new StatusMove(Moves.CRAFTY_SHIELD, Type.FAIRY, -1, 10, -1, 3, 6)
+ .target(MoveTarget.USER_SIDE)
+ .unimplemented(),
+ new StatusMove(Moves.FLOWER_SHIELD, Type.FAIRY, -1, 10, 100, 0, 6)
+ .target(MoveTarget.ALL)
+ .unimplemented(),
+ new StatusMove(Moves.GRASSY_TERRAIN, Type.GRASS, -1, 10, -1, 0, 6)
.attr(TerrainChangeAttr, TerrainType.GRASSY)
.target(MoveTarget.BOTH_SIDES),
- new StatusMove(Moves.MISTY_TERRAIN, "Misty Terrain", Type.FAIRY, -1, 10, "This protects Pokémon on the ground from status conditions and halves damage from Dragon-type moves for five turns.", -1, 0, 6)
+ new StatusMove(Moves.MISTY_TERRAIN, Type.FAIRY, -1, 10, -1, 0, 6)
.attr(TerrainChangeAttr, TerrainType.MISTY)
.target(MoveTarget.BOTH_SIDES),
- new StatusMove(Moves.ELECTRIFY, "Electrify (N)", Type.ELECTRIC, -1, 20, "If the target is electrified before it uses a move during that turn, the target's move becomes Electric type.", -1, 0, 6),
- new AttackMove(Moves.PLAY_ROUGH, "Play Rough", Type.FAIRY, MoveCategory.PHYSICAL, 90, 90, 10, "The user plays rough with the target and attacks it. This may also lower the target's Attack stat.", 10, 0, 6)
+ new StatusMove(Moves.ELECTRIFY, Type.ELECTRIC, -1, 20, -1, 0, 6)
+ .unimplemented(),
+ new AttackMove(Moves.PLAY_ROUGH, Type.FAIRY, MoveCategory.PHYSICAL, 90, 90, 10, 10, 0, 6)
.attr(StatChangeAttr, BattleStat.ATK, -1),
- new AttackMove(Moves.FAIRY_WIND, "Fairy Wind", Type.FAIRY, MoveCategory.SPECIAL, 40, 100, 30, "The user stirs up a fairy wind and strikes the target with it.", -1, 0, 6)
+ new AttackMove(Moves.FAIRY_WIND, Type.FAIRY, MoveCategory.SPECIAL, 40, 100, 30, -1, 0, 6)
.windMove(),
- new AttackMove(Moves.MOONBLAST, "Moonblast", Type.FAIRY, MoveCategory.SPECIAL, 95, 100, 15, "Borrowing the power of the moon, the user attacks the target. This may also lower the target's Sp. Atk stat.", 30, 0, 6)
+ new AttackMove(Moves.MOONBLAST, Type.FAIRY, MoveCategory.SPECIAL, 95, 100, 15, 30, 0, 6)
.attr(StatChangeAttr, BattleStat.SPATK, -1),
- new AttackMove(Moves.BOOMBURST, "Boomburst", Type.NORMAL, MoveCategory.SPECIAL, 140, 100, 10, "The user attacks everything around it with the destructive power of a terrible, explosive sound.", -1, 0, 6)
+ new AttackMove(Moves.BOOMBURST, Type.NORMAL, MoveCategory.SPECIAL, 140, 100, 10, -1, 0, 6)
.soundBased()
.target(MoveTarget.ALL_NEAR_OTHERS),
- new StatusMove(Moves.FAIRY_LOCK, "Fairy Lock (N)", Type.FAIRY, -1, 10, "By locking down the battlefield, the user keeps all Pokémon from fleeing during the next turn.", -1, 0, 6)
- .target(MoveTarget.BOTH_SIDES),
- new SelfStatusMove(Moves.KINGS_SHIELD, "King's Shield", Type.STEEL, -1, 10, "The user takes a defensive stance while it protects itself from damage. It also lowers the Attack stat of any attacker that makes direct contact.", -1, 4, 6)
+ new StatusMove(Moves.FAIRY_LOCK, Type.FAIRY, -1, 10, -1, 0, 6)
+ .target(MoveTarget.BOTH_SIDES)
+ .unimplemented(),
+ new SelfStatusMove(Moves.KINGS_SHIELD, Type.STEEL, -1, 10, -1, 4, 6)
.attr(ProtectAttr, BattlerTagType.KINGS_SHIELD),
- new StatusMove(Moves.PLAY_NICE, "Play Nice", Type.NORMAL, -1, 20, "The user and the target become friends, and the target loses its will to fight. This lowers the target's Attack stat.", 100, 0, 6)
+ new StatusMove(Moves.PLAY_NICE, Type.NORMAL, -1, 20, 100, 0, 6)
.attr(StatChangeAttr, BattleStat.ATK, -1),
- new StatusMove(Moves.CONFIDE, "Confide", Type.NORMAL, -1, 20, "The user tells the target a secret, and the target loses its ability to concentrate. This lowers the target's Sp. Atk stat.", 100, 0, 6)
+ new StatusMove(Moves.CONFIDE, Type.NORMAL, -1, 20, 100, 0, 6)
.attr(StatChangeAttr, BattleStat.SPATK, -1)
.soundBased(),
- new AttackMove(Moves.DIAMOND_STORM, "Diamond Storm", Type.ROCK, MoveCategory.PHYSICAL, 100, 95, 5, "The user whips up a storm of diamonds to damage opposing Pokémon. This may also sharply raise the user's Defense stat.", 50, 0, 6)
+ new AttackMove(Moves.DIAMOND_STORM, Type.ROCK, MoveCategory.PHYSICAL, 100, 95, 5, 50, 0, 6)
.attr(StatChangeAttr, BattleStat.DEF, 2, true)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.STEAM_ERUPTION, "Steam Eruption", Type.WATER, MoveCategory.SPECIAL, 110, 95, 5, "The user immerses the target in superheated steam. This may also leave the target with a burn.", 30, 0, 6)
+ new AttackMove(Moves.STEAM_ERUPTION, Type.WATER, MoveCategory.SPECIAL, 110, 95, 5, 30, 0, 6)
.attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new AttackMove(Moves.HYPERSPACE_HOLE, "Hyperspace Hole", Type.PSYCHIC, MoveCategory.SPECIAL, 80, -1, 5, "Using a hyperspace hole, the user appears right next to the target and strikes. This also hits a target using a move such as Protect or Detect.", -1, 0, 6)
+ new AttackMove(Moves.HYPERSPACE_HOLE, Type.PSYCHIC, MoveCategory.SPECIAL, 80, -1, 5, -1, 0, 6)
.ignoresProtect(),
- new AttackMove(Moves.WATER_SHURIKEN, "Water Shuriken", Type.WATER, MoveCategory.SPECIAL, 15, 100, 20, "The user hits the target with throwing stars two to five times in a row. This move always goes first.", -1, 1, 6)
+ new AttackMove(Moves.WATER_SHURIKEN, Type.WATER, MoveCategory.SPECIAL, 15, 100, 20, -1, 1, 6)
.attr(MultiHitAttr),
- new AttackMove(Moves.MYSTICAL_FIRE, "Mystical Fire", Type.FIRE, MoveCategory.SPECIAL, 75, 100, 10, "The user attacks by breathing a special, hot fire. This also lowers the target's Sp. Atk stat.", 100, 0, 6)
+ new AttackMove(Moves.MYSTICAL_FIRE, Type.FIRE, MoveCategory.SPECIAL, 75, 100, 10, 100, 0, 6)
.attr(StatChangeAttr, BattleStat.SPATK, -1),
- new SelfStatusMove(Moves.SPIKY_SHIELD, "Spiky Shield", Type.GRASS, -1, 10, "In addition to protecting the user from attacks, this move also damages any attacker that makes direct contact.", -1, 4, 6)
+ new SelfStatusMove(Moves.SPIKY_SHIELD, Type.GRASS, -1, 10, -1, 4, 6)
.attr(ProtectAttr, BattlerTagType.SPIKY_SHIELD),
- new StatusMove(Moves.AROMATIC_MIST, "Aromatic Mist", Type.FAIRY, -1, 20, "The user raises the Sp. Def stat of an ally Pokémon by using a mysterious aroma.", -1, 0, 6)
+ new StatusMove(Moves.AROMATIC_MIST, Type.FAIRY, -1, 20, -1, 0, 6)
.attr(StatChangeAttr, BattleStat.SPDEF, 1)
.target(MoveTarget.NEAR_ALLY),
- new StatusMove(Moves.EERIE_IMPULSE, "Eerie Impulse", Type.ELECTRIC, 100, 15, "The user's body generates an eerie impulse. Exposing the target to it harshly lowers the target's Sp. Atk stat.", -1, 0, 6)
+ new StatusMove(Moves.EERIE_IMPULSE, Type.ELECTRIC, 100, 15, -1, 0, 6)
.attr(StatChangeAttr, BattleStat.SPATK, -2),
- new StatusMove(Moves.VENOM_DRENCH, "Venom Drench", Type.POISON, 100, 20, "Opposing Pokémon are drenched in an odd poisonous liquid. This lowers the Attack, Sp. Atk, and Speed stats of a poisoned target.", 100, 0, 6)
+ new StatusMove(Moves.VENOM_DRENCH, Type.POISON, 100, 20, 100, 0, 6)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPATK, BattleStat.SPD ], -1, false, (user, target, move) => target.status?.effect === StatusEffect.POISON)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new StatusMove(Moves.POWDER, "Powder (N)", Type.BUG, 100, 20, "The user covers the target in a combustible powder. If the target uses a Fire-type move, the powder explodes and damages the target.", -1, 1, 6)
- .powderMove(),
- new SelfStatusMove(Moves.GEOMANCY, "Geomancy", Type.FAIRY, -1, 10, "The user absorbs energy and sharply raises its Sp. Atk, Sp. Def, and Speed stats on the next turn.", -1, 0, 6)
+ new StatusMove(Moves.POWDER, Type.BUG, 100, 20, -1, 1, 6)
+ .powderMove()
+ .unimplemented(),
+ new SelfStatusMove(Moves.GEOMANCY, Type.FAIRY, -1, 10, -1, 0, 6)
.attr(ChargeAttr, ChargeAnim.GEOMANCY_CHARGING, "is charging its power!")
.attr(StatChangeAttr, [ BattleStat.SPATK, BattleStat.SPDEF, BattleStat.SPD ], 2, true)
.ignoresVirtual(),
- new StatusMove(Moves.MAGNETIC_FLUX, "Magnetic Flux", Type.ELECTRIC, -1, 20, "The user manipulates magnetic fields, which raises the Defense and Sp. Def stats of ally Pokémon with the Plus or Minus Ability.", -1, 0, 6)
- .attr(StatChangeAttr, [ BattleStat.DEF, BattleStat.SPDEF ], 1, false, (user, target, move) => !![ Abilities.PLUS, Abilities.MINUS].find(a => a === user.getAbility().id || (user.canApplyPassive() && a === user.getPassiveAbility().id)))
+ new StatusMove(Moves.MAGNETIC_FLUX, Type.ELECTRIC, -1, 20, -1, 0, 6)
+ .attr(StatChangeAttr, [ BattleStat.DEF, BattleStat.SPDEF ], 1, false, (user, target, move) => !![ Abilities.PLUS, Abilities.MINUS].find(a => target.hasAbility(a, false)))
.target(MoveTarget.USER_AND_ALLIES)
- .condition((user, target, move) => !![ user, user.getAlly() ].filter(p => p?.isActive()).find(p => !![ Abilities.PLUS, Abilities.MINUS].find(a => a === p.getAbility().id || (user.canApplyPassive() && a === user.getPassiveAbility().id)))),
- new StatusMove(Moves.HAPPY_HOUR, "Happy Hour (N)", Type.NORMAL, -1, 30, "Using Happy Hour doubles the amount of prize money received after battle.", -1, 0, 6) // No animation
- .target(MoveTarget.USER_SIDE),
- new StatusMove(Moves.ELECTRIC_TERRAIN, "Electric Terrain", Type.ELECTRIC, -1, 10, "The user electrifies the ground for five turns, powering up Electric-type moves. Pokémon on the ground no longer fall asleep.", -1, 0, 6)
+ .condition((user, target, move) => !![ user, user.getAlly() ].filter(p => p?.isActive()).find(p => !![ Abilities.PLUS, Abilities.MINUS].find(a => p.hasAbility(a, false)))),
+ new StatusMove(Moves.HAPPY_HOUR, Type.NORMAL, -1, 30, -1, 0, 6) // No animation
+ .target(MoveTarget.USER_SIDE)
+ .unimplemented(),
+ new StatusMove(Moves.ELECTRIC_TERRAIN, Type.ELECTRIC, -1, 10, -1, 0, 6)
.attr(TerrainChangeAttr, TerrainType.ELECTRIC)
.target(MoveTarget.BOTH_SIDES),
- new AttackMove(Moves.DAZZLING_GLEAM, "Dazzling Gleam", Type.FAIRY, MoveCategory.SPECIAL, 80, 100, 10, "The user damages opposing Pokémon by emitting a powerful flash.", -1, 0, 6)
+ new AttackMove(Moves.DAZZLING_GLEAM, Type.FAIRY, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 6)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new SelfStatusMove(Moves.CELEBRATE, "Celebrate", Type.NORMAL, -1, 40, "The Pokémon congratulates you on your special day!", -1, 0, 6),
- new StatusMove(Moves.HOLD_HANDS, "Hold Hands", Type.NORMAL, -1, 40, "The user and an ally hold hands. This makes them very happy.", -1, 0, 6)
+ new SelfStatusMove(Moves.CELEBRATE, Type.NORMAL, -1, 40, -1, 0, 6),
+ new StatusMove(Moves.HOLD_HANDS, Type.NORMAL, -1, 40, -1, 0, 6)
.target(MoveTarget.NEAR_ALLY),
- new StatusMove(Moves.BABY_DOLL_EYES, "Baby-Doll Eyes", Type.FAIRY, 100, 30, "The user stares at the target with its baby-doll eyes, which lowers the target's Attack stat. This move always goes first.", -1, 1, 6)
+ new StatusMove(Moves.BABY_DOLL_EYES, Type.FAIRY, 100, 30, -1, 1, 6)
.attr(StatChangeAttr, BattleStat.ATK, -1),
- new AttackMove(Moves.NUZZLE, "Nuzzle", Type.ELECTRIC, MoveCategory.PHYSICAL, 20, 100, 20, "The user attacks by nuzzling its electrified cheeks against the target. This also leaves the target with paralysis.", 100, 0, 6)
+ new AttackMove(Moves.NUZZLE, Type.ELECTRIC, MoveCategory.PHYSICAL, 20, 100, 20, 100, 0, 6)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new AttackMove(Moves.HOLD_BACK, "Hold Back", Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 40, "The user holds back when it attacks, and the target is left with at least 1 HP.", -1, 0, 6)
+ new AttackMove(Moves.HOLD_BACK, Type.NORMAL, MoveCategory.PHYSICAL, 40, 100, 40, -1, 0, 6)
.attr(SurviveDamageAttr),
- new AttackMove(Moves.INFESTATION, "Infestation (P)", Type.BUG, MoveCategory.SPECIAL, 20, 100, 20, "The target is infested and attacked for four to five turns. The target can't flee during this time.", 100, 0, 6)
- .makesContact(),
- new AttackMove(Moves.POWER_UP_PUNCH, "Power-Up Punch", Type.FIGHTING, MoveCategory.PHYSICAL, 40, 100, 20, "Striking opponents over and over makes the user's fists harder. Hitting a target raises the Attack stat.", 100, 0, 6)
+ new AttackMove(Moves.INFESTATION, Type.BUG, MoveCategory.SPECIAL, 20, 100, 20, 100, 0, 6)
+ .makesContact()
+ .attr(TrapAttr, BattlerTagType.INFESTATION),
+ new AttackMove(Moves.POWER_UP_PUNCH, Type.FIGHTING, MoveCategory.PHYSICAL, 40, 100, 20, 100, 0, 6)
.attr(StatChangeAttr, BattleStat.ATK, 1, true)
.punchingMove(),
- new AttackMove(Moves.OBLIVION_WING, "Oblivion Wing", Type.FLYING, MoveCategory.SPECIAL, 80, 100, 10, "The user absorbs its target's HP. The user's HP is restored by over half of the damage taken by the target.", -1, 0, 6)
+ new AttackMove(Moves.OBLIVION_WING, Type.FLYING, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 6)
.attr(HitHealAttr, 0.75)
.triageMove(),
- new AttackMove(Moves.THOUSAND_ARROWS, "Thousand Arrows", Type.GROUND, MoveCategory.PHYSICAL, 90, 100, 10, "This move also hits opposing Pokémon that are in the air. Those Pokémon are knocked down to the ground.", 100, 0, 6)
+ new AttackMove(Moves.THOUSAND_ARROWS, Type.GROUND, MoveCategory.PHYSICAL, 90, 100, 10, 100, 0, 6)
.attr(NeutralDamageAgainstFlyingTypeMultiplierAttr)
+ .attr(HitsTagAttr, BattlerTagType.FLYING, false)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.THOUSAND_WAVES, "Thousand Waves", Type.GROUND, MoveCategory.PHYSICAL, 90, 100, 10, "The user attacks with a wave that crawls along the ground. Those it hits can't flee from battle.", -1, 0, 6)
+ new AttackMove(Moves.THOUSAND_WAVES, Type.GROUND, MoveCategory.PHYSICAL, 90, 100, 10, -1, 0, 6)
.attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, false, false, 1)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.LANDS_WRATH, "Land's Wrath", Type.GROUND, MoveCategory.PHYSICAL, 90, 100, 10, "The user gathers the energy of the land and focuses that power on opposing Pokémon to damage them.", -1, 0, 6)
+ new AttackMove(Moves.LANDS_WRATH, Type.GROUND, MoveCategory.PHYSICAL, 90, 100, 10, -1, 0, 6)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.LIGHT_OF_RUIN, "Light of Ruin", Type.FAIRY, MoveCategory.SPECIAL, 140, 90, 5, "Drawing power from the Eternal Flower, the user fires a powerful beam of light. This also damages the user quite a lot.", -1, 0, 6)
+ new AttackMove(Moves.LIGHT_OF_RUIN, Type.FAIRY, MoveCategory.SPECIAL, 140, 90, 5, -1, 0, 6)
.attr(RecoilAttr, false, 0.5),
- new AttackMove(Moves.ORIGIN_PULSE, "Origin Pulse", Type.WATER, MoveCategory.SPECIAL, 110, 85, 10, "The user attacks opposing Pokémon with countless beams of light that glow a deep and brilliant blue.", -1, 0, 6)
+ new AttackMove(Moves.ORIGIN_PULSE, Type.WATER, MoveCategory.SPECIAL, 110, 85, 10, -1, 0, 6)
.pulseMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.PRECIPICE_BLADES, "Precipice Blades", Type.GROUND, MoveCategory.PHYSICAL, 120, 85, 10, "The user attacks opposing Pokémon by manifesting the power of the land in fearsome blades of stone.", -1, 0, 6)
+ new AttackMove(Moves.PRECIPICE_BLADES, Type.GROUND, MoveCategory.PHYSICAL, 120, 85, 10, -1, 0, 6)
.makesContact(false)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.DRAGON_ASCENT, "Dragon Ascent", Type.FLYING, MoveCategory.PHYSICAL, 120, 100, 5, "After soaring upward, the user attacks its target by dropping out of the sky at high speeds. But it lowers its own Defense and Sp. Def stats in the process.", 100, 0, 6)
+ new AttackMove(Moves.DRAGON_ASCENT, Type.FLYING, MoveCategory.PHYSICAL, 120, 100, 5, 100, 0, 6)
.attr(StatChangeAttr, [ BattleStat.DEF, BattleStat.SPDEF ], -1, true),
- new AttackMove(Moves.HYPERSPACE_FURY, "Hyperspace Fury", Type.DARK, MoveCategory.PHYSICAL, 100, -1, 5, "Using its many arms, the user unleashes a barrage of attacks that ignore the effects of moves like Protect and Detect. But the user's Defense stat falls.", 100, 0, 6)
+ new AttackMove(Moves.HYPERSPACE_FURY, Type.DARK, MoveCategory.PHYSICAL, 100, -1, 5, 100, 0, 6)
.attr(StatChangeAttr, BattleStat.DEF, -1, true)
.ignoresProtect(),
/* Unused */
- new AttackMove(Moves.BREAKNECK_BLITZ__PHYSICAL, "Breakneck Blitz (N)", Type.NORMAL, MoveCategory.PHYSICAL, -1, -1, 1, "The user builds up its momentum using its Z-Power and crashes into the target at full speed. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.BREAKNECK_BLITZ__SPECIAL, "Breakneck Blitz (N)", Type.NORMAL, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.ALL_OUT_PUMMELING__PHYSICAL, "All-Out Pummeling (N)", Type.FIGHTING, MoveCategory.PHYSICAL, -1, -1, 1, "The user rams an energy orb created by its Z-Power into the target with full force. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.ALL_OUT_PUMMELING__SPECIAL, "All-Out Pummeling (N)", Type.FIGHTING, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.SUPERSONIC_SKYSTRIKE__PHYSICAL, "Supersonic Skystrike (N)", Type.FLYING, MoveCategory.PHYSICAL, -1, -1, 1, "The user soars up with its Z-Power and plummets toward the target at full speed. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.SUPERSONIC_SKYSTRIKE__SPECIAL, "Supersonic Skystrike (N)", Type.FLYING, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.ACID_DOWNPOUR__PHYSICAL, "Acid Downpour (N)", Type.POISON, MoveCategory.PHYSICAL, -1, -1, 1, "The user creates a poisonous swamp using its Z-Power and sinks the target into it at full force. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.ACID_DOWNPOUR__SPECIAL, "Acid Downpour (N)", Type.POISON, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.TECTONIC_RAGE__PHYSICAL, "Tectonic Rage (N)", Type.GROUND, MoveCategory.PHYSICAL, -1, -1, 1, "The user burrows deep into the ground and slams into the target with the full force of its Z-Power. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.TECTONIC_RAGE__SPECIAL, "Tectonic Rage (N)", Type.GROUND, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.CONTINENTAL_CRUSH__PHYSICAL, "Continental Crush (N)", Type.ROCK, MoveCategory.PHYSICAL, -1, -1, 1, "The user summons a huge rock mountain using its Z-Power and drops it onto the target with full force. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.CONTINENTAL_CRUSH__SPECIAL, "Continental Crush (N)", Type.ROCK, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.SAVAGE_SPIN_OUT__PHYSICAL, "Savage Spin-Out (N)", Type.BUG, MoveCategory.PHYSICAL, -1, -1, 1, "The user binds the target with full force with threads of silk that the user spits using its Z-Power. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.SAVAGE_SPIN_OUT__SPECIAL, "Savage Spin-Out (N)", Type.BUG, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.NEVER_ENDING_NIGHTMARE__PHYSICAL, "Never-Ending Nightmare (N)", Type.GHOST, MoveCategory.PHYSICAL, -1, -1, 1, "Deep-seated grudges summoned by the user's Z-Power trap the target. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.NEVER_ENDING_NIGHTMARE__SPECIAL, "Never-Ending Nightmare (N)", Type.GHOST, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.CORKSCREW_CRASH__PHYSICAL, "Corkscrew Crash (N)", Type.STEEL, MoveCategory.PHYSICAL, -1, -1, 1, "The user spins very fast and rams into the target with the full force of its Z-Power. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.CORKSCREW_CRASH__SPECIAL, "Corkscrew Crash (N)", Type.STEEL, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.INFERNO_OVERDRIVE__PHYSICAL, "Inferno Overdrive (N)", Type.FIRE, MoveCategory.PHYSICAL, -1, -1, 1, "The user breathes a stream of intense fire toward the target with the full force of its Z-Power. The power varies depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.INFERNO_OVERDRIVE__SPECIAL, "Inferno Overdrive (N)", Type.FIRE, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.HYDRO_VORTEX__PHYSICAL, "Hydro Vortex (N)", Type.WATER, MoveCategory.PHYSICAL, -1, -1, 1, "The user creates a huge whirling current using its Z-Power to swallow the target with full force. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.HYDRO_VORTEX__SPECIAL, "Hydro Vortex (N)", Type.WATER, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.BLOOM_DOOM__PHYSICAL, "Bloom Doom (N)", Type.GRASS, MoveCategory.PHYSICAL, -1, -1, 1, "The user collects energy from plants using its Z-Power and attacks the target with full force. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.BLOOM_DOOM__SPECIAL, "Bloom Doom (N)", Type.GRASS, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.GIGAVOLT_HAVOC__PHYSICAL, "Gigavolt Havoc (N)", Type.ELECTRIC, MoveCategory.PHYSICAL, -1, -1, 1, "The user hits the target with a powerful electric current collected by its Z-Power. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.GIGAVOLT_HAVOC__SPECIAL, "Gigavolt Havoc (N)", Type.ELECTRIC, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.SHATTERED_PSYCHE__PHYSICAL, "Shattered Psyche (N)", Type.PSYCHIC, MoveCategory.PHYSICAL, -1, -1, 1, "The user controls the target with its Z-Power and hurts the target with full force. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.SHATTERED_PSYCHE__SPECIAL, "Shattered Psyche (N)", Type.PSYCHIC, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.SUBZERO_SLAMMER__PHYSICAL, "Subzero Slammer (N)", Type.ICE, MoveCategory.PHYSICAL, -1, -1, 1, "The user dramatically drops the temperature using its Z-Power and freezes the target with full force. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.SUBZERO_SLAMMER__SPECIAL, "Subzero Slammer (N)", Type.ICE, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.DEVASTATING_DRAKE__PHYSICAL, "Devastating Drake (N)", Type.DRAGON, MoveCategory.PHYSICAL, -1, -1, 1, "The user materializes its aura using its Z-Power and attacks the target with full force. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.DEVASTATING_DRAKE__SPECIAL, "Devastating Drake (N)", Type.DRAGON, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.BLACK_HOLE_ECLIPSE__PHYSICAL, "Black Hole Eclipse (N)", Type.DARK, MoveCategory.PHYSICAL, -1, -1, 1, "The user gathers dark energy using its Z-Power and sucks the target into it. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.BLACK_HOLE_ECLIPSE__SPECIAL, "Black Hole Eclipse (N)", Type.DARK, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.TWINKLE_TACKLE__PHYSICAL, "Twinkle Tackle (N)", Type.FAIRY, MoveCategory.PHYSICAL, -1, -1, 1, "The user creates a very charming space using its Z-Power and totally toys with the target. The power varies, depending on the original move.", -1, 0, 7),
- new AttackMove(Moves.TWINKLE_TACKLE__SPECIAL, "Twinkle Tackle (N)", Type.FAIRY, MoveCategory.SPECIAL, -1, -1, 1, "Dummy Data", -1, 0, 7),
- new AttackMove(Moves.CATASTROPIKA, "Catastropika (N)", Type.ELECTRIC, MoveCategory.PHYSICAL, 210, -1, 1, "The user, Pikachu, surrounds itself with the maximum amount of electricity using its Z-Power and pounces on its target with full force.", -1, 0, 7),
+ new AttackMove(Moves.BREAKNECK_BLITZ__PHYSICAL, Type.NORMAL, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.BREAKNECK_BLITZ__SPECIAL, Type.NORMAL, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.ALL_OUT_PUMMELING__PHYSICAL, Type.FIGHTING, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.ALL_OUT_PUMMELING__SPECIAL, Type.FIGHTING, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.SUPERSONIC_SKYSTRIKE__PHYSICAL, Type.FLYING, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.SUPERSONIC_SKYSTRIKE__SPECIAL, Type.FLYING, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.ACID_DOWNPOUR__PHYSICAL, Type.POISON, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.ACID_DOWNPOUR__SPECIAL, Type.POISON, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.TECTONIC_RAGE__PHYSICAL, Type.GROUND, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.TECTONIC_RAGE__SPECIAL, Type.GROUND, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.CONTINENTAL_CRUSH__PHYSICAL, Type.ROCK, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.CONTINENTAL_CRUSH__SPECIAL, Type.ROCK, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.SAVAGE_SPIN_OUT__PHYSICAL, Type.BUG, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.SAVAGE_SPIN_OUT__SPECIAL, Type.BUG, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.NEVER_ENDING_NIGHTMARE__PHYSICAL, Type.GHOST, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.NEVER_ENDING_NIGHTMARE__SPECIAL, Type.GHOST, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.CORKSCREW_CRASH__PHYSICAL, Type.STEEL, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.CORKSCREW_CRASH__SPECIAL, Type.STEEL, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.INFERNO_OVERDRIVE__PHYSICAL, Type.FIRE, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.INFERNO_OVERDRIVE__SPECIAL, Type.FIRE, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.HYDRO_VORTEX__PHYSICAL, Type.WATER, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.HYDRO_VORTEX__SPECIAL, Type.WATER, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.BLOOM_DOOM__PHYSICAL, Type.GRASS, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.BLOOM_DOOM__SPECIAL, Type.GRASS, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.GIGAVOLT_HAVOC__PHYSICAL, Type.ELECTRIC, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.GIGAVOLT_HAVOC__SPECIAL, Type.ELECTRIC, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.SHATTERED_PSYCHE__PHYSICAL, Type.PSYCHIC, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.SHATTERED_PSYCHE__SPECIAL, Type.PSYCHIC, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.SUBZERO_SLAMMER__PHYSICAL, Type.ICE, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.SUBZERO_SLAMMER__SPECIAL, Type.ICE, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.DEVASTATING_DRAKE__PHYSICAL, Type.DRAGON, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.DEVASTATING_DRAKE__SPECIAL, Type.DRAGON, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.BLACK_HOLE_ECLIPSE__PHYSICAL, Type.DARK, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.BLACK_HOLE_ECLIPSE__SPECIAL, Type.DARK, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.TWINKLE_TACKLE__PHYSICAL, Type.FAIRY, MoveCategory.PHYSICAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.TWINKLE_TACKLE__SPECIAL, Type.FAIRY, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.CATASTROPIKA, Type.ELECTRIC, MoveCategory.PHYSICAL, 210, -1, 1, -1, 0, 7)
+ .unimplemented(),
/* End Unused */
- new SelfStatusMove(Moves.SHORE_UP, "Shore Up", Type.GROUND, -1, 5, "The user regains up to half of its max HP. It restores more HP in a sandstorm.", -1, 0, 7)
+ new SelfStatusMove(Moves.SHORE_UP, Type.GROUND, -1, 5, -1, 0, 7)
.attr(SandHealAttr)
.triageMove(),
- new AttackMove(Moves.FIRST_IMPRESSION, "First Impression", Type.BUG, MoveCategory.PHYSICAL, 90, 100, 10, "Although this move has great power, it only works the first turn each time the user enters battle.", -1, 2, 7)
+ new AttackMove(Moves.FIRST_IMPRESSION, Type.BUG, MoveCategory.PHYSICAL, 90, 100, 10, -1, 2, 7)
.condition(new FirstMoveCondition()),
- new SelfStatusMove(Moves.BANEFUL_BUNKER, "Baneful Bunker", Type.POISON, -1, 10, "In addition to protecting the user from attacks, this move also poisons any attacker that makes direct contact.", -1, 4, 7)
+ new SelfStatusMove(Moves.BANEFUL_BUNKER, Type.POISON, -1, 10, -1, 4, 7)
.attr(ProtectAttr, BattlerTagType.BANEFUL_BUNKER),
- new AttackMove(Moves.SPIRIT_SHACKLE, "Spirit Shackle (P)", Type.GHOST, MoveCategory.PHYSICAL, 80, 100, 10, "The user attacks while simultaneously stitching the target's shadow to the ground to prevent the target from escaping.", -1, 0, 7)
- .makesContact(false),
- new AttackMove(Moves.DARKEST_LARIAT, "Darkest Lariat", Type.DARK, MoveCategory.PHYSICAL, 85, 100, 10, "The user swings both arms and hits the target. The target's stat changes don't affect this attack's damage.", -1, 0, 7)
+ new AttackMove(Moves.SPIRIT_SHACKLE, Type.GHOST, MoveCategory.PHYSICAL, 80, 100, 10, -1, 0, 7)
+ .makesContact(false)
+ .partial(),
+ new AttackMove(Moves.DARKEST_LARIAT, Type.DARK, MoveCategory.PHYSICAL, 85, 100, 10, -1, 0, 7)
.attr(IgnoreOpponentStatChangesAttr),
- new AttackMove(Moves.SPARKLING_ARIA, "Sparkling Aria", Type.WATER, MoveCategory.SPECIAL, 90, 100, 10, "The user bursts into song, emitting many bubbles. Any Pokémon suffering from a burn will be healed by the touch of these bubbles.", -1, 0, 7)
+ new AttackMove(Moves.SPARKLING_ARIA, Type.WATER, MoveCategory.SPECIAL, 90, 100, 10, -1, 0, 7)
.attr(HealStatusEffectAttr, false, StatusEffect.BURN)
.soundBased()
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.ICE_HAMMER, "Ice Hammer", Type.ICE, MoveCategory.PHYSICAL, 100, 90, 10, "The user swings and hits with its strong, heavy fist. It lowers the user's Speed, however.", 100, 0, 7)
+ new AttackMove(Moves.ICE_HAMMER, Type.ICE, MoveCategory.PHYSICAL, 100, 90, 10, 100, 0, 7)
.attr(StatChangeAttr, BattleStat.SPD, -1, true)
.punchingMove(),
- new StatusMove(Moves.FLORAL_HEALING, "Floral Healing (P)", Type.FAIRY, -1, 10, "The user restores the target's HP by up to half of its max HP. It restores more HP when the terrain is grass.", -1, 0, 7)
+ new StatusMove(Moves.FLORAL_HEALING, Type.FAIRY, -1, 10, -1, 0, 7)
.attr(HealAttr, 0.5, true, false)
- .triageMove(),
- new AttackMove(Moves.HIGH_HORSEPOWER, "High Horsepower", Type.GROUND, MoveCategory.PHYSICAL, 95, 95, 10, "The user fiercely attacks the target using its entire body.", -1, 0, 7),
- new StatusMove(Moves.STRENGTH_SAP, "Strength Sap", Type.GRASS, 100, 10, "The user restores its HP by the same amount as the target's Attack stat. It also lowers the target's Attack stat.", 100, 0, 7)
+ .triageMove()
+ .partial(),
+ new AttackMove(Moves.HIGH_HORSEPOWER, Type.GROUND, MoveCategory.PHYSICAL, 95, 95, 10, -1, 0, 7),
+ new StatusMove(Moves.STRENGTH_SAP, Type.GRASS, 100, 10, 100, 0, 7)
.attr(StrengthSapHealAttr)
.attr(StatChangeAttr, BattleStat.ATK, -1)
.condition((user, target, move) => target.summonData.battleStats[BattleStat.ATK] > -6)
.triageMove(),
- new AttackMove(Moves.SOLAR_BLADE, "Solar Blade", Type.GRASS, MoveCategory.PHYSICAL, 125, 100, 10, "In this two-turn attack, the user gathers light and fills a blade with the light's energy, attacking the target on the next turn.", -1, 0, 7)
+ new AttackMove(Moves.SOLAR_BLADE, Type.GRASS, MoveCategory.PHYSICAL, 125, 100, 10, -1, 0, 7)
.attr(SunlightChargeAttr, ChargeAnim.SOLAR_BLADE_CHARGING, "is glowing!")
.attr(AntiSunlightPowerDecreaseAttr)
.slicingMove(),
- new AttackMove(Moves.LEAFAGE, "Leafage", Type.GRASS, MoveCategory.PHYSICAL, 40, 100, 40, "The user attacks by pelting the target with leaves.", -1, 0, 7)
+ new AttackMove(Moves.LEAFAGE, Type.GRASS, MoveCategory.PHYSICAL, 40, 100, 40, -1, 0, 7)
.makesContact(false),
- new StatusMove(Moves.SPOTLIGHT, "Spotlight (N)", Type.NORMAL, -1, 15, "The user shines a spotlight on the target so that only the target will be attacked during the turn.", -1, 3, 7),
- new StatusMove(Moves.TOXIC_THREAD, "Toxic Thread", Type.POISON, 100, 20, "The user shoots poisonous threads to poison the target and lower the target's Speed stat.", 100, 0, 7)
+ new StatusMove(Moves.SPOTLIGHT, Type.NORMAL, -1, 15, -1, 3, 7)
+ .unimplemented(),
+ new StatusMove(Moves.TOXIC_THREAD, Type.POISON, 100, 20, 100, 0, 7)
.attr(StatusEffectAttr, StatusEffect.POISON)
.attr(StatChangeAttr, BattleStat.SPD, -1),
- new SelfStatusMove(Moves.LASER_FOCUS, "Laser Focus", Type.NORMAL, -1, 30, "The user concentrates intensely. The attack on the next turn always results in a critical hit.", -1, 0, 7)
+ new SelfStatusMove(Moves.LASER_FOCUS, Type.NORMAL, -1, 30, -1, 0, 7)
.attr(AddBattlerTagAttr, BattlerTagType.ALWAYS_CRIT, true, false),
- new StatusMove(Moves.GEAR_UP, "Gear Up", Type.STEEL, -1, 20, "The user engages its gears to raise the Attack and Sp. Atk stats of ally Pokémon with the Plus or Minus Ability.", -1, 0, 7)
- .attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPATK ], 1, false, (user, target, move) => [ Abilities.PLUS, Abilities.MINUS ].includes(target.getAbility().id) || (target.canApplyPassive() && [ Abilities.PLUS, Abilities.MINUS ].includes(target.getPassiveAbility().id)))
+ new StatusMove(Moves.GEAR_UP, Type.STEEL, -1, 20, -1, 0, 7)
+ .attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPATK ], 1, false, (user, target, move) => !![ Abilities.PLUS, Abilities.MINUS].find(a => target.hasAbility(a, false)))
.target(MoveTarget.USER_AND_ALLIES)
- .condition((user, target, move) => !![ user, user.getAlly() ].find(p => p && [ Abilities.PLUS, Abilities.MINUS ].includes(p.getAbility().id) || (target.canApplyPassive() && [ Abilities.PLUS, Abilities.MINUS ].includes(target.getPassiveAbility().id)))),
- new AttackMove(Moves.THROAT_CHOP, "Throat Chop (P)", Type.DARK, MoveCategory.PHYSICAL, 80, 100, 15, "The user attacks the target's throat, and the resultant suffering prevents the target from using moves that emit sound for two turns.", 100, 0, 7),
- new AttackMove(Moves.POLLEN_PUFF, "Pollen Puff (P)", Type.BUG, MoveCategory.SPECIAL, 90, 100, 15, "The user attacks the enemy with a pollen puff that explodes. If the target is an ally, it gives the ally a pollen puff that restores its HP instead.", -1, 0, 7)
- .ballBombMove(),
- new AttackMove(Moves.ANCHOR_SHOT, "Anchor Shot", Type.STEEL, MoveCategory.PHYSICAL, 80, 100, 20, "The user entangles the target with its anchor chain while attacking. The target becomes unable to flee.", -1, 0, 7)
+ .condition((user, target, move) => !![ user, user.getAlly() ].filter(p => p?.isActive()).find(p => !![ Abilities.PLUS, Abilities.MINUS].find(a => p.hasAbility(a, false)))),
+ new AttackMove(Moves.THROAT_CHOP, Type.DARK, MoveCategory.PHYSICAL, 80, 100, 15, 100, 0, 7)
+ .partial(),
+ new AttackMove(Moves.POLLEN_PUFF, Type.BUG, MoveCategory.SPECIAL, 90, 100, 15, -1, 0, 7)
+ .ballBombMove()
+ .partial(),
+ new AttackMove(Moves.ANCHOR_SHOT, Type.STEEL, MoveCategory.PHYSICAL, 80, 100, 20, -1, 0, 7)
.attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, false, false, 1),
- new StatusMove(Moves.PSYCHIC_TERRAIN, "Psychic Terrain", Type.PSYCHIC, -1, 10, "This protects Pokémon on the ground from priority moves and powers up Psychic-type moves for five turns.", -1, 0, 7)
+ new StatusMove(Moves.PSYCHIC_TERRAIN, Type.PSYCHIC, -1, 10, -1, 0, 7)
.attr(TerrainChangeAttr, TerrainType.PSYCHIC)
.target(MoveTarget.BOTH_SIDES),
- new AttackMove(Moves.LUNGE, "Lunge", Type.BUG, MoveCategory.PHYSICAL, 80, 100, 15, "The user makes a lunge at the target, attacking with full force. This also lowers the target's Attack stat.", 100, 0, 7)
+ new AttackMove(Moves.LUNGE, Type.BUG, MoveCategory.PHYSICAL, 80, 100, 15, 100, 0, 7)
.attr(StatChangeAttr, BattleStat.ATK, -1),
- new AttackMove(Moves.FIRE_LASH, "Fire Lash", Type.FIRE, MoveCategory.PHYSICAL, 80, 100, 15, "The user strikes the target with a burning lash. This also lowers the target's Defense stat.", 100, 0, 7)
+ new AttackMove(Moves.FIRE_LASH, Type.FIRE, MoveCategory.PHYSICAL, 80, 100, 15, 100, 0, 7)
.attr(StatChangeAttr, BattleStat.DEF, -1),
- new AttackMove(Moves.POWER_TRIP, "Power Trip", Type.DARK, MoveCategory.PHYSICAL, 20, 100, 10, "The user boasts its strength and attacks the target. The more the user's stats are raised, the greater the move's power.", -1, 0, 7)
+ new AttackMove(Moves.POWER_TRIP, Type.DARK, MoveCategory.PHYSICAL, 20, 100, 10, -1, 0, 7)
.attr(StatChangeCountPowerAttr),
- new AttackMove(Moves.BURN_UP, "Burn Up (P)", Type.FIRE, MoveCategory.SPECIAL, 130, 100, 5, "To inflict massive damage, the user burns itself out. After using this move, the user will no longer be Fire type.", -1, 0, 7)
- .attr(HealStatusEffectAttr, true, StatusEffect.FREEZE),
- new StatusMove(Moves.SPEED_SWAP, "Speed Swap (N)", Type.PSYCHIC, -1, 10, "The user exchanges Speed stats with the target.", -1, 0, 7),
- new AttackMove(Moves.SMART_STRIKE, "Smart Strike", Type.STEEL, MoveCategory.PHYSICAL, 70, -1, 10, "The user stabs the target with a sharp horn. This attack never misses.", -1, 0, 7),
- new StatusMove(Moves.PURIFY, "Purify (N)", Type.POISON, -1, 20, "The user heals the target's status condition. If the move succeeds, it also restores the user's own HP.", -1, 0, 7)
- .triageMove(),
- new AttackMove(Moves.REVELATION_DANCE, "Revelation Dance (P)", Type.NORMAL, MoveCategory.SPECIAL, 90, 100, 15, "The user attacks the target by dancing very hard. The user's type determines the type of this move.", -1, 0, 7)
- .danceMove(),
- new AttackMove(Moves.CORE_ENFORCER, "Core Enforcer (N)", Type.DRAGON, MoveCategory.SPECIAL, 100, 100, 10, "If the Pokémon the user has inflicted damage on have already used their moves, this move eliminates the effect of the target's Ability.", -1, 0, 7)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.TROP_KICK, "Trop Kick", Type.GRASS, MoveCategory.PHYSICAL, 70, 100, 15, "The user lands an intense kick of tropical origins on the target. This also lowers the target's Attack stat.", 100, 0, 7)
+ new AttackMove(Moves.BURN_UP, Type.FIRE, MoveCategory.SPECIAL, 130, 100, 5, -1, 0, 7)
+ .condition((user) => {
+ const userTypes = user.getTypes(true);
+ return userTypes.includes(Type.FIRE);
+ })
+ .attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
+ .attr(RemoveTypeAttr, Type.FIRE, (user) => {
+ user.scene.queueMessage(getPokemonMessage(user, ` burned itself out!`));
+ }),
+ new StatusMove(Moves.SPEED_SWAP, Type.PSYCHIC, -1, 10, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.SMART_STRIKE, Type.STEEL, MoveCategory.PHYSICAL, 70, -1, 10, -1, 0, 7),
+ new StatusMove(Moves.PURIFY, Type.POISON, -1, 20, -1, 0, 7)
+ .triageMove()
+ .unimplemented(),
+ new AttackMove(Moves.REVELATION_DANCE, Type.NORMAL, MoveCategory.SPECIAL, 90, 100, 15, -1, 0, 7)
+ .danceMove()
+ .partial(),
+ new AttackMove(Moves.CORE_ENFORCER, Type.DRAGON, MoveCategory.SPECIAL, 100, 100, 10, -1, 0, 7)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.TROP_KICK, Type.GRASS, MoveCategory.PHYSICAL, 70, 100, 15, 100, 0, 7)
.attr(StatChangeAttr, BattleStat.ATK, -1),
- new StatusMove(Moves.INSTRUCT, "Instruct (N)", Type.PSYCHIC, -1, 15, "The user instructs the target to use the target's last move again.", -1, 0, 7),
- new AttackMove(Moves.BEAK_BLAST, "Beak Blast (P)", Type.FLYING, MoveCategory.PHYSICAL, 100, 100, 15, "The user first heats up its beak, and then it attacks the target. Making direct contact with the Pokémon while it's heating up its beak results in a burn.", -1, 5, 7)
+ new StatusMove(Moves.INSTRUCT, Type.PSYCHIC, -1, 15, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.BEAK_BLAST, Type.FLYING, MoveCategory.PHYSICAL, 100, 100, 15, -1, 5, 7)
.attr(ChargeAttr, ChargeAnim.BEAK_BLAST_CHARGING, "started\nheating up its beak!", undefined, false, true, -3)
.ballBombMove()
- .makesContact(false),
- new AttackMove(Moves.CLANGING_SCALES, "Clanging Scales", Type.DRAGON, MoveCategory.SPECIAL, 110, 100, 5, "The user rubs the scales on its entire body and makes a huge noise to attack opposing Pokémon. The user's Defense stat goes down after the attack.", 100, 0, 7)
+ .makesContact(false)
+ .partial(),
+ new AttackMove(Moves.CLANGING_SCALES, Type.DRAGON, MoveCategory.SPECIAL, 110, 100, 5, 100, 0, 7)
.attr(StatChangeAttr, BattleStat.DEF, -1, true)
.soundBased()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.DRAGON_HAMMER, "Dragon Hammer", Type.DRAGON, MoveCategory.PHYSICAL, 90, 100, 15, "The user uses its body like a hammer to attack the target and inflict damage.", -1, 0, 7),
- new AttackMove(Moves.BRUTAL_SWING, "Brutal Swing", Type.DARK, MoveCategory.PHYSICAL, 60, 100, 20, "The user swings its body around violently to inflict damage on everything in its vicinity.", -1, 0, 7)
+ new AttackMove(Moves.DRAGON_HAMMER, Type.DRAGON, MoveCategory.PHYSICAL, 90, 100, 15, -1, 0, 7),
+ new AttackMove(Moves.BRUTAL_SWING, Type.DARK, MoveCategory.PHYSICAL, 60, 100, 20, -1, 0, 7)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new StatusMove(Moves.AURORA_VEIL, "Aurora Veil", Type.ICE, -1, 20, "This move reduces damage from physical and special moves for five turns. This can be used only in a hailstorm.", -1, 0, 7)
- .condition((user, target, move) => user.scene.arena.weather?.weatherType === WeatherType.HAIL && !user.scene.arena.weather?.isEffectSuppressed(user.scene))
+ new StatusMove(Moves.AURORA_VEIL, Type.ICE, -1, 20, -1, 0, 7)
+ .condition((user, target, move) => (user.scene.arena.weather?.weatherType === WeatherType.HAIL || user.scene.arena.weather?.weatherType === WeatherType.SNOW) && !user.scene.arena.weather?.isEffectSuppressed(user.scene))
.attr(AddArenaTagAttr, ArenaTagType.AURORA_VEIL, 5, true)
.target(MoveTarget.USER_SIDE),
/* Unused */
- new AttackMove(Moves.SINISTER_ARROW_RAID, "Sinister Arrow Raid (P)", Type.GHOST, MoveCategory.PHYSICAL, 180, -1, 1, "The user, Decidueye, creates countless arrows using its Z-Power and shoots the target with full force.", -1, 0, 7)
- .makesContact(false),
- new AttackMove(Moves.MALICIOUS_MOONSAULT, "Malicious Moonsault (P)", Type.DARK, MoveCategory.PHYSICAL, 180, -1, 1, "The user, Incineroar, strengthens its body using its Z-Power and crashes into the target with full force.", -1, 0, 7),
- new AttackMove(Moves.OCEANIC_OPERETTA, "Oceanic Operetta (P)", Type.WATER, MoveCategory.SPECIAL, 195, -1, 1, "The user, Primarina, summons a massive amount of water using its Z-Power and attacks the target with full force.", -1, 0, 7),
- new AttackMove(Moves.GUARDIAN_OF_ALOLA, "Guardian of Alola (N)", Type.FAIRY, MoveCategory.SPECIAL, -1, -1, 1, "The user, the Land Spirit Pokémon, obtains Alola's energy using its Z-Power and attacks the target with full force. This reduces the target's HP greatly.", -1, 0, 7),
- new AttackMove(Moves.SOUL_STEALING_7_STAR_STRIKE, "Soul-Stealing 7-Star Strike (N)", Type.GHOST, MoveCategory.PHYSICAL, 195, -1, 1, "After obtaining Z-Power, the user, Marshadow, punches and kicks the target consecutively with full force.", -1, 0, 7),
- new AttackMove(Moves.STOKED_SPARKSURFER, "Stoked Sparksurfer (P)", Type.ELECTRIC, MoveCategory.SPECIAL, 175, -1, 1, "After obtaining Z-Power, the user, Alolan Raichu, attacks the target with full force. This move leaves the target with paralysis.", 100, 0, 7),
- new AttackMove(Moves.PULVERIZING_PANCAKE, "Pulverizing Pancake (P)", Type.NORMAL, MoveCategory.PHYSICAL, 210, -1, 1, "Z-Power brings out the true capabilities of the user, Snorlax. The Pokémon moves its enormous body energetically and attacks the target with full force.", -1, 0, 7),
- new SelfStatusMove(Moves.EXTREME_EVOBOOST, "Extreme Evoboost", Type.NORMAL, -1, 1, "After obtaining Z-Power, the user, Eevee, gets energy from its evolved friends and boosts its stats sharply.", 100, 0, 7)
+ new AttackMove(Moves.SINISTER_ARROW_RAID, Type.GHOST, MoveCategory.PHYSICAL, 180, -1, 1, -1, 0, 7)
+ .makesContact(false)
+ .partial(),
+ new AttackMove(Moves.MALICIOUS_MOONSAULT, Type.DARK, MoveCategory.PHYSICAL, 180, -1, 1, -1, 0, 7)
+ .partial(),
+ new AttackMove(Moves.OCEANIC_OPERETTA, Type.WATER, MoveCategory.SPECIAL, 195, -1, 1, -1, 0, 7)
+ .partial(),
+ new AttackMove(Moves.GUARDIAN_OF_ALOLA, Type.FAIRY, MoveCategory.SPECIAL, -1, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.SOUL_STEALING_7_STAR_STRIKE, Type.GHOST, MoveCategory.PHYSICAL, 195, -1, 1, -1, 0, 7)
+ .unimplemented(),
+ new AttackMove(Moves.STOKED_SPARKSURFER, Type.ELECTRIC, MoveCategory.SPECIAL, 175, -1, 1, 100, 0, 7)
+ .partial(),
+ new AttackMove(Moves.PULVERIZING_PANCAKE, Type.NORMAL, MoveCategory.PHYSICAL, 210, -1, 1, -1, 0, 7)
+ .partial(),
+ new SelfStatusMove(Moves.EXTREME_EVOBOOST, Type.NORMAL, -1, 1, 100, 0, 7)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF, BattleStat.SPATK, BattleStat.SPDEF, BattleStat.SPD ], 2, true),
- new AttackMove(Moves.GENESIS_SUPERNOVA, "Genesis Supernova", Type.PSYCHIC, MoveCategory.SPECIAL, 185, -1, 1, "After obtaining Z-Power, the user, Mew, attacks the target with full force. The terrain will be charged with psychic energy.", -1, 0, 7)
+ new AttackMove(Moves.GENESIS_SUPERNOVA, Type.PSYCHIC, MoveCategory.SPECIAL, 185, -1, 1, -1, 0, 7)
.attr(TerrainChangeAttr, TerrainType.PSYCHIC),
/* End Unused */
- new AttackMove(Moves.SHELL_TRAP, "Shell Trap (P)", Type.FIRE, MoveCategory.SPECIAL, 150, 100, 5, "The user sets a shell trap. If the user is hit by a physical move, the trap will explode and inflict damage on opposing Pokémon.", -1, -3, 7)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.FLEUR_CANNON, "Fleur Cannon", Type.FAIRY, MoveCategory.SPECIAL, 130, 90, 5, "The user unleashes a strong beam. The attack's recoil harshly lowers the user's Sp. Atk stat.", 100, 0, 7)
+ new AttackMove(Moves.SHELL_TRAP, Type.FIRE, MoveCategory.SPECIAL, 150, 100, 5, -1, -3, 7)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .partial(),
+ new AttackMove(Moves.FLEUR_CANNON, Type.FAIRY, MoveCategory.SPECIAL, 130, 90, 5, 100, 0, 7)
.attr(StatChangeAttr, BattleStat.SPATK, -2, true),
- new AttackMove(Moves.PSYCHIC_FANGS, "Psychic Fangs (P)", Type.PSYCHIC, MoveCategory.PHYSICAL, 85, 100, 10, "The user bites the target with its psychic capabilities. This can also destroy Light Screen and Reflect.", -1, 0, 7)
- .bitingMove(),
- new AttackMove(Moves.STOMPING_TANTRUM, "Stomping Tantrum (P)", Type.GROUND, MoveCategory.PHYSICAL, 75, 100, 10, "Driven by frustration, the user attacks the target. If the user's previous move has failed, the power of this move doubles.", -1, 0, 7),
- new AttackMove(Moves.SHADOW_BONE, "Shadow Bone", Type.GHOST, MoveCategory.PHYSICAL, 85, 100, 10, "The user attacks by beating the target with a bone that contains a spirit. This may also lower the target's Defense stat.", 20, 0, 7)
+ new AttackMove(Moves.PSYCHIC_FANGS, Type.PSYCHIC, MoveCategory.PHYSICAL, 85, 100, 10, -1, 0, 7)
+ .bitingMove()
+ .attr(RemoveScreensAttr),
+ new AttackMove(Moves.STOMPING_TANTRUM, Type.GROUND, MoveCategory.PHYSICAL, 75, 100, 10, -1, 0, 7)
+ .attr(MovePowerMultiplierAttr, (user, target, move) => user.getLastXMoves(2)[1]?.result == MoveResult.MISS || user.getLastXMoves(2)[1]?.result == MoveResult.FAIL ? 2 : 1),
+ new AttackMove(Moves.SHADOW_BONE, Type.GHOST, MoveCategory.PHYSICAL, 85, 100, 10, 20, 0, 7)
.attr(StatChangeAttr, BattleStat.DEF, -1)
.makesContact(false),
- new AttackMove(Moves.ACCELEROCK, "Accelerock", Type.ROCK, MoveCategory.PHYSICAL, 40, 100, 20, "The user smashes into the target at high speed. This move always goes first.", -1, 1, 7),
- new AttackMove(Moves.LIQUIDATION, "Liquidation", Type.WATER, MoveCategory.PHYSICAL, 85, 100, 10, "The user slams into the target using a full-force blast of water. This may also lower the target's Defense stat.", 20, 0, 7)
+ new AttackMove(Moves.ACCELEROCK, Type.ROCK, MoveCategory.PHYSICAL, 40, 100, 20, -1, 1, 7),
+ new AttackMove(Moves.LIQUIDATION, Type.WATER, MoveCategory.PHYSICAL, 85, 100, 10, 20, 0, 7)
.attr(StatChangeAttr, BattleStat.DEF, -1),
- new AttackMove(Moves.PRISMATIC_LASER, "Prismatic Laser", Type.PSYCHIC, MoveCategory.SPECIAL, 160, 100, 10, "The user shoots powerful lasers using the power of a prism. The user can't move on the next turn.", -1, 0, 7)
+ new AttackMove(Moves.PRISMATIC_LASER, Type.PSYCHIC, MoveCategory.SPECIAL, 160, 100, 10, -1, 0, 7)
.attr(RechargeAttr),
- new AttackMove(Moves.SPECTRAL_THIEF, "Spectral Thief (P)", Type.GHOST, MoveCategory.PHYSICAL, 90, 100, 10, "The user hides in the target's shadow, steals the target's stat boosts, and then attacks.", -1, 0, 7),
- new AttackMove(Moves.SUNSTEEL_STRIKE, "Sunsteel Strike (P)", Type.STEEL, MoveCategory.PHYSICAL, 100, 100, 5, "The user slams into the target with the force of a meteor. This move can be used on the target regardless of its Abilities.", -1, 0, 7),
- new AttackMove(Moves.MOONGEIST_BEAM, "Moongeist Beam (P)", Type.GHOST, MoveCategory.SPECIAL, 100, 100, 5, "The user emits a sinister ray to attack the target. This move can be used on the target regardless of its Abilities.", -1, 0, 7),
- new StatusMove(Moves.TEARFUL_LOOK, "Tearful Look", Type.NORMAL, -1, 20, "The user gets teary eyed to make the target lose its combative spirit. This lowers the target's Attack and Sp. Atk stats.", 100, 0, 7)
+ new AttackMove(Moves.SPECTRAL_THIEF, Type.GHOST, MoveCategory.PHYSICAL, 90, 100, 10, -1, 0, 7)
+ .partial(),
+ new AttackMove(Moves.SUNSTEEL_STRIKE, Type.STEEL, MoveCategory.PHYSICAL, 100, 100, 5, -1, 0, 7)
+ .ignoresAbilities()
+ .partial(),
+ new AttackMove(Moves.MOONGEIST_BEAM, Type.GHOST, MoveCategory.SPECIAL, 100, 100, 5, -1, 0, 7)
+ .ignoresAbilities()
+ .partial(),
+ new StatusMove(Moves.TEARFUL_LOOK, Type.NORMAL, -1, 20, 100, 0, 7)
.attr(StatChangeAttr, BattleStat.ATK, -1)
.attr(StatChangeAttr, BattleStat.SPATK, -1),
- new AttackMove(Moves.ZING_ZAP, "Zing Zap", Type.ELECTRIC, MoveCategory.PHYSICAL, 80, 100, 10, "A strong electric blast crashes down on the target, giving it an electric shock. This may also make the target flinch.", 30, 0, 7)
+ new AttackMove(Moves.ZING_ZAP, Type.ELECTRIC, MoveCategory.PHYSICAL, 80, 100, 10, 30, 0, 7)
.attr(FlinchAttr),
- new AttackMove(Moves.NATURES_MADNESS, "Nature's Madness", Type.FAIRY, MoveCategory.SPECIAL, -1, 90, 10, "The user hits the target with the force of nature. It halves the target's HP.", -1, 0, 7)
+ new AttackMove(Moves.NATURES_MADNESS, Type.FAIRY, MoveCategory.SPECIAL, -1, 90, 10, -1, 0, 7)
.attr(TargetHalfHpDamageAttr),
- new AttackMove(Moves.MULTI_ATTACK, "Multi-Attack (P)", Type.NORMAL, MoveCategory.PHYSICAL, 120, 100, 10, "Cloaking itself in high energy, the user slams into the target. The memory held determines the move's type.", -1, 0, 7),
+ new AttackMove(Moves.MULTI_ATTACK, Type.NORMAL, MoveCategory.PHYSICAL, 120, 100, 10, -1, 0, 7)
+ .partial(),
/* Unused */
- new AttackMove(Moves.TEN_MILLION_VOLT_THUNDERBOLT, "10,000,000 Volt Thunderbolt (P)", Type.ELECTRIC, MoveCategory.SPECIAL, 195, -1, 1, "The user, Pikachu wearing a cap, powers up a jolt of electricity using its Z-Power and unleashes it. Critical hits land more easily.", -1, 0, 7),
+ new AttackMove(Moves.TEN_MILLION_VOLT_THUNDERBOLT, Type.ELECTRIC, MoveCategory.SPECIAL, 195, -1, 1, -1, 0, 7)
+ .partial(),
/* End Unused */
- new AttackMove(Moves.MIND_BLOWN, "Mind Blown", Type.FIRE, MoveCategory.SPECIAL, 150, 100, 5, "The user attacks everything around it by causing its own head to explode. This also damages the user.", -1, 0, 7)
+ new AttackMove(Moves.MIND_BLOWN, Type.FIRE, MoveCategory.SPECIAL, 150, 100, 5, -1, 0, 7)
.attr(RecoilAttr, true, 0.5)
.target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.PLASMA_FISTS, "Plasma Fists (P)", Type.ELECTRIC, MoveCategory.PHYSICAL, 100, 100, 15, "The user attacks with electrically charged fists. This move changes Normal-type moves to Electric-type moves.", -1, 0, 7)
- .punchingMove(),
- new AttackMove(Moves.PHOTON_GEYSER, "Photon Geyser (P)", Type.PSYCHIC, MoveCategory.SPECIAL, 100, 100, 5, "The user attacks a target with a pillar of light. This move inflicts Attack or Sp. Atk damage—whichever stat is higher for the user.", -1, 0, 7)
- .attr(PhotonGeyserCategoryAttr),
+ new AttackMove(Moves.PLASMA_FISTS, Type.ELECTRIC, MoveCategory.PHYSICAL, 100, 100, 15, -1, 0, 7)
+ .punchingMove()
+ .partial(),
+ new AttackMove(Moves.PHOTON_GEYSER, Type.PSYCHIC, MoveCategory.SPECIAL, 100, 100, 5, -1, 0, 7)
+ .attr(PhotonGeyserCategoryAttr)
+ .ignoresAbilities()
+ .partial(),
/* Unused */
- new AttackMove(Moves.LIGHT_THAT_BURNS_THE_SKY, "Light That Burns the Sky (P)", Type.PSYCHIC, MoveCategory.SPECIAL, 200, -1, 1, "This attack inflicts Attack or Sp. Atk damage—whichever stat is higher for the user, Necrozma. This move ignores the target's Ability.", -1, 0, 7)
- .attr(PhotonGeyserCategoryAttr),
- new AttackMove(Moves.SEARING_SUNRAZE_SMASH, "Searing Sunraze Smash (P)", Type.STEEL, MoveCategory.PHYSICAL, 200, -1, 1, "After obtaining Z-Power, the user, Solgaleo, attacks the target with full force. This move can ignore the effect of the target's Ability.", -1, 0, 7),
- new AttackMove(Moves.MENACING_MOONRAZE_MAELSTROM, "Menacing Moonraze Maelstrom (P)", Type.GHOST, MoveCategory.SPECIAL, 200, -1, 1, "After obtaining Z-Power, the user, Lunala, attacks the target with full force. This move can ignore the effect of the target's Ability.", -1, 0, 7),
- new AttackMove(Moves.LETS_SNUGGLE_FOREVER, "Let's Snuggle Forever (P)", Type.FAIRY, MoveCategory.PHYSICAL, 190, -1, 1, "After obtaining Z-Power, the user, Mimikyu, punches the target with full force.", -1, 0, 7),
- new AttackMove(Moves.SPLINTERED_STORMSHARDS, "Splintered Stormshards", Type.ROCK, MoveCategory.PHYSICAL, 190, -1, 1, "After obtaining Z-Power, the user, Lycanroc, attacks the target with full force. This move negates the effect on the battlefield.", -1, 0, 7)
+ new AttackMove(Moves.LIGHT_THAT_BURNS_THE_SKY, Type.PSYCHIC, MoveCategory.SPECIAL, 200, -1, 1, -1, 0, 7)
+ .attr(PhotonGeyserCategoryAttr)
+ .ignoresAbilities(),
+ new AttackMove(Moves.SEARING_SUNRAZE_SMASH, Type.STEEL, MoveCategory.PHYSICAL, 200, -1, 1, -1, 0, 7)
+ .ignoresAbilities(),
+ new AttackMove(Moves.MENACING_MOONRAZE_MAELSTROM, Type.GHOST, MoveCategory.SPECIAL, 200, -1, 1, -1, 0, 7)
+ .ignoresAbilities(),
+ new AttackMove(Moves.LETS_SNUGGLE_FOREVER, Type.FAIRY, MoveCategory.PHYSICAL, 190, -1, 1, -1, 0, 7)
+ .partial(),
+ new AttackMove(Moves.SPLINTERED_STORMSHARDS, Type.ROCK, MoveCategory.PHYSICAL, 190, -1, 1, -1, 0, 7)
.attr(ClearTerrainAttr)
.makesContact(false),
- new AttackMove(Moves.CLANGOROUS_SOULBLAZE, "Clangorous Soulblaze (P)", Type.DRAGON, MoveCategory.SPECIAL, 185, -1, 1, "After obtaining Z-Power, the user, Kommo-o, attacks the opposing Pokémon with full force. This move boosts the user's stats.", 100, 0, 7)
+ new AttackMove(Moves.CLANGOROUS_SOULBLAZE, Type.DRAGON, MoveCategory.SPECIAL, 185, -1, 1, 100, 0, 7)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF, BattleStat.SPATK, BattleStat.SPDEF, BattleStat.SPD ], 1, true)
.soundBased()
- .target(MoveTarget.ALL_NEAR_ENEMIES),
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .partial(),
/* End Unused */
- new AttackMove(Moves.ZIPPY_ZAP, "Zippy Zap", Type.ELECTRIC, MoveCategory.PHYSICAL, 80, 100, 10, "The user attacks the target with bursts of electricity at high speed. This move always goes first and results in a critical hit.", 100, 2, 7)
+ new AttackMove(Moves.ZIPPY_ZAP, Type.ELECTRIC, MoveCategory.PHYSICAL, 80, 100, 10, 100, 2, 7)
.attr(CritOnlyAttr),
- new AttackMove(Moves.SPLISHY_SPLASH, "Splishy Splash", Type.WATER, MoveCategory.SPECIAL, 90, 100, 15, "The user charges a huge wave with electricity and hits the opposing Pokémon with the wave. This may also leave the opposing Pokémon with paralysis.", 30, 0, 7)
+ new AttackMove(Moves.SPLISHY_SPLASH, Type.WATER, MoveCategory.SPECIAL, 90, 100, 15, 30, 0, 7)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.FLOATY_FALL, "Floaty Fall", Type.FLYING, MoveCategory.PHYSICAL, 90, 95, 15, "The user floats in the air, and then dives at a steep angle to attack the target. This may also make the target flinch.", 30, 0, 7)
+ new AttackMove(Moves.FLOATY_FALL, Type.FLYING, MoveCategory.PHYSICAL, 90, 95, 15, 30, 0, 7)
.attr(FlinchAttr),
- new AttackMove(Moves.PIKA_PAPOW, "Pika Papow", Type.ELECTRIC, MoveCategory.SPECIAL, -1, -1, 20, "The more Pikachu loves its Trainer, the greater the move's power. It never misses.", -1, 0, 7)
+ new AttackMove(Moves.PIKA_PAPOW, Type.ELECTRIC, MoveCategory.SPECIAL, -1, -1, 20, -1, 0, 7)
.attr(FriendshipPowerAttr),
- new AttackMove(Moves.BOUNCY_BUBBLE, "Bouncy Bubble", Type.WATER, MoveCategory.SPECIAL, 60, 100, 20, "The user attacks by shooting water bubbles at the target. It then absorbs water and restores its HP by half the damage taken by the target.", -1, 0, 7)
+ new AttackMove(Moves.BOUNCY_BUBBLE, Type.WATER, MoveCategory.SPECIAL, 60, 100, 20, -1, 0, 7)
.attr(HitHealAttr),
- new AttackMove(Moves.BUZZY_BUZZ, "Buzzy Buzz", Type.ELECTRIC, MoveCategory.SPECIAL, 60, 100, 20, "The user shoots a jolt of electricity to attack the target. This also leaves the target with paralysis.", 100, 0, 7)
+ new AttackMove(Moves.BUZZY_BUZZ, Type.ELECTRIC, MoveCategory.SPECIAL, 60, 100, 20, 100, 0, 7)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS),
- new AttackMove(Moves.SIZZLY_SLIDE, "Sizzly Slide", Type.FIRE, MoveCategory.PHYSICAL, 60, 100, 20, "The user cloaks itself in fire and charges at the target. This also leaves the target with a burn.", 100, 0, 7)
+ new AttackMove(Moves.SIZZLY_SLIDE, Type.FIRE, MoveCategory.PHYSICAL, 60, 100, 20, 100, 0, 7)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new AttackMove(Moves.GLITZY_GLOW, "Glitzy Glow", Type.PSYCHIC, MoveCategory.SPECIAL, 80, 95, 15, "The user bombards the target with telekinetic force. A wondrous wall of light is put up to weaken the power of the opposing Pokémon's special moves.", -1, 0, 7)
+ new AttackMove(Moves.GLITZY_GLOW, Type.PSYCHIC, MoveCategory.SPECIAL, 80, 95, 15, -1, 0, 7)
.attr(AddArenaTagAttr, ArenaTagType.LIGHT_SCREEN, 5, false, true),
- new AttackMove(Moves.BADDY_BAD, "Baddy Bad", Type.DARK, MoveCategory.SPECIAL, 80, 95, 15, "The user acts bad and attacks the target. A wondrous wall of light is put up to weaken the power of the opposing Pokémon's physical moves.", -1, 0, 7)
+ new AttackMove(Moves.BADDY_BAD, Type.DARK, MoveCategory.SPECIAL, 80, 95, 15, -1, 0, 7)
.attr(AddArenaTagAttr, ArenaTagType.REFLECT, 5, false, true),
- new AttackMove(Moves.SAPPY_SEED, "Sappy Seed", Type.GRASS, MoveCategory.PHYSICAL, 100, 90, 10, "The user grows a gigantic stalk that scatters seeds to attack the target. The seeds drain the target's HP every turn.", 100, 0, 7)
+ new AttackMove(Moves.SAPPY_SEED, Type.GRASS, MoveCategory.PHYSICAL, 100, 90, 10, 100, 0, 7)
.attr(AddBattlerTagAttr, BattlerTagType.SEEDED),
- new AttackMove(Moves.FREEZY_FROST, "Freezy Frost (P)", Type.ICE, MoveCategory.SPECIAL, 100, 90, 10, "The user attacks with a crystal made of cold frozen haze. It eliminates every stat change among all the Pokémon engaged in battle.", -1, 0, 7),
- new AttackMove(Moves.SPARKLY_SWIRL, "Sparkly Swirl (P)", Type.FAIRY, MoveCategory.SPECIAL, 120, 85, 5, "The user attacks the target by wrapping it with a whirlwind of an overpowering scent. This also heals all status conditions of the user's party.", -1, 0, 7),
- new AttackMove(Moves.VEEVEE_VOLLEY, "Veevee Volley", Type.NORMAL, MoveCategory.PHYSICAL, -1, -1, 20, "The more Eevee loves its Trainer, the greater the move's power. It never misses.", -1, 0, 7)
+ new AttackMove(Moves.FREEZY_FROST, Type.ICE, MoveCategory.SPECIAL, 100, 90, 10, -1, 0, 7)
+ .attr(ResetStatsAttr),
+ new AttackMove(Moves.SPARKLY_SWIRL, Type.FAIRY, MoveCategory.SPECIAL, 120, 85, 5, -1, 0, 7)
+ .partial(),
+ new AttackMove(Moves.VEEVEE_VOLLEY, Type.NORMAL, MoveCategory.PHYSICAL, -1, -1, 20, -1, 0, 7)
.attr(FriendshipPowerAttr),
- new AttackMove(Moves.DOUBLE_IRON_BASH, "Double Iron Bash", Type.STEEL, MoveCategory.PHYSICAL, 60, 100, 5, "The user rotates, centering the hex nut in its chest, and then strikes with its arms twice in a row. This may also make the target flinch.", 30, 0, 7)
+ new AttackMove(Moves.DOUBLE_IRON_BASH, Type.STEEL, MoveCategory.PHYSICAL, 60, 100, 5, 30, 0, 7)
.attr(MultiHitAttr, MultiHitType._2)
.attr(FlinchAttr)
.punchingMove(),
/* Unused */
- new SelfStatusMove(Moves.MAX_GUARD, "Max Guard", Type.NORMAL, -1, 10, "This move enables the user to protect itself from all attacks. Its chance of failing rises if it is used in succession.", -1, 4, 8)
+ new SelfStatusMove(Moves.MAX_GUARD, Type.NORMAL, -1, 10, -1, 4, 8)
.attr(ProtectAttr),
/* End Unused */
- new AttackMove(Moves.DYNAMAX_CANNON, "Dynamax Cannon", Type.DRAGON, MoveCategory.SPECIAL, 100, 100, 5, "The user unleashes a strong beam from its core. This move deals twice the damage if the target is over level 200.", -1, 0, 8)
+ new AttackMove(Moves.DYNAMAX_CANNON, Type.DRAGON, MoveCategory.SPECIAL, 100, 100, 5, -1, 0, 8)
.attr(MovePowerMultiplierAttr, (user, target, move) => target.level > 200 ? 2 : 1)
.attr(DiscourageFrequentUseAttr)
.ignoresVirtual(),
- new AttackMove(Moves.SNIPE_SHOT, "Snipe Shot (P)", Type.WATER, MoveCategory.SPECIAL, 80, 100, 15, "The user ignores the effects of opposing Pokémon's moves and Abilities that draw in moves, allowing this move to hit the chosen target.", -1, 0, 8),
- new AttackMove(Moves.JAW_LOCK, "Jaw Lock", Type.DARK, MoveCategory.PHYSICAL, 80, 100, 10, "This move prevents the user and the target from switching out until either of them faints. The effect goes away if either of the Pokémon leaves the field.", -1, 0, 8)
+ new AttackMove(Moves.SNIPE_SHOT, Type.WATER, MoveCategory.SPECIAL, 80, 100, 15, -1, 0, 8)
+ .partial(),
+ new AttackMove(Moves.JAW_LOCK, Type.DARK, MoveCategory.PHYSICAL, 80, 100, 10, -1, 0, 8)
.attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, false, false, 1)
.attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, true, false, 1)
.bitingMove(),
- new SelfStatusMove(Moves.STUFF_CHEEKS, "Stuff Cheeks (N)", Type.NORMAL, -1, 10, "The user eats its held Berry, then sharply raises its Defense stat.", 100, 0, 8),
- new SelfStatusMove(Moves.NO_RETREAT, "No Retreat", Type.FIGHTING, -1, 5, "This move raises all the user's stats but prevents the user from switching out or fleeing.", 100, 0, 8)
+ new SelfStatusMove(Moves.STUFF_CHEEKS, Type.NORMAL, -1, 10, 100, 0, 8)
+ .unimplemented(),
+ new SelfStatusMove(Moves.NO_RETREAT, Type.FIGHTING, -1, 5, 100, 0, 8)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF, BattleStat.SPATK, BattleStat.SPDEF, BattleStat.SPD ], 1, true)
.attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, true, true, 1),
- new StatusMove(Moves.TAR_SHOT, "Tar Shot (P)", Type.ROCK, 100, 15, "The user pours sticky tar over the target, lowering the target's Speed stat. The target becomes weaker to Fire-type moves.", 100, 0, 8)
- .attr(StatChangeAttr, BattleStat.SPD, -1),
- new StatusMove(Moves.MAGIC_POWDER, "Magic Powder (N)", Type.PSYCHIC, 100, 20, "The user scatters a cloud of magic powder that changes the target to Psychic type.", -1, 0, 8)
+ new StatusMove(Moves.TAR_SHOT, Type.ROCK, 100, 15, 100, 0, 8)
+ .attr(StatChangeAttr, BattleStat.SPD, -1)
+ .partial(),
+ new StatusMove(Moves.MAGIC_POWDER, Type.PSYCHIC, 100, 20, -1, 0, 8)
+ .attr(ChangeTypeAttr, Type.PSYCHIC)
.powderMove(),
- new AttackMove(Moves.DRAGON_DARTS, "Dragon Darts (P)", Type.DRAGON, MoveCategory.PHYSICAL, 50, 100, 10, "The user attacks twice using Dreepy. If there are two targets, this move hits each target once.", -1, 0, 8)
+ new AttackMove(Moves.DRAGON_DARTS, Type.DRAGON, MoveCategory.PHYSICAL, 50, 100, 10, -1, 0, 8)
.attr(MultiHitAttr, MultiHitType._2)
- .makesContact(false),
- new StatusMove(Moves.TEATIME, "Teatime (N)", Type.NORMAL, -1, 10, "The user has teatime with all the Pokémon in the battle. Each Pokémon eats its held Berry.", -1, 0, 8)
- .target(MoveTarget.ALL),
- new StatusMove(Moves.OCTOLOCK, "Octolock (P)", Type.FIGHTING, 100, 15, "The user locks the target in and prevents it from fleeing. This move also lowers the target's Defense and Sp. Def every turn.", -1, 0, 8)
- .attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, false, true, 1),
- new AttackMove(Moves.BOLT_BEAK, "Bolt Beak", Type.ELECTRIC, MoveCategory.PHYSICAL, 85, 100, 10, "The user stabs the target with its electrified beak. If the user attacks before the target, the power of this move is doubled.", -1, 0, 8)
+ .makesContact(false)
+ .partial(),
+ new StatusMove(Moves.TEATIME, Type.NORMAL, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL)
+ .unimplemented(),
+ new StatusMove(Moves.OCTOLOCK, Type.FIGHTING, 100, 15, -1, 0, 8)
+ .attr(AddBattlerTagAttr, BattlerTagType.TRAPPED, false, true, 1)
+ .partial(),
+ new AttackMove(Moves.BOLT_BEAK, Type.ELECTRIC, MoveCategory.PHYSICAL, 85, 100, 10, -1, 0, 8)
.attr(FirstAttackDoublePowerAttr),
- new AttackMove(Moves.FISHIOUS_REND, "Fishious Rend", Type.WATER, MoveCategory.PHYSICAL, 85, 100, 10, "The user rends the target with its hard gills. If the user attacks before the target, the power of this move is doubled.", -1, 0, 8)
+ new AttackMove(Moves.FISHIOUS_REND, Type.WATER, MoveCategory.PHYSICAL, 85, 100, 10, -1, 0, 8)
.attr(FirstAttackDoublePowerAttr)
.bitingMove(),
- new StatusMove(Moves.COURT_CHANGE, "Court Change (N)", Type.NORMAL, 100, 10, "With its mysterious power, the user swaps the effects on either side of the field.", -1, 0, 8)
- .target(MoveTarget.BOTH_SIDES),
+ new StatusMove(Moves.COURT_CHANGE, Type.NORMAL, 100, 10, -1, 0, 8)
+ .target(MoveTarget.BOTH_SIDES)
+ .unimplemented(),
/* Unused */
- new AttackMove(Moves.MAX_FLARE, "Max Flare (N)", Type.FIRE, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Fire-type attack Dynamax Pokémon use. The user intensifies the sun for five turns.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_FLUTTERBY, "Max Flutterby (N)", Type.BUG, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Bug-type attack Dynamax Pokémon use. This lowers the target's Sp. Atk stat.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_LIGHTNING, "Max Lightning (N)", Type.ELECTRIC, MoveCategory.PHYSICAL, 10, -1, 10, "This is an Electric-type attack Dynamax Pokémon use. The user turns the ground into Electric Terrain for five turns.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_STRIKE, "Max Strike (N)", Type.NORMAL, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Normal-type attack Dynamax Pokémon use. This lowers the target's Speed stat.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_KNUCKLE, "Max Knuckle (N)", Type.FIGHTING, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Fighting-type attack Dynamax Pokémon use. This raises ally Pokémon's Attack stats.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_PHANTASM, "Max Phantasm (N)", Type.GHOST, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Ghost-type attack Dynamax Pokémon use. This lowers the target's Defense stat.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_HAILSTORM, "Max Hailstorm (N)", Type.ICE, MoveCategory.PHYSICAL, 10, -1, 10, "This is an Ice-type attack Dynamax Pokémon use. The user summons a hailstorm lasting five turns.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_OOZE, "Max Ooze (N)", Type.POISON, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Poison-type attack Dynamax Pokémon use. This raises ally Pokémon's Sp. Atk stats.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_GEYSER, "Max Geyser (N)", Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Water-type attack Dynamax Pokémon use. The user summons a heavy rain that falls for five turns.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_AIRSTREAM, "Max Airstream (N)", Type.FLYING, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Flying-type attack Dynamax Pokémon use. This raises ally Pokémon's Speed stats.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_STARFALL, "Max Starfall (N)", Type.FAIRY, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Fairy-type attack Dynamax Pokémon use. The user turns the ground into Misty Terrain for five turns.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_WYRMWIND, "Max Wyrmwind (N)", Type.DRAGON, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Dragon-type attack Dynamax Pokémon use. This lowers the target's Attack stat.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_MINDSTORM, "Max Mindstorm (N)", Type.PSYCHIC, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Psychic-type attack Dynamax Pokémon use. The user turns the ground into Psychic Terrain for five turns.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_ROCKFALL, "Max Rockfall (N)", Type.ROCK, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Rock-type attack Dynamax Pokémon use. The user summons a sandstorm lasting five turns.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_QUAKE, "Max Quake (N)", Type.GROUND, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Ground-type attack Dynamax Pokémon use. This raises ally Pokémon's Sp. Def stats.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_DARKNESS, "Max Darkness (N)", Type.DARK, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Dark-type attack Dynamax Pokémon use. This lowers the target's Sp. Def stat.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_OVERGROWTH, "Max Overgrowth (N)", Type.GRASS, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Grass-type attack Dynamax Pokémon use. The user turns the ground into Grassy Terrain for five turns.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
- new AttackMove(Moves.MAX_STEELSPIKE, "Max Steelspike (N)", Type.STEEL, MoveCategory.PHYSICAL, 10, -1, 10, "This is a Steel-type attack Dynamax Pokémon use. This raises ally Pokémon's Defense stats.", -1, 0, 8)
- .target(MoveTarget.NEAR_ENEMY),
+ new AttackMove(Moves.MAX_FLARE, Type.FIRE, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_FLUTTERBY, Type.BUG, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_LIGHTNING, Type.ELECTRIC, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_STRIKE, Type.NORMAL, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_KNUCKLE, Type.FIGHTING, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_PHANTASM, Type.GHOST, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_HAILSTORM, Type.ICE, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_OOZE, Type.POISON, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_GEYSER, Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_AIRSTREAM, Type.FLYING, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_STARFALL, Type.FAIRY, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_WYRMWIND, Type.DRAGON, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_MINDSTORM, Type.PSYCHIC, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_ROCKFALL, Type.ROCK, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_QUAKE, Type.GROUND, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_DARKNESS, Type.DARK, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_OVERGROWTH, Type.GRASS, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
+ new AttackMove(Moves.MAX_STEELSPIKE, Type.STEEL, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.NEAR_ENEMY)
+ .unimplemented(),
/* End Unused */
- new SelfStatusMove(Moves.CLANGOROUS_SOUL, "Clangorous Soul", Type.DRAGON, 100, 5, "The user raises all its stats by using some of its HP.", 100, 0, 8)
+ new SelfStatusMove(Moves.CLANGOROUS_SOUL, Type.DRAGON, 100, 5, 100, 0, 8)
.attr(CutHpStatBoostAttr, [ BattleStat.ATK, BattleStat.DEF, BattleStat.SPATK, BattleStat.SPDEF, BattleStat.SPD ], 1, 3)
.soundBased()
.danceMove(),
- new AttackMove(Moves.BODY_PRESS, "Body Press", Type.FIGHTING, MoveCategory.PHYSICAL, 80, 100, 10, "The user attacks by slamming its body into the target. The higher the user's Defense, the more damage it can inflict on the target.", -1, 0, 8)
+ new AttackMove(Moves.BODY_PRESS, Type.FIGHTING, MoveCategory.PHYSICAL, 80, 100, 10, -1, 0, 8)
.attr(DefAtkAttr),
- new StatusMove(Moves.DECORATE, "Decorate", Type.FAIRY, -1, 15, "The user sharply raises the target's Attack and Sp. Atk stats by decorating the target.", 100, 0, 8)
+ new StatusMove(Moves.DECORATE, Type.FAIRY, -1, 15, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.ATK, 2)
.attr(StatChangeAttr, BattleStat.SPATK, 2),
- new AttackMove(Moves.DRUM_BEATING, "Drum Beating", Type.GRASS, MoveCategory.PHYSICAL, 80, 100, 10, "The user plays its drum, controlling the drum's roots to attack the target. This also lowers the target's Speed stat.", 100, 0, 8)
+ new AttackMove(Moves.DRUM_BEATING, Type.GRASS, MoveCategory.PHYSICAL, 80, 100, 10, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.SPD, -1)
.makesContact(false),
- new AttackMove(Moves.SNAP_TRAP, "Snap Trap (P)", Type.GRASS, MoveCategory.PHYSICAL, 35, 100, 15, "The user snares the target in a snap trap for four to five turns.", 100, 0, 8),
- new AttackMove(Moves.PYRO_BALL, "Pyro Ball", Type.FIRE, MoveCategory.PHYSICAL, 120, 90, 5, "The user attacks by igniting a small stone and launching it as a fiery ball at the target. This may also leave the target with a burn.", 10, 0, 8)
+ new AttackMove(Moves.SNAP_TRAP, Type.GRASS, MoveCategory.PHYSICAL, 35, 100, 15, 100, 0, 8)
+ .partial(),
+ new AttackMove(Moves.PYRO_BALL, Type.FIRE, MoveCategory.PHYSICAL, 120, 90, 5, 10, 0, 8)
.attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
.attr(StatusEffectAttr, StatusEffect.BURN)
.ballBombMove()
.makesContact(false),
- new AttackMove(Moves.BEHEMOTH_BLADE, "Behemoth Blade", Type.STEEL, MoveCategory.PHYSICAL, 100, 100, 5, "The user wields a large, powerful sword using its whole body and cuts the target in a vigorous attack.", -1, 0, 8)
+ new AttackMove(Moves.BEHEMOTH_BLADE, Type.STEEL, MoveCategory.PHYSICAL, 100, 100, 5, -1, 0, 8)
.slicingMove(),
- new AttackMove(Moves.BEHEMOTH_BASH, "Behemoth Bash", Type.STEEL, MoveCategory.PHYSICAL, 100, 100, 5, "The user's body becomes a firm shield and slams into the target fiercely.", -1, 0, 8),
- new AttackMove(Moves.AURA_WHEEL, "Aura Wheel", Type.ELECTRIC, MoveCategory.PHYSICAL, 110, 100, 10, "Morpeko attacks and raises its Speed with the energy stored in its cheeks. This move's type changes depending on the user's form.", 100, 0, 8)
+ new AttackMove(Moves.BEHEMOTH_BASH, Type.STEEL, MoveCategory.PHYSICAL, 100, 100, 5, -1, 0, 8),
+ new AttackMove(Moves.AURA_WHEEL, Type.ELECTRIC, MoveCategory.PHYSICAL, 110, 100, 10, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.SPD, 1, true)
.makesContact(false)
.attr(AuraWheelTypeAttr)
.condition((user, target, move) => [user.species.speciesId, user.fusionSpecies?.speciesId].includes(Species.MORPEKO)), // Missing custom fail message
- new AttackMove(Moves.BREAKING_SWIPE, "Breaking Swipe", Type.DRAGON, MoveCategory.PHYSICAL, 60, 100, 15, "The user swings its tough tail wildly and attacks opposing Pokémon. This also lowers their Attack stats.", 100, 0, 8)
+ new AttackMove(Moves.BREAKING_SWIPE, Type.DRAGON, MoveCategory.PHYSICAL, 60, 100, 15, 100, 0, 8)
.target(MoveTarget.ALL_NEAR_ENEMIES)
.attr(StatChangeAttr, BattleStat.ATK, -1),
- new AttackMove(Moves.BRANCH_POKE, "Branch Poke", Type.GRASS, MoveCategory.PHYSICAL, 40, 100, 40, "The user attacks the target by poking it with a sharply pointed branch.", -1, 0, 8),
- new AttackMove(Moves.OVERDRIVE, "Overdrive", Type.ELECTRIC, MoveCategory.SPECIAL, 80, 100, 10, "The user attacks opposing Pokémon by twanging a guitar or bass guitar, causing a huge echo and strong vibration.", -1, 0, 8)
+ new AttackMove(Moves.BRANCH_POKE, Type.GRASS, MoveCategory.PHYSICAL, 40, 100, 40, -1, 0, 8),
+ new AttackMove(Moves.OVERDRIVE, Type.ELECTRIC, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 8)
.soundBased()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.APPLE_ACID, "Apple Acid", Type.GRASS, MoveCategory.SPECIAL, 80, 100, 10, "The user attacks the target with an acidic liquid created from tart apples. This also lowers the target's Sp. Def stat.", 100, 0, 8)
+ new AttackMove(Moves.APPLE_ACID, Type.GRASS, MoveCategory.SPECIAL, 80, 100, 10, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.SPDEF, -1),
- new AttackMove(Moves.GRAV_APPLE, "Grav Apple", Type.GRASS, MoveCategory.PHYSICAL, 80, 100, 10, "The user inflicts damage by dropping an apple from high above. This also lowers the target's Defense stat.", 100, 0, 8)
+ new AttackMove(Moves.GRAV_APPLE, Type.GRASS, MoveCategory.PHYSICAL, 80, 100, 10, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.DEF, -1)
.attr(MovePowerMultiplierAttr, (user, target, move) => user.scene.arena.getTag(ArenaTagType.GRAVITY) ? 1.5 : 1)
.makesContact(false),
- new AttackMove(Moves.SPIRIT_BREAK, "Spirit Break", Type.FAIRY, MoveCategory.PHYSICAL, 75, 100, 15, "The user attacks the target with so much force that it could break the target's spirit. This also lowers the target's Sp. Atk stat.", 100, 0, 8)
+ new AttackMove(Moves.SPIRIT_BREAK, Type.FAIRY, MoveCategory.PHYSICAL, 75, 100, 15, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.SPATK, -1),
- new AttackMove(Moves.STRANGE_STEAM, "Strange Steam", Type.FAIRY, MoveCategory.SPECIAL, 90, 95, 10, "The user attacks the target by emitting steam. This may also confuse the target.", 20, 0, 8)
+ new AttackMove(Moves.STRANGE_STEAM, Type.FAIRY, MoveCategory.SPECIAL, 90, 95, 10, 20, 0, 8)
.attr(ConfuseAttr),
- new StatusMove(Moves.LIFE_DEW, "Life Dew", Type.WATER, -1, 10, "The user scatters mysterious water around and restores the HP of itself and its ally Pokémon in the battle.", -1, 0, 8)
+ new StatusMove(Moves.LIFE_DEW, Type.WATER, -1, 10, -1, 0, 8)
.attr(HealAttr, 0.25, true, false)
.target(MoveTarget.USER_AND_ALLIES),
- new SelfStatusMove(Moves.OBSTRUCT, "Obstruct", Type.DARK, 100, 10, "This move enables the user to protect itself from all attacks. Its chance of failing rises if it is used in succession. Direct contact harshly lowers the attacker's Defense stat.", -1, 4, 8)
+ new SelfStatusMove(Moves.OBSTRUCT, Type.DARK, 100, 10, -1, 4, 8)
.attr(ProtectAttr, BattlerTagType.OBSTRUCT),
- new AttackMove(Moves.FALSE_SURRENDER, "False Surrender", Type.DARK, MoveCategory.PHYSICAL, 80, -1, 10, "The user pretends to bow its head, but then it stabs the target with its disheveled hair. This attack never misses.", -1, 0, 8),
- new AttackMove(Moves.METEOR_ASSAULT, "Meteor Assault", Type.FIGHTING, MoveCategory.PHYSICAL, 150, 100, 5, "The user attacks wildly with its thick leek. The user can't move on the next turn, because the force of this move makes it stagger.", -1, 0, 8)
+ new AttackMove(Moves.FALSE_SURRENDER, Type.DARK, MoveCategory.PHYSICAL, 80, -1, 10, -1, 0, 8),
+ new AttackMove(Moves.METEOR_ASSAULT, Type.FIGHTING, MoveCategory.PHYSICAL, 150, 100, 5, -1, 0, 8)
.attr(RechargeAttr)
.makesContact(false),
- new AttackMove(Moves.ETERNABEAM, "Eternabeam", Type.DRAGON, MoveCategory.SPECIAL, 160, 90, 5, "This is Eternatus's most powerful attack in its original form. The user can't move on the next turn.", -1, 0, 8)
+ new AttackMove(Moves.ETERNABEAM, Type.DRAGON, MoveCategory.SPECIAL, 160, 90, 5, -1, 0, 8)
.attr(RechargeAttr),
- new AttackMove(Moves.STEEL_BEAM, "Steel Beam", Type.STEEL, MoveCategory.SPECIAL, 140, 95, 5, "The user fires a beam of steel that it collected from its entire body. This also damages the user.", -1, 0, 8)
+ new AttackMove(Moves.STEEL_BEAM, Type.STEEL, MoveCategory.SPECIAL, 140, 95, 5, -1, 0, 8)
.attr(RecoilAttr, true, 0.5),
- new AttackMove(Moves.EXPANDING_FORCE, "Expanding Force (P)", Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 10, "The user attacks the target with its psychic power. This move's power goes up and damages all opposing Pokémon on Psychic Terrain.", -1, 0, 8),
- new AttackMove(Moves.STEEL_ROLLER, "Steel Roller", Type.STEEL, MoveCategory.PHYSICAL, 130, 100, 5, "The user attacks while destroying the terrain. This move fails when the ground hasn't turned into a terrain.", -1, 0, 8)
+ new AttackMove(Moves.EXPANDING_FORCE, Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 8)
+ .partial(),
+ new AttackMove(Moves.STEEL_ROLLER, Type.STEEL, MoveCategory.PHYSICAL, 130, 100, 5, -1, 0, 8)
.attr(ClearTerrainAttr)
.condition((user, target, move) => !!user.scene.arena.terrain),
- new AttackMove(Moves.SCALE_SHOT, "Scale Shot (P)", Type.DRAGON, MoveCategory.PHYSICAL, 25, 90, 20, "The user attacks by shooting scales two to five times in a row. This move boosts the user's Speed stat but lowers its Defense stat.", 100, 0, 8)
+ new AttackMove(Moves.SCALE_SHOT, Type.DRAGON, MoveCategory.PHYSICAL, 25, 90, 20, 100, 0, 8)
//.attr(StatChangeAttr, BattleStat.SPD, 1, true) // TODO: Have boosts only apply at end of move, not after every hit
//.attr(StatChangeAttr, BattleStat.DEF, -1, true)
.attr(MultiHitAttr)
- .makesContact(false),
- new AttackMove(Moves.METEOR_BEAM, "Meteor Beam", Type.ROCK, MoveCategory.SPECIAL, 120, 90, 10, "In this two-turn attack, the user gathers space power and boosts its Sp. Atk stat, then attacks the target on the next turn.", 100, 0, 8)
+ .makesContact(false)
+ .partial(),
+ new AttackMove(Moves.METEOR_BEAM, Type.ROCK, MoveCategory.SPECIAL, 120, 90, 10, 100, 0, 8)
.attr(ChargeAttr, ChargeAnim.METEOR_BEAM_CHARGING, 'is overflowing\nwith space power!', null, true)
.attr(StatChangeAttr, BattleStat.SPATK, 1, true)
.ignoresVirtual(),
- new AttackMove(Moves.SHELL_SIDE_ARM, "Shell Side Arm (P)", Type.POISON, MoveCategory.SPECIAL, 90, 100, 10, "This move inflicts physical or special damage, whichever will be more effective. This may also poison the target.", 20, 0, 8)
+ new AttackMove(Moves.SHELL_SIDE_ARM, Type.POISON, MoveCategory.SPECIAL, 90, 100, 10, 20, 0, 8)
.attr(ShellSideArmCategoryAttr)
- .attr(StatusEffectAttr, StatusEffect.POISON),
- new AttackMove(Moves.MISTY_EXPLOSION, "Misty Explosion (P)", Type.FAIRY, MoveCategory.SPECIAL, 100, 100, 5, "The user attacks everything around it and faints upon using this move. This move's power is increased on Misty Terrain.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_OTHERS),
- new AttackMove(Moves.GRASSY_GLIDE, "Grassy Glide (P)", Type.GRASS, MoveCategory.PHYSICAL, 55, 100, 20, "Gliding on the ground, the user attacks the target. This move always goes first on Grassy Terrain.", -1, 0, 8),
- new AttackMove(Moves.RISING_VOLTAGE, "Rising Voltage", Type.ELECTRIC, MoveCategory.SPECIAL, 70, 100, 20, "The user attacks with electric voltage rising from the ground. This move's power doubles when the target is on Electric Terrain.", -1, 0, 8)
+ .attr(StatusEffectAttr, StatusEffect.POISON)
+ .partial(),
+ new AttackMove(Moves.MISTY_EXPLOSION, Type.FAIRY, MoveCategory.SPECIAL, 100, 100, 5, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_OTHERS)
+ .partial(),
+ new AttackMove(Moves.GRASSY_GLIDE, Type.GRASS, MoveCategory.PHYSICAL, 55, 100, 20, -1, 0, 8)
+ .partial(),
+ new AttackMove(Moves.RISING_VOLTAGE, Type.ELECTRIC, MoveCategory.SPECIAL, 70, 100, 20, -1, 0, 8)
.attr(MovePowerMultiplierAttr, (user, target, move) => user.scene.arena.getTerrainType() === TerrainType.ELECTRIC && target.isGrounded() ? 2 : 1),
- new AttackMove(Moves.TERRAIN_PULSE, "Terrain Pulse (P)", Type.NORMAL, MoveCategory.SPECIAL, 50, 100, 10, "The user utilizes the power of the terrain to attack. This move's type and power changes depending on the terrain when it's used.", -1, 0, 8)
- .pulseMove(),
- new AttackMove(Moves.SKITTER_SMACK, "Skitter Smack", Type.BUG, MoveCategory.PHYSICAL, 70, 90, 10, "The user skitters behind the target to attack. This also lowers the target's Sp. Atk stat.", 100, 0, 8)
+ new AttackMove(Moves.TERRAIN_PULSE, Type.NORMAL, MoveCategory.SPECIAL, 50, 100, 10, -1, 0, 8)
+ .pulseMove()
+ .partial(),
+ new AttackMove(Moves.SKITTER_SMACK, Type.BUG, MoveCategory.PHYSICAL, 70, 90, 10, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.SPATK, -1),
- new AttackMove(Moves.BURNING_JEALOUSY, "Burning Jealousy (P)", Type.FIRE, MoveCategory.SPECIAL, 70, 100, 5, "The user attacks with energy from jealousy. This leaves all opposing Pokémon that have had their stats boosted during the turn with a burn.", 100, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.LASH_OUT, "Lash Out (P)", Type.DARK, MoveCategory.PHYSICAL, 75, 100, 5, "The user lashes out to vent its frustration toward the target. If the user's stats were lowered during this turn, the power of this move is doubled.", -1, 0, 8),
- new AttackMove(Moves.POLTERGEIST, "Poltergeist (P)", Type.GHOST, MoveCategory.PHYSICAL, 110, 90, 5, "The user attacks the target by controlling the target's item. The move fails if the target doesn't have an item.", -1, 0, 8)
- .makesContact(false),
- new StatusMove(Moves.CORROSIVE_GAS, "Corrosive Gas (N)", Type.POISON, 100, 40, "The user surrounds everything around it with highly acidic gas and melts away items they hold.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_OTHERS),
- new StatusMove(Moves.COACHING, "Coaching", Type.FIGHTING, -1, 10, "The user properly coaches its ally Pokémon, boosting their Attack and Defense stats.", 100, 0, 8)
+ new AttackMove(Moves.BURNING_JEALOUSY, Type.FIRE, MoveCategory.SPECIAL, 70, 100, 5, 100, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .partial(),
+ new AttackMove(Moves.LASH_OUT, Type.DARK, MoveCategory.PHYSICAL, 75, 100, 5, -1, 0, 8)
+ .partial(),
+ new AttackMove(Moves.POLTERGEIST, Type.GHOST, MoveCategory.PHYSICAL, 110, 90, 5, -1, 0, 8)
+ .makesContact(false)
+ .partial(),
+ new StatusMove(Moves.CORROSIVE_GAS, Type.POISON, 100, 40, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_OTHERS)
+ .unimplemented(),
+ new StatusMove(Moves.COACHING, Type.FIGHTING, -1, 10, 100, 0, 8)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF ], 1)
.target(MoveTarget.NEAR_ALLY),
- new AttackMove(Moves.FLIP_TURN, "Flip Turn", Type.WATER, MoveCategory.PHYSICAL, 60, 100, 20, "After making its attack, the user rushes back to switch places with a party Pokémon in waiting.", -1, 0, 8)
- .attr(ForceSwitchOutAttr, true),
- new AttackMove(Moves.TRIPLE_AXEL, "Triple Axel (P)", Type.ICE, MoveCategory.PHYSICAL, 20, 90, 10, "A consecutive three-kick attack that becomes more powerful with each successful hit.", -1, 0, 8)
+ new AttackMove(Moves.FLIP_TURN, Type.WATER, MoveCategory.PHYSICAL, 60, 100, 20, -1, 0, 8)
+ .attr(ForceSwitchOutAttr, true, false),
+ new AttackMove(Moves.TRIPLE_AXEL, Type.ICE, MoveCategory.PHYSICAL, 20, 90, 10, -1, 0, 8)
.attr(MultiHitAttr, MultiHitType._3_INCR)
.attr(MissEffectAttr, (user: Pokemon, move: Move) => {
user.turnData.hitsLeft = 1;
return true;
- }),
- new AttackMove(Moves.DUAL_WINGBEAT, "Dual Wingbeat", Type.FLYING, MoveCategory.PHYSICAL, 40, 90, 10, "The user slams the target with its wings. The target is hit twice in a row.", -1, 0, 8)
+ })
+ .partial(),
+ new AttackMove(Moves.DUAL_WINGBEAT, Type.FLYING, MoveCategory.PHYSICAL, 40, 90, 10, -1, 0, 8)
.attr(MultiHitAttr, MultiHitType._2),
- new AttackMove(Moves.SCORCHING_SANDS, "Scorching Sands", Type.GROUND, MoveCategory.SPECIAL, 70, 100, 10, "The user throws scorching sand at the target to attack. This may also leave the target with a burn.", 30, 0, 8)
+ new AttackMove(Moves.SCORCHING_SANDS, Type.GROUND, MoveCategory.SPECIAL, 70, 100, 10, 30, 0, 8)
.attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
.attr(StatusEffectAttr, StatusEffect.BURN),
- new StatusMove(Moves.JUNGLE_HEALING, "Jungle Healing (P)", Type.GRASS, -1, 10, "The user becomes one with the jungle, restoring HP and healing any status conditions of itself and its ally Pokémon in battle.", -1, 0, 8)
+ new StatusMove(Moves.JUNGLE_HEALING, Type.GRASS, -1, 10, -1, 0, 8)
.attr(HealAttr, 0.25, true, false)
- .target(MoveTarget.USER_AND_ALLIES),
- new AttackMove(Moves.WICKED_BLOW, "Wicked Blow", Type.DARK, MoveCategory.PHYSICAL, 75, 100, 5, "The user, having mastered the Dark style, strikes the target with a fierce blow. This attack always results in a critical hit.", -1, 0, 8)
+ .target(MoveTarget.USER_AND_ALLIES)
+ .partial(),
+ new AttackMove(Moves.WICKED_BLOW, Type.DARK, MoveCategory.PHYSICAL, 75, 100, 5, -1, 0, 8)
.attr(CritOnlyAttr)
.punchingMove(),
- new AttackMove(Moves.SURGING_STRIKES, "Surging Strikes", Type.WATER, MoveCategory.PHYSICAL, 25, 100, 5, "The user, having mastered the Water style, strikes the target with a flowing motion three times in a row. This attack always results in a critical hit.", -1, 0, 8)
+ new AttackMove(Moves.SURGING_STRIKES, Type.WATER, MoveCategory.PHYSICAL, 25, 100, 5, -1, 0, 8)
.attr(MultiHitAttr, MultiHitType._3)
.attr(CritOnlyAttr)
.punchingMove(),
- new AttackMove(Moves.THUNDER_CAGE, "Thunder Cage", Type.ELECTRIC, MoveCategory.SPECIAL, 80, 90, 15, "The user traps the target in a cage of sparking electricity for four to five turns.", 100, 0, 8)
+ new AttackMove(Moves.THUNDER_CAGE, Type.ELECTRIC, MoveCategory.SPECIAL, 80, 90, 15, 100, 0, 8)
.attr(TrapAttr, BattlerTagType.THUNDER_CAGE),
- new AttackMove(Moves.DRAGON_ENERGY, "Dragon Energy", Type.DRAGON, MoveCategory.SPECIAL, 150, 100, 5, "Converting its life-force into power, the user attacks opposing Pokémon. The lower the user's HP, the lower the move's power.", -1, 0, 8)
+ new AttackMove(Moves.DRAGON_ENERGY, Type.DRAGON, MoveCategory.SPECIAL, 150, 100, 5, -1, 0, 8)
.attr(HpPowerAttr)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.FREEZING_GLARE, "Freezing Glare", Type.PSYCHIC, MoveCategory.SPECIAL, 90, 100, 10, "The user shoots its psychic power from its eyes to attack. This may also leave the target frozen.", 10, 0, 8)
+ new AttackMove(Moves.FREEZING_GLARE, Type.PSYCHIC, MoveCategory.SPECIAL, 90, 100, 10, 10, 0, 8)
.attr(StatusEffectAttr, StatusEffect.FREEZE),
- new AttackMove(Moves.FIERY_WRATH, "Fiery Wrath", Type.DARK, MoveCategory.SPECIAL, 90, 100, 10, "The user transforms its wrath into a fire-like aura to attack. This may also make opposing Pokémon flinch.", 20, 0, 8)
+ new AttackMove(Moves.FIERY_WRATH, Type.DARK, MoveCategory.SPECIAL, 90, 100, 10, 20, 0, 8)
.attr(FlinchAttr)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.THUNDEROUS_KICK, "Thunderous Kick", Type.FIGHTING, MoveCategory.PHYSICAL, 90, 100, 10, "The user overwhelms the target with lightning-like movement before delivering a kick. This also lowers the target's Defense stat.", 100, 0, 8)
+ new AttackMove(Moves.THUNDEROUS_KICK, Type.FIGHTING, MoveCategory.PHYSICAL, 90, 100, 10, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.DEF, -1),
- new AttackMove(Moves.GLACIAL_LANCE, "Glacial Lance", Type.ICE, MoveCategory.PHYSICAL, 120, 100, 5, "The user attacks by hurling a blizzard-cloaked icicle lance at opposing Pokémon.", -1, 0, 8)
+ new AttackMove(Moves.GLACIAL_LANCE, Type.ICE, MoveCategory.PHYSICAL, 120, 100, 5, -1, 0, 8)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.ASTRAL_BARRAGE, "Astral Barrage", Type.GHOST, MoveCategory.SPECIAL, 120, 100, 5, "The user attacks by sending a frightful amount of small ghosts at opposing Pokémon.", -1, 0, 8)
+ new AttackMove(Moves.ASTRAL_BARRAGE, Type.GHOST, MoveCategory.SPECIAL, 120, 100, 5, -1, 0, 8)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.EERIE_SPELL, "Eerie Spell (P)", Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 5, "The user attacks with its tremendous psychic power. This also removes 3 PP from the target's last move.", 100, 0, 8)
- .soundBased(),
- new AttackMove(Moves.DIRE_CLAW, "Dire Claw", Type.POISON, MoveCategory.PHYSICAL, 80, 100, 15, "The user lashes out at the target with ruinous claws. This may also leave the target poisoned, paralyzed, or asleep.", 50, 0, 8)
+ new AttackMove(Moves.EERIE_SPELL, Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 5, 100, 0, 8)
+ .soundBased()
+ .partial(),
+ new AttackMove(Moves.DIRE_CLAW, Type.POISON, MoveCategory.PHYSICAL, 80, 100, 15, 50, 0, 8)
.attr(StatusEffectAttr, StatusEffect.POISON)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.attr(StatusEffectAttr, StatusEffect.SLEEP),
- new AttackMove(Moves.PSYSHIELD_BASH, "Psyshield Bash", Type.PSYCHIC, MoveCategory.PHYSICAL, 70, 90, 10, "Cloaking itself in psychic energy, the user slams into the target. This also boosts the user's Defense stat.", 100, 0, 8)
+ new AttackMove(Moves.PSYSHIELD_BASH, Type.PSYCHIC, MoveCategory.PHYSICAL, 70, 90, 10, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.DEF, 1, true),
- new SelfStatusMove(Moves.POWER_SHIFT, "Power Shift (N)", Type.NORMAL, -1, 10, "The user swaps its Attack and Defense stats.", 100, 0, 8),
- new AttackMove(Moves.STONE_AXE, "Stone Axe", Type.ROCK, MoveCategory.PHYSICAL, 65, 90, 15, "The user swings its stone axes at the target. Stone splinters left behind by this attack float around the target.", 100, 0, 8)
+ new SelfStatusMove(Moves.POWER_SHIFT, Type.NORMAL, -1, 10, 100, 0, 8)
+ .unimplemented(),
+ new AttackMove(Moves.STONE_AXE, Type.ROCK, MoveCategory.PHYSICAL, 65, 90, 15, 100, 0, 8)
.attr(AddArenaTrapTagAttr, ArenaTagType.STEALTH_ROCK)
.slicingMove(),
- new AttackMove(Moves.SPRINGTIDE_STORM, "Springtide Storm", Type.FAIRY, MoveCategory.SPECIAL, 100, 80, 5, "The user attacks by wrapping opposing Pokémon in fierce winds brimming with love and hate. This may also lower their Attack stats.", 30, 0, 8)
+ new AttackMove(Moves.SPRINGTIDE_STORM, Type.FAIRY, MoveCategory.SPECIAL, 100, 80, 5, 30, 0, 8)
.attr(StatChangeAttr, BattleStat.ATK, -1)
.windMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.MYSTICAL_POWER, "Mystical Power", Type.PSYCHIC, MoveCategory.SPECIAL, 70, 90, 10, "The user attacks by emitting a mysterious power. This also boosts the user's Sp. Atk stat.", 100, 0, 8)
+ new AttackMove(Moves.MYSTICAL_POWER, Type.PSYCHIC, MoveCategory.SPECIAL, 70, 90, 10, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.SPATK, 1, true),
- new AttackMove(Moves.RAGING_FURY, "Raging Fury", Type.FIRE, MoveCategory.PHYSICAL, 120, 100, 10, "The user rampages around spewing flames for two to three turns. The user then becomes confused.", -1, 0, 8)
+ new AttackMove(Moves.RAGING_FURY, Type.FIRE, MoveCategory.PHYSICAL, 120, 100, 10, -1, 0, 8)
.attr(FrenzyAttr)
.attr(MissEffectAttr, frenzyMissFunc)
.target(MoveTarget.RANDOM_NEAR_ENEMY),
- new AttackMove(Moves.WAVE_CRASH, "Wave Crash", Type.WATER, MoveCategory.PHYSICAL, 120, 100, 10, "The user shrouds itself in water and slams into the target with its whole body to inflict damage. This also damages the user quite a lot.", -1, 0, 8)
+ new AttackMove(Moves.WAVE_CRASH, Type.WATER, MoveCategory.PHYSICAL, 120, 100, 10, -1, 0, 8)
.attr(RecoilAttr, false, 0.33),
- new AttackMove(Moves.CHLOROBLAST, "Chloroblast", Type.GRASS, MoveCategory.SPECIAL, 150, 95, 5, "The user launches its amassed chlorophyll to inflict damage on the target. This also damages the user.", -1, 0, 8)
+ new AttackMove(Moves.CHLOROBLAST, Type.GRASS, MoveCategory.SPECIAL, 150, 95, 5, -1, 0, 8)
.attr(RecoilAttr, true, 0.5),
- new AttackMove(Moves.MOUNTAIN_GALE, "Mountain Gale", Type.ICE, MoveCategory.PHYSICAL, 100, 85, 10, "The user hurls giant chunks of ice at the target to inflict damage. This may also make the target flinch.", 30, 0, 8)
+ new AttackMove(Moves.MOUNTAIN_GALE, Type.ICE, MoveCategory.PHYSICAL, 100, 85, 10, 30, 0, 8)
.attr(FlinchAttr),
- new SelfStatusMove(Moves.VICTORY_DANCE, "Victory Dance", Type.FIGHTING, -1, 10, "The user performs an intense dance to usher in victory, boosting its Attack, Defense, and Speed stats.", 100, 0, 8)
+ new SelfStatusMove(Moves.VICTORY_DANCE, Type.FIGHTING, -1, 10, 100, 0, 8)
.attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.DEF, BattleStat.SPD ], 1, true)
.danceMove(),
- new AttackMove(Moves.HEADLONG_RUSH, "Headlong Rush", Type.GROUND, MoveCategory.PHYSICAL, 120, 100, 5, "The user smashes into the target in a full-body tackle. This also lowers the user's Defense and Sp. Def stats.", 100, 0, 8)
+ new AttackMove(Moves.HEADLONG_RUSH, Type.GROUND, MoveCategory.PHYSICAL, 120, 100, 5, 100, 0, 8)
.attr(StatChangeAttr, [ BattleStat.DEF, BattleStat.SPDEF ], -1, true)
.punchingMove(),
- new AttackMove(Moves.BARB_BARRAGE, "Barb Barrage", Type.POISON, MoveCategory.PHYSICAL, 60, 100, 10, "The user launches countless toxic barbs to inflict damage. This may also poison the target. This move's power is doubled if the target is already poisoned.", 50, 0, 8)
+ new AttackMove(Moves.BARB_BARRAGE, Type.POISON, MoveCategory.PHYSICAL, 60, 100, 10, 50, 0, 8)
.attr(MovePowerMultiplierAttr, (user, target, move) => target.status && (target.status.effect === StatusEffect.POISON || target.status.effect === StatusEffect.TOXIC) ? 2 : 1)
.attr(StatusEffectAttr, StatusEffect.POISON),
- new AttackMove(Moves.ESPER_WING, "Esper Wing", Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 10, "The user slashes the target with aura-enriched wings. This also boosts the user's Speed stat. This move has a heightened chance of landing a critical hit.", 100, 0, 8)
+ new AttackMove(Moves.ESPER_WING, Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 10, 100, 0, 8)
.attr(HighCritAttr)
.attr(StatChangeAttr, BattleStat.SPD, 1, true),
- new AttackMove(Moves.BITTER_MALICE, "Bitter Malice", Type.GHOST, MoveCategory.SPECIAL, 75, 100, 10, "The user attacks the target with spine-chilling resentment. This also lowers the target's Attack stat.", 100, 0, 8)
+ new AttackMove(Moves.BITTER_MALICE, Type.GHOST, MoveCategory.SPECIAL, 75, 100, 10, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.ATK, -1),
- new SelfStatusMove(Moves.SHELTER, "Shelter", Type.STEEL, -1, 10, "The user makes its skin as hard as an iron shield, sharply boosting its Defense stat.", 100, 0, 8)
+ new SelfStatusMove(Moves.SHELTER, Type.STEEL, -1, 10, 100, 0, 8)
.attr(StatChangeAttr, BattleStat.DEF, 2, true),
- new AttackMove(Moves.TRIPLE_ARROWS, "Triple Arrows (P)", Type.FIGHTING, MoveCategory.PHYSICAL, 90, 100, 10, "The user kicks, then fires three arrows. This move has a heightened chance of landing a critical hit and may also lower the target's Defense stat or make it flinch.", 30, 0, 8)
+ new AttackMove(Moves.TRIPLE_ARROWS, Type.FIGHTING, MoveCategory.PHYSICAL, 90, 100, 10, 30, 0, 8)
.attr(HighCritAttr)
.attr(StatChangeAttr, BattleStat.DEF, -1)
- .attr(FlinchAttr),
- new AttackMove(Moves.INFERNAL_PARADE, "Infernal Parade", Type.GHOST, MoveCategory.SPECIAL, 60, 100, 15, "The user attacks with myriad fireballs. This may also leave the target with a burn. This move's power is doubled if the target has a status condition.", 30, 0, 8)
+ .attr(FlinchAttr)
+ .partial(),
+ new AttackMove(Moves.INFERNAL_PARADE, Type.GHOST, MoveCategory.SPECIAL, 60, 100, 15, 30, 0, 8)
.attr(StatusEffectAttr, StatusEffect.BURN)
.attr(MovePowerMultiplierAttr, (user, target, move) => target.status ? 2 : 1),
- new AttackMove(Moves.CEASELESS_EDGE, "Ceaseless Edge", Type.DARK, MoveCategory.PHYSICAL, 65, 90, 15, "The user slashes its shell blade at the target. Shell splinters left behind by this attack remain scattered under the target as spikes.", 100, 0, 8)
+ new AttackMove(Moves.CEASELESS_EDGE, Type.DARK, MoveCategory.PHYSICAL, 65, 90, 15, 100, 0, 8)
.attr(AddArenaTrapTagAttr, ArenaTagType.SPIKES)
.slicingMove(),
- new AttackMove(Moves.BLEAKWIND_STORM, "Bleakwind Storm", Type.FLYING, MoveCategory.SPECIAL, 100, 80, 10, "The user attacks with savagely cold winds that cause both body and spirit to tremble. This may also lower the Speed stats of opposing Pokémon.", 30, 0, 8)
+ new AttackMove(Moves.BLEAKWIND_STORM, Type.FLYING, MoveCategory.SPECIAL, 100, 80, 10, 30, 0, 8)
.attr(ThunderAccuracyAttr)
.attr(StatChangeAttr, BattleStat.SPD, -1)
.windMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.WILDBOLT_STORM, "Wildbolt Storm", Type.ELECTRIC, MoveCategory.SPECIAL, 100, 80, 10, "The user summons a thunderous tempest and savagely attacks with lightning and wind. This may also leave opposing Pokémon with paralysis.", 20, 0, 8)
+ new AttackMove(Moves.WILDBOLT_STORM, Type.ELECTRIC, MoveCategory.SPECIAL, 100, 80, 10, 20, 0, 8)
.attr(ThunderAccuracyAttr)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.windMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.SANDSEAR_STORM, "Sandsear Storm", Type.GROUND, MoveCategory.SPECIAL, 100, 80, 10, "The user attacks by wrapping opposing Pokémon in fierce winds and searingly hot sand. This may also leave them with a burn.", 20, 0, 8)
+ new AttackMove(Moves.SANDSEAR_STORM, Type.GROUND, MoveCategory.SPECIAL, 100, 80, 10, 20, 0, 8)
.attr(ThunderAccuracyAttr)
.attr(StatusEffectAttr, StatusEffect.BURN)
.windMove()
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new StatusMove(Moves.LUNAR_BLESSING, "Lunar Blessing (P)", Type.PSYCHIC, -1, 5, "The user receives a blessing from the crescent moon, restoring HP and curing status conditions for itself and its ally Pokémon currently in the battle.", -1, 0, 8)
+ new StatusMove(Moves.LUNAR_BLESSING, Type.PSYCHIC, -1, 5, -1, 0, 8)
.attr(HealAttr, 0.25)
.target(MoveTarget.USER_AND_ALLIES)
- .triageMove(),
- new SelfStatusMove(Moves.TAKE_HEART, "Take Heart (P)", Type.PSYCHIC, -1, 10, "The user lifts its spirits, curing its own status conditions and boosting its Sp. Atk and Sp. Def stats.", -1, 0, 8)
- .attr(StatChangeAttr, [ BattleStat.SPATK, BattleStat.SPDEF ], 1, true),
+ .triageMove()
+ .partial(),
+ new SelfStatusMove(Moves.TAKE_HEART, Type.PSYCHIC, -1, 10, -1, 0, 8)
+ .attr(StatChangeAttr, [ BattleStat.SPATK, BattleStat.SPDEF ], 1, true)
+ .partial(),
/* Unused
- new AttackMove(Moves.G_MAX_WILDFIRE, "G-Max Wildfire (N)", Type.FIRE, MoveCategory.PHYSICAL, 10, -1, 10, "A Fire-type attack that Gigantamax Charizard use. This move continues to deal damage to opponents for four turns.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_BEFUDDLE, "G-Max Befuddle (N)", Type.BUG, MoveCategory.PHYSICAL, 10, -1, 10, "A Bug-type attack that Gigantamax Butterfree use. This move inflicts the poisoned, paralyzed, or asleep status condition on opponents.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_VOLT_CRASH, "G-Max Volt Crash (N)", Type.ELECTRIC, MoveCategory.PHYSICAL, 10, -1, 10, "An Electric-type attack that Gigantamax Pikachu use. This move paralyzes opponents.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_GOLD_RUSH, "G-Max Gold Rush (N)", Type.NORMAL, MoveCategory.PHYSICAL, 10, -1, 10, "A Normal-type attack that Gigantamax Meowth use. This move confuses opponents and also earns extra money.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_CHI_STRIKE, "G-Max Chi Strike (N)", Type.FIGHTING, MoveCategory.PHYSICAL, 10, -1, 10, "A Fighting-type attack that Gigantamax Machamp use. This move raises the chance of critical hits.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_TERROR, "G-Max Terror (N)", Type.GHOST, MoveCategory.PHYSICAL, 10, -1, 10, "A Ghost-type attack that Gigantamax Gengar use. This Pokémon steps on the opposing Pokémon's shadow to prevent them from escaping.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_RESONANCE, "G-Max Resonance (N)", Type.ICE, MoveCategory.PHYSICAL, 10, -1, 10, "An Ice-type attack that Gigantamax Lapras use. This move reduces the damage received for five turns.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_CUDDLE, "G-Max Cuddle (N)", Type.NORMAL, MoveCategory.PHYSICAL, 10, -1, 10, "A Normal-type attack that Gigantamax Eevee use. This move infatuates opponents.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_REPLENISH, "G-Max Replenish (N)", Type.NORMAL, MoveCategory.PHYSICAL, 10, -1, 10, "A Normal-type attack that Gigantamax Snorlax use. This move restores Berries that have been eaten.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_MALODOR, "G-Max Malodor (N)", Type.POISON, MoveCategory.PHYSICAL, 10, -1, 10, "A Poison-type attack that Gigantamax Garbodor use. This move poisons opponents.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_STONESURGE, "G-Max Stonesurge (N)", Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, "A Water-type attack that Gigantamax Drednaw use. This move scatters sharp rocks around the field.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_WIND_RAGE, "G-Max Wind Rage (N)", Type.FLYING, MoveCategory.PHYSICAL, 10, -1, 10, "A Flying-type attack that Gigantamax Corviknight use. This move removes the effects of moves like Reflect and Light Screen.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_STUN_SHOCK, "G-Max Stun Shock (N)", Type.ELECTRIC, MoveCategory.PHYSICAL, 10, -1, 10, "An Electric-type attack that Gigantamax Toxtricity use. This move poisons or paralyzes opponents.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_FINALE, "G-Max Finale (N)", Type.FAIRY, MoveCategory.PHYSICAL, 10, -1, 10, "A Fairy-type attack that Gigantamax Alcremie use. This move heals the HP of allies.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_DEPLETION, "G-Max Depletion (N)", Type.DRAGON, MoveCategory.PHYSICAL, 10, -1, 10, "A Dragon-type attack that Gigantamax Duraludon use. Reduces the PP of the last move used.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_GRAVITAS, "G-Max Gravitas (N)", Type.PSYCHIC, MoveCategory.PHYSICAL, 10, -1, 10, "A Psychic-type attack that Gigantamax Orbeetle use. This move changes gravity for five turns.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_VOLCALITH, "G-Max Volcalith (N)", Type.ROCK, MoveCategory.PHYSICAL, 10, -1, 10, "A Rock-type attack that Gigantamax Coalossal use. This move continues to deal damage to opponents for four turns.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_SANDBLAST, "G-Max Sandblast (N)", Type.GROUND, MoveCategory.PHYSICAL, 10, -1, 10, "A Ground-type attack that Gigantamax Sandaconda use. Opponents are trapped in a raging sandstorm for four to five turns.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_SNOOZE, "G-Max Snooze (N)", Type.DARK, MoveCategory.PHYSICAL, 10, -1, 10, "A Dark-type attack that Gigantamax Grimmsnarl use. The user lets loose a huge yawn that lulls the targets into falling asleep on the next turn.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_TARTNESS, "G-Max Tartness (N)", Type.GRASS, MoveCategory.PHYSICAL, 10, -1, 10, "A Grass-type attack that Gigantamax Flapple use. This move reduces the opponents' evasiveness.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_SWEETNESS, "G-Max Sweetness (N)", Type.GRASS, MoveCategory.PHYSICAL, 10, -1, 10, "A Grass-type attack that Gigantamax Appletun use. This move heals the status conditions of allies.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_SMITE, "G-Max Smite (N)", Type.FAIRY, MoveCategory.PHYSICAL, 10, -1, 10, "A Fairy-type attack that Gigantamax Hatterene use. This move confuses opponents.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_STEELSURGE, "G-Max Steelsurge (N)", Type.STEEL, MoveCategory.PHYSICAL, 10, -1, 10, "A Steel-type attack that Gigantamax Copperajah use. This move scatters sharp spikes around the field.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_MELTDOWN, "G-Max Meltdown (N)", Type.STEEL, MoveCategory.PHYSICAL, 10, -1, 10, "A Steel-type attack that Gigantamax Melmetal use. This move makes opponents incapable of using the same move twice in a row.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_FOAM_BURST, "G-Max Foam Burst (N)", Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, "A Water-type attack that Gigantamax Kingler use. This move harshly lowers the Speed of opponents.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_CENTIFERNO, "G-Max Centiferno (N)", Type.FIRE, MoveCategory.PHYSICAL, 10, -1, 10, "A Fire-type attack that Gigantamax Centiskorch use. This move traps opponents in flames for four to five turns.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_VINE_LASH, "G-Max Vine Lash (N)", Type.GRASS, MoveCategory.PHYSICAL, 10, -1, 10, "A Grass-type attack that Gigantamax Venusaur use. This move continues to deal damage to opponents for four turns.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_CANNONADE, "G-Max Cannonade (N)", Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, "A Water-type attack that Gigantamax Blastoise use. This move continues to deal damage to opponents for four turns.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_DRUM_SOLO, "G-Max Drum Solo (N)", Type.GRASS, MoveCategory.PHYSICAL, 10, -1, 10, "A Grass-type attack that Gigantamax Rillaboom use. This move can be used on the target regardless of its Abilities.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_FIREBALL, "G-Max Fireball (N)", Type.FIRE, MoveCategory.PHYSICAL, 10, -1, 10, "A Fire-type attack that Gigantamax Cinderace use. This move can be used on the target regardless of its Abilities.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_HYDROSNIPE, "G-Max Hydrosnipe (N)", Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, "A Water-type attack that Gigantamax Inteleon use. This move can be used on the target regardless of its Abilities.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_ONE_BLOW, "G-Max One Blow (N)", Type.DARK, MoveCategory.PHYSICAL, 10, -1, 10, "A Dark-type attack that Gigantamax Urshifu use. This single-strike move can ignore Max Guard.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.G_MAX_RAPID_FLOW, "G-Max Rapid Flow (N)", Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, "A Water-type attack that Gigantamax Urshifu use. This rapid-strike move can ignore Max Guard.", -1, 0, 8)
- .target(MoveTarget.ALL_NEAR_ENEMIES),
+ new AttackMove(Moves.G_MAX_WILDFIRE, Type.FIRE, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_BEFUDDLE, Type.BUG, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_VOLT_CRASH, Type.ELECTRIC, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_GOLD_RUSH, Type.NORMAL, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_CHI_STRIKE, Type.FIGHTING, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_TERROR, Type.GHOST, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_RESONANCE, Type.ICE, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_CUDDLE, Type.NORMAL, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_REPLENISH, Type.NORMAL, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_MALODOR, Type.POISON, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_STONESURGE, Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_WIND_RAGE, Type.FLYING, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_STUN_SHOCK, Type.ELECTRIC, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_FINALE, Type.FAIRY, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_DEPLETION, Type.DRAGON, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_GRAVITAS, Type.PSYCHIC, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_VOLCALITH, Type.ROCK, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_SANDBLAST, Type.GROUND, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_SNOOZE, Type.DARK, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_TARTNESS, Type.GRASS, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_SWEETNESS, Type.GRASS, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_SMITE, Type.FAIRY, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_STEELSURGE, Type.STEEL, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_MELTDOWN, Type.STEEL, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_FOAM_BURST, Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_CENTIFERNO, Type.FIRE, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_VINE_LASH, Type.GRASS, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_CANNONADE, Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_DRUM_SOLO, Type.GRASS, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_FIREBALL, Type.FIRE, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_HYDROSNIPE, Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_ONE_BLOW, Type.DARK, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
+ new AttackMove(Moves.G_MAX_RAPID_FLOW, Type.WATER, MoveCategory.PHYSICAL, 10, -1, 10, -1, 0, 8)
+ .target(MoveTarget.ALL_NEAR_ENEMIES)
+ .unimplemented(),
End Unused */
- new AttackMove(Moves.TERA_BLAST, "Tera Blast (P)", Type.NORMAL, MoveCategory.SPECIAL, 80, 100, 10, "If the user has Terastallized, it unleashes energy of its Tera Type. This move inflicts damage using the Attack or Sp. Atk stat-whichever is higher for the user.", -1, 0, 9)
- .attr(TeraBlastCategoryAttr),
- new SelfStatusMove(Moves.SILK_TRAP, "Silk Trap", Type.BUG, -1, 10, "The user spins a silken trap, protecting itself from damage while lowering the Speed stat of any attacker that makes direct contact.", -1, 4, 9)
+ new AttackMove(Moves.TERA_BLAST, Type.NORMAL, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 9)
+ .attr(TeraBlastCategoryAttr)
+ .partial(),
+ new SelfStatusMove(Moves.SILK_TRAP, Type.BUG, -1, 10, -1, 4, 9)
.attr(ProtectAttr, BattlerTagType.SILK_TRAP),
- new AttackMove(Moves.AXE_KICK, "Axe Kick", Type.FIGHTING, MoveCategory.PHYSICAL, 120, 90, 10, "The user attacks by kicking up into the air and slamming its heel down upon the target. This may also confuse the target. If it misses, the user takes damage instead.", 30, 0, 9)
+ new AttackMove(Moves.AXE_KICK, Type.FIGHTING, MoveCategory.PHYSICAL, 120, 90, 10, 30, 0, 9)
.attr(MissEffectAttr, crashDamageFunc)
.attr(NoEffectAttr, crashDamageFunc)
.attr(ConfuseAttr),
- new AttackMove(Moves.LAST_RESPECTS, "Last Respects", Type.GHOST, MoveCategory.PHYSICAL, 50, 100, 10, "The user attacks to avenge its allies. The more defeated allies there are in the user's party, the greater the move's power.", -1, 0, 9)
+ new AttackMove(Moves.LAST_RESPECTS, Type.GHOST, MoveCategory.PHYSICAL, 50, 100, 10, -1, 0, 9)
.attr(MovePowerMultiplierAttr, (user, target, move) => {
return user.scene.getParty().reduce((acc, pokemonInParty) => acc + (pokemonInParty.status?.effect == StatusEffect.FAINT ? 1 : 0),
1,)
})
.makesContact(false),
- new AttackMove(Moves.LUMINA_CRASH, "Lumina Crash", Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 10, "The user attacks by unleashing a peculiar light that even affects the mind. This also harshly lowers the target's Sp. Def stat.", 100, 0, 9)
+ new AttackMove(Moves.LUMINA_CRASH, Type.PSYCHIC, MoveCategory.SPECIAL, 80, 100, 10, 100, 0, 9)
.attr(StatChangeAttr, BattleStat.SPDEF, -2),
- new AttackMove(Moves.ORDER_UP, "Order Up (P)", Type.DRAGON, MoveCategory.PHYSICAL, 80, 100, 10, "The user attacks with elegant poise. If the user has a Tatsugiri in its mouth, this move boosts one of the user's stats based on the Tatsugiri's form.", -1, 0, 9)
- .makesContact(false),
- new AttackMove(Moves.JET_PUNCH, "Jet Punch", Type.WATER, MoveCategory.PHYSICAL, 60, 100, 15, "The user summons a torrent around its fist and punches at blinding speed. This move always goes first.", -1, 1, 9)
+ new AttackMove(Moves.ORDER_UP, Type.DRAGON, MoveCategory.PHYSICAL, 80, 100, 10, -1, 0, 9)
+ .makesContact(false)
+ .partial(),
+ new AttackMove(Moves.JET_PUNCH, Type.WATER, MoveCategory.PHYSICAL, 60, 100, 15, -1, 1, 9)
.punchingMove(),
- new StatusMove(Moves.SPICY_EXTRACT, "Spicy Extract", Type.GRASS, -1, 15, "The user emits an incredibly spicy extract, sharply boosting the target's Attack stat and harshly lowering the target's Defense stat.", 100, 0, 9)
+ new StatusMove(Moves.SPICY_EXTRACT, Type.GRASS, -1, 15, 100, 0, 9)
.attr(StatChangeAttr, BattleStat.ATK, 2)
.attr(StatChangeAttr, BattleStat.DEF, -2),
- new AttackMove(Moves.SPIN_OUT, "Spin Out", Type.STEEL, MoveCategory.PHYSICAL, 100, 100, 5, "The user spins furiously by straining its legs, inflicting damage on the target. This also harshly lowers the user's Speed stat.", 100, 0, 9)
+ new AttackMove(Moves.SPIN_OUT, Type.STEEL, MoveCategory.PHYSICAL, 100, 100, 5, 100, 0, 9)
.attr(StatChangeAttr, BattleStat.SPD, -2, true),
- new AttackMove(Moves.POPULATION_BOMB, "Population Bomb (P)", Type.NORMAL, MoveCategory.PHYSICAL, 20, 90, 10, "The user's fellows gather in droves to perform a combo attack that hits the target one to ten times in a row.", -1, 0, 9)
+ new AttackMove(Moves.POPULATION_BOMB, Type.NORMAL, MoveCategory.PHYSICAL, 20, 90, 10, -1, 0, 9)
.attr(MultiHitAttr, MultiHitType._1_TO_10)
- .slicingMove(),
- new AttackMove(Moves.ICE_SPINNER, "Ice Spinner", Type.ICE, MoveCategory.PHYSICAL, 80, 100, 15, "The user covers its feet in thin ice and twirls around, slamming into the target. This move's spinning motion also destroys the terrain.", -1, 0, 9)
+ .slicingMove()
+ .partial(),
+ new AttackMove(Moves.ICE_SPINNER, Type.ICE, MoveCategory.PHYSICAL, 80, 100, 15, -1, 0, 9)
.attr(ClearTerrainAttr),
- new AttackMove(Moves.GLAIVE_RUSH, "Glaive Rush (P)", Type.DRAGON, MoveCategory.PHYSICAL, 120, 100, 5, "The user throws its entire body into a reckless charge. After this move is used, attacks on the user cannot miss and will inflict double damage until the user's next turn.", -1, 0, 9),
- new StatusMove(Moves.REVIVAL_BLESSING, "Revival Blessing (N)", Type.NORMAL, -1, 1, "The user bestows a loving blessing, reviving a party Pokémon that has fainted and restoring half that Pokémon's max HP.", -1, 0, 9)
- .triageMove(),
- new AttackMove(Moves.SALT_CURE, "Salt Cure", Type.ROCK, MoveCategory.PHYSICAL, 40, 100, 15, "The user salt cures the target, inflicting damage every turn. Steel and Water types are more strongly affected by this move.", -1, 0, 9)
+ new AttackMove(Moves.GLAIVE_RUSH, Type.DRAGON, MoveCategory.PHYSICAL, 120, 100, 5, -1, 0, 9)
+ .partial(),
+ new StatusMove(Moves.REVIVAL_BLESSING, Type.NORMAL, -1, 1, -1, 0, 9)
+ .triageMove()
+ .unimplemented(),
+ new AttackMove(Moves.SALT_CURE, Type.ROCK, MoveCategory.PHYSICAL, 40, 100, 15, -1, 0, 9)
.attr(AddBattlerTagAttr, BattlerTagType.SALT_CURED)
.makesContact(false),
- new AttackMove(Moves.TRIPLE_DIVE, "Triple Dive", Type.WATER, MoveCategory.PHYSICAL, 30, 95, 10, "The user performs a perfectly timed triple dive, hitting the target with splashes of water three times in a row.", -1, 0, 9)
+ new AttackMove(Moves.TRIPLE_DIVE, Type.WATER, MoveCategory.PHYSICAL, 30, 95, 10, -1, 0, 9)
.attr(MultiHitAttr, MultiHitType._3),
- new AttackMove(Moves.MORTAL_SPIN, "Mortal Spin", Type.POISON, MoveCategory.PHYSICAL, 30, 100, 15, "The user performs a spin attack that can also eliminate the effects of such moves as Bind, Wrap, and Leech Seed. This also poisons opposing Pokémon.", 100, 0, 9)
- .attr(LapseBattlerTagAttr, [ BattlerTagType.BIND, BattlerTagType.WRAP, BattlerTagType.FIRE_SPIN, BattlerTagType.WHIRLPOOL, BattlerTagType.CLAMP, BattlerTagType.SAND_TOMB, BattlerTagType.MAGMA_STORM, BattlerTagType.THUNDER_CAGE, BattlerTagType.SEEDED ], true)
+ new AttackMove(Moves.MORTAL_SPIN, Type.POISON, MoveCategory.PHYSICAL, 30, 100, 15, 100, 0, 9)
+ .attr(LapseBattlerTagAttr, [
+ BattlerTagType.BIND,
+ BattlerTagType.WRAP,
+ BattlerTagType.FIRE_SPIN,
+ BattlerTagType.WHIRLPOOL,
+ BattlerTagType.CLAMP,
+ BattlerTagType.SAND_TOMB,
+ BattlerTagType.MAGMA_STORM,
+ BattlerTagType.THUNDER_CAGE,
+ BattlerTagType.SEEDED,
+ BattlerTagType.INFESTATION
+ ], true)
.attr(StatusEffectAttr, StatusEffect.POISON)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new StatusMove(Moves.DOODLE, "Doodle", Type.NORMAL, 100, 10, "The user captures the very essence of the target in a sketch. This changes the Abilities of the user and its ally Pokémon to that of the target.", -1, 0, 9)
+ new StatusMove(Moves.DOODLE, Type.NORMAL, 100, 10, -1, 0, 9)
.attr(AbilityCopyAttr, true),
- new SelfStatusMove(Moves.FILLET_AWAY, "Fillet Away", Type.NORMAL, -1, 10, "The user sharply boosts its Attack, Sp. Atk, and Speed stats by using its own HP.", -1, 0, 9)
+ new SelfStatusMove(Moves.FILLET_AWAY, Type.NORMAL, -1, 10, -1, 0, 9)
.attr(CutHpStatBoostAttr, [ BattleStat.ATK, BattleStat.SPATK, BattleStat.SPD ], 2, 2),
- new AttackMove(Moves.KOWTOW_CLEAVE, "Kowtow Cleave", Type.DARK, MoveCategory.PHYSICAL, 85, -1, 10, "The user slashes at the target after kowtowing to make the target let down its guard. This attack never misses.", -1, 0, 9)
+ new AttackMove(Moves.KOWTOW_CLEAVE, Type.DARK, MoveCategory.PHYSICAL, 85, -1, 10, -1, 0, 9)
.slicingMove(),
- new AttackMove(Moves.FLOWER_TRICK, "Flower Trick", Type.GRASS, MoveCategory.PHYSICAL, 70, -1, 10, "The user throws a rigged bouquet of flowers at the target. This attack never misses and always lands a critical hit.", 100, 0, 9)
+ new AttackMove(Moves.FLOWER_TRICK, Type.GRASS, MoveCategory.PHYSICAL, 70, -1, 10, 100, 0, 9)
.attr(CritOnlyAttr)
.makesContact(false),
- new AttackMove(Moves.TORCH_SONG, "Torch Song", Type.FIRE, MoveCategory.SPECIAL, 80, 100, 10, "The user blows out raging flames as if singing a song, scorching the target. This also boosts the user's Sp. Atk stat.", 100, 0, 9)
+ new AttackMove(Moves.TORCH_SONG, Type.FIRE, MoveCategory.SPECIAL, 80, 100, 10, 100, 0, 9)
.attr(StatChangeAttr, BattleStat.SPATK, 1, true)
.soundBased(),
- new AttackMove(Moves.AQUA_STEP, "Aqua Step", Type.WATER, MoveCategory.PHYSICAL, 80, 100, 10, "The user toys with the target and attacks it using light and fluid dance steps. This also boosts the user's Speed stat.", 100, 0, 9)
+ new AttackMove(Moves.AQUA_STEP, Type.WATER, MoveCategory.PHYSICAL, 80, 100, 10, 100, 0, 9)
.attr(StatChangeAttr, BattleStat.SPD, 1, true)
.danceMove(),
- new AttackMove(Moves.RAGING_BULL, "Raging Bull (P)", Type.NORMAL, MoveCategory.PHYSICAL, 90, 100, 10, "The user performs a tackle like a raging bull. This move's type depends on the user's form. It can also break barriers, such as Light Screen and Reflect.", -1, 0, 9)
- .attr(RagingBullTypeAttr),
- new AttackMove(Moves.MAKE_IT_RAIN, "Make It Rain", Type.STEEL, MoveCategory.SPECIAL, 120, 100, 5, "The user attacks by throwing out a mass of coins. This also lowers the user's Sp. Atk stat. Money is earned after the battle.", -1, 0, 9)
+ new AttackMove(Moves.RAGING_BULL, Type.NORMAL, MoveCategory.PHYSICAL, 90, 100, 10, -1, 0, 9)
+ .attr(RagingBullTypeAttr)
+ .attr(RemoveScreensAttr),
+ new AttackMove(Moves.MAKE_IT_RAIN, Type.STEEL, MoveCategory.SPECIAL, 120, 100, 5, -1, 0, 9)
.attr(MoneyAttr)
.attr(StatChangeAttr, BattleStat.SPATK, -1, true, null, true, true)
.target(MoveTarget.ALL_NEAR_ENEMIES),
- new AttackMove(Moves.PSYBLADE, "Psyblade", Type.PSYCHIC, MoveCategory.PHYSICAL, 80, 100, 15, "The user rends the target with an ethereal blade. This move's power is boosted by 50 percent if the user is on Electric Terrain.", -1, 0, 9)
+ new AttackMove(Moves.PSYBLADE, Type.PSYCHIC, MoveCategory.PHYSICAL, 80, 100, 15, -1, 0, 9)
.attr(MovePowerMultiplierAttr, (user, target, move) => user.scene.arena.getTerrainType() === TerrainType.ELECTRIC && user.isGrounded() ? 1.5 : 1)
.slicingMove(),
- new AttackMove(Moves.HYDRO_STEAM, "Hydro Steam", Type.WATER, MoveCategory.SPECIAL, 80, 100, 15, "The user blasts the target with boiling-hot water. This move's power is not lowered in harsh sunlight but rather boosted by 50 percent.", -1, 0, 9)
+ new AttackMove(Moves.HYDRO_STEAM, Type.WATER, MoveCategory.SPECIAL, 80, 100, 15, -1, 0, 9)
.attr(HydroSteamPowerAttr),
- new AttackMove(Moves.RUINATION, "Ruination", Type.DARK, MoveCategory.SPECIAL, 1, 90, 10, "The user summons a ruinous disaster. This cuts the target's HP in half.", -1, 0, 9)
+ new AttackMove(Moves.RUINATION, Type.DARK, MoveCategory.SPECIAL, -1, 90, 10, -1, 0, 9)
.attr(TargetHalfHpDamageAttr),
- new AttackMove(Moves.COLLISION_COURSE, "Collision Course", Type.FIGHTING, MoveCategory.PHYSICAL, 100, 100, 5, "The user transforms and crashes to the ground, causing a massive prehistoric explosion. This move's power is boosted more than usual if it's a supereffective hit.", -1, 0, 9)
+ new AttackMove(Moves.COLLISION_COURSE, Type.FIGHTING, MoveCategory.PHYSICAL, 100, 100, 5, -1, 0, 9)
.attr(MovePowerMultiplierAttr, (user, target, move) => target.getAttackTypeEffectiveness(move.type) >= 2 ? 5461/4096 : 1),
- new AttackMove(Moves.ELECTRO_DRIFT, "Electro Drift", Type.ELECTRIC, MoveCategory.SPECIAL, 100, 100, 5, "The user races forward at ultrafast speeds, piercing its target with futuristic electricity. This move's power is boosted more than usual if it's a supereffective hit.", -1, 0, 9)
+ new AttackMove(Moves.ELECTRO_DRIFT, Type.ELECTRIC, MoveCategory.SPECIAL, 100, 100, 5, -1, 0, 9)
.attr(MovePowerMultiplierAttr, (user, target, move) => target.getAttackTypeEffectiveness(move.type) >= 2 ? 5461/4096 : 1)
.makesContact(),
- new SelfStatusMove(Moves.SHED_TAIL, "Shed Tail (N)", Type.NORMAL, -1, 10, "The user creates a substitute for itself using its own HP before switching places with a party Pokémon in waiting.", -1, 0, 9),
- new StatusMove(Moves.CHILLY_RECEPTION, "Chilly Reception", Type.ICE, -1, 10, "The user tells a chillingly bad joke before switching places with a party Pokémon in waiting. This summons a snowstorm lasting five turns.", -1, 0, 9)
- .attr(WeatherChangeAttr, WeatherType.HAIL) // Set to Hail for now, if Snow is added in the future, change this
+ new SelfStatusMove(Moves.SHED_TAIL, Type.NORMAL, -1, 10, -1, 0, 9)
+ .unimplemented(),
+ new StatusMove(Moves.CHILLY_RECEPTION, Type.ICE, -1, 10, -1, 0, 9)
+ .attr(WeatherChangeAttr, WeatherType.SNOW)
.attr(ForceSwitchOutAttr, true, false)
.target(MoveTarget.BOTH_SIDES),
- new SelfStatusMove(Moves.TIDY_UP, "Tidy Up (P)", Type.NORMAL, -1, 10, "The user tidies up and removes the effects of Spikes, Stealth Rock, Sticky Web, Toxic Spikes, and Substitute. This also boosts the user's Attack and Speed stats.", 100, 0, 9)
- .attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPD ], 1, true),
- new StatusMove(Moves.SNOWSCAPE, "Snowscape", Type.ICE, -1, 10, "The user summons a snowstorm lasting five turns. This boosts the Defense stats of Ice types.", -1, 0, 9)
- .attr(WeatherChangeAttr, WeatherType.HAIL) // Set to Hail for now, if Snow is added in the future, change this
+ new SelfStatusMove(Moves.TIDY_UP, Type.NORMAL, -1, 10, 100, 0, 9)
+ .attr(StatChangeAttr, [ BattleStat.ATK, BattleStat.SPD ], 1, true)
+ .partial(),
+ new StatusMove(Moves.SNOWSCAPE, Type.ICE, -1, 10, -1, 0, 9)
+ .attr(WeatherChangeAttr, WeatherType.SNOW)
.target(MoveTarget.BOTH_SIDES),
- new AttackMove(Moves.POUNCE, "Pounce", Type.BUG, MoveCategory.PHYSICAL, 50, 100, 20, "The user attacks by pouncing on the target. This also lowers the target's Speed stat.", 100, 0, 9)
+ new AttackMove(Moves.POUNCE, Type.BUG, MoveCategory.PHYSICAL, 50, 100, 20, 100, 0, 9)
.attr(StatChangeAttr, BattleStat.SPD, -1),
- new AttackMove(Moves.TRAILBLAZE, "Trailblaze", Type.GRASS, MoveCategory.PHYSICAL, 50, 100, 20, "The user attacks suddenly as if leaping out from tall grass. The user's nimble footwork boosts its Speed stat.", 100, 0, 9)
+ new AttackMove(Moves.TRAILBLAZE, Type.GRASS, MoveCategory.PHYSICAL, 50, 100, 20, 100, 0, 9)
.attr(StatChangeAttr, BattleStat.SPD, 1, true),
- new AttackMove(Moves.CHILLING_WATER, "Chilling Water", Type.WATER, MoveCategory.SPECIAL, 50, 100, 20, "The user attacks the target by showering it with water that's so cold it saps the target's power. This also lowers the target's Attack stat.", -1, 0, 9)
+ new AttackMove(Moves.CHILLING_WATER, Type.WATER, MoveCategory.SPECIAL, 50, 100, 20, -1, 0, 9)
.attr(StatChangeAttr, BattleStat.ATK, -1),
- new AttackMove(Moves.HYPER_DRILL, "Hyper Drill", Type.NORMAL, MoveCategory.PHYSICAL, 100, 100, 5, "The user spins the pointed part of its body at high speed to pierce the target. This attack can hit a target using a move such as Protect or Detect.", -1, 0, 9)
+ new AttackMove(Moves.HYPER_DRILL, Type.NORMAL, MoveCategory.PHYSICAL, 100, 100, 5, -1, 0, 9)
.ignoresProtect(),
- new AttackMove(Moves.TWIN_BEAM, "Twin Beam", Type.PSYCHIC, MoveCategory.SPECIAL, 40, 100, 10, "The user shoots mystical beams from its eyes to inflict damage. The target is hit twice in a row.", -1, 0, 9)
+ new AttackMove(Moves.TWIN_BEAM, Type.PSYCHIC, MoveCategory.SPECIAL, 40, 100, 10, -1, 0, 9)
.attr(MultiHitAttr, MultiHitType._2),
- new AttackMove(Moves.RAGE_FIST, "Rage Fist", Type.GHOST, MoveCategory.PHYSICAL, 50, 100, 10, "The user converts its rage into energy to attack. The more times the user has been hit by attacks, the greater the move's power.", -1, 0, 9)
+ new AttackMove(Moves.RAGE_FIST, Type.GHOST, MoveCategory.PHYSICAL, 50, 100, 10, -1, 0, 9)
.attr(HitCountPowerAttr)
.punchingMove(),
- new AttackMove(Moves.ARMOR_CANNON, "Armor Cannon", Type.FIRE, MoveCategory.SPECIAL, 120, 100, 5, "The user shoots its own armor out as blazing projectiles. This also lowers the user's Defense and Sp. Def stats.", -1, 0, 9)
+ new AttackMove(Moves.ARMOR_CANNON, Type.FIRE, MoveCategory.SPECIAL, 120, 100, 5, -1, 0, 9)
.attr(StatChangeAttr, [ BattleStat.DEF, BattleStat.SPDEF ], -1, true),
- new AttackMove(Moves.BITTER_BLADE, "Bitter Blade", Type.FIRE, MoveCategory.PHYSICAL, 90, 100, 10, "The user focuses its bitter feelings toward the world of the living into a slashing attack. The user's HP is restored by up to half the damage taken by the target.", -1, 0, 9)
+ new AttackMove(Moves.BITTER_BLADE, Type.FIRE, MoveCategory.PHYSICAL, 90, 100, 10, -1, 0, 9)
.attr(HitHealAttr)
.slicingMove()
.triageMove(),
- new AttackMove(Moves.DOUBLE_SHOCK, "Double Shock (P)", Type.ELECTRIC, MoveCategory.PHYSICAL, 120, 100, 5, "The user discharges all the electricity from its body to perform a high-damage attack. After using this move, the user will no longer be Electric type.", -1, 0, 9),
- new AttackMove(Moves.GIGATON_HAMMER, "Gigaton Hammer (P)", Type.STEEL, MoveCategory.PHYSICAL, 160, 100, 5, "The user swings its whole body around to attack with its huge hammer. This move can't be used twice in a row.", -1, 0, 9)
+ new AttackMove(Moves.DOUBLE_SHOCK, Type.ELECTRIC, MoveCategory.PHYSICAL, 120, 100, 5, -1, 0, 9)
+ .condition((user) => {
+ const userTypes = user.getTypes(true);
+ return userTypes.includes(Type.ELECTRIC);
+ })
+ .attr(RemoveTypeAttr, Type.ELECTRIC, (user) => {
+ user.scene.queueMessage(getPokemonMessage(user, ` used up all its electricity!`));
+ }),
+ new AttackMove(Moves.GIGATON_HAMMER, Type.STEEL, MoveCategory.PHYSICAL, 160, 100, 5, -1, 0, 9)
.makesContact(false)
.condition((user, target, move) => {
const turnMove = user.getLastXMoves(1);
return !turnMove.length || turnMove[0].move !== move.id || turnMove[0].result !== MoveResult.SUCCESS;
}), // TODO Add Instruct/Encore interaction
- new AttackMove(Moves.COMEUPPANCE, "Comeuppance", Type.DARK, MoveCategory.PHYSICAL, 1, 100, 10, "The user retaliates with much greater force against the opponent that last inflicted damage on it.", -1, 0, 9)
+ new AttackMove(Moves.COMEUPPANCE, Type.DARK, MoveCategory.PHYSICAL, 1, 100, 10, -1, 0, 9)
.attr(CounterDamageAttr, (move: Move) => (move.category === MoveCategory.PHYSICAL || move.category === MoveCategory.SPECIAL), 1.5)
- .target(MoveTarget.ATTACKER),
- new AttackMove(Moves.AQUA_CUTTER, "Aqua Cutter", Type.WATER, MoveCategory.PHYSICAL, 70, 100, 20, "The user expels pressurized water to cut at the target like a blade. This move has a heightened chance of landing a critical hit.", -1, 0, 9)
+ .target(MoveTarget.ATTACKER)
+ .partial(),
+ new AttackMove(Moves.AQUA_CUTTER, Type.WATER, MoveCategory.PHYSICAL, 70, 100, 20, -1, 0, 9)
.attr(HighCritAttr)
.slicingMove()
.makesContact(false),
- new AttackMove(Moves.BLAZING_TORQUE, "Blazing Torque", Type.FIRE, MoveCategory.PHYSICAL, 80, 100, 10, "The user revs their blazing engine into the target. This may also leave the target with a burn.", 30, 0, 9)
+ new AttackMove(Moves.BLAZING_TORQUE, Type.FIRE, MoveCategory.PHYSICAL, 80, 100, 10, 30, 0, 9)
.attr(StatusEffectAttr, StatusEffect.BURN)
.makesContact(false),
- new AttackMove(Moves.WICKED_TORQUE, "Wicked Torque", Type.DARK, MoveCategory.PHYSICAL, 80, 100, 10, "The user revs their engine into the target with malicious intent. This may put the target to sleep.", 10, 0, 9)
+ new AttackMove(Moves.WICKED_TORQUE, Type.DARK, MoveCategory.PHYSICAL, 80, 100, 10, 10, 0, 9)
.attr(StatusEffectAttr, StatusEffect.SLEEP)
.makesContact(false),
- new AttackMove(Moves.NOXIOUS_TORQUE, "Noxious Torque", Type.POISON, MoveCategory.PHYSICAL, 100, 100, 10, "The user revs their poisonous engine into the target. This may also poison the target.", 30, 0, 9)
+ new AttackMove(Moves.NOXIOUS_TORQUE, Type.POISON, MoveCategory.PHYSICAL, 100, 100, 10, 30, 0, 9)
.attr(StatusEffectAttr, StatusEffect.POISON)
.makesContact(false),
- new AttackMove(Moves.COMBAT_TORQUE, "Combat Torque", Type.FIGHTING, MoveCategory.PHYSICAL, 100, 100, 10, "The user revs their engine forcefully into the target. This may also leave the target with paralysis.", 30, 0, 9)
+ new AttackMove(Moves.COMBAT_TORQUE, Type.FIGHTING, MoveCategory.PHYSICAL, 100, 100, 10, 30, 0, 9)
.attr(StatusEffectAttr, StatusEffect.PARALYSIS)
.makesContact(false),
- new AttackMove(Moves.MAGICAL_TORQUE, "Magical Torque", Type.FAIRY, MoveCategory.PHYSICAL, 100, 100, 10, "The user revs their fae-like engine into the target. This may also confuse the target.", 30, 0, 9)
+ new AttackMove(Moves.MAGICAL_TORQUE, Type.FAIRY, MoveCategory.PHYSICAL, 100, 100, 10, 30, 0, 9)
.attr(ConfuseAttr)
.makesContact(false),
- new AttackMove(Moves.BLOOD_MOON, "Blood Moon (P)", Type.NORMAL, MoveCategory.SPECIAL, 140, 100, 5, "The user unleashes the full brunt of its spirit from a full moon that shines as red as blood. This move can't be used twice in a row.", -1, 0, 9)
+ new AttackMove(Moves.BLOOD_MOON, Type.NORMAL, MoveCategory.SPECIAL, 140, 100, 5, -1, 0, 9)
.condition((user, target, move) => {
const turnMove = user.getLastXMoves(1);
return !turnMove.length || turnMove[0].move !== move.id || turnMove[0].result !== MoveResult.SUCCESS;
}), // TODO Add Instruct/Encore interaction
- new AttackMove(Moves.MATCHA_GOTCHA, "Matcha Gotcha", Type.GRASS, MoveCategory.SPECIAL, 80, 90, 15, "The user fires a blast of tea that it mixed. The user's HP is restored by up to half the damage taken by the target. This may also leave the target with a burn.", 20, 0, 9)
+ new AttackMove(Moves.MATCHA_GOTCHA, Type.GRASS, MoveCategory.SPECIAL, 80, 90, 15, 20, 0, 9)
.attr(HitHealAttr)
.attr(HealStatusEffectAttr, true, StatusEffect.FREEZE)
.attr(StatusEffectAttr, StatusEffect.BURN)
.target(MoveTarget.ALL_NEAR_ENEMIES)
- .triageMove(),
- new AttackMove(Moves.SYRUP_BOMB, "Syrup Bomb (P)", Type.GRASS, MoveCategory.SPECIAL, 60, 85, 10, "The user sets off an explosion of sticky candy syrup, which coats the target and causes the target's Speed stat to drop each turn for three turns.", -1, 0, 9)
+ .triageMove()
+ .partial(),
+ new AttackMove(Moves.SYRUP_BOMB, Type.GRASS, MoveCategory.SPECIAL, 60, 85, 10, -1, 0, 9)
.attr(StatChangeAttr, BattleStat.SPD, -1) //Temporary
- .ballBombMove(),
- new AttackMove(Moves.IVY_CUDGEL, "Ivy Cudgel (P)", Type.GRASS, MoveCategory.PHYSICAL, 100, 100, 10, "The user strikes with an ivy-wrapped cudgel. This move's type changes depending on the mask worn by the user, and it has a heightened chance of landing a critical hit.", -1, 0, 9)
+ .ballBombMove()
+ .partial(),
+ new AttackMove(Moves.IVY_CUDGEL, Type.GRASS, MoveCategory.PHYSICAL, 100, 100, 10, -1, 0, 9)
+ .attr(IvyCudgelTypeAttr)
.attr(HighCritAttr)
.makesContact(false),
- new AttackMove(Moves.ELECTRO_SHOT, "Electro Shot", Type.ELECTRIC, MoveCategory.SPECIAL, 130, 100, 10, "The user gathers electricity on the first turn, boosting its Sp. Atk stat, then fires a high-voltage shot on the next turn. The shot will be fired immediately in rain.", 100, 0, 9)
+ new AttackMove(Moves.ELECTRO_SHOT, Type.ELECTRIC, MoveCategory.SPECIAL, 130, 100, 10, 100, 0, 9)
.attr(ElectroShotChargeAttr)
- .attr(StatChangeAttr, BattleStat.SPATK, 1, true)
.ignoresVirtual(),
- new AttackMove(Moves.TERA_STARSTORM, "Tera Starstorm (P)", Type.NORMAL, MoveCategory.SPECIAL, 120, 100, 5, "With the power of its crystals, the user bombards and eliminates the target. When used by Terapagos in its Stellar Form, this move damages all opposing Pokémon.", -1, 0, 9)
- .attr(TeraBlastCategoryAttr),
- new AttackMove(Moves.FICKLE_BEAM, "Fickle Beam", Type.DRAGON, MoveCategory.SPECIAL, 80, 100, 5, "The user shoots a beam of light to inflict damage. Sometimes all the user's heads shoot beams in unison, doubling the move's power.", 30, 0, 9)
+ new AttackMove(Moves.TERA_STARSTORM, Type.NORMAL, MoveCategory.SPECIAL, 120, 100, 5, -1, 0, 9)
+ .attr(TeraBlastCategoryAttr)
+ .partial(),
+ new AttackMove(Moves.FICKLE_BEAM, Type.DRAGON, MoveCategory.SPECIAL, 80, 100, 5, 30, 0, 9)
.attr(PreMoveMessageAttr, doublePowerChanceMessageFunc)
.attr(DoublePowerChanceAttr),
- new StatusMove(Moves.BURNING_BULWARK, "Burning Bulwark", Type.FIRE, -1, 10, "The user's intensely hot fur protects it from attacks and also burns any attacker that makes direct contact with it.", 100, 4, 9)
+ new StatusMove(Moves.BURNING_BULWARK, Type.FIRE, -1, 10, 100, 4, 9)
.attr(ProtectAttr, BattlerTagType.BURNING_BULWARK),
- new AttackMove(Moves.THUNDERCLAP, "Thunderclap", Type.ELECTRIC, MoveCategory.SPECIAL, 70, 100, 5, "This move enables the user to attack first with a jolt of electricity. This move fails if the target is not readying an attack.", -1, 1, 9)
+ new AttackMove(Moves.THUNDERCLAP, Type.ELECTRIC, MoveCategory.SPECIAL, 70, 100, 5, -1, 1, 9)
.condition((user, target, move) => user.scene.currentBattle.turnCommands[target.getBattlerIndex()].command === Command.FIGHT && !target.turnData.acted && allMoves[user.scene.currentBattle.turnCommands[target.getBattlerIndex()].move.move].category !== MoveCategory.STATUS),
- new AttackMove(Moves.MIGHTY_CLEAVE, "Mighty Cleave", Type.ROCK, MoveCategory.PHYSICAL, 95, 100, 5, "The user wields the light that has accumulated atop its head to cleave the target. This move hits even if the target protects itself.", -1, 0, 9)
+ new AttackMove(Moves.MIGHTY_CLEAVE, Type.ROCK, MoveCategory.PHYSICAL, 95, 100, 5, -1, 0, 9)
.ignoresProtect(),
- new AttackMove(Moves.TACHYON_CUTTER, "Tachyon Cutter", Type.STEEL, MoveCategory.SPECIAL, 50, -1, 10, "The user attacks by launching particle blades at the target twice in a row. This attack never misses.", -1, 0, 9)
+ new AttackMove(Moves.TACHYON_CUTTER, Type.STEEL, MoveCategory.SPECIAL, 50, -1, 10, -1, 0, 9)
.attr(MultiHitAttr, MultiHitType._2)
.slicingMove(),
- new AttackMove(Moves.HARD_PRESS, "Hard Press", Type.STEEL, MoveCategory.PHYSICAL, 100, 100, 5, "The target is crushed with an arm, a claw, or the like to inflict damage. The more HP the target has left, the greater the move's power.", -1, 0, 9)
+ new AttackMove(Moves.HARD_PRESS, Type.STEEL, MoveCategory.PHYSICAL, 100, 100, 5, -1, 0, 9)
.attr(OpponentHighHpPowerAttr),
- new StatusMove(Moves.DRAGON_CHEER, "Dragon Cheer (P)", Type.DRAGON, -1, 15, "The user raises its allies' morale with a draconic cry so that their future attacks have a heightened chance of landing critical hits. This rouses Dragon types more.", 100, 0, 9)
+ new StatusMove(Moves.DRAGON_CHEER, Type.DRAGON, -1, 15, 100, 0, 9)
.attr(AddBattlerTagAttr, BattlerTagType.CRIT_BOOST, false, true)
- .target(MoveTarget.NEAR_ALLY),
- new AttackMove(Moves.ALLURING_VOICE, "Alluring Voice (P)", Type.FAIRY, MoveCategory.SPECIAL, 80, 100, 10, "The user attacks the target using its angelic voice. This also confuses the target if its stats have been boosted during the turn.", -1, 0, 9),
- new AttackMove(Moves.TEMPER_FLARE, "Temper Flare (P)", Type.FIRE, MoveCategory.PHYSICAL, 75, 100, 10, "Spurred by desperation, the user attacks the target. This move's power is doubled if the user's previous move failed.", -1, 0, 9),
- new AttackMove(Moves.SUPERCELL_SLAM, "Supercell Slam", Type.ELECTRIC, MoveCategory.PHYSICAL, 100, 95, 15, "The user electrifies its body and drops onto the target to inflict damage. If this move misses, the user takes damage instead.", -1, 0, 9)
+ .target(MoveTarget.NEAR_ALLY)
+ .partial(),
+ new AttackMove(Moves.ALLURING_VOICE, Type.FAIRY, MoveCategory.SPECIAL, 80, 100, 10, -1, 0, 9)
+ .partial(),
+ new AttackMove(Moves.TEMPER_FLARE, Type.FIRE, MoveCategory.PHYSICAL, 75, 100, 10, -1, 0, 9)
+ .attr(MovePowerMultiplierAttr, (user, target, move) => user.getLastXMoves(2)[1]?.result == MoveResult.MISS || user.getLastXMoves(2)[1]?.result == MoveResult.FAIL ? 2 : 1),
+ new AttackMove(Moves.SUPERCELL_SLAM, Type.ELECTRIC, MoveCategory.PHYSICAL, 100, 95, 15, -1, 0, 9)
.attr(MissEffectAttr, crashDamageFunc)
.attr(NoEffectAttr, crashDamageFunc),
- new AttackMove(Moves.PSYCHIC_NOISE, "Psychic Noise (P)", Type.PSYCHIC, MoveCategory.SPECIAL, 75, 100, 10, "The user attacks the target with unpleasant sound waves. For two turns, the target is prevented from recovering HP through moves, Abilities, or held items.", -1, 0, 9)
- .soundBased(),
- new AttackMove(Moves.UPPER_HAND, "Upper Hand (P)", Type.FIGHTING, MoveCategory.PHYSICAL, 65, 100, 15, "The user reacts to the target's movement and strikes with the heel of its palm, making the target flinch. This move fails if the target is not readying a priority move.", -1, 3, 9),
- new AttackMove(Moves.MALIGNANT_CHAIN, "Malignant Chain", Type.POISON, MoveCategory.SPECIAL, 100, 100, 5, "The user pours toxins into the target by wrapping them in a toxic, corrosive chain. This may also leave the target badly poisoned.", 50, 0, 9)
+ new AttackMove(Moves.PSYCHIC_NOISE, Type.PSYCHIC, MoveCategory.SPECIAL, 75, 100, 10, -1, 0, 9)
+ .soundBased()
+ .partial(),
+ new AttackMove(Moves.UPPER_HAND, Type.FIGHTING, MoveCategory.PHYSICAL, 65, 100, 15, -1, 3, 9)
+ .partial(),
+ new AttackMove(Moves.MALIGNANT_CHAIN, Type.POISON, MoveCategory.SPECIAL, 100, 100, 5, 50, 0, 9)
.attr(StatusEffectAttr, StatusEffect.TOXIC)
);
-}
+}
diff --git a/src/data/pokeball.ts b/src/data/pokeball.ts
index 45775f33d65..f5e39ba38ab 100644
--- a/src/data/pokeball.ts
+++ b/src/data/pokeball.ts
@@ -1,4 +1,5 @@
import BattleScene from "../battle-scene";
+import i18next from '../plugins/i18n';
export enum PokeballType {
POKEBALL,
@@ -30,22 +31,22 @@ export function getPokeballName(type: PokeballType): string {
let ret: string;
switch (type) {
case PokeballType.POKEBALL:
- ret = 'Poké Ball';
+ ret = i18next.t('pokeball:pokeBall');
break;
case PokeballType.GREAT_BALL:
- ret = 'Great Ball';
+ ret = i18next.t('pokeball:greatBall');
break;
case PokeballType.ULTRA_BALL:
- ret = 'Ultra Ball';
+ ret = i18next.t('pokeball:ultraBall');
break;
case PokeballType.ROGUE_BALL:
- ret = 'Rogue Ball';
+ ret = i18next.t('pokeball:rogueBall');
break;
case PokeballType.MASTER_BALL:
- ret = 'Master Ball';
+ ret = i18next.t('pokeball:masterBall');
break;
case PokeballType.LUXURY_BALL:
- ret = 'Luxury Ball';
+ ret = i18next.t('pokeball:luxuryBall');
break;
}
return ret;
diff --git a/src/data/pokemon-evolutions.ts b/src/data/pokemon-evolutions.ts
index 290deb39eaa..68369389066 100644
--- a/src/data/pokemon-evolutions.ts
+++ b/src/data/pokemon-evolutions.ts
@@ -244,7 +244,7 @@ export const pokemonEvolutions: PokemonEvolutions = {
new SpeciesEvolution(Species.ELECTRODE, 30, null, null)
],
[Species.CUBONE]: [
- new SpeciesEvolution(Species.ALOLA_MAROWAK, 28, null, new SpeciesEvolutionCondition(p => p.scene.arena.biomeType === Biome.ISLAND), SpeciesWildEvolutionDelay.MEDIUM),
+ new SpeciesEvolution(Species.ALOLA_MAROWAK, 28, null, new SpeciesEvolutionCondition(p => p.scene.arena.biomeType === Biome.ISLAND || p.scene.arena.biomeType === Biome.BEACH), SpeciesWildEvolutionDelay.MEDIUM),
new SpeciesEvolution(Species.MAROWAK, 28, null, null)
],
[Species.TYROGUE]: [
@@ -253,7 +253,7 @@ export const pokemonEvolutions: PokemonEvolutions = {
new SpeciesEvolution(Species.HITMONTOP, 20, null, new SpeciesEvolutionCondition(p => p.stats[Stat.ATK] === p.stats[Stat.DEF]))
],
[Species.KOFFING]: [
- new SpeciesEvolution(Species.GALAR_WEEZING, 35, null, new SpeciesEvolutionCondition(p => p.scene.arena.biomeType === Biome.METROPOLIS), SpeciesWildEvolutionDelay.MEDIUM),
+ new SpeciesEvolution(Species.GALAR_WEEZING, 35, null, new SpeciesEvolutionCondition(p => p.scene.arena.biomeType === Biome.METROPOLIS || p.scene.arena.biomeType === Biome.SLUM), SpeciesWildEvolutionDelay.MEDIUM),
new SpeciesEvolution(Species.WEEZING, 35, null, null)
],
[Species.RHYHORN]: [
@@ -917,7 +917,7 @@ export const pokemonEvolutions: PokemonEvolutions = {
new SpeciesEvolution(Species.TRUMBEAK, 14, null, null)
],
[Species.TRUMBEAK]: [
- new SpeciesEvolution(Species.TOUCANNON, 36, null, null)
+ new SpeciesEvolution(Species.TOUCANNON, 28, null, null)
],
[Species.YUNGOOS]: [
new SpeciesEvolution(Species.GUMSHOOS, 20, null, new SpeciesEvolutionCondition(p => p.scene.arena.getTimeOfDay() === TimeOfDay.DAY), SpeciesWildEvolutionDelay.SHORT)
@@ -968,8 +968,8 @@ export const pokemonEvolutions: PokemonEvolutions = {
new SpeciesEvolution(Species.COSMOEM, 43, null, null)
],
[Species.COSMOEM]: [
- new SpeciesEvolution(Species.SOLGALEO, 53, null, new SpeciesEvolutionCondition(p => p.scene.arena.biomeType !== Biome.SPACE && p.scene.arena.getTimeOfDay() === TimeOfDay.DAY), null),
- new SpeciesEvolution(Species.LUNALA, 53, null, new SpeciesEvolutionCondition(p => p.scene.arena.biomeType !== Biome.SPACE && p.scene.arena.getTimeOfDay() === TimeOfDay.NIGHT), null)
+ new SpeciesEvolution(Species.SOLGALEO, 53, null, new SpeciesEvolutionCondition(p => p.scene.arena.getTimeOfDay() === TimeOfDay.DAY), null),
+ new SpeciesEvolution(Species.LUNALA, 53, null, new SpeciesEvolutionCondition(p => p.scene.arena.getTimeOfDay() === TimeOfDay.NIGHT), null)
],
[Species.MELTAN]: [
new SpeciesEvolution(Species.MELMETAL, 48, null, null)
@@ -1213,7 +1213,7 @@ export const pokemonEvolutions: PokemonEvolutions = {
new SpeciesEvolution(Species.CLODSIRE, 20, null, null)
],
[Species.PIKACHU]: [
- new SpeciesFormEvolution(Species.ALOLA_RAICHU, '', '', 1, EvolutionItem.THUNDER_STONE, new SpeciesEvolutionCondition(p => p.scene.arena.biomeType === Biome.ISLAND), SpeciesWildEvolutionDelay.LONG),
+ new SpeciesFormEvolution(Species.ALOLA_RAICHU, '', '', 1, EvolutionItem.THUNDER_STONE, new SpeciesEvolutionCondition(p => p.scene.arena.biomeType === Biome.ISLAND || p.scene.arena.biomeType === Biome.BEACH), SpeciesWildEvolutionDelay.LONG),
new SpeciesFormEvolution(Species.RAICHU, '', '', 1, EvolutionItem.THUNDER_STONE, null, SpeciesWildEvolutionDelay.LONG)
],
[Species.NIDORINA]: [
@@ -1252,7 +1252,7 @@ export const pokemonEvolutions: PokemonEvolutions = {
new SpeciesEvolution(Species.CLOYSTER, 1, EvolutionItem.WATER_STONE, null, SpeciesWildEvolutionDelay.LONG)
],
[Species.EXEGGCUTE]: [
- new SpeciesEvolution(Species.ALOLA_EXEGGUTOR, 1, EvolutionItem.LEAF_STONE, new SpeciesEvolutionCondition(p => p.scene.arena.biomeType === Biome.ISLAND), SpeciesWildEvolutionDelay.LONG),
+ new SpeciesEvolution(Species.ALOLA_EXEGGUTOR, 1, EvolutionItem.LEAF_STONE, new SpeciesEvolutionCondition(p => p.scene.arena.biomeType === Biome.ISLAND || p.scene.arena.biomeType == Biome.BEACH), SpeciesWildEvolutionDelay.LONG),
new SpeciesEvolution(Species.EXEGGUTOR, 1, EvolutionItem.LEAF_STONE, null, SpeciesWildEvolutionDelay.LONG)
],
[Species.TANGELA]: [
diff --git a/src/data/pokemon-forms.ts b/src/data/pokemon-forms.ts
index e5bcf25a4fe..4bf7b7ac875 100644
--- a/src/data/pokemon-forms.ts
+++ b/src/data/pokemon-forms.ts
@@ -535,8 +535,8 @@ export const pokemonFormChanges: PokemonFormChanges = {
new SpeciesFormChange(Species.MELOETTA, 'pirouette', 'aria', new SpeciesFormChangeActiveTrigger(false), true)
],
[Species.AEGISLASH]: [
- new SpeciesFormChange(Species.AEGISLASH, 'blade', 'shield', new SpeciesFormChangePreMoveTrigger(Moves.KINGS_SHIELD), true, new SpeciesFormChangeCondition(p => p.getAbility().id === Abilities.STANCE_CHANGE)),
- new SpeciesFormChange(Species.AEGISLASH, 'shield', 'blade', new SpeciesFormChangePreMoveTrigger(m => allMoves[m].category !== MoveCategory.STATUS), true, new SpeciesFormChangeCondition(p => p.getAbility().id === Abilities.STANCE_CHANGE)),
+ new SpeciesFormChange(Species.AEGISLASH, 'blade', 'shield', new SpeciesFormChangePreMoveTrigger(Moves.KINGS_SHIELD), true, new SpeciesFormChangeCondition(p => p.hasAbility(Abilities.STANCE_CHANGE))),
+ new SpeciesFormChange(Species.AEGISLASH, 'shield', 'blade', new SpeciesFormChangePreMoveTrigger(m => allMoves[m].category !== MoveCategory.STATUS), true, new SpeciesFormChangeCondition(p => p.hasAbility(Abilities.STANCE_CHANGE))),
new SpeciesFormChange(Species.AEGISLASH, 'blade', 'shield', new SpeciesFormChangeActiveTrigger(false), true)
],
[Species.DIANCIE]: [
@@ -549,6 +549,26 @@ export const pokemonFormChanges: PokemonFormChanges = {
new SpeciesFormChange(Species.WISHIWASHI, '', 'school', new SpeciesFormChangeManualTrigger(), true),
new SpeciesFormChange(Species.WISHIWASHI, 'school', '', new SpeciesFormChangeManualTrigger(), true)
],
+ [Species.MINIOR]: [
+ new SpeciesFormChange(Species.MINIOR, 'red-meteor', 'red', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'red', 'red-meteor', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'orange-meteor', 'orange', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'orange', 'orange-meteor', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'yellow-meteor', 'yellow', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'yellow', 'yellow-meteor', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'green-meteor', 'green', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'green', 'green-meteor', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'blue-meteor', 'blue', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'blue', 'blue-meteor', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'indigo-meteor', 'indigo', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'indigo', 'indigo-meteor', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'violet-meteor', 'violet', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MINIOR, 'violet', 'violet-meteor', new SpeciesFormChangeManualTrigger(), true)
+ ],
+ [Species.MIMIKYU]: [
+ new SpeciesFormChange(Species.MIMIKYU, 'disguised', 'busted', new SpeciesFormChangeManualTrigger(), true),
+ new SpeciesFormChange(Species.MIMIKYU, 'busted', 'disguised', new SpeciesFormChangeManualTrigger(), true)
+ ],
[Species.NECROZMA]: [
new SpeciesFormChange(Species.NECROZMA, '', 'dawn-wings', new SpeciesFormChangeItemTrigger(FormChangeItem.N_LUNARIZER)),
new SpeciesFormChange(Species.NECROZMA, '', 'dusk-mane', new SpeciesFormChangeItemTrigger(FormChangeItem.N_SOLARIZER))
diff --git a/src/data/pokemon-level-moves.ts b/src/data/pokemon-level-moves.ts
index 81fb79660fe..e205febcd2a 100644
--- a/src/data/pokemon-level-moves.ts
+++ b/src/data/pokemon-level-moves.ts
@@ -203,6 +203,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[Species.BEEDRILL]: [
[ 0, Moves.TWINEEDLE ],
[ 1, Moves.FURY_ATTACK ],
+ [ 11, Moves.FURY_CUTTER ],
[ 14, Moves.RAGE ],
[ 17, Moves.PURSUIT ],
[ 20, Moves.FOCUS_ENERGY ],
@@ -227,7 +228,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 33, Moves.WING_ATTACK ],
[ 37, Moves.ROOST ],
[ 41, Moves.TAILWIND ],
- [ 45, Moves.MIRROR_MOVE ],
+ [ 45, Moves.AERIAL_ACE ],
[ 49, Moves.AIR_SLASH ],
[ 53, Moves.HURRICANE ],
],
@@ -235,6 +236,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.GUST ],
[ 1, Moves.SAND_ATTACK ],
[ 1, Moves.TACKLE ],
+ [ 5, Moves.SAND_ATTACK ],
+ [ 9, Moves.GUST ],
[ 13, Moves.QUICK_ATTACK ],
[ 17, Moves.WHIRLWIND ],
[ 22, Moves.TWISTER ],
@@ -243,7 +246,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 37, Moves.WING_ATTACK ],
[ 42, Moves.ROOST ],
[ 47, Moves.TAILWIND ],
- [ 52, Moves.MIRROR_MOVE ],
+ [ 52, Moves.AERIAL_ACE ],
[ 57, Moves.AIR_SLASH ],
[ 62, Moves.HURRICANE ],
],
@@ -253,6 +256,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.TACKLE ],
[ 1, Moves.QUICK_ATTACK ],
[ 1, Moves.HURRICANE ],
+ [ 5, Moves.SAND_ATTACK ],
+ [ 9, Moves.GUST ],
[ 17, Moves.WHIRLWIND ],
[ 22, Moves.TWISTER ],
[ 27, Moves.FEATHER_DANCE ],
@@ -260,8 +265,9 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 38, Moves.WING_ATTACK ],
[ 44, Moves.ROOST ],
[ 50, Moves.TAILWIND ],
- [ 56, Moves.MIRROR_MOVE ],
+ [ 56, Moves.AERIAL_ACE ],
[ 62, Moves.AIR_SLASH ],
+ [ 68, Moves.HURRICANE ],
],
[Species.RATTATA]: [
[ 1, Moves.TACKLE ],
@@ -269,8 +275,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 4, Moves.QUICK_ATTACK ],
[ 7, Moves.FOCUS_ENERGY ],
[ 10, Moves.BITE ],
- [ 13, Moves.PURSUIT ],
- [ 16, Moves.HYPER_FANG ],
+ [ 13, Moves.LASER_FOCUS ],
+ [ 16, Moves.TAKE_DOWN ],
[ 19, Moves.ASSURANCE ],
[ 22, Moves.CRUNCH ],
[ 25, Moves.SUCKER_PUNCH ],
@@ -286,8 +292,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.QUICK_ATTACK ],
[ 1, Moves.FOCUS_ENERGY ],
[ 10, Moves.BITE ],
- [ 13, Moves.PURSUIT ],
- [ 16, Moves.HYPER_FANG ],
+ [ 13, Moves.LASER_FOCUS ],
+ [ 16, Moves.TAKE_DOWN ],
[ 19, Moves.ASSURANCE ],
[ 24, Moves.CRUNCH ],
[ 29, Moves.SUCKER_PUNCH ],
@@ -299,11 +305,11 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.GROWL ],
[ 1, Moves.PECK ],
[ 4, Moves.LEER ],
- [ 8, Moves.PURSUIT ],
+ [ 8, Moves.ASSURANCE ],
[ 11, Moves.FURY_ATTACK ],
[ 15, Moves.AERIAL_ACE ],
- [ 18, Moves.MIRROR_MOVE ],
- [ 22, Moves.ASSURANCE ],
+ [ 18, Moves.WING_ATTACK ],
+ [ 22, Moves.TAKE_DOWN ],
[ 25, Moves.AGILITY ],
[ 29, Moves.FOCUS_ENERGY ],
[ 32, Moves.ROOST ],
@@ -313,13 +319,15 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.LEER ],
[ 1, Moves.GROWL ],
[ 1, Moves.PECK ],
- [ 1, Moves.PURSUIT ],
+ [ 1, Moves.ASSURANCE ],
[ 1, Moves.PLUCK ],
[ 1, Moves.DRILL_RUN ],
+ [ 4, Moves.LEER ],
+ [ 8, Moves.ASSURANCE ],
[ 11, Moves.FURY_ATTACK ],
[ 15, Moves.AERIAL_ACE ],
- [ 18, Moves.MIRROR_MOVE ],
- [ 23, Moves.ASSURANCE ],
+ [ 18, Moves.WING_ATTACK ],
+ [ 23, Moves.TAKE_DOWN ],
[ 27, Moves.AGILITY ],
[ 32, Moves.FOCUS_ENERGY ],
[ 36, Moves.ROOST ],
@@ -483,6 +491,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
],
[Species.NIDOQUEEN]: [
[ 0, Moves.SUPERPOWER ],
+ [ 1, Moves.SLUDGE_WAVE ],
[ 1, Moves.SCRATCH ],
[ 1, Moves.DOUBLE_KICK ],
[ 1, Moves.TAIL_WHIP ],
@@ -529,6 +538,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
],
[Species.NIDOKING]: [
[ 0, Moves.MEGAHORN ],
+ [ 1, Moves.SLUDGE_WAVE ],
[ 1, Moves.DOUBLE_KICK ],
[ 1, Moves.HORN_ATTACK ],
[ 1, Moves.FURY_ATTACK ],
@@ -740,6 +750,9 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.POISON_POWDER ],
[ 1, Moves.STUN_SPORE ],
[ 1, Moves.CROSS_POISON ],
+ [ 6, Moves.POISON_POWDER ],
+ [ 6, Moves.STUN_SPORE ],
+ [ 11, Moves.ABSORB ],
[ 17, Moves.FURY_CUTTER ],
[ 22, Moves.SPORE ],
[ 29, Moves.SLASH ],
@@ -1324,43 +1337,38 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.GROWL ],
[ 1, Moves.PECK ],
[ 5, Moves.QUICK_ATTACK ],
- [ 8, Moves.RAGE ],
- [ 12, Moves.FURY_ATTACK ],
- [ 15, Moves.PURSUIT ],
- [ 19, Moves.PLUCK ],
- [ 22, Moves.DOUBLE_HIT ],
- [ 26, Moves.AGILITY ],
- [ 29, Moves.UPROAR ],
- [ 33, Moves.ACUPRESSURE ],
- [ 36, Moves.SWORDS_DANCE ],
- [ 40, Moves.JUMP_KICK ],
- [ 43, Moves.DRILL_PECK ],
- [ 47, Moves.ENDEAVOR ],
- [ 50, Moves.THRASH ],
+ [ 9, Moves.FURY_ATTACK ],
+ [ 14, Moves.PLUCK ],
+ [ 19, Moves.DOUBLE_HIT ],
+ [ 23, Moves.AGILITY ],
+ [ 27, Moves.UPROAR ],
+ [ 30, Moves.ACUPRESSURE ],
+ [ 33, Moves.SWORDS_DANCE ],
+ [ 36, Moves.DRILL_PECK ],
+ [ 39, Moves.ENDEAVOR ],
+ [ 43, Moves.THRASH ],
],
[Species.DODRIO]: [
[ 0, Moves.TRI_ATTACK ],
+ [ 1, Moves.TRI_ATTACK ],
[ 1, Moves.GROWL ],
[ 1, Moves.PECK ],
- [ 1, Moves.QUICK_ATTACK ],
- [ 1, Moves.RAGE ],
+ [ 5, Moves.QUICK_ATTACK ],
[ 12, Moves.FURY_ATTACK ],
- [ 15, Moves.PURSUIT ],
- [ 19, Moves.PLUCK ],
- [ 22, Moves.DOUBLE_HIT ],
- [ 26, Moves.AGILITY ],
- [ 29, Moves.UPROAR ],
- [ 34, Moves.ACUPRESSURE ],
- [ 38, Moves.SWORDS_DANCE ],
- [ 43, Moves.JUMP_KICK ],
- [ 47, Moves.DRILL_PECK ],
- [ 52, Moves.ENDEAVOR ],
- [ 56, Moves.THRASH ],
+ [ 15, Moves.PLUCK ],
+ [ 19, Moves.DOUBLE_HIT ],
+ [ 23, Moves.AGILITY ],
+ [ 26, Moves.UPROAR ],
+ [ 30, Moves.ACUPRESSURE ],
+ [ 34, Moves.SWORDS_DANCE ],
+ [ 38, Moves.DRILL_PECK ],
+ [ 43, Moves.ENDEAVOR ],
+ [ 50, Moves.THRASH ],
],
[Species.SEEL]: [
[ 1, Moves.HEADBUTT ],
[ 3, Moves.GROWL ],
- [ 7, Moves.WATER_SPORT ],
+ [ 7, Moves.CHARM ],
[ 11, Moves.ICY_WIND ],
[ 13, Moves.ENCORE ],
[ 17, Moves.ICE_SHARD ],
@@ -1374,14 +1382,14 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 43, Moves.AQUA_TAIL ],
[ 47, Moves.ICE_BEAM ],
[ 51, Moves.SAFEGUARD ],
- [ 53, Moves.HAIL ],
+ [ 53, Moves.SNOWSCAPE ],
],
[Species.DEWGONG]: [
[ 0, Moves.SHEER_COLD ],
[ 1, Moves.HEADBUTT ],
[ 1, Moves.GROWL ],
[ 1, Moves.ICY_WIND ],
- [ 1, Moves.SIGNAL_BEAM ],
+ [ 1, Moves.CHARM ],
[ 13, Moves.ENCORE ],
[ 17, Moves.ICE_SHARD ],
[ 21, Moves.REST ],
@@ -1394,7 +1402,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 49, Moves.AQUA_TAIL ],
[ 55, Moves.ICE_BEAM ],
[ 61, Moves.SAFEGUARD ],
- [ 65, Moves.HAIL ],
+ [ 65, Moves.SNOWSCAPE ],
],
[Species.GRIMER]: [
[ 1, Moves.POUND ],
@@ -1532,7 +1540,6 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 20, Moves.ROCK_SLIDE ],
[ 24, Moves.SCREECH ],
[ 28, Moves.SAND_TOMB ],
- [ 30, Moves.IRON_DEFENSE ],
[ 32, Moves.STEALTH_ROCK ],
[ 36, Moves.SLAM ],
[ 40, Moves.SANDSTORM ],
@@ -2534,7 +2541,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 12, Moves.SYNTHESIS ],
[ 17, Moves.REFLECT ],
[ 20, Moves.MAGICAL_LEAF ],
- [ 23, Moves.NATURAL_GIFT ],
+ [ 23, Moves.LEECH_SEED ],
[ 28, Moves.SWEET_SCENT ],
[ 31, Moves.LIGHT_SCREEN ],
[ 34, Moves.BODY_SLAM ],
@@ -2550,7 +2557,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 12, Moves.SYNTHESIS ],
[ 18, Moves.REFLECT ],
[ 22, Moves.MAGICAL_LEAF ],
- [ 26, Moves.NATURAL_GIFT ],
+ [ 26, Moves.LEECH_SEED ],
[ 32, Moves.SWEET_SCENT ],
[ 36, Moves.LIGHT_SCREEN ],
[ 40, Moves.BODY_SLAM ],
@@ -2568,13 +2575,13 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 12, Moves.SYNTHESIS ],
[ 18, Moves.REFLECT ],
[ 22, Moves.MAGICAL_LEAF ],
- [ 26, Moves.NATURAL_GIFT ],
+ [ 26, Moves.LEECH_SEED ],
[ 34, Moves.SWEET_SCENT ],
[ 40, Moves.LIGHT_SCREEN ],
[ 46, Moves.BODY_SLAM ],
[ 54, Moves.SAFEGUARD ],
[ 60, Moves.AROMATHERAPY ],
- [ 66, Moves.SOLAR_BEAM ],
+ [ 65, Moves.SOLAR_BEAM ],
],
[Species.CYNDAQUIL]: [
[ 1, Moves.TACKLE ],
@@ -2635,56 +2642,50 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.SCRATCH ],
[ 1, Moves.LEER ],
[ 6, Moves.WATER_GUN ],
- [ 8, Moves.RAGE ],
- [ 13, Moves.BITE ],
- [ 15, Moves.SCARY_FACE ],
- [ 20, Moves.ICE_FANG ],
+ [ 9, Moves.BITE ],
+ [ 13, Moves.SCARY_FACE ],
+ [ 19, Moves.ICE_FANG ],
[ 22, Moves.FLAIL ],
[ 27, Moves.CRUNCH ],
- [ 29, Moves.CHIP_AWAY ],
- [ 34, Moves.SLASH ],
- [ 36, Moves.SCREECH ],
- [ 41, Moves.THRASH ],
- [ 43, Moves.AQUA_TAIL ],
- [ 48, Moves.SUPERPOWER ],
+ [ 30, Moves.SLASH ],
+ [ 33, Moves.SCREECH ],
+ [ 37, Moves.THRASH ],
+ [ 41, Moves.AQUA_TAIL ],
+ [ 45, Moves.SUPERPOWER ],
[ 50, Moves.HYDRO_PUMP ],
],
[Species.CROCONAW]: [
[ 1, Moves.SCRATCH ],
[ 1, Moves.LEER ],
[ 1, Moves.WATER_GUN ],
- [ 8, Moves.RAGE ],
[ 13, Moves.BITE ],
[ 15, Moves.SCARY_FACE ],
[ 21, Moves.ICE_FANG ],
[ 24, Moves.FLAIL ],
[ 30, Moves.CRUNCH ],
- [ 33, Moves.CHIP_AWAY ],
- [ 39, Moves.SLASH ],
- [ 42, Moves.SCREECH ],
- [ 48, Moves.THRASH ],
- [ 51, Moves.AQUA_TAIL ],
- [ 57, Moves.SUPERPOWER ],
- [ 60, Moves.HYDRO_PUMP ],
+ [ 34, Moves.SLASH ],
+ [ 37, Moves.SCREECH ],
+ [ 42, Moves.THRASH ],
+ [ 47, Moves.AQUA_TAIL ],
+ [ 50, Moves.SUPERPOWER ],
+ [ 55, Moves.HYDRO_PUMP ],
],
[Species.FERALIGATR]: [
+ [ 1, Moves.AGILITY ],
[ 1, Moves.SCRATCH ],
[ 1, Moves.LEER ],
[ 1, Moves.WATER_GUN ],
- [ 1, Moves.AGILITY ],
- [ 1, Moves.RAGE ],
[ 13, Moves.BITE ],
[ 15, Moves.SCARY_FACE ],
[ 21, Moves.ICE_FANG ],
[ 24, Moves.FLAIL ],
[ 32, Moves.CRUNCH ],
- [ 37, Moves.CHIP_AWAY ],
- [ 45, Moves.SLASH ],
- [ 50, Moves.SCREECH ],
- [ 58, Moves.THRASH ],
- [ 63, Moves.AQUA_TAIL ],
- [ 71, Moves.SUPERPOWER ],
- [ 76, Moves.HYDRO_PUMP ],
+ [ 37, Moves.SLASH ],
+ [ 44, Moves.SCREECH ],
+ [ 51, Moves.THRASH ],
+ [ 59, Moves.AQUA_TAIL ],
+ [ 65, Moves.SUPERPOWER ],
+ [ 70, Moves.HYDRO_PUMP ],
],
[Species.SENTRET]: [
[ 1, Moves.SCRATCH ],
@@ -2760,8 +2761,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 12, Moves.REFLECT ],
[ 12, Moves.SAFEGUARD ],
[ 15, Moves.MACH_PUNCH ],
- [ 19, Moves.SILVER_WIND ],
- [ 22, Moves.COMET_PUNCH ],
+ [ 19, Moves.ROOST ],
+ [ 22, Moves.STRUGGLE_BUG ],
[ 26, Moves.BATON_PASS ],
[ 29, Moves.AGILITY ],
[ 33, Moves.BUG_BUZZ ],
@@ -2772,12 +2773,13 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.TACKLE ],
[ 1, Moves.SUPERSONIC ],
[ 1, Moves.SWIFT ],
+ [ 5, Moves.SUPERSONIC ],
[ 12, Moves.LIGHT_SCREEN ],
[ 12, Moves.REFLECT ],
[ 12, Moves.SAFEGUARD ],
[ 15, Moves.MACH_PUNCH ],
- [ 20, Moves.SILVER_WIND ],
- [ 24, Moves.COMET_PUNCH ],
+ [ 20, Moves.ROOST ],
+ [ 24, Moves.STRUGGLE_BUG ],
[ 29, Moves.BATON_PASS ],
[ 33, Moves.AGILITY ],
[ 38, Moves.BUG_BUZZ ],
@@ -4476,33 +4478,45 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
],
[Species.SILCOON]: [
[ 0, Moves.HARDEN ],
+ [ 1, Moves.HARDEN ],
],
[Species.BEAUTIFLY]: [
[ 0, Moves.GUST ],
+ [ 1, Moves.BUG_BITE ],
+ [ 1, Moves.GUST ],
+ [ 1, Moves.HARDEN ],
+ [ 1, Moves.STRING_SHOT ],
+ [ 1, Moves.POISON_STING ],
[ 12, Moves.ABSORB ],
[ 15, Moves.STUN_SPORE ],
[ 17, Moves.MORNING_SUN ],
[ 20, Moves.AIR_CUTTER ],
[ 22, Moves.MEGA_DRAIN ],
- [ 25, Moves.SILVER_WIND ],
+ [ 25, Moves.LEECH_LIFE ],
[ 27, Moves.ATTRACT ],
[ 30, Moves.WHIRLWIND ],
[ 32, Moves.GIGA_DRAIN ],
[ 35, Moves.BUG_BUZZ ],
- [ 37, Moves.RAGE ],
+ [ 37, Moves.PROTECT ],
[ 40, Moves.QUIVER_DANCE ],
],
[Species.CASCOON]: [
[ 0, Moves.HARDEN ],
+ [ 1, Moves.HARDEN ],
],
[Species.DUSTOX]: [
[ 0, Moves.GUST ],
+ [ 1, Moves.BUG_BITE ],
+ [ 1, Moves.GUST ],
+ [ 1, Moves.HARDEN ],
+ [ 1, Moves.STRING_SHOT ],
+ [ 1, Moves.POISON_STING ],
[ 12, Moves.CONFUSION ],
[ 15, Moves.POISON_POWDER ],
[ 17, Moves.MOONLIGHT ],
[ 20, Moves.VENOSHOCK ],
[ 22, Moves.PSYBEAM ],
- [ 25, Moves.SILVER_WIND ],
+ [ 25, Moves.LEECH_LIFE ],
[ 27, Moves.LIGHT_SCREEN ],
[ 30, Moves.WHIRLWIND ],
[ 32, Moves.TOXIC ],
@@ -4621,6 +4635,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 27, Moves.QUICK_GUARD ],
[ 33, Moves.AGILITY ],
[ 45, Moves.ENDEAVOR ],
+ [ 51, Moves.BRAVE_BIRD ],
[ 57, Moves.REVERSAL ],
],
[Species.WINGULL]: [
@@ -4989,31 +5004,42 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 43, Moves.LOCK_ON ],
],
[Species.SKITTY]: [
- [ 1, Moves.TACKLE ],
[ 1, Moves.TAIL_WHIP ],
[ 1, Moves.GROWL ],
[ 1, Moves.FAKE_OUT ],
- [ 4, Moves.FORESIGHT ],
+ [ 4, Moves.TACKLE ],
[ 7, Moves.SING ],
[ 10, Moves.ATTRACT ],
[ 13, Moves.DISARMING_VOICE ],
- [ 16, Moves.DOUBLE_SLAP ],
+ [ 16, Moves.FURY_SWIPES ],
[ 19, Moves.COPYCAT ],
- [ 22, Moves.FEINT_ATTACK ],
+ [ 22, Moves.PAYBACK ],
[ 25, Moves.CHARM ],
- [ 28, Moves.WAKE_UP_SLAP ],
- [ 31, Moves.ASSIST ],
+ [ 31, Moves.FACADE ],
[ 34, Moves.COVET ],
[ 37, Moves.HEAL_BELL ],
[ 40, Moves.DOUBLE_EDGE ],
- [ 43, Moves.CAPTIVATE ],
+ [ 43, Moves.BABY_DOLL_EYES ],
[ 46, Moves.PLAY_ROUGH ],
],
[Species.DELCATTY]: [
- [ 1, Moves.DOUBLE_SLAP ],
+ [ 1, Moves.TAIL_WHIP ],
+ [ 1, Moves.GROWL ],
+ [ 1, Moves.FAKE_OUT ],
+ [ 1, Moves.TACKLE ],
[ 1, Moves.SING ],
[ 1, Moves.ATTRACT ],
- [ 1, Moves.FAKE_OUT ],
+ [ 1, Moves.DISARMING_VOICE ],
+ [ 1, Moves.FURY_SWIPES ],
+ [ 1, Moves.COPYCAT ],
+ [ 1, Moves.PAYBACK ],
+ [ 1, Moves.CHARM ],
+ [ 1, Moves.FACADE ],
+ [ 1, Moves.COVET ],
+ [ 1, Moves.HEAL_BELL ],
+ [ 1, Moves.DOUBLE_EDGE ],
+ [ 1, Moves.BABY_DOLL_EYES ],
+ [ 1, Moves.PLAY_ROUGH ],
],
[Species.SABLEYE]: [
[ 1, Moves.SCRATCH ],
@@ -5189,7 +5215,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 4, Moves.HELPING_HAND ],
[ 7, Moves.SPARK ],
[ 10, Moves.ENCORE ],
- [ 13, Moves.BESTOW ],
+ [ 13, Moves.SWITCHEROO ],
[ 16, Moves.SWIFT ],
[ 19, Moves.ELECTRO_BALL ],
[ 22, Moves.COPYCAT ],
@@ -5221,7 +5247,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 31, Moves.DISCHARGE ],
[ 34, Moves.BATON_PASS ],
[ 37, Moves.AGILITY ],
- [ 40, Moves.TRUMP_CARD ],
+ [ 40, Moves.LAST_RESORT ],
[ 43, Moves.THUNDER ],
[ 46, Moves.NASTY_PLOT ],
[ 49, Moves.ENTRAINMENT ],
@@ -5473,10 +5499,10 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[Species.SPINDA]: [
[ 1, Moves.TACKLE ],
[ 5, Moves.COPYCAT ],
- [ 10, Moves.FEINT_ATTACK ],
+ [ 10, Moves.TEETER_DANCE ],
[ 14, Moves.PSYBEAM ],
[ 19, Moves.HYPNOSIS ],
- [ 23, Moves.DIZZY_PUNCH ],
+ [ 23, Moves.BODY_SLAM ],
[ 28, Moves.SUCKER_PUNCH ],
[ 32, Moves.TEETER_DANCE ],
[ 37, Moves.UPROAR ],
@@ -5918,16 +5944,16 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 7, Moves.SHADOW_SNEAK ],
[ 10, Moves.FEINT ],
[ 13, Moves.FURY_SWIPES ],
- [ 16, Moves.FEINT_ATTACK ],
+ [ 16, Moves.DISABLE ],
[ 18, Moves.PSYBEAM ],
[ 21, Moves.ANCIENT_POWER ],
[ 25, Moves.SLASH ],
- [ 30, Moves.CAMOUFLAGE ],
+ [ 30, Moves.DETECT ],
[ 33, Moves.SHADOW_CLAW ],
[ 38, Moves.SCREECH ],
[ 42, Moves.SUBSTITUTE ],
[ 46, Moves.SUCKER_PUNCH ],
- [ 50, Moves.SYNCHRONOISE ],
+ [ 50, Moves.FOUL_PLAY ],
],
[Species.SHUPPET]: [
[ 1, Moves.ASTONISH ],
@@ -6146,17 +6172,19 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
],
[Species.CLAMPERL]: [
[ 1, Moves.WATER_GUN ],
- [ 1, Moves.CLAMP ],
[ 1, Moves.WHIRLPOOL ],
[ 1, Moves.IRON_DEFENSE ],
[ 50, Moves.SHELL_SMASH ],
],
[Species.HUNTAIL]: [
[ 1, Moves.BITE ],
+ [ 1, Moves.WATER_GUN ],
[ 1, Moves.WHIRLPOOL ],
+ [ 1, Moves.IRON_DEFENSE ],
+ [ 1, Moves.SHELL_SMASH ],
[ 5, Moves.SCREECH ],
[ 9, Moves.SCARY_FACE ],
- [ 11, Moves.FEINT_ATTACK ],
+ [ 11, Moves.RAIN_DANCE ],
[ 14, Moves.WATER_PULSE ],
[ 16, Moves.ICE_FANG ],
[ 19, Moves.BRINE ],
@@ -6170,14 +6198,17 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
],
[Species.GOREBYSS]: [
[ 1, Moves.CONFUSION ],
+ [ 1, Moves.WATER_GUN ],
[ 1, Moves.WHIRLPOOL ],
+ [ 1, Moves.IRON_DEFENSE ],
+ [ 1, Moves.SHELL_SMASH ],
[ 5, Moves.WATER_SPORT ],
[ 9, Moves.AGILITY ],
[ 11, Moves.DRAINING_KISS ],
[ 14, Moves.WATER_PULSE ],
[ 16, Moves.AMNESIA ],
[ 19, Moves.AQUA_RING ],
- [ 23, Moves.CAPTIVATE ],
+ [ 23, Moves.SAFEGUARD ],
[ 26, Moves.DIVE ],
[ 29, Moves.BATON_PASS ],
[ 34, Moves.PSYCHIC ],
@@ -6857,7 +6888,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.PROTECT ],
[ 10, Moves.TACKLE ],
[ 15, Moves.BUG_BITE ],
- [ 20, Moves.HIDDEN_POWER ],
+ [ 20, Moves.STRING_SHOT ],
],
[Species.WORMADAM]: [
[ 0, Moves.QUIVER_DANCE ],
@@ -6865,12 +6896,14 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.PROTECT ],
[ 1, Moves.SUCKER_PUNCH ],
[ 1, Moves.BUG_BITE ],
- [ 20, Moves.HIDDEN_POWER ],
+ [ 1, Moves.PROTECT ],
+ [ 10, Moves.TACKLE ],
+ [ 20, Moves.STRING_SHOT ],
[ 23, Moves.CONFUSION ],
[ 26, Moves.RAZOR_LEAF ],
[ 29, Moves.GROWTH ],
[ 32, Moves.PSYBEAM ],
- [ 35, Moves.CAPTIVATE ],
+ [ 35, Moves.INFESTATION ],
[ 38, Moves.FLAIL ],
[ 41, Moves.ATTRACT ],
[ 44, Moves.PSYCHIC ],
@@ -6882,13 +6915,15 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.TACKLE ],
[ 1, Moves.PROTECT ],
[ 1, Moves.BUG_BITE ],
- [ 20, Moves.HIDDEN_POWER ],
+ [ 10, Moves.PROTECT ],
+ [ 15, Moves.BUG_BITE ],
+ [ 20, Moves.STRING_SHOT ],
[ 23, Moves.CONFUSION ],
[ 26, Moves.GUST ],
[ 29, Moves.POISON_POWDER ],
[ 32, Moves.PSYBEAM ],
- [ 35, Moves.CAMOUFLAGE ],
- [ 38, Moves.SILVER_WIND ],
+ [ 35, Moves.ROOST ],
+ [ 38, Moves.STRUGGLE_BUG ],
[ 41, Moves.AIR_SLASH ],
[ 44, Moves.PSYCHIC ],
[ 47, Moves.LUNGE ],
@@ -7144,11 +7179,11 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 5, Moves.SCRATCH ],
[ 8, Moves.GROWL ],
[ 13, Moves.HYPNOSIS ],
- [ 17, Moves.FEINT_ATTACK ],
+ [ 17, Moves.AERIAL_ACE ],
[ 20, Moves.FURY_SWIPES ],
[ 25, Moves.CHARM ],
- [ 29, Moves.ASSIST ],
- [ 32, Moves.CAPTIVATE ],
+ [ 29, Moves.TAUNT ],
+ [ 32, Moves.RETALIATE ],
[ 37, Moves.SLASH ],
[ 41, Moves.SUCKER_PUNCH ],
[ 44, Moves.ATTRACT ],
@@ -7158,14 +7193,16 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[Species.PURUGLY]: [
[ 0, Moves.SWAGGER ],
[ 1, Moves.SCRATCH ],
+ [ 1, Moves.PLAY_ROUGH ],
+ [ 1, Moves.SUCKER_PUNCH ],
[ 1, Moves.GROWL ],
[ 1, Moves.FAKE_OUT ],
[ 13, Moves.HYPNOSIS ],
- [ 17, Moves.FEINT_ATTACK ],
+ [ 17, Moves.AERIAL_ACE ],
[ 20, Moves.FURY_SWIPES ],
[ 25, Moves.CHARM ],
- [ 29, Moves.ASSIST ],
- [ 32, Moves.CAPTIVATE ],
+ [ 29, Moves.TAUNT ],
+ [ 32, Moves.RETALIATE ],
[ 37, Moves.SLASH ],
[ 45, Moves.BODY_SLAM ],
[ 52, Moves.ATTRACT ],
@@ -7554,13 +7591,13 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 11, Moves.VINE_WHIP ],
[ 17, Moves.SWEET_SCENT ],
[ 21, Moves.INGRAIN ],
- [ 27, Moves.FEINT_ATTACK ],
+ [ 27, Moves.GRASS_KNOT ],
[ 31, Moves.LEAF_TORNADO ],
[ 37, Moves.STOCKPILE ],
[ 37, Moves.SPIT_UP ],
[ 37, Moves.SWALLOW ],
[ 41, Moves.CRUNCH ],
- [ 47, Moves.WRING_OUT ],
+ [ 47, Moves.SEED_BOMB ],
[ 50, Moves.POWER_WHIP ],
],
[Species.FINNEON]: [
@@ -8204,11 +8241,10 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
],
[Species.DARKRAI]: [
[ 1, Moves.DISABLE ],
- [ 1, Moves.OMINOUS_WIND ],
[ 11, Moves.QUICK_ATTACK ],
[ 20, Moves.HYPNOSIS ],
- [ 29, Moves.FEINT_ATTACK ],
- [ 38, Moves.NIGHTMARE ],
+ [ 29, Moves.SUCKER_PUNCH ],
+ [ 38, Moves.NIGHT_SHADE ],
[ 47, Moves.DOUBLE_TEAM ],
[ 57, Moves.HAZE ],
[ 66, Moves.DARK_VOID ],
@@ -8270,16 +8306,15 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 7, Moves.VINE_WHIP ],
[ 10, Moves.WRAP ],
[ 13, Moves.GROWTH ],
- [ 16, Moves.LEAF_TORNADO ],
+ [ 16, Moves.MAGICAL_LEAF ],
[ 19, Moves.LEECH_SEED ],
[ 22, Moves.MEGA_DRAIN ],
[ 25, Moves.SLAM ],
[ 28, Moves.LEAF_BLADE ],
[ 31, Moves.COIL ],
[ 34, Moves.GIGA_DRAIN ],
- [ 37, Moves.WRING_OUT ],
- [ 40, Moves.GASTRO_ACID ],
- [ 43, Moves.LEAF_STORM ],
+ [ 37, Moves.GASTRO_ACID ],
+ [ 40, Moves.LEAF_STORM ],
],
[Species.SERVINE]: [
[ 1, Moves.VINE_WHIP ],
@@ -8287,16 +8322,15 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.WRAP ],
[ 1, Moves.LEER ],
[ 13, Moves.GROWTH ],
- [ 16, Moves.LEAF_TORNADO ],
+ [ 16, Moves.MAGICAL_LEAF ],
[ 20, Moves.LEECH_SEED ],
[ 24, Moves.MEGA_DRAIN ],
[ 28, Moves.SLAM ],
[ 32, Moves.LEAF_BLADE ],
[ 36, Moves.COIL ],
[ 40, Moves.GIGA_DRAIN ],
- [ 44, Moves.WRING_OUT ],
- [ 48, Moves.GASTRO_ACID ],
- [ 52, Moves.LEAF_STORM ],
+ [ 44, Moves.GASTRO_ACID ],
+ [ 48, Moves.LEAF_STORM ],
],
[Species.SERPERIOR]: [
[ 1, Moves.VINE_WHIP ],
@@ -8304,22 +8338,21 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.WRAP ],
[ 1, Moves.LEER ],
[ 13, Moves.GROWTH ],
- [ 16, Moves.LEAF_TORNADO ],
+ [ 16, Moves.MAGICAL_LEAF ],
[ 20, Moves.LEECH_SEED ],
[ 24, Moves.MEGA_DRAIN ],
[ 28, Moves.SLAM ],
[ 32, Moves.LEAF_BLADE ],
[ 38, Moves.COIL ],
[ 44, Moves.GIGA_DRAIN ],
- [ 50, Moves.WRING_OUT ],
- [ 56, Moves.GASTRO_ACID ],
- [ 62, Moves.LEAF_STORM ],
+ [ 50, Moves.GASTRO_ACID ],
+ [ 56, Moves.LEAF_STORM ],
],
[Species.TEPIG]: [
[ 1, Moves.TACKLE ],
[ 3, Moves.TAIL_WHIP ],
[ 7, Moves.EMBER ],
- [ 9, Moves.ODOR_SLEUTH ],
+ [ 9, Moves.ENDURE ],
[ 13, Moves.DEFENSE_CURL ],
[ 15, Moves.FLAME_CHARGE ],
[ 19, Moves.SMOG ],
@@ -8337,7 +8370,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.TACKLE ],
[ 1, Moves.TAIL_WHIP ],
[ 1, Moves.EMBER ],
- [ 1, Moves.ODOR_SLEUTH ],
+ [ 1, Moves.ENDURE ],
[ 13, Moves.DEFENSE_CURL ],
[ 15, Moves.FLAME_CHARGE ],
[ 20, Moves.SMOG ],
@@ -8355,7 +8388,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 1, Moves.TAIL_WHIP ],
[ 1, Moves.EMBER ],
[ 1, Moves.ARM_THRUST ],
- [ 1, Moves.ODOR_SLEUTH ],
+ [ 1, Moves.ENDURE ],
[ 1, Moves.HAMMER_ARM ],
[ 13, Moves.DEFENSE_CURL ],
[ 15, Moves.FLAME_CHARGE ],
@@ -8701,23 +8734,20 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
[ 11, Moves.SHOCK_WAVE ],
[ 15, Moves.THUNDER_WAVE ],
[ 18, Moves.FLAME_CHARGE ],
- [ 22, Moves.PURSUIT ],
- [ 25, Moves.SPARK ],
- [ 29, Moves.STOMP ],
- [ 32, Moves.DISCHARGE ],
- [ 36, Moves.AGILITY ],
- [ 39, Moves.WILD_CHARGE ],
- [ 43, Moves.THRASH ],
+ [ 22, Moves.SPARK ],
+ [ 25, Moves.STOMP ],
+ [ 29, Moves.DISCHARGE ],
+ [ 33, Moves.AGILITY ],
+ [ 35, Moves.WILD_CHARGE ],
+ [ 40, Moves.THRASH ],
],
[Species.ZEBSTRIKA]: [
[ 1, Moves.TAIL_WHIP ],
[ 1, Moves.THUNDER_WAVE ],
[ 1, Moves.QUICK_ATTACK ],
[ 1, Moves.CHARGE ],
- [ 1, Moves.ION_DELUGE ],
[ 11, Moves.SHOCK_WAVE ],
[ 18, Moves.FLAME_CHARGE ],
- [ 22, Moves.PURSUIT ],
[ 25, Moves.SPARK ],
[ 31, Moves.STOMP ],
[ 36, Moves.DISCHARGE ],
@@ -10889,8 +10919,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
],
[Species.CHESPIN]: [
[ 1, Moves.TACKLE ],
- [ 1, Moves.VINE_WHIP ],
[ 1, Moves.GROWL ],
+ [ 1, Moves.VINE_WHIP ],
[ 8, Moves.ROLLOUT ],
[ 11, Moves.BITE ],
[ 15, Moves.LEECH_SEED ],
@@ -10904,8 +10934,8 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = {
],
[Species.QUILLADIN]: [
[ 1, Moves.TACKLE ],
- [ 1, Moves.VINE_WHIP ],
[ 1, Moves.GROWL ],
+ [ 1, Moves.VINE_WHIP ],
[ 8, Moves.ROLLOUT ],
[ 11, Moves.BITE ],
[ 15, Moves.LEECH_SEED ],
@@ -18160,12 +18190,14 @@ export const pokemonFormLevelMoves: PokemonSpeciesFormLevelMoves = {
[ 1, Moves.PROTECT ],
[ 1, Moves.SUCKER_PUNCH ],
[ 1, Moves.BUG_BITE ],
- [ 20, Moves.HIDDEN_POWER ],
+ [ 1, Moves.PROTECT ],
+ [ 10, Moves.TACKLE ],
+ [ 20, Moves.STRING_SHOT ],
[ 23, Moves.CONFUSION ],
[ 26, Moves.ROCK_BLAST ],
[ 29, Moves.HARDEN ],
[ 32, Moves.PSYBEAM ],
- [ 35, Moves.CAPTIVATE ],
+ [ 35, Moves.INFESTATION ],
[ 38, Moves.FLAIL ],
[ 41, Moves.ATTRACT ],
[ 44, Moves.PSYCHIC ],
@@ -18174,17 +18206,19 @@ export const pokemonFormLevelMoves: PokemonSpeciesFormLevelMoves = {
],
2: [
[ 0, Moves.QUIVER_DANCE ],
+ [ 1, Moves.METAL_BURST ],
[ 1, Moves.TACKLE ],
[ 1, Moves.PROTECT ],
- [ 1, Moves.METAL_BURST ],
[ 1, Moves.SUCKER_PUNCH ],
[ 1, Moves.BUG_BITE ],
- [ 20, Moves.HIDDEN_POWER ],
+ [ 1, Moves.PROTECT ],
+ [ 10, Moves.TACKLE ],
+ [ 20, Moves.STRING_SHOT ],
[ 23, Moves.CONFUSION ],
- [ 26, Moves.MIRROR_SHOT ],
+ [ 26, Moves.METAL_BURST ],
[ 29, Moves.METAL_SOUND ],
[ 32, Moves.PSYBEAM ],
- [ 35, Moves.CAPTIVATE ],
+ [ 35, Moves.INFESTATION ],
[ 38, Moves.FLAIL ],
[ 41, Moves.ATTRACT ],
[ 44, Moves.PSYCHIC ],
@@ -18289,21 +18323,21 @@ export const pokemonFormLevelMoves: PokemonSpeciesFormLevelMoves = {
},
[Species.GRENINJA]: {
1: [
+ [ 0, Moves.WATER_SHURIKEN ],
[ 0, Moves.WATER_SHURIKEN ],
[ 1, Moves.POUND ],
[ 1, Moves.GROWL ],
+ [ 1, Moves.WATER_GUN ],
[ 1, Moves.QUICK_ATTACK ],
[ 1, Moves.HAZE ],
- [ 1, Moves.BUBBLE ],
[ 1, Moves.ROLE_PLAY ],
[ 1, Moves.NIGHT_SLASH ],
- [ 1, Moves.MAT_BLOCK ],
[ 10, Moves.LICK ],
[ 14, Moves.WATER_PULSE ],
[ 19, Moves.SMOKESCREEN ],
[ 23, Moves.SHADOW_SNEAK ],
[ 28, Moves.SPIKES ],
- [ 33, Moves.FEINT_ATTACK ],
+ [ 33, Moves.AERIAL_ACE ],
[ 42, Moves.SUBSTITUTE ],
[ 49, Moves.EXTRASENSORY ],
[ 56, Moves.DOUBLE_TEAM ],
@@ -18598,4 +18632,4 @@ export const pokemonFormLevelMoves: PokemonSpeciesFormLevelMoves = {
[ 60, Moves.CLOSE_COMBAT ],
]
}
-};
\ No newline at end of file
+};
diff --git a/src/data/pokemon-species.ts b/src/data/pokemon-species.ts
index e582fdfce1d..3c77c4d5562 100644
--- a/src/data/pokemon-species.ts
+++ b/src/data/pokemon-species.ts
@@ -1,5 +1,7 @@
import { Abilities } from "./enums/abilities";
import BattleScene, { AnySound } from '../battle-scene';
+import { Variant, variantColorCache } from './variant';
+import { variantData } from './variant';
import { GrowthRate } from './exp';
import { SpeciesWildEvolutionDelay, pokemonEvolutions, pokemonPrevolutions } from './pokemon-evolutions';
import { Species } from './enums/species';
@@ -12,6 +14,8 @@ import { speciesEggMoves } from './egg-moves';
import { PartyMemberStrength } from "./enums/party-member-strength";
import { GameMode } from '../game-mode';
import { QuantizerCelebi, argbFromRgba, rgbaFromArgb } from "@material/material-color-utilities";
+import { VariantSet } from './variant';
+import i18next, { Localizable } from '../plugins/i18n';
export enum Region {
NORMAL,
@@ -203,36 +207,48 @@ export abstract class PokemonSpeciesForm {
return ret;
}
- getSpriteAtlasPath(female: boolean, formIndex?: integer, shiny?: boolean): string {
- return this.getSpriteId(female, formIndex, shiny).replace(/\_{2}/g, '/');
+ getSpriteAtlasPath(female: boolean, formIndex?: integer, shiny?: boolean, variant?: integer): string {
+ const spriteId = this.getSpriteId(female, formIndex, shiny, variant).replace(/\_{2}/g, '/');
+ return `${/_[1-3]$/.test(spriteId) ? 'variant/' : ''}${spriteId}`;
}
- getSpriteId(female: boolean, formIndex?: integer, shiny?: boolean): string {
+ getSpriteId(female: boolean, formIndex?: integer, shiny?: boolean, variant?: integer, back?: boolean): string {
if (formIndex === undefined || this instanceof PokemonForm)
formIndex = this.formIndex;
const formSpriteKey = this.getFormSpriteKey(formIndex);
const showGenderDiffs = this.genderDiffs && female && ![ SpeciesFormKey.MEGA, SpeciesFormKey.GIGANTAMAX ].find(k => formSpriteKey === k);
- return `${shiny ? 'shiny__' : ''}${showGenderDiffs ? 'female__' : ''}${this.speciesId}${formSpriteKey ? `-${formSpriteKey}` : ''}`;
+
+ const baseSpriteKey = `${showGenderDiffs ? 'female__' : ''}${this.speciesId}${formSpriteKey ? `-${formSpriteKey}` : ''}`;
+
+ let variantSet: VariantSet;
+ let config = variantData;
+ `${back ? 'back__' : ''}${baseSpriteKey}`.split('__').map(p => config ? config = config[p] : null);
+ variantSet = config as VariantSet;
+
+ return `${back ? 'back__' : ''}${shiny && (!variantSet || (!variant && !variantSet[variant || 0])) ? 'shiny__' : ''}${baseSpriteKey}${shiny && variantSet && variantSet[variant || 0] === 2 ? `_${variant + 1}` : ''}`;
}
- getSpriteKey(female: boolean, formIndex?: integer, shiny?: boolean): string {
- return `pkmn__${this.getSpriteId(female, formIndex, shiny)}`;
+ getSpriteKey(female: boolean, formIndex?: integer, shiny?: boolean, variant?: integer): string {
+ return `pkmn__${this.getSpriteId(female, formIndex, shiny, variant)}`;
}
abstract getFormSpriteKey(formIndex?: integer): string;
- getIconAtlasKey(formIndex?: integer): string {
- return `pokemon_icons_${this.generation}`;
+ getIconAtlasKey(formIndex?: integer, shiny?: boolean, variant?: integer): string {
+ const isVariant = shiny && variantData[this.speciesId] && variantData[this.speciesId][variant];
+ return `pokemon_icons_${this.generation}${isVariant ? 'v' : ''}`;
}
- getIconId(female: boolean, formIndex?: integer, shiny?: boolean): string {
+ getIconId(female: boolean, formIndex?: integer, shiny?: boolean, variant?: integer): string {
if (formIndex === undefined)
formIndex = this.formIndex;
let ret = this.speciesId.toString();
- if (shiny)
+ const isVariant = shiny && variantData[this.speciesId] && variantData[this.speciesId][variant];
+
+ if (shiny && !isVariant)
ret += 's';
switch (this.speciesId) {
@@ -260,6 +276,9 @@ export abstract class PokemonSpeciesForm {
}
}
+ if (isVariant)
+ ret += `_${variant + 1}`;
+
return ret;
}
@@ -345,23 +364,45 @@ export abstract class PokemonSpeciesForm {
return true;
}
- loadAssets(scene: BattleScene, female: boolean, formIndex?: integer, shiny?: boolean, startLoad?: boolean): Promise {
+ loadAssets(scene: BattleScene, female: boolean, formIndex?: integer, shiny?: boolean, variant?: Variant, startLoad?: boolean): Promise {
return new Promise(resolve => {
- const spriteKey = this.getSpriteKey(female, formIndex, shiny);
+ const spriteKey = this.getSpriteKey(female, formIndex, shiny, variant);
scene.load.audio(this.getCryKey(formIndex), `audio/cry/${this.getCryKey(formIndex)}.m4a`);
- scene.loadPokemonAtlas(spriteKey, this.getSpriteAtlasPath(female, formIndex, shiny));
+ scene.loadPokemonAtlas(spriteKey, this.getSpriteAtlasPath(female, formIndex, shiny, variant));
scene.load.once(Phaser.Loader.Events.COMPLETE, () => {
const originalWarn = console.warn;
// Ignore warnings for missing frames, because there will be a lot
console.warn = () => {};
- const frameNames = scene.anims.generateFrameNames(this.getSpriteKey(female, formIndex, shiny), { zeroPad: 4, suffix: ".png", start: 1, end: 400 });
+ const frameNames = scene.anims.generateFrameNames(spriteKey, { zeroPad: 4, suffix: ".png", start: 1, end: 400 });
console.warn = originalWarn;
scene.anims.create({
- key: this.getSpriteKey(female, formIndex, shiny),
+ key: this.getSpriteKey(female, formIndex, shiny, variant),
frames: frameNames,
frameRate: 12,
repeat: -1
});
+ let spritePath = this.getSpriteAtlasPath(female, formIndex, shiny, variant).replace('variant/', '').replace(/_[1-3]$/, '');
+ const useExpSprite = scene.experimentalSprites && scene.hasExpSprite(spriteKey);
+ if (useExpSprite)
+ spritePath = `exp/${spritePath}`;
+ let variantSet: VariantSet;
+ let config = variantData;
+ spritePath.split('/').map(p => config ? config = config[p] : null);
+ variantSet = config as VariantSet;
+ if (variantSet && variantSet[variant] === 1) {
+ const populateVariantColors = (key: string): Promise => {
+ return new Promise(resolve => {
+ if (variantColorCache.hasOwnProperty(key))
+ return resolve();
+ fetch(`./images/pokemon/variant/${spritePath}.json`).then(res => res.json()).then(c => {
+ variantColorCache[key] = c;
+ resolve();
+ });
+ });
+ };
+ populateVariantColors(spriteKey).then(() => resolve());
+ return;
+ }
resolve();
});
if (startLoad) {
@@ -433,7 +474,7 @@ export abstract class PokemonSpeciesForm {
}
}
-export default class PokemonSpecies extends PokemonSpeciesForm {
+export default class PokemonSpecies extends PokemonSpeciesForm implements Localizable {
public name: string;
public pseudoLegendary: boolean;
public legendary: boolean;
@@ -445,7 +486,7 @@ export default class PokemonSpecies extends PokemonSpeciesForm {
public canChangeForm: boolean;
public forms: PokemonForm[];
- constructor(id: Species, name: string, generation: integer, pseudoLegendary: boolean, legendary: boolean, mythical: boolean, species: string,
+ constructor(id: Species, generation: integer, pseudoLegendary: boolean, legendary: boolean, mythical: boolean, species: string,
type1: Type, type2: Type, height: number, weight: number, ability1: Abilities, ability2: Abilities, abilityHidden: Abilities,
baseTotal: integer, baseHp: integer, baseAtk: integer, baseDef: integer, baseSpatk: integer, baseSpdef: integer, baseSpd: integer,
catchRate: integer, baseFriendship: integer, baseExp: integer, growthRate: GrowthRate, malePercent: number,
@@ -454,7 +495,6 @@ export default class PokemonSpecies extends PokemonSpeciesForm {
catchRate, baseFriendship, baseExp, genderDiffs);
this.speciesId = id;
this.formIndex = 0;
- this.name = name;
this.generation = generation;
this.pseudoLegendary = pseudoLegendary;
this.legendary = legendary;
@@ -465,6 +505,8 @@ export default class PokemonSpecies extends PokemonSpeciesForm {
this.genderDiffs = genderDiffs;
this.canChangeForm = !!canChangeForm;
this.forms = forms;
+
+ this.localize();
forms.forEach((form, f) => {
form.speciesId = id;
@@ -493,6 +535,10 @@ export default class PokemonSpecies extends PokemonSpeciesForm {
return this.name;
}
+ localize(): void {
+ this.name = i18next.t(`pokemon:${Species[this.speciesId].toLowerCase()}`);
+ }
+
getWildSpeciesForLevel(level: integer, allowEvolving: boolean, isBoss: boolean, gameMode: GameMode): Species {
return this.getSpeciesForLevel(level, allowEvolving, false, (isBoss ? PartyMemberStrength.WEAKER : PartyMemberStrength.AVERAGE) + (gameMode?.isEndless ? 1 : 0));
}
@@ -670,8 +716,9 @@ export default class PokemonSpecies extends PokemonSpeciesForm {
const legendary = this.legendary;
const mythical = this.mythical;
return species => {
- return pokemonEvolutions.hasOwnProperty(species.speciesId) === hasEvolution
- && pokemonPrevolutions.hasOwnProperty(species.speciesId) === hasPrevolution
+ return (pseudoLegendary || legendary || mythical ||
+ (pokemonEvolutions.hasOwnProperty(species.speciesId) === hasEvolution
+ && pokemonPrevolutions.hasOwnProperty(species.speciesId) === hasPrevolution))
&& species.pseudoLegendary === pseudoLegendary
&& species.legendary === legendary
&& species.mythical === mythical
@@ -732,282 +779,282 @@ export const allSpecies: PokemonSpecies[] = [];
export function initSpecies() {
allSpecies.push(
- new PokemonSpecies(Species.BULBASAUR, "Bulbasaur", 1, false, false, false, "Seed Pokémon", Type.GRASS, Type.POISON, 0.7, 6.9, Abilities.OVERGROW, Abilities.NONE, Abilities.CHLOROPHYLL, 318, 45, 49, 49, 65, 65, 45, 45, 50, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.IVYSAUR, "Ivysaur", 1, false, false, false, "Seed Pokémon", Type.GRASS, Type.POISON, 1, 13, Abilities.OVERGROW, Abilities.NONE, Abilities.CHLOROPHYLL, 405, 60, 62, 63, 80, 80, 60, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.VENUSAUR, "Venusaur", 1, false, false, false, "Seed Pokémon", Type.GRASS, Type.POISON, 2, 100, Abilities.OVERGROW, Abilities.NONE, Abilities.CHLOROPHYLL, 525, 80, 82, 83, 100, 100, 80, 45, 50, 263, GrowthRate.MEDIUM_SLOW, 87.5, true, true,
+ new PokemonSpecies(Species.BULBASAUR, 1, false, false, false, "Seed Pokémon", Type.GRASS, Type.POISON, 0.7, 6.9, Abilities.OVERGROW, Abilities.NONE, Abilities.CHLOROPHYLL, 318, 45, 49, 49, 65, 65, 45, 45, 50, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.IVYSAUR, 1, false, false, false, "Seed Pokémon", Type.GRASS, Type.POISON, 1, 13, Abilities.OVERGROW, Abilities.NONE, Abilities.CHLOROPHYLL, 405, 60, 62, 63, 80, 80, 60, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.VENUSAUR, 1, false, false, false, "Seed Pokémon", Type.GRASS, Type.POISON, 2, 100, Abilities.OVERGROW, Abilities.NONE, Abilities.CHLOROPHYLL, 525, 80, 82, 83, 100, 100, 80, 45, 50, 263, GrowthRate.MEDIUM_SLOW, 87.5, true, true,
new PokemonForm("Normal", "", Type.GRASS, Type.POISON, 2, 100, Abilities.OVERGROW, Abilities.NONE, Abilities.CHLOROPHYLL, 525, 80, 82, 83, 100, 100, 80, 45, 50, 263, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.GRASS, Type.POISON, 2.4, 155.5, Abilities.THICK_FAT, Abilities.THICK_FAT, Abilities.THICK_FAT, 625, 80, 100, 123, 122, 120, 80, 45, 50, 263, true),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.GRASS, Type.POISON, 24, 100, Abilities.OVERGROW, Abilities.NONE, Abilities.CHLOROPHYLL, 625, 100, 90, 120, 110, 130, 75, 45, 50, 263, true),
),
- new PokemonSpecies(Species.CHARMANDER, "Charmander", 1, false, false, false, "Lizard Pokémon", Type.FIRE, null, 0.6, 8.5, Abilities.BLAZE, Abilities.NONE, Abilities.SOLAR_POWER, 309, 39, 52, 43, 60, 50, 65, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.CHARMELEON, "Charmeleon", 1, false, false, false, "Flame Pokémon", Type.FIRE, null, 1.1, 19, Abilities.BLAZE, Abilities.NONE, Abilities.SOLAR_POWER, 405, 58, 64, 58, 80, 65, 80, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.CHARIZARD, "Charizard", 1, false, false, false, "Flame Pokémon", Type.FIRE, Type.FLYING, 1.7, 90.5, Abilities.BLAZE, Abilities.NONE, Abilities.SOLAR_POWER, 534, 78, 84, 78, 109, 85, 100, 45, 50, 267, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.CHARMANDER, 1, false, false, false, "Lizard Pokémon", Type.FIRE, null, 0.6, 8.5, Abilities.BLAZE, Abilities.NONE, Abilities.SOLAR_POWER, 309, 39, 52, 43, 60, 50, 65, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.CHARMELEON, 1, false, false, false, "Flame Pokémon", Type.FIRE, null, 1.1, 19, Abilities.BLAZE, Abilities.NONE, Abilities.SOLAR_POWER, 405, 58, 64, 58, 80, 65, 80, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.CHARIZARD, 1, false, false, false, "Flame Pokémon", Type.FIRE, Type.FLYING, 1.7, 90.5, Abilities.BLAZE, Abilities.NONE, Abilities.SOLAR_POWER, 534, 78, 84, 78, 109, 85, 100, 45, 50, 267, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
new PokemonForm("Normal", "", Type.FIRE, Type.FLYING, 1.7, 90.5, Abilities.BLAZE, Abilities.NONE, Abilities.SOLAR_POWER, 534, 78, 84, 78, 109, 85, 100, 45, 50, 267),
new PokemonForm("Mega X", SpeciesFormKey.MEGA_X, Type.FIRE, Type.DRAGON, 1.7, 110.5, Abilities.TOUGH_CLAWS, Abilities.NONE, Abilities.TOUGH_CLAWS, 634, 78, 130, 111, 130, 85, 100, 45, 50, 267),
new PokemonForm("Mega Y", SpeciesFormKey.MEGA_Y, Type.FIRE, Type.FLYING, 1.7, 100.5, Abilities.DROUGHT, Abilities.NONE, Abilities.DROUGHT, 634, 78, 104, 78, 159, 115, 100, 45, 50, 267),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.FIRE, Type.FLYING, 28, 90.5, Abilities.BLAZE, Abilities.NONE, Abilities.SOLAR_POWER, 634, 98, 100, 96, 135, 110, 95, 45, 50, 267),
),
- new PokemonSpecies(Species.SQUIRTLE, "Squirtle", 1, false, false, false, "Tiny Turtle Pokémon", Type.WATER, null, 0.5, 9, Abilities.TORRENT, Abilities.NONE, Abilities.RAIN_DISH, 314, 44, 48, 65, 50, 64, 43, 45, 50, 63, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.WARTORTLE, "Wartortle", 1, false, false, false, "Turtle Pokémon", Type.WATER, null, 1, 22.5, Abilities.TORRENT, Abilities.NONE, Abilities.RAIN_DISH, 405, 59, 63, 80, 65, 80, 58, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.BLASTOISE, "Blastoise", 1, false, false, false, "Shellfish Pokémon", Type.WATER, null, 1.6, 85.5, Abilities.TORRENT, Abilities.NONE, Abilities.RAIN_DISH, 530, 79, 83, 100, 85, 105, 78, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.SQUIRTLE, 1, false, false, false, "Tiny Turtle Pokémon", Type.WATER, null, 0.5, 9, Abilities.TORRENT, Abilities.NONE, Abilities.RAIN_DISH, 314, 44, 48, 65, 50, 64, 43, 45, 50, 63, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.WARTORTLE, 1, false, false, false, "Turtle Pokémon", Type.WATER, null, 1, 22.5, Abilities.TORRENT, Abilities.NONE, Abilities.RAIN_DISH, 405, 59, 63, 80, 65, 80, 58, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.BLASTOISE, 1, false, false, false, "Shellfish Pokémon", Type.WATER, null, 1.6, 85.5, Abilities.TORRENT, Abilities.NONE, Abilities.RAIN_DISH, 530, 79, 83, 100, 85, 105, 78, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
new PokemonForm("Normal", "", Type.WATER, null, 1.6, 85.5, Abilities.TORRENT, Abilities.NONE, Abilities.RAIN_DISH, 530, 79, 83, 100, 85, 105, 78, 45, 50, 265),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.WATER, null, 1.6, 101.1, Abilities.MEGA_LAUNCHER, Abilities.NONE, Abilities.MEGA_LAUNCHER, 630, 79, 103, 120, 135, 115, 78, 45, 50, 265),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.WATER, null, 25, 85.5, Abilities.TORRENT, Abilities.NONE, Abilities.RAIN_DISH, 630, 100, 95, 130, 105, 125, 75, 45, 50, 265),
),
- new PokemonSpecies(Species.CATERPIE, "Caterpie", 1, false, false, false, "Worm Pokémon", Type.BUG, null, 0.3, 2.9, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.RUN_AWAY, 195, 45, 30, 35, 20, 20, 45, 255, 50, 39, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.METAPOD, "Metapod", 1, false, false, false, "Cocoon Pokémon", Type.BUG, null, 0.7, 9.9, Abilities.SHED_SKIN, Abilities.NONE, Abilities.NONE, 205, 50, 20, 55, 25, 25, 30, 120, 50, 72, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BUTTERFREE, "Butterfree", 1, false, false, false, "Butterfly Pokémon", Type.BUG, Type.FLYING, 1.1, 32, Abilities.COMPOUND_EYES, Abilities.NONE, Abilities.TINTED_LENS, 395, 60, 45, 50, 90, 80, 70, 45, 50, 198, GrowthRate.MEDIUM_FAST, 50, true, true,
+ new PokemonSpecies(Species.CATERPIE, 1, false, false, false, "Worm Pokémon", Type.BUG, null, 0.3, 2.9, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.RUN_AWAY, 195, 45, 30, 35, 20, 20, 45, 255, 50, 39, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.METAPOD, 1, false, false, false, "Cocoon Pokémon", Type.BUG, null, 0.7, 9.9, Abilities.SHED_SKIN, Abilities.NONE, Abilities.NONE, 205, 50, 20, 55, 25, 25, 30, 120, 50, 72, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BUTTERFREE, 1, false, false, false, "Butterfly Pokémon", Type.BUG, Type.FLYING, 1.1, 32, Abilities.COMPOUND_EYES, Abilities.NONE, Abilities.TINTED_LENS, 395, 60, 45, 50, 90, 80, 70, 45, 50, 198, GrowthRate.MEDIUM_FAST, 50, true, true,
new PokemonForm("Normal", "", Type.BUG, Type.FLYING, 1.1, 32, Abilities.COMPOUND_EYES, Abilities.NONE, Abilities.TINTED_LENS, 395, 60, 45, 50, 90, 80, 70, 45, 50, 198, true),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.BUG, Type.FLYING, 17, 32, Abilities.COMPOUND_EYES, Abilities.NONE, Abilities.TINTED_LENS, 495, 75, 50, 75, 120, 100, 75, 45, 50, 198, true),
),
- new PokemonSpecies(Species.WEEDLE, "Weedle", 1, false, false, false, "Hairy Bug Pokémon", Type.BUG, Type.POISON, 0.3, 3.2, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.RUN_AWAY, 195, 40, 35, 30, 20, 20, 50, 255, 70, 39, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.KAKUNA, "Kakuna", 1, false, false, false, "Cocoon Pokémon", Type.BUG, Type.POISON, 0.6, 10, Abilities.SHED_SKIN, Abilities.NONE, Abilities.NONE, 205, 45, 25, 50, 25, 25, 35, 120, 70, 72, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BEEDRILL, "Beedrill", 1, false, false, false, "Poison Bee Pokémon", Type.BUG, Type.POISON, 1, 29.5, Abilities.SWARM, Abilities.NONE, Abilities.SNIPER, 395, 65, 90, 40, 45, 80, 75, 45, 70, 178, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.WEEDLE, 1, false, false, false, "Hairy Bug Pokémon", Type.BUG, Type.POISON, 0.3, 3.2, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.RUN_AWAY, 195, 40, 35, 30, 20, 20, 50, 255, 70, 39, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.KAKUNA, 1, false, false, false, "Cocoon Pokémon", Type.BUG, Type.POISON, 0.6, 10, Abilities.SHED_SKIN, Abilities.NONE, Abilities.NONE, 205, 45, 25, 50, 25, 25, 35, 120, 70, 72, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BEEDRILL, 1, false, false, false, "Poison Bee Pokémon", Type.BUG, Type.POISON, 1, 29.5, Abilities.SWARM, Abilities.NONE, Abilities.SNIPER, 395, 65, 90, 40, 45, 80, 75, 45, 70, 178, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.BUG, Type.POISON, 1, 29.5, Abilities.SWARM, Abilities.NONE, Abilities.SNIPER, 395, 65, 90, 40, 45, 80, 75, 45, 70, 178),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.BUG, Type.POISON, 1.4, 40.5, Abilities.ADAPTABILITY, Abilities.NONE, Abilities.ADAPTABILITY, 495, 65, 150, 40, 15, 80, 145, 45, 70, 178),
),
- new PokemonSpecies(Species.PIDGEY, "Pidgey", 1, false, false, false, "Tiny Bird Pokémon", Type.NORMAL, Type.FLYING, 0.3, 1.8, Abilities.KEEN_EYE, Abilities.TANGLED_FEET, Abilities.BIG_PECKS, 251, 40, 45, 40, 35, 35, 56, 255, 70, 50, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.PIDGEOTTO, "Pidgeotto", 1, false, false, false, "Bird Pokémon", Type.NORMAL, Type.FLYING, 1.1, 30, Abilities.KEEN_EYE, Abilities.TANGLED_FEET, Abilities.BIG_PECKS, 349, 63, 60, 55, 50, 50, 71, 120, 70, 122, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.PIDGEOT, "Pidgeot", 1, false, false, false, "Bird Pokémon", Type.NORMAL, Type.FLYING, 1.5, 39.5, Abilities.KEEN_EYE, Abilities.TANGLED_FEET, Abilities.BIG_PECKS, 479, 83, 80, 75, 70, 70, 101, 45, 70, 216, GrowthRate.MEDIUM_SLOW, 50, false, true,
+ new PokemonSpecies(Species.PIDGEY, 1, false, false, false, "Tiny Bird Pokémon", Type.NORMAL, Type.FLYING, 0.3, 1.8, Abilities.KEEN_EYE, Abilities.TANGLED_FEET, Abilities.BIG_PECKS, 251, 40, 45, 40, 35, 35, 56, 255, 70, 50, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.PIDGEOTTO, 1, false, false, false, "Bird Pokémon", Type.NORMAL, Type.FLYING, 1.1, 30, Abilities.KEEN_EYE, Abilities.TANGLED_FEET, Abilities.BIG_PECKS, 349, 63, 60, 55, 50, 50, 71, 120, 70, 122, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.PIDGEOT, 1, false, false, false, "Bird Pokémon", Type.NORMAL, Type.FLYING, 1.5, 39.5, Abilities.KEEN_EYE, Abilities.TANGLED_FEET, Abilities.BIG_PECKS, 479, 83, 80, 75, 70, 70, 101, 45, 70, 216, GrowthRate.MEDIUM_SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.NORMAL, Type.FLYING, 1.5, 39.5, Abilities.KEEN_EYE, Abilities.TANGLED_FEET, Abilities.BIG_PECKS, 479, 83, 80, 75, 70, 70, 101, 45, 70, 216),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.NORMAL, Type.FLYING, 2.2, 50.5, Abilities.NO_GUARD, Abilities.NO_GUARD, Abilities.NO_GUARD, 579, 83, 80, 80, 135, 80, 121, 45, 70, 216),
),
- new PokemonSpecies(Species.RATTATA, "Rattata", 1, false, false, false, "Mouse Pokémon", Type.NORMAL, null, 0.3, 3.5, Abilities.RUN_AWAY, Abilities.GUTS, Abilities.HUSTLE, 253, 30, 56, 35, 25, 35, 72, 255, 70, 51, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.RATICATE, "Raticate", 1, false, false, false, "Mouse Pokémon", Type.NORMAL, null, 0.7, 18.5, Abilities.RUN_AWAY, Abilities.GUTS, Abilities.HUSTLE, 413, 55, 81, 60, 50, 70, 97, 127, 70, 145, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.SPEAROW, "Spearow", 1, false, false, false, "Tiny Bird Pokémon", Type.NORMAL, Type.FLYING, 0.3, 2, Abilities.KEEN_EYE, Abilities.NONE, Abilities.SNIPER, 262, 40, 60, 30, 31, 31, 70, 255, 70, 52, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FEAROW, "Fearow", 1, false, false, false, "Beak Pokémon", Type.NORMAL, Type.FLYING, 1.2, 38, Abilities.KEEN_EYE, Abilities.NONE, Abilities.SNIPER, 442, 65, 90, 65, 61, 61, 100, 90, 70, 155, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.EKANS, "Ekans", 1, false, false, false, "Snake Pokémon", Type.POISON, null, 2, 6.9, Abilities.INTIMIDATE, Abilities.SHED_SKIN, Abilities.UNNERVE, 288, 35, 60, 44, 40, 54, 55, 255, 70, 58, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ARBOK, "Arbok", 1, false, false, false, "Cobra Pokémon", Type.POISON, null, 3.5, 65, Abilities.INTIMIDATE, Abilities.SHED_SKIN, Abilities.UNNERVE, 448, 60, 95, 69, 65, 79, 80, 90, 70, 157, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PIKACHU, "Pikachu", 1, false, false, false, "Mouse Pokémon", Type.ELECTRIC, null, 0.4, 6, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 320, 35, 55, 40, 50, 50, 90, 190, 50, 112, GrowthRate.MEDIUM_FAST, 50, true, true,
+ new PokemonSpecies(Species.RATTATA, 1, false, false, false, "Mouse Pokémon", Type.NORMAL, null, 0.3, 3.5, Abilities.RUN_AWAY, Abilities.GUTS, Abilities.HUSTLE, 253, 30, 56, 35, 25, 35, 72, 255, 70, 51, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.RATICATE, 1, false, false, false, "Mouse Pokémon", Type.NORMAL, null, 0.7, 18.5, Abilities.RUN_AWAY, Abilities.GUTS, Abilities.HUSTLE, 413, 55, 81, 60, 50, 70, 97, 127, 70, 145, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.SPEAROW, 1, false, false, false, "Tiny Bird Pokémon", Type.NORMAL, Type.FLYING, 0.3, 2, Abilities.KEEN_EYE, Abilities.NONE, Abilities.SNIPER, 262, 40, 60, 30, 31, 31, 70, 255, 70, 52, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FEAROW, 1, false, false, false, "Beak Pokémon", Type.NORMAL, Type.FLYING, 1.2, 38, Abilities.KEEN_EYE, Abilities.NONE, Abilities.SNIPER, 442, 65, 90, 65, 61, 61, 100, 90, 70, 155, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.EKANS, 1, false, false, false, "Snake Pokémon", Type.POISON, null, 2, 6.9, Abilities.INTIMIDATE, Abilities.SHED_SKIN, Abilities.UNNERVE, 288, 35, 60, 44, 40, 54, 55, 255, 70, 58, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ARBOK, 1, false, false, false, "Cobra Pokémon", Type.POISON, null, 3.5, 65, Abilities.INTIMIDATE, Abilities.SHED_SKIN, Abilities.UNNERVE, 448, 60, 95, 69, 65, 79, 80, 90, 70, 157, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PIKACHU, 1, false, false, false, "Mouse Pokémon", Type.ELECTRIC, null, 0.4, 6, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 320, 35, 55, 40, 50, 50, 90, 190, 50, 112, GrowthRate.MEDIUM_FAST, 50, true, true,
new PokemonForm("Normal", "", Type.ELECTRIC, null, 0.4, 6, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 320, 35, 55, 40, 50, 50, 90, 190, 50, 112, true),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.ELECTRIC, null, 21, 6, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 420, 45, 60, 65, 100, 75, 75, 190, 50, 112, true),
),
- new PokemonSpecies(Species.RAICHU, "Raichu", 1, false, false, false, "Mouse Pokémon", Type.ELECTRIC, null, 0.8, 30, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 485, 60, 90, 55, 90, 80, 110, 75, 50, 243, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.SANDSHREW, "Sandshrew", 1, false, false, false, "Mouse Pokémon", Type.GROUND, null, 0.6, 12, Abilities.SAND_VEIL, Abilities.NONE, Abilities.SAND_RUSH, 300, 50, 75, 85, 20, 30, 40, 255, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SANDSLASH, "Sandslash", 1, false, false, false, "Mouse Pokémon", Type.GROUND, null, 1, 29.5, Abilities.SAND_VEIL, Abilities.NONE, Abilities.SAND_RUSH, 450, 75, 100, 110, 45, 55, 65, 90, 50, 158, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.NIDORAN_F, "Nidoran♀", 1, false, false, false, "Poison Pin Pokémon", Type.POISON, null, 0.4, 7, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.HUSTLE, 275, 55, 47, 52, 40, 40, 41, 235, 50, 55, GrowthRate.MEDIUM_SLOW, 0, false),
- new PokemonSpecies(Species.NIDORINA, "Nidorina", 1, false, false, false, "Poison Pin Pokémon", Type.POISON, null, 0.8, 20, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.HUSTLE, 365, 70, 62, 67, 55, 55, 56, 120, 50, 128, GrowthRate.MEDIUM_SLOW, 0, false),
- new PokemonSpecies(Species.NIDOQUEEN, "Nidoqueen", 1, false, false, false, "Drill Pokémon", Type.POISON, Type.GROUND, 1.3, 60, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.SHEER_FORCE, 505, 90, 92, 87, 75, 85, 76, 45, 50, 253, GrowthRate.MEDIUM_SLOW, 0, false),
- new PokemonSpecies(Species.NIDORAN_M, "Nidoran♂", 1, false, false, false, "Poison Pin Pokémon", Type.POISON, null, 0.5, 9, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.HUSTLE, 273, 46, 57, 40, 40, 40, 50, 235, 50, 55, GrowthRate.MEDIUM_SLOW, 100, false),
- new PokemonSpecies(Species.NIDORINO, "Nidorino", 1, false, false, false, "Poison Pin Pokémon", Type.POISON, null, 0.9, 19.5, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.HUSTLE, 365, 61, 72, 57, 55, 55, 65, 120, 50, 128, GrowthRate.MEDIUM_SLOW, 100, false),
- new PokemonSpecies(Species.NIDOKING, "Nidoking", 1, false, false, false, "Drill Pokémon", Type.POISON, Type.GROUND, 1.4, 62, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.SHEER_FORCE, 505, 81, 102, 77, 85, 75, 85, 45, 50, 253, GrowthRate.MEDIUM_SLOW, 100, false),
- new PokemonSpecies(Species.CLEFAIRY, "Clefairy", 1, false, false, false, "Fairy Pokémon", Type.FAIRY, null, 0.6, 7.5, Abilities.CUTE_CHARM, Abilities.MAGIC_GUARD, Abilities.FRIEND_GUARD, 323, 70, 45, 48, 60, 65, 35, 150, 140, 113, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.CLEFABLE, "Clefable", 1, false, false, false, "Fairy Pokémon", Type.FAIRY, null, 1.3, 40, Abilities.CUTE_CHARM, Abilities.MAGIC_GUARD, Abilities.UNAWARE, 483, 95, 70, 73, 95, 90, 60, 25, 140, 242, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.VULPIX, "Vulpix", 1, false, false, false, "Fox Pokémon", Type.FIRE, null, 0.6, 9.9, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.DROUGHT, 299, 38, 41, 40, 50, 65, 65, 190, 50, 60, GrowthRate.MEDIUM_FAST, 25, false),
- new PokemonSpecies(Species.NINETALES, "Ninetales", 1, false, false, false, "Fox Pokémon", Type.FIRE, null, 1.1, 19.9, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.DROUGHT, 505, 73, 76, 75, 81, 100, 100, 75, 50, 177, GrowthRate.MEDIUM_FAST, 25, false),
- new PokemonSpecies(Species.JIGGLYPUFF, "Jigglypuff", 1, false, false, false, "Balloon Pokémon", Type.NORMAL, Type.FAIRY, 0.5, 5.5, Abilities.CUTE_CHARM, Abilities.COMPETITIVE, Abilities.FRIEND_GUARD, 270, 115, 45, 20, 45, 25, 20, 170, 50, 95, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.WIGGLYTUFF, "Wigglytuff", 1, false, false, false, "Balloon Pokémon", Type.NORMAL, Type.FAIRY, 1, 12, Abilities.CUTE_CHARM, Abilities.COMPETITIVE, Abilities.FRISK, 435, 140, 70, 45, 85, 50, 45, 50, 50, 218, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.ZUBAT, "Zubat", 1, false, false, false, "Bat Pokémon", Type.POISON, Type.FLYING, 0.8, 7.5, Abilities.INNER_FOCUS, Abilities.NONE, Abilities.INFILTRATOR, 245, 40, 45, 35, 30, 40, 55, 255, 50, 49, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.GOLBAT, "Golbat", 1, false, false, false, "Bat Pokémon", Type.POISON, Type.FLYING, 1.6, 55, Abilities.INNER_FOCUS, Abilities.NONE, Abilities.INFILTRATOR, 455, 75, 80, 70, 65, 75, 90, 90, 50, 159, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.ODDISH, "Oddish", 1, false, false, false, "Weed Pokémon", Type.GRASS, Type.POISON, 0.5, 5.4, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.RUN_AWAY, 320, 45, 50, 55, 75, 65, 30, 255, 50, 64, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GLOOM, "Gloom", 1, false, false, false, "Weed Pokémon", Type.GRASS, Type.POISON, 0.8, 8.6, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.STENCH, 395, 60, 65, 70, 85, 75, 40, 120, 50, 138, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.VILEPLUME, "Vileplume", 1, false, false, false, "Flower Pokémon", Type.GRASS, Type.POISON, 1.2, 18.6, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.EFFECT_SPORE, 490, 75, 80, 85, 110, 90, 50, 45, 50, 245, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.PARAS, "Paras", 1, false, false, false, "Mushroom Pokémon", Type.BUG, Type.GRASS, 0.3, 5.4, Abilities.EFFECT_SPORE, Abilities.DRY_SKIN, Abilities.DAMP, 285, 35, 70, 55, 45, 55, 25, 190, 70, 57, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PARASECT, "Parasect", 1, false, false, false, "Mushroom Pokémon", Type.BUG, Type.GRASS, 1, 29.5, Abilities.EFFECT_SPORE, Abilities.DRY_SKIN, Abilities.DAMP, 405, 60, 95, 80, 60, 80, 30, 75, 70, 142, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.VENONAT, "Venonat", 1, false, false, false, "Insect Pokémon", Type.BUG, Type.POISON, 1, 30, Abilities.COMPOUND_EYES, Abilities.TINTED_LENS, Abilities.RUN_AWAY, 305, 60, 55, 50, 40, 55, 45, 190, 70, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.VENOMOTH, "Venomoth", 1, false, false, false, "Poison Moth Pokémon", Type.BUG, Type.POISON, 1.5, 12.5, Abilities.SHIELD_DUST, Abilities.TINTED_LENS, Abilities.WONDER_SKIN, 450, 70, 65, 60, 90, 75, 90, 75, 70, 158, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DIGLETT, "Diglett", 1, false, false, false, "Mole Pokémon", Type.GROUND, null, 0.2, 0.8, Abilities.SAND_VEIL, Abilities.ARENA_TRAP, Abilities.SAND_FORCE, 265, 10, 55, 25, 35, 45, 95, 255, 50, 53, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DUGTRIO, "Dugtrio", 1, false, false, false, "Mole Pokémon", Type.GROUND, null, 0.7, 33.3, Abilities.SAND_VEIL, Abilities.ARENA_TRAP, Abilities.SAND_FORCE, 425, 35, 100, 50, 50, 70, 120, 50, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MEOWTH, "Meowth", 1, false, false, false, "Scratch Cat Pokémon", Type.NORMAL, null, 0.4, 4.2, Abilities.PICKUP, Abilities.TECHNICIAN, Abilities.UNNERVE, 290, 40, 45, 35, 40, 40, 90, 255, 50, 58, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.RAICHU, 1, false, false, false, "Mouse Pokémon", Type.ELECTRIC, null, 0.8, 30, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 485, 60, 90, 55, 90, 80, 110, 75, 50, 243, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.SANDSHREW, 1, false, false, false, "Mouse Pokémon", Type.GROUND, null, 0.6, 12, Abilities.SAND_VEIL, Abilities.NONE, Abilities.SAND_RUSH, 300, 50, 75, 85, 20, 30, 40, 255, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SANDSLASH, 1, false, false, false, "Mouse Pokémon", Type.GROUND, null, 1, 29.5, Abilities.SAND_VEIL, Abilities.NONE, Abilities.SAND_RUSH, 450, 75, 100, 110, 45, 55, 65, 90, 50, 158, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.NIDORAN_F, 1, false, false, false, "Poison Pin Pokémon", Type.POISON, null, 0.4, 7, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.HUSTLE, 275, 55, 47, 52, 40, 40, 41, 235, 50, 55, GrowthRate.MEDIUM_SLOW, 0, false),
+ new PokemonSpecies(Species.NIDORINA, 1, false, false, false, "Poison Pin Pokémon", Type.POISON, null, 0.8, 20, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.HUSTLE, 365, 70, 62, 67, 55, 55, 56, 120, 50, 128, GrowthRate.MEDIUM_SLOW, 0, false),
+ new PokemonSpecies(Species.NIDOQUEEN, 1, false, false, false, "Drill Pokémon", Type.POISON, Type.GROUND, 1.3, 60, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.SHEER_FORCE, 505, 90, 92, 87, 75, 85, 76, 45, 50, 253, GrowthRate.MEDIUM_SLOW, 0, false),
+ new PokemonSpecies(Species.NIDORAN_M, 1, false, false, false, "Poison Pin Pokémon", Type.POISON, null, 0.5, 9, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.HUSTLE, 273, 46, 57, 40, 40, 40, 50, 235, 50, 55, GrowthRate.MEDIUM_SLOW, 100, false),
+ new PokemonSpecies(Species.NIDORINO, 1, false, false, false, "Poison Pin Pokémon", Type.POISON, null, 0.9, 19.5, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.HUSTLE, 365, 61, 72, 57, 55, 55, 65, 120, 50, 128, GrowthRate.MEDIUM_SLOW, 100, false),
+ new PokemonSpecies(Species.NIDOKING, 1, false, false, false, "Drill Pokémon", Type.POISON, Type.GROUND, 1.4, 62, Abilities.POISON_POINT, Abilities.RIVALRY, Abilities.SHEER_FORCE, 505, 81, 102, 77, 85, 75, 85, 45, 50, 253, GrowthRate.MEDIUM_SLOW, 100, false),
+ new PokemonSpecies(Species.CLEFAIRY, 1, false, false, false, "Fairy Pokémon", Type.FAIRY, null, 0.6, 7.5, Abilities.CUTE_CHARM, Abilities.MAGIC_GUARD, Abilities.FRIEND_GUARD, 323, 70, 45, 48, 60, 65, 35, 150, 140, 113, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.CLEFABLE, 1, false, false, false, "Fairy Pokémon", Type.FAIRY, null, 1.3, 40, Abilities.CUTE_CHARM, Abilities.MAGIC_GUARD, Abilities.UNAWARE, 483, 95, 70, 73, 95, 90, 60, 25, 140, 242, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.VULPIX, 1, false, false, false, "Fox Pokémon", Type.FIRE, null, 0.6, 9.9, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.DROUGHT, 299, 38, 41, 40, 50, 65, 65, 190, 50, 60, GrowthRate.MEDIUM_FAST, 25, false),
+ new PokemonSpecies(Species.NINETALES, 1, false, false, false, "Fox Pokémon", Type.FIRE, null, 1.1, 19.9, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.DROUGHT, 505, 73, 76, 75, 81, 100, 100, 75, 50, 177, GrowthRate.MEDIUM_FAST, 25, false),
+ new PokemonSpecies(Species.JIGGLYPUFF, 1, false, false, false, "Balloon Pokémon", Type.NORMAL, Type.FAIRY, 0.5, 5.5, Abilities.CUTE_CHARM, Abilities.COMPETITIVE, Abilities.FRIEND_GUARD, 270, 115, 45, 20, 45, 25, 20, 170, 50, 95, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.WIGGLYTUFF, 1, false, false, false, "Balloon Pokémon", Type.NORMAL, Type.FAIRY, 1, 12, Abilities.CUTE_CHARM, Abilities.COMPETITIVE, Abilities.FRISK, 435, 140, 70, 45, 85, 50, 45, 50, 50, 218, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.ZUBAT, 1, false, false, false, "Bat Pokémon", Type.POISON, Type.FLYING, 0.8, 7.5, Abilities.INNER_FOCUS, Abilities.NONE, Abilities.INFILTRATOR, 245, 40, 45, 35, 30, 40, 55, 255, 50, 49, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.GOLBAT, 1, false, false, false, "Bat Pokémon", Type.POISON, Type.FLYING, 1.6, 55, Abilities.INNER_FOCUS, Abilities.NONE, Abilities.INFILTRATOR, 455, 75, 80, 70, 65, 75, 90, 90, 50, 159, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.ODDISH, 1, false, false, false, "Weed Pokémon", Type.GRASS, Type.POISON, 0.5, 5.4, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.RUN_AWAY, 320, 45, 50, 55, 75, 65, 30, 255, 50, 64, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GLOOM, 1, false, false, false, "Weed Pokémon", Type.GRASS, Type.POISON, 0.8, 8.6, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.STENCH, 395, 60, 65, 70, 85, 75, 40, 120, 50, 138, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.VILEPLUME, 1, false, false, false, "Flower Pokémon", Type.GRASS, Type.POISON, 1.2, 18.6, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.EFFECT_SPORE, 490, 75, 80, 85, 110, 90, 50, 45, 50, 245, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.PARAS, 1, false, false, false, "Mushroom Pokémon", Type.BUG, Type.GRASS, 0.3, 5.4, Abilities.EFFECT_SPORE, Abilities.DRY_SKIN, Abilities.DAMP, 285, 35, 70, 55, 45, 55, 25, 190, 70, 57, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PARASECT, 1, false, false, false, "Mushroom Pokémon", Type.BUG, Type.GRASS, 1, 29.5, Abilities.EFFECT_SPORE, Abilities.DRY_SKIN, Abilities.DAMP, 405, 60, 95, 80, 60, 80, 30, 75, 70, 142, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.VENONAT, 1, false, false, false, "Insect Pokémon", Type.BUG, Type.POISON, 1, 30, Abilities.COMPOUND_EYES, Abilities.TINTED_LENS, Abilities.RUN_AWAY, 305, 60, 55, 50, 40, 55, 45, 190, 70, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.VENOMOTH, 1, false, false, false, "Poison Moth Pokémon", Type.BUG, Type.POISON, 1.5, 12.5, Abilities.SHIELD_DUST, Abilities.TINTED_LENS, Abilities.WONDER_SKIN, 450, 70, 65, 60, 90, 75, 90, 75, 70, 158, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DIGLETT, 1, false, false, false, "Mole Pokémon", Type.GROUND, null, 0.2, 0.8, Abilities.SAND_VEIL, Abilities.ARENA_TRAP, Abilities.SAND_FORCE, 265, 10, 55, 25, 35, 45, 95, 255, 50, 53, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DUGTRIO, 1, false, false, false, "Mole Pokémon", Type.GROUND, null, 0.7, 33.3, Abilities.SAND_VEIL, Abilities.ARENA_TRAP, Abilities.SAND_FORCE, 425, 35, 100, 50, 50, 70, 120, 50, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MEOWTH, 1, false, false, false, "Scratch Cat Pokémon", Type.NORMAL, null, 0.4, 4.2, Abilities.PICKUP, Abilities.TECHNICIAN, Abilities.UNNERVE, 290, 40, 45, 35, 40, 40, 90, 255, 50, 58, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.NORMAL, null, 0.4, 4.2, Abilities.PICKUP, Abilities.TECHNICIAN, Abilities.UNNERVE, 290, 40, 45, 35, 40, 40, 90, 255, 50, 58),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.NORMAL, null, 33, 4.2, Abilities.PICKUP, Abilities.TECHNICIAN, Abilities.UNNERVE, 390, 50, 85, 60, 70, 50, 75, 255, 50, 58),
),
- new PokemonSpecies(Species.PERSIAN, "Persian", 1, false, false, false, "Classy Cat Pokémon", Type.NORMAL, null, 1, 32, Abilities.LIMBER, Abilities.TECHNICIAN, Abilities.UNNERVE, 440, 65, 70, 60, 65, 65, 115, 90, 50, 154, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PSYDUCK, "Psyduck", 1, false, false, false, "Duck Pokémon", Type.WATER, null, 0.8, 19.6, Abilities.DAMP, Abilities.CLOUD_NINE, Abilities.SWIFT_SWIM, 320, 50, 52, 48, 65, 50, 55, 190, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GOLDUCK, "Golduck", 1, false, false, false, "Duck Pokémon", Type.WATER, null, 1.7, 76.6, Abilities.DAMP, Abilities.CLOUD_NINE, Abilities.SWIFT_SWIM, 500, 80, 82, 78, 95, 80, 85, 75, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MANKEY, "Mankey", 1, false, false, false, "Pig Monkey Pokémon", Type.FIGHTING, null, 0.5, 28, Abilities.VITAL_SPIRIT, Abilities.ANGER_POINT, Abilities.DEFIANT, 305, 40, 80, 35, 35, 45, 70, 190, 70, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PRIMEAPE, "Primeape", 1, false, false, false, "Pig Monkey Pokémon", Type.FIGHTING, null, 1, 32, Abilities.VITAL_SPIRIT, Abilities.ANGER_POINT, Abilities.DEFIANT, 455, 65, 105, 60, 60, 70, 95, 75, 70, 159, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GROWLITHE, "Growlithe", 1, false, false, false, "Puppy Pokémon", Type.FIRE, null, 0.7, 19, Abilities.INTIMIDATE, Abilities.FLASH_FIRE, Abilities.JUSTIFIED, 350, 55, 70, 45, 70, 50, 60, 190, 50, 70, GrowthRate.SLOW, 75, false),
- new PokemonSpecies(Species.ARCANINE, "Arcanine", 1, false, false, false, "Legendary Pokémon", Type.FIRE, null, 1.9, 155, Abilities.INTIMIDATE, Abilities.FLASH_FIRE, Abilities.JUSTIFIED, 555, 90, 110, 80, 100, 80, 95, 75, 50, 194, GrowthRate.SLOW, 75, false),
- new PokemonSpecies(Species.POLIWAG, "Poliwag", 1, false, false, false, "Tadpole Pokémon", Type.WATER, null, 0.6, 12.4, Abilities.WATER_ABSORB, Abilities.DAMP, Abilities.SWIFT_SWIM, 300, 40, 50, 40, 40, 40, 90, 255, 50, 60, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.POLIWHIRL, "Poliwhirl", 1, false, false, false, "Tadpole Pokémon", Type.WATER, null, 1, 20, Abilities.WATER_ABSORB, Abilities.DAMP, Abilities.SWIFT_SWIM, 385, 65, 65, 65, 50, 50, 90, 120, 50, 135, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.POLIWRATH, "Poliwrath", 1, false, false, false, "Tadpole Pokémon", Type.WATER, Type.FIGHTING, 1.3, 54, Abilities.WATER_ABSORB, Abilities.DAMP, Abilities.SWIFT_SWIM, 510, 90, 95, 95, 70, 90, 70, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.ABRA, "Abra", 1, false, false, false, "Psi Pokémon", Type.PSYCHIC, null, 0.9, 19.5, Abilities.SYNCHRONIZE, Abilities.INNER_FOCUS, Abilities.MAGIC_GUARD, 310, 25, 20, 15, 105, 55, 90, 200, 50, 62, GrowthRate.MEDIUM_SLOW, 75, false),
- new PokemonSpecies(Species.KADABRA, "Kadabra", 1, false, false, false, "Psi Pokémon", Type.PSYCHIC, null, 1.3, 56.5, Abilities.SYNCHRONIZE, Abilities.INNER_FOCUS, Abilities.MAGIC_GUARD, 400, 40, 35, 30, 120, 70, 105, 100, 50, 140, GrowthRate.MEDIUM_SLOW, 75, true),
- new PokemonSpecies(Species.ALAKAZAM, "Alakazam", 1, false, false, false, "Psi Pokémon", Type.PSYCHIC, null, 1.5, 48, Abilities.SYNCHRONIZE, Abilities.INNER_FOCUS, Abilities.MAGIC_GUARD, 500, 55, 50, 45, 135, 95, 120, 50, 50, 250, GrowthRate.MEDIUM_SLOW, 75, true, true,
+ new PokemonSpecies(Species.PERSIAN, 1, false, false, false, "Classy Cat Pokémon", Type.NORMAL, null, 1, 32, Abilities.LIMBER, Abilities.TECHNICIAN, Abilities.UNNERVE, 440, 65, 70, 60, 65, 65, 115, 90, 50, 154, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PSYDUCK, 1, false, false, false, "Duck Pokémon", Type.WATER, null, 0.8, 19.6, Abilities.DAMP, Abilities.CLOUD_NINE, Abilities.SWIFT_SWIM, 320, 50, 52, 48, 65, 50, 55, 190, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GOLDUCK, 1, false, false, false, "Duck Pokémon", Type.WATER, null, 1.7, 76.6, Abilities.DAMP, Abilities.CLOUD_NINE, Abilities.SWIFT_SWIM, 500, 80, 82, 78, 95, 80, 85, 75, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MANKEY, 1, false, false, false, "Pig Monkey Pokémon", Type.FIGHTING, null, 0.5, 28, Abilities.VITAL_SPIRIT, Abilities.ANGER_POINT, Abilities.DEFIANT, 305, 40, 80, 35, 35, 45, 70, 190, 70, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PRIMEAPE, 1, false, false, false, "Pig Monkey Pokémon", Type.FIGHTING, null, 1, 32, Abilities.VITAL_SPIRIT, Abilities.ANGER_POINT, Abilities.DEFIANT, 455, 65, 105, 60, 60, 70, 95, 75, 70, 159, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GROWLITHE, 1, false, false, false, "Puppy Pokémon", Type.FIRE, null, 0.7, 19, Abilities.INTIMIDATE, Abilities.FLASH_FIRE, Abilities.JUSTIFIED, 350, 55, 70, 45, 70, 50, 60, 190, 50, 70, GrowthRate.SLOW, 75, false),
+ new PokemonSpecies(Species.ARCANINE, 1, false, false, false, "Legendary Pokémon", Type.FIRE, null, 1.9, 155, Abilities.INTIMIDATE, Abilities.FLASH_FIRE, Abilities.JUSTIFIED, 555, 90, 110, 80, 100, 80, 95, 75, 50, 194, GrowthRate.SLOW, 75, false),
+ new PokemonSpecies(Species.POLIWAG, 1, false, false, false, "Tadpole Pokémon", Type.WATER, null, 0.6, 12.4, Abilities.WATER_ABSORB, Abilities.DAMP, Abilities.SWIFT_SWIM, 300, 40, 50, 40, 40, 40, 90, 255, 50, 60, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.POLIWHIRL, 1, false, false, false, "Tadpole Pokémon", Type.WATER, null, 1, 20, Abilities.WATER_ABSORB, Abilities.DAMP, Abilities.SWIFT_SWIM, 385, 65, 65, 65, 50, 50, 90, 120, 50, 135, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.POLIWRATH, 1, false, false, false, "Tadpole Pokémon", Type.WATER, Type.FIGHTING, 1.3, 54, Abilities.WATER_ABSORB, Abilities.DAMP, Abilities.SWIFT_SWIM, 510, 90, 95, 95, 70, 90, 70, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.ABRA, 1, false, false, false, "Psi Pokémon", Type.PSYCHIC, null, 0.9, 19.5, Abilities.SYNCHRONIZE, Abilities.INNER_FOCUS, Abilities.MAGIC_GUARD, 310, 25, 20, 15, 105, 55, 90, 200, 50, 62, GrowthRate.MEDIUM_SLOW, 75, false),
+ new PokemonSpecies(Species.KADABRA, 1, false, false, false, "Psi Pokémon", Type.PSYCHIC, null, 1.3, 56.5, Abilities.SYNCHRONIZE, Abilities.INNER_FOCUS, Abilities.MAGIC_GUARD, 400, 40, 35, 30, 120, 70, 105, 100, 50, 140, GrowthRate.MEDIUM_SLOW, 75, true),
+ new PokemonSpecies(Species.ALAKAZAM, 1, false, false, false, "Psi Pokémon", Type.PSYCHIC, null, 1.5, 48, Abilities.SYNCHRONIZE, Abilities.INNER_FOCUS, Abilities.MAGIC_GUARD, 500, 55, 50, 45, 135, 95, 120, 50, 50, 250, GrowthRate.MEDIUM_SLOW, 75, true, true,
new PokemonForm("Normal", "", Type.PSYCHIC, null, 1.5, 48, Abilities.SYNCHRONIZE, Abilities.INNER_FOCUS, Abilities.MAGIC_GUARD, 500, 55, 50, 45, 135, 95, 120, 50, 50, 250, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.PSYCHIC, null, 1.2, 48, Abilities.TRACE, Abilities.TRACE, Abilities.TRACE, 600, 55, 50, 65, 175, 105, 150, 50, 50, 250, true),
),
- new PokemonSpecies(Species.MACHOP, "Machop", 1, false, false, false, "Superpower Pokémon", Type.FIGHTING, null, 0.8, 19.5, Abilities.GUTS, Abilities.NO_GUARD, Abilities.STEADFAST, 305, 70, 80, 50, 35, 35, 35, 180, 50, 61, GrowthRate.MEDIUM_SLOW, 75, false),
- new PokemonSpecies(Species.MACHOKE, "Machoke", 1, false, false, false, "Superpower Pokémon", Type.FIGHTING, null, 1.5, 70.5, Abilities.GUTS, Abilities.NO_GUARD, Abilities.STEADFAST, 405, 80, 100, 70, 50, 60, 45, 90, 50, 142, GrowthRate.MEDIUM_SLOW, 75, false),
- new PokemonSpecies(Species.MACHAMP, "Machamp", 1, false, false, false, "Superpower Pokémon", Type.FIGHTING, null, 1.6, 130, Abilities.GUTS, Abilities.NO_GUARD, Abilities.STEADFAST, 505, 90, 130, 80, 65, 85, 55, 45, 50, 253, GrowthRate.MEDIUM_SLOW, 75, false, true,
+ new PokemonSpecies(Species.MACHOP, 1, false, false, false, "Superpower Pokémon", Type.FIGHTING, null, 0.8, 19.5, Abilities.GUTS, Abilities.NO_GUARD, Abilities.STEADFAST, 305, 70, 80, 50, 35, 35, 35, 180, 50, 61, GrowthRate.MEDIUM_SLOW, 75, false),
+ new PokemonSpecies(Species.MACHOKE, 1, false, false, false, "Superpower Pokémon", Type.FIGHTING, null, 1.5, 70.5, Abilities.GUTS, Abilities.NO_GUARD, Abilities.STEADFAST, 405, 80, 100, 70, 50, 60, 45, 90, 50, 142, GrowthRate.MEDIUM_SLOW, 75, false),
+ new PokemonSpecies(Species.MACHAMP, 1, false, false, false, "Superpower Pokémon", Type.FIGHTING, null, 1.6, 130, Abilities.GUTS, Abilities.NO_GUARD, Abilities.STEADFAST, 505, 90, 130, 80, 65, 85, 55, 45, 50, 253, GrowthRate.MEDIUM_SLOW, 75, false, true,
new PokemonForm("Normal", "", Type.FIGHTING, null, 1.6, 130, Abilities.GUTS, Abilities.NO_GUARD, Abilities.STEADFAST, 505, 90, 130, 80, 65, 85, 55, 45, 50, 253),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.FIGHTING, null, 25, 130, Abilities.GUTS, Abilities.NO_GUARD, Abilities.STEADFAST, 605, 113, 170, 90, 70, 95, 67, 45, 50, 253),
),
- new PokemonSpecies(Species.BELLSPROUT, "Bellsprout", 1, false, false, false, "Flower Pokémon", Type.GRASS, Type.POISON, 0.7, 4, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.GLUTTONY, 300, 50, 75, 35, 70, 30, 40, 255, 70, 60, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.WEEPINBELL, "Weepinbell", 1, false, false, false, "Flycatcher Pokémon", Type.GRASS, Type.POISON, 1, 6.4, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.GLUTTONY, 390, 65, 90, 50, 85, 45, 55, 120, 70, 137, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.VICTREEBEL, "Victreebel", 1, false, false, false, "Flycatcher Pokémon", Type.GRASS, Type.POISON, 1.7, 15.5, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.GLUTTONY, 490, 80, 105, 65, 100, 70, 70, 45, 70, 221, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.TENTACOOL, "Tentacool", 1, false, false, false, "Jellyfish Pokémon", Type.WATER, Type.POISON, 0.9, 45.5, Abilities.CLEAR_BODY, Abilities.LIQUID_OOZE, Abilities.RAIN_DISH, 335, 40, 40, 35, 50, 100, 70, 190, 50, 67, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.TENTACRUEL, "Tentacruel", 1, false, false, false, "Jellyfish Pokémon", Type.WATER, Type.POISON, 1.6, 55, Abilities.CLEAR_BODY, Abilities.LIQUID_OOZE, Abilities.RAIN_DISH, 515, 80, 70, 65, 80, 120, 100, 60, 50, 180, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.GEODUDE, "Geodude", 1, false, false, false, "Rock Pokémon", Type.ROCK, Type.GROUND, 0.4, 20, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.SAND_VEIL, 300, 40, 80, 100, 30, 30, 20, 255, 70, 60, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GRAVELER, "Graveler", 1, false, false, false, "Rock Pokémon", Type.ROCK, Type.GROUND, 1, 105, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.SAND_VEIL, 390, 55, 95, 115, 45, 45, 35, 120, 70, 137, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GOLEM, "Golem", 1, false, false, false, "Megaton Pokémon", Type.ROCK, Type.GROUND, 1.4, 300, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.SAND_VEIL, 495, 80, 120, 130, 55, 65, 45, 45, 70, 223, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.PONYTA, "Ponyta", 1, false, false, false, "Fire Horse Pokémon", Type.FIRE, null, 1, 30, Abilities.RUN_AWAY, Abilities.FLASH_FIRE, Abilities.FLAME_BODY, 410, 50, 85, 55, 65, 65, 90, 190, 50, 82, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.RAPIDASH, "Rapidash", 1, false, false, false, "Fire Horse Pokémon", Type.FIRE, null, 1.7, 95, Abilities.RUN_AWAY, Abilities.FLASH_FIRE, Abilities.FLAME_BODY, 500, 65, 100, 70, 80, 80, 105, 60, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SLOWPOKE, "Slowpoke", 1, false, false, false, "Dopey Pokémon", Type.WATER, Type.PSYCHIC, 1.2, 36, Abilities.OBLIVIOUS, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 315, 90, 65, 65, 40, 40, 15, 190, 50, 63, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SLOWBRO, "Slowbro", 1, false, false, false, "Hermit Crab Pokémon", Type.WATER, Type.PSYCHIC, 1.6, 78.5, Abilities.OBLIVIOUS, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 490, 95, 75, 110, 100, 80, 30, 75, 50, 172, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.BELLSPROUT, 1, false, false, false, "Flower Pokémon", Type.GRASS, Type.POISON, 0.7, 4, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.GLUTTONY, 300, 50, 75, 35, 70, 30, 40, 255, 70, 60, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.WEEPINBELL, 1, false, false, false, "Flycatcher Pokémon", Type.GRASS, Type.POISON, 1, 6.4, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.GLUTTONY, 390, 65, 90, 50, 85, 45, 55, 120, 70, 137, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.VICTREEBEL, 1, false, false, false, "Flycatcher Pokémon", Type.GRASS, Type.POISON, 1.7, 15.5, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.GLUTTONY, 490, 80, 105, 65, 100, 70, 70, 45, 70, 221, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.TENTACOOL, 1, false, false, false, "Jellyfish Pokémon", Type.WATER, Type.POISON, 0.9, 45.5, Abilities.CLEAR_BODY, Abilities.LIQUID_OOZE, Abilities.RAIN_DISH, 335, 40, 40, 35, 50, 100, 70, 190, 50, 67, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.TENTACRUEL, 1, false, false, false, "Jellyfish Pokémon", Type.WATER, Type.POISON, 1.6, 55, Abilities.CLEAR_BODY, Abilities.LIQUID_OOZE, Abilities.RAIN_DISH, 515, 80, 70, 65, 80, 120, 100, 60, 50, 180, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.GEODUDE, 1, false, false, false, "Rock Pokémon", Type.ROCK, Type.GROUND, 0.4, 20, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.SAND_VEIL, 300, 40, 80, 100, 30, 30, 20, 255, 70, 60, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GRAVELER, 1, false, false, false, "Rock Pokémon", Type.ROCK, Type.GROUND, 1, 105, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.SAND_VEIL, 390, 55, 95, 115, 45, 45, 35, 120, 70, 137, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GOLEM, 1, false, false, false, "Megaton Pokémon", Type.ROCK, Type.GROUND, 1.4, 300, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.SAND_VEIL, 495, 80, 120, 130, 55, 65, 45, 45, 70, 223, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.PONYTA, 1, false, false, false, "Fire Horse Pokémon", Type.FIRE, null, 1, 30, Abilities.RUN_AWAY, Abilities.FLASH_FIRE, Abilities.FLAME_BODY, 410, 50, 85, 55, 65, 65, 90, 190, 50, 82, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.RAPIDASH, 1, false, false, false, "Fire Horse Pokémon", Type.FIRE, null, 1.7, 95, Abilities.RUN_AWAY, Abilities.FLASH_FIRE, Abilities.FLAME_BODY, 500, 65, 100, 70, 80, 80, 105, 60, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SLOWPOKE, 1, false, false, false, "Dopey Pokémon", Type.WATER, Type.PSYCHIC, 1.2, 36, Abilities.OBLIVIOUS, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 315, 90, 65, 65, 40, 40, 15, 190, 50, 63, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SLOWBRO, 1, false, false, false, "Hermit Crab Pokémon", Type.WATER, Type.PSYCHIC, 1.6, 78.5, Abilities.OBLIVIOUS, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 490, 95, 75, 110, 100, 80, 30, 75, 50, 172, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.WATER, Type.PSYCHIC, 1.6, 78.5, Abilities.OBLIVIOUS, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 490, 95, 75, 110, 100, 80, 30, 75, 50, 172),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.WATER, Type.PSYCHIC, 2, 120, Abilities.SHELL_ARMOR, Abilities.SHELL_ARMOR, Abilities.SHELL_ARMOR, 590, 95, 75, 180, 130, 80, 30, 75, 50, 172),
),
- new PokemonSpecies(Species.MAGNEMITE, "Magnemite", 1, false, false, false, "Magnet Pokémon", Type.ELECTRIC, Type.STEEL, 0.3, 6, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.ANALYTIC, 325, 25, 35, 70, 95, 55, 45, 190, 50, 65, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.MAGNETON, "Magneton", 1, false, false, false, "Magnet Pokémon", Type.ELECTRIC, Type.STEEL, 1, 60, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.ANALYTIC, 465, 50, 60, 95, 120, 70, 70, 60, 50, 163, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.FARFETCHD, "Farfetch'd", 1, false, false, false, "Wild Duck Pokémon", Type.NORMAL, Type.FLYING, 0.8, 15, Abilities.KEEN_EYE, Abilities.INNER_FOCUS, Abilities.DEFIANT, 377, 52, 90, 55, 58, 62, 60, 45, 50, 132, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DODUO, "Doduo", 1, false, false, false, "Twin Bird Pokémon", Type.NORMAL, Type.FLYING, 1.4, 39.2, Abilities.RUN_AWAY, Abilities.EARLY_BIRD, Abilities.TANGLED_FEET, 310, 35, 85, 45, 35, 35, 75, 190, 70, 62, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.DODRIO, "Dodrio", 1, false, false, false, "Triple Bird Pokémon", Type.NORMAL, Type.FLYING, 1.8, 85.2, Abilities.RUN_AWAY, Abilities.EARLY_BIRD, Abilities.TANGLED_FEET, 470, 60, 110, 70, 60, 60, 110, 45, 70, 165, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.SEEL, "Seel", 1, false, false, false, "Sea Lion Pokémon", Type.WATER, null, 1.1, 90, Abilities.THICK_FAT, Abilities.HYDRATION, Abilities.ICE_BODY, 325, 65, 45, 55, 45, 70, 45, 190, 70, 65, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DEWGONG, "Dewgong", 1, false, false, false, "Sea Lion Pokémon", Type.WATER, Type.ICE, 1.7, 120, Abilities.THICK_FAT, Abilities.HYDRATION, Abilities.ICE_BODY, 475, 90, 70, 80, 70, 95, 70, 75, 70, 166, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GRIMER, "Grimer", 1, false, false, false, "Sludge Pokémon", Type.POISON, null, 0.9, 30, Abilities.STENCH, Abilities.STICKY_HOLD, Abilities.POISON_TOUCH, 325, 80, 80, 50, 40, 50, 25, 190, 70, 65, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MUK, "Muk", 1, false, false, false, "Sludge Pokémon", Type.POISON, null, 1.2, 30, Abilities.STENCH, Abilities.STICKY_HOLD, Abilities.POISON_TOUCH, 500, 105, 105, 75, 65, 100, 50, 75, 70, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SHELLDER, "Shellder", 1, false, false, false, "Bivalve Pokémon", Type.WATER, null, 0.3, 4, Abilities.SHELL_ARMOR, Abilities.SKILL_LINK, Abilities.OVERCOAT, 305, 30, 65, 100, 45, 25, 40, 190, 50, 61, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.CLOYSTER, "Cloyster", 1, false, false, false, "Bivalve Pokémon", Type.WATER, Type.ICE, 1.5, 132.5, Abilities.SHELL_ARMOR, Abilities.SKILL_LINK, Abilities.OVERCOAT, 525, 50, 95, 180, 85, 45, 70, 60, 50, 184, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.GASTLY, "Gastly", 1, false, false, false, "Gas Pokémon", Type.GHOST, Type.POISON, 1.3, 0.1, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 310, 30, 35, 30, 100, 35, 80, 190, 50, 62, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.HAUNTER, "Haunter", 1, false, false, false, "Gas Pokémon", Type.GHOST, Type.POISON, 1.6, 0.1, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 405, 45, 50, 45, 115, 55, 95, 90, 50, 142, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GENGAR, "Gengar", 1, false, false, false, "Shadow Pokémon", Type.GHOST, Type.POISON, 1.5, 40.5, Abilities.CURSED_BODY, Abilities.NONE, Abilities.NONE, 500, 60, 65, 60, 130, 75, 110, 45, 50, 250, GrowthRate.MEDIUM_SLOW, 50, false, true,
+ new PokemonSpecies(Species.MAGNEMITE, 1, false, false, false, "Magnet Pokémon", Type.ELECTRIC, Type.STEEL, 0.3, 6, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.ANALYTIC, 325, 25, 35, 70, 95, 55, 45, 190, 50, 65, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.MAGNETON, 1, false, false, false, "Magnet Pokémon", Type.ELECTRIC, Type.STEEL, 1, 60, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.ANALYTIC, 465, 50, 60, 95, 120, 70, 70, 60, 50, 163, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.FARFETCHD, 1, false, false, false, "Wild Duck Pokémon", Type.NORMAL, Type.FLYING, 0.8, 15, Abilities.KEEN_EYE, Abilities.INNER_FOCUS, Abilities.DEFIANT, 377, 52, 90, 55, 58, 62, 60, 45, 50, 132, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DODUO, 1, false, false, false, "Twin Bird Pokémon", Type.NORMAL, Type.FLYING, 1.4, 39.2, Abilities.RUN_AWAY, Abilities.EARLY_BIRD, Abilities.TANGLED_FEET, 310, 35, 85, 45, 35, 35, 75, 190, 70, 62, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.DODRIO, 1, false, false, false, "Triple Bird Pokémon", Type.NORMAL, Type.FLYING, 1.8, 85.2, Abilities.RUN_AWAY, Abilities.EARLY_BIRD, Abilities.TANGLED_FEET, 470, 60, 110, 70, 60, 60, 110, 45, 70, 165, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.SEEL, 1, false, false, false, "Sea Lion Pokémon", Type.WATER, null, 1.1, 90, Abilities.THICK_FAT, Abilities.HYDRATION, Abilities.ICE_BODY, 325, 65, 45, 55, 45, 70, 45, 190, 70, 65, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DEWGONG, 1, false, false, false, "Sea Lion Pokémon", Type.WATER, Type.ICE, 1.7, 120, Abilities.THICK_FAT, Abilities.HYDRATION, Abilities.ICE_BODY, 475, 90, 70, 80, 70, 95, 70, 75, 70, 166, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GRIMER, 1, false, false, false, "Sludge Pokémon", Type.POISON, null, 0.9, 30, Abilities.STENCH, Abilities.STICKY_HOLD, Abilities.POISON_TOUCH, 325, 80, 80, 50, 40, 50, 25, 190, 70, 65, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MUK, 1, false, false, false, "Sludge Pokémon", Type.POISON, null, 1.2, 30, Abilities.STENCH, Abilities.STICKY_HOLD, Abilities.POISON_TOUCH, 500, 105, 105, 75, 65, 100, 50, 75, 70, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SHELLDER, 1, false, false, false, "Bivalve Pokémon", Type.WATER, null, 0.3, 4, Abilities.SHELL_ARMOR, Abilities.SKILL_LINK, Abilities.OVERCOAT, 305, 30, 65, 100, 45, 25, 40, 190, 50, 61, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.CLOYSTER, 1, false, false, false, "Bivalve Pokémon", Type.WATER, Type.ICE, 1.5, 132.5, Abilities.SHELL_ARMOR, Abilities.SKILL_LINK, Abilities.OVERCOAT, 525, 50, 95, 180, 85, 45, 70, 60, 50, 184, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.GASTLY, 1, false, false, false, "Gas Pokémon", Type.GHOST, Type.POISON, 1.3, 0.1, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 310, 30, 35, 30, 100, 35, 80, 190, 50, 62, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.HAUNTER, 1, false, false, false, "Gas Pokémon", Type.GHOST, Type.POISON, 1.6, 0.1, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 405, 45, 50, 45, 115, 55, 95, 90, 50, 142, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GENGAR, 1, false, false, false, "Shadow Pokémon", Type.GHOST, Type.POISON, 1.5, 40.5, Abilities.CURSED_BODY, Abilities.NONE, Abilities.NONE, 500, 60, 65, 60, 130, 75, 110, 45, 50, 250, GrowthRate.MEDIUM_SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.GHOST, Type.POISON, 1.5, 40.5, Abilities.CURSED_BODY, Abilities.NONE, Abilities.NONE, 500, 60, 65, 60, 130, 75, 110, 45, 50, 250),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.GHOST, Type.POISON, 1.4, 40.5, Abilities.SHADOW_TAG, Abilities.NONE, Abilities.NONE, 600, 60, 65, 80, 170, 95, 130, 45, 50, 250),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.GHOST, Type.POISON, 20, 40.5, Abilities.CURSED_BODY, Abilities.NONE, Abilities.NONE, 600, 75, 95, 85, 160, 95, 90, 45, 50, 250),
),
- new PokemonSpecies(Species.ONIX, "Onix", 1, false, false, false, "Rock Snake Pokémon", Type.ROCK, Type.GROUND, 8.8, 210, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.WEAK_ARMOR, 385, 35, 45, 160, 30, 45, 70, 45, 50, 77, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DROWZEE, "Drowzee", 1, false, false, false, "Hypnosis Pokémon", Type.PSYCHIC, null, 1, 32.4, Abilities.INSOMNIA, Abilities.FOREWARN, Abilities.INNER_FOCUS, 328, 60, 48, 45, 43, 90, 42, 190, 70, 66, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.HYPNO, "Hypno", 1, false, false, false, "Hypnosis Pokémon", Type.PSYCHIC, null, 1.6, 75.6, Abilities.INSOMNIA, Abilities.FOREWARN, Abilities.INNER_FOCUS, 483, 85, 73, 70, 73, 115, 67, 75, 70, 169, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.KRABBY, "Krabby", 1, false, false, false, "River Crab Pokémon", Type.WATER, null, 0.4, 6.5, Abilities.HYPER_CUTTER, Abilities.SHELL_ARMOR, Abilities.SHEER_FORCE, 325, 30, 105, 90, 25, 25, 50, 225, 50, 65, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.KINGLER, "Kingler", 1, false, false, false, "Pincer Pokémon", Type.WATER, null, 1.3, 60, Abilities.HYPER_CUTTER, Abilities.SHELL_ARMOR, Abilities.SHEER_FORCE, 475, 55, 130, 115, 50, 50, 75, 60, 50, 166, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.ONIX, 1, false, false, false, "Rock Snake Pokémon", Type.ROCK, Type.GROUND, 8.8, 210, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.WEAK_ARMOR, 385, 35, 45, 160, 30, 45, 70, 45, 50, 77, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DROWZEE, 1, false, false, false, "Hypnosis Pokémon", Type.PSYCHIC, null, 1, 32.4, Abilities.INSOMNIA, Abilities.FOREWARN, Abilities.INNER_FOCUS, 328, 60, 48, 45, 43, 90, 42, 190, 70, 66, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.HYPNO, 1, false, false, false, "Hypnosis Pokémon", Type.PSYCHIC, null, 1.6, 75.6, Abilities.INSOMNIA, Abilities.FOREWARN, Abilities.INNER_FOCUS, 483, 85, 73, 70, 73, 115, 67, 75, 70, 169, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.KRABBY, 1, false, false, false, "River Crab Pokémon", Type.WATER, null, 0.4, 6.5, Abilities.HYPER_CUTTER, Abilities.SHELL_ARMOR, Abilities.SHEER_FORCE, 325, 30, 105, 90, 25, 25, 50, 225, 50, 65, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.KINGLER, 1, false, false, false, "Pincer Pokémon", Type.WATER, null, 1.3, 60, Abilities.HYPER_CUTTER, Abilities.SHELL_ARMOR, Abilities.SHEER_FORCE, 475, 55, 130, 115, 50, 50, 75, 60, 50, 166, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.WATER, null, 1.3, 60, Abilities.HYPER_CUTTER, Abilities.SHELL_ARMOR, Abilities.SHEER_FORCE, 475, 55, 130, 115, 50, 50, 75, 60, 50, 166),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.WATER, null, 19, 60, Abilities.HYPER_CUTTER, Abilities.SHELL_ARMOR, Abilities.SHEER_FORCE, 575, 70, 165, 145, 60, 70, 65, 60, 50, 166),
),
- new PokemonSpecies(Species.VOLTORB, "Voltorb", 1, false, false, false, "Ball Pokémon", Type.ELECTRIC, null, 0.5, 10.4, Abilities.SOUNDPROOF, Abilities.STATIC, Abilities.AFTERMATH, 330, 40, 30, 50, 55, 55, 100, 190, 70, 66, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.ELECTRODE, "Electrode", 1, false, false, false, "Ball Pokémon", Type.ELECTRIC, null, 1.2, 66.6, Abilities.SOUNDPROOF, Abilities.STATIC, Abilities.AFTERMATH, 490, 60, 50, 70, 80, 80, 150, 60, 70, 172, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.EXEGGCUTE, "Exeggcute", 1, false, false, false, "Egg Pokémon", Type.GRASS, Type.PSYCHIC, 0.4, 2.5, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.HARVEST, 325, 60, 40, 80, 60, 45, 40, 90, 50, 65, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.EXEGGUTOR, "Exeggutor", 1, false, false, false, "Coconut Pokémon", Type.GRASS, Type.PSYCHIC, 2, 120, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.HARVEST, 530, 95, 95, 85, 125, 75, 55, 45, 50, 186, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.CUBONE, "Cubone", 1, false, false, false, "Lonely Pokémon", Type.GROUND, null, 0.4, 6.5, Abilities.ROCK_HEAD, Abilities.LIGHTNING_ROD, Abilities.BATTLE_ARMOR, 320, 50, 50, 95, 40, 50, 35, 190, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MAROWAK, "Marowak", 1, false, false, false, "Bone Keeper Pokémon", Type.GROUND, null, 1, 45, Abilities.ROCK_HEAD, Abilities.LIGHTNING_ROD, Abilities.BATTLE_ARMOR, 425, 60, 80, 110, 50, 80, 45, 75, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.HITMONLEE, "Hitmonlee", 1, false, false, false, "Kicking Pokémon", Type.FIGHTING, null, 1.5, 49.8, Abilities.LIMBER, Abilities.RECKLESS, Abilities.UNBURDEN, 455, 50, 120, 53, 35, 110, 87, 45, 50, 159, GrowthRate.MEDIUM_FAST, 100, false),
- new PokemonSpecies(Species.HITMONCHAN, "Hitmonchan", 1, false, false, false, "Punching Pokémon", Type.FIGHTING, null, 1.4, 50.2, Abilities.KEEN_EYE, Abilities.IRON_FIST, Abilities.INNER_FOCUS, 455, 50, 105, 79, 35, 110, 76, 45, 50, 159, GrowthRate.MEDIUM_FAST, 100, false),
- new PokemonSpecies(Species.LICKITUNG, "Lickitung", 1, false, false, false, "Licking Pokémon", Type.NORMAL, null, 1.2, 65.5, Abilities.OWN_TEMPO, Abilities.OBLIVIOUS, Abilities.CLOUD_NINE, 385, 90, 55, 75, 60, 75, 30, 45, 50, 77, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.KOFFING, "Koffing", 1, false, false, false, "Poison Gas Pokémon", Type.POISON, null, 0.6, 1, Abilities.LEVITATE, Abilities.NEUTRALIZING_GAS, Abilities.STENCH, 340, 40, 65, 95, 60, 45, 35, 190, 50, 68, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.WEEZING, "Weezing", 1, false, false, false, "Poison Gas Pokémon", Type.POISON, null, 1.2, 9.5, Abilities.LEVITATE, Abilities.NEUTRALIZING_GAS, Abilities.STENCH, 490, 65, 90, 120, 85, 70, 60, 60, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.RHYHORN, "Rhyhorn", 1, false, false, false, "Spikes Pokémon", Type.GROUND, Type.ROCK, 1, 115, Abilities.LIGHTNING_ROD, Abilities.ROCK_HEAD, Abilities.RECKLESS, 345, 80, 85, 95, 30, 30, 25, 120, 50, 69, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.RHYDON, "Rhydon", 1, false, false, false, "Drill Pokémon", Type.GROUND, Type.ROCK, 1.9, 120, Abilities.LIGHTNING_ROD, Abilities.ROCK_HEAD, Abilities.RECKLESS, 485, 105, 130, 120, 45, 45, 40, 60, 50, 170, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.CHANSEY, "Chansey", 1, false, false, false, "Egg Pokémon", Type.NORMAL, null, 1.1, 34.6, Abilities.NATURAL_CURE, Abilities.SERENE_GRACE, Abilities.HEALER, 450, 250, 5, 5, 35, 105, 50, 30, 140, 395, GrowthRate.FAST, 0, false),
- new PokemonSpecies(Species.TANGELA, "Tangela", 1, false, false, false, "Vine Pokémon", Type.GRASS, null, 1, 35, Abilities.CHLOROPHYLL, Abilities.LEAF_GUARD, Abilities.REGENERATOR, 435, 65, 55, 115, 100, 40, 60, 45, 50, 87, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.KANGASKHAN, "Kangaskhan", 1, false, false, false, "Parent Pokémon", Type.NORMAL, null, 2.2, 80, Abilities.EARLY_BIRD, Abilities.SCRAPPY, Abilities.INNER_FOCUS, 490, 105, 95, 80, 40, 80, 90, 45, 50, 172, GrowthRate.MEDIUM_FAST, 0, false, true,
+ new PokemonSpecies(Species.VOLTORB, 1, false, false, false, "Ball Pokémon", Type.ELECTRIC, null, 0.5, 10.4, Abilities.SOUNDPROOF, Abilities.STATIC, Abilities.AFTERMATH, 330, 40, 30, 50, 55, 55, 100, 190, 70, 66, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.ELECTRODE, 1, false, false, false, "Ball Pokémon", Type.ELECTRIC, null, 1.2, 66.6, Abilities.SOUNDPROOF, Abilities.STATIC, Abilities.AFTERMATH, 490, 60, 50, 70, 80, 80, 150, 60, 70, 172, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.EXEGGCUTE, 1, false, false, false, "Egg Pokémon", Type.GRASS, Type.PSYCHIC, 0.4, 2.5, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.HARVEST, 325, 60, 40, 80, 60, 45, 40, 90, 50, 65, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.EXEGGUTOR, 1, false, false, false, "Coconut Pokémon", Type.GRASS, Type.PSYCHIC, 2, 120, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.HARVEST, 530, 95, 95, 85, 125, 75, 55, 45, 50, 186, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.CUBONE, 1, false, false, false, "Lonely Pokémon", Type.GROUND, null, 0.4, 6.5, Abilities.ROCK_HEAD, Abilities.LIGHTNING_ROD, Abilities.BATTLE_ARMOR, 320, 50, 50, 95, 40, 50, 35, 190, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MAROWAK, 1, false, false, false, "Bone Keeper Pokémon", Type.GROUND, null, 1, 45, Abilities.ROCK_HEAD, Abilities.LIGHTNING_ROD, Abilities.BATTLE_ARMOR, 425, 60, 80, 110, 50, 80, 45, 75, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.HITMONLEE, 1, false, false, false, "Kicking Pokémon", Type.FIGHTING, null, 1.5, 49.8, Abilities.LIMBER, Abilities.RECKLESS, Abilities.UNBURDEN, 455, 50, 120, 53, 35, 110, 87, 45, 50, 159, GrowthRate.MEDIUM_FAST, 100, false),
+ new PokemonSpecies(Species.HITMONCHAN, 1, false, false, false, "Punching Pokémon", Type.FIGHTING, null, 1.4, 50.2, Abilities.KEEN_EYE, Abilities.IRON_FIST, Abilities.INNER_FOCUS, 455, 50, 105, 79, 35, 110, 76, 45, 50, 159, GrowthRate.MEDIUM_FAST, 100, false),
+ new PokemonSpecies(Species.LICKITUNG, 1, false, false, false, "Licking Pokémon", Type.NORMAL, null, 1.2, 65.5, Abilities.OWN_TEMPO, Abilities.OBLIVIOUS, Abilities.CLOUD_NINE, 385, 90, 55, 75, 60, 75, 30, 45, 50, 77, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.KOFFING, 1, false, false, false, "Poison Gas Pokémon", Type.POISON, null, 0.6, 1, Abilities.LEVITATE, Abilities.NEUTRALIZING_GAS, Abilities.STENCH, 340, 40, 65, 95, 60, 45, 35, 190, 50, 68, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.WEEZING, 1, false, false, false, "Poison Gas Pokémon", Type.POISON, null, 1.2, 9.5, Abilities.LEVITATE, Abilities.NEUTRALIZING_GAS, Abilities.STENCH, 490, 65, 90, 120, 85, 70, 60, 60, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.RHYHORN, 1, false, false, false, "Spikes Pokémon", Type.GROUND, Type.ROCK, 1, 115, Abilities.LIGHTNING_ROD, Abilities.ROCK_HEAD, Abilities.RECKLESS, 345, 80, 85, 95, 30, 30, 25, 120, 50, 69, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.RHYDON, 1, false, false, false, "Drill Pokémon", Type.GROUND, Type.ROCK, 1.9, 120, Abilities.LIGHTNING_ROD, Abilities.ROCK_HEAD, Abilities.RECKLESS, 485, 105, 130, 120, 45, 45, 40, 60, 50, 170, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.CHANSEY, 1, false, false, false, "Egg Pokémon", Type.NORMAL, null, 1.1, 34.6, Abilities.NATURAL_CURE, Abilities.SERENE_GRACE, Abilities.HEALER, 450, 250, 5, 5, 35, 105, 50, 30, 140, 395, GrowthRate.FAST, 0, false),
+ new PokemonSpecies(Species.TANGELA, 1, false, false, false, "Vine Pokémon", Type.GRASS, null, 1, 35, Abilities.CHLOROPHYLL, Abilities.LEAF_GUARD, Abilities.REGENERATOR, 435, 65, 55, 115, 100, 40, 60, 45, 50, 87, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.KANGASKHAN, 1, false, false, false, "Parent Pokémon", Type.NORMAL, null, 2.2, 80, Abilities.EARLY_BIRD, Abilities.SCRAPPY, Abilities.INNER_FOCUS, 490, 105, 95, 80, 40, 80, 90, 45, 50, 172, GrowthRate.MEDIUM_FAST, 0, false, true,
new PokemonForm("Normal", "", Type.NORMAL, null, 2.2, 80, Abilities.EARLY_BIRD, Abilities.SCRAPPY, Abilities.INNER_FOCUS, 490, 105, 95, 80, 40, 80, 90, 45, 50, 172),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.NORMAL, null, 2.2, 100, Abilities.PARENTAL_BOND, Abilities.PARENTAL_BOND, Abilities.PARENTAL_BOND, 590, 105, 125, 100, 60, 100, 100, 45, 50, 172),
),
- new PokemonSpecies(Species.HORSEA, "Horsea", 1, false, false, false, "Dragon Pokémon", Type.WATER, null, 0.4, 8, Abilities.SWIFT_SWIM, Abilities.SNIPER, Abilities.DAMP, 295, 30, 40, 70, 70, 25, 60, 225, 50, 59, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SEADRA, "Seadra", 1, false, false, false, "Dragon Pokémon", Type.WATER, null, 1.2, 25, Abilities.POISON_POINT, Abilities.SNIPER, Abilities.DAMP, 440, 55, 65, 95, 95, 45, 85, 75, 50, 154, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GOLDEEN, "Goldeen", 1, false, false, false, "Goldfish Pokémon", Type.WATER, null, 0.6, 15, Abilities.SWIFT_SWIM, Abilities.WATER_VEIL, Abilities.LIGHTNING_ROD, 320, 45, 67, 60, 35, 50, 63, 225, 50, 64, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.SEAKING, "Seaking", 1, false, false, false, "Goldfish Pokémon", Type.WATER, null, 1.3, 39, Abilities.SWIFT_SWIM, Abilities.WATER_VEIL, Abilities.LIGHTNING_ROD, 450, 80, 92, 65, 65, 80, 68, 60, 50, 158, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.STARYU, "Staryu", 1, false, false, false, "Star Shape Pokémon", Type.WATER, null, 0.8, 34.5, Abilities.ILLUMINATE, Abilities.NATURAL_CURE, Abilities.ANALYTIC, 340, 30, 45, 55, 70, 55, 85, 225, 50, 68, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.STARMIE, "Starmie", 1, false, false, false, "Mysterious Pokémon", Type.WATER, Type.PSYCHIC, 1.1, 80, Abilities.ILLUMINATE, Abilities.NATURAL_CURE, Abilities.ANALYTIC, 520, 60, 75, 85, 100, 85, 115, 60, 50, 182, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.MR_MIME, "Mr. Mime", 1, false, false, false, "Barrier Pokémon", Type.PSYCHIC, Type.FAIRY, 1.3, 54.5, Abilities.SOUNDPROOF, Abilities.FILTER, Abilities.TECHNICIAN, 460, 40, 45, 65, 100, 120, 90, 45, 50, 161, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SCYTHER, "Scyther", 1, false, false, false, "Mantis Pokémon", Type.BUG, Type.FLYING, 1.5, 56, Abilities.SWARM, Abilities.TECHNICIAN, Abilities.STEADFAST, 500, 70, 110, 80, 55, 80, 105, 45, 50, 100, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.JYNX, "Jynx", 1, false, false, false, "Human Shape Pokémon", Type.ICE, Type.PSYCHIC, 1.4, 40.6, Abilities.OBLIVIOUS, Abilities.FOREWARN, Abilities.DRY_SKIN, 455, 65, 50, 35, 115, 95, 95, 45, 50, 159, GrowthRate.MEDIUM_FAST, 0, false),
- new PokemonSpecies(Species.ELECTABUZZ, "Electabuzz", 1, false, false, false, "Electric Pokémon", Type.ELECTRIC, null, 1.1, 30, Abilities.STATIC, Abilities.NONE, Abilities.VITAL_SPIRIT, 490, 65, 83, 57, 95, 85, 105, 45, 50, 172, GrowthRate.MEDIUM_FAST, 75, false),
- new PokemonSpecies(Species.MAGMAR, "Magmar", 1, false, false, false, "Spitfire Pokémon", Type.FIRE, null, 1.3, 44.5, Abilities.FLAME_BODY, Abilities.NONE, Abilities.VITAL_SPIRIT, 495, 65, 95, 57, 100, 85, 93, 45, 50, 173, GrowthRate.MEDIUM_FAST, 75, false),
- new PokemonSpecies(Species.PINSIR, "Pinsir", 1, false, false, false, "Stag Beetle Pokémon", Type.BUG, null, 1.5, 55, Abilities.HYPER_CUTTER, Abilities.MOLD_BREAKER, Abilities.MOXIE, 500, 65, 125, 100, 55, 70, 85, 45, 50, 175, GrowthRate.SLOW, 50, false, true,
+ new PokemonSpecies(Species.HORSEA, 1, false, false, false, "Dragon Pokémon", Type.WATER, null, 0.4, 8, Abilities.SWIFT_SWIM, Abilities.SNIPER, Abilities.DAMP, 295, 30, 40, 70, 70, 25, 60, 225, 50, 59, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SEADRA, 1, false, false, false, "Dragon Pokémon", Type.WATER, null, 1.2, 25, Abilities.POISON_POINT, Abilities.SNIPER, Abilities.DAMP, 440, 55, 65, 95, 95, 45, 85, 75, 50, 154, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GOLDEEN, 1, false, false, false, "Goldfish Pokémon", Type.WATER, null, 0.6, 15, Abilities.SWIFT_SWIM, Abilities.WATER_VEIL, Abilities.LIGHTNING_ROD, 320, 45, 67, 60, 35, 50, 63, 225, 50, 64, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.SEAKING, 1, false, false, false, "Goldfish Pokémon", Type.WATER, null, 1.3, 39, Abilities.SWIFT_SWIM, Abilities.WATER_VEIL, Abilities.LIGHTNING_ROD, 450, 80, 92, 65, 65, 80, 68, 60, 50, 158, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.STARYU, 1, false, false, false, "Star Shape Pokémon", Type.WATER, null, 0.8, 34.5, Abilities.ILLUMINATE, Abilities.NATURAL_CURE, Abilities.ANALYTIC, 340, 30, 45, 55, 70, 55, 85, 225, 50, 68, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.STARMIE, 1, false, false, false, "Mysterious Pokémon", Type.WATER, Type.PSYCHIC, 1.1, 80, Abilities.ILLUMINATE, Abilities.NATURAL_CURE, Abilities.ANALYTIC, 520, 60, 75, 85, 100, 85, 115, 60, 50, 182, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.MR_MIME, 1, false, false, false, "Barrier Pokémon", Type.PSYCHIC, Type.FAIRY, 1.3, 54.5, Abilities.SOUNDPROOF, Abilities.FILTER, Abilities.TECHNICIAN, 460, 40, 45, 65, 100, 120, 90, 45, 50, 161, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SCYTHER, 1, false, false, false, "Mantis Pokémon", Type.BUG, Type.FLYING, 1.5, 56, Abilities.SWARM, Abilities.TECHNICIAN, Abilities.STEADFAST, 500, 70, 110, 80, 55, 80, 105, 45, 50, 100, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.JYNX, 1, false, false, false, "Human Shape Pokémon", Type.ICE, Type.PSYCHIC, 1.4, 40.6, Abilities.OBLIVIOUS, Abilities.FOREWARN, Abilities.DRY_SKIN, 455, 65, 50, 35, 115, 95, 95, 45, 50, 159, GrowthRate.MEDIUM_FAST, 0, false),
+ new PokemonSpecies(Species.ELECTABUZZ, 1, false, false, false, "Electric Pokémon", Type.ELECTRIC, null, 1.1, 30, Abilities.STATIC, Abilities.NONE, Abilities.VITAL_SPIRIT, 490, 65, 83, 57, 95, 85, 105, 45, 50, 172, GrowthRate.MEDIUM_FAST, 75, false),
+ new PokemonSpecies(Species.MAGMAR, 1, false, false, false, "Spitfire Pokémon", Type.FIRE, null, 1.3, 44.5, Abilities.FLAME_BODY, Abilities.NONE, Abilities.VITAL_SPIRIT, 495, 65, 95, 57, 100, 85, 93, 45, 50, 173, GrowthRate.MEDIUM_FAST, 75, false),
+ new PokemonSpecies(Species.PINSIR, 1, false, false, false, "Stag Beetle Pokémon", Type.BUG, null, 1.5, 55, Abilities.HYPER_CUTTER, Abilities.MOLD_BREAKER, Abilities.MOXIE, 500, 65, 125, 100, 55, 70, 85, 45, 50, 175, GrowthRate.SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.BUG, null, 1.5, 55, Abilities.HYPER_CUTTER, Abilities.MOLD_BREAKER, Abilities.MOXIE, 500, 65, 125, 100, 55, 70, 85, 45, 50, 175),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.BUG, Type.FLYING, 1.7, 59, Abilities.AERILATE, Abilities.AERILATE, Abilities.AERILATE, 600, 65, 155, 120, 65, 90, 105, 45, 50, 175),
),
- new PokemonSpecies(Species.TAUROS, "Tauros", 1, false, false, false, "Wild Bull Pokémon", Type.NORMAL, null, 1.4, 88.4, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.SHEER_FORCE, 490, 75, 100, 95, 40, 70, 110, 45, 50, 172, GrowthRate.SLOW, 100, false),
- new PokemonSpecies(Species.MAGIKARP, "Magikarp", 1, false, false, false, "Fish Pokémon", Type.WATER, null, 0.9, 10, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.RATTLED, 200, 20, 10, 55, 15, 20, 80, 255, 50, 40, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.GYARADOS, "Gyarados", 1, false, false, false, "Atrocious Pokémon", Type.WATER, Type.FLYING, 6.5, 235, Abilities.INTIMIDATE, Abilities.NONE, Abilities.MOXIE, 540, 95, 125, 79, 60, 100, 81, 45, 50, 189, GrowthRate.SLOW, 50, true, true,
+ new PokemonSpecies(Species.TAUROS, 1, false, false, false, "Wild Bull Pokémon", Type.NORMAL, null, 1.4, 88.4, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.SHEER_FORCE, 490, 75, 100, 95, 40, 70, 110, 45, 50, 172, GrowthRate.SLOW, 100, false),
+ new PokemonSpecies(Species.MAGIKARP, 1, false, false, false, "Fish Pokémon", Type.WATER, null, 0.9, 10, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.RATTLED, 200, 20, 10, 55, 15, 20, 80, 255, 50, 40, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.GYARADOS, 1, false, false, false, "Atrocious Pokémon", Type.WATER, Type.FLYING, 6.5, 235, Abilities.INTIMIDATE, Abilities.NONE, Abilities.MOXIE, 540, 95, 125, 79, 60, 100, 81, 45, 50, 189, GrowthRate.SLOW, 50, true, true,
new PokemonForm("Normal", "", Type.WATER, Type.FLYING, 6.5, 235, Abilities.INTIMIDATE, Abilities.NONE, Abilities.MOXIE, 540, 95, 125, 79, 60, 100, 81, 45, 50, 189, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.WATER, Type.DARK, 6.5, 305, Abilities.MOLD_BREAKER, Abilities.MOLD_BREAKER, Abilities.MOLD_BREAKER, 640, 95, 155, 109, 70, 130, 81, 45, 50, 189, true),
),
- new PokemonSpecies(Species.LAPRAS, "Lapras", 1, false, false, false, "Transport Pokémon", Type.WATER, Type.ICE, 2.5, 220, Abilities.WATER_ABSORB, Abilities.SHELL_ARMOR, Abilities.HYDRATION, 535, 130, 85, 80, 85, 95, 60, 45, 50, 187, GrowthRate.SLOW, 50, false, true,
+ new PokemonSpecies(Species.LAPRAS, 1, false, false, false, "Transport Pokémon", Type.WATER, Type.ICE, 2.5, 220, Abilities.WATER_ABSORB, Abilities.SHELL_ARMOR, Abilities.HYDRATION, 535, 130, 85, 80, 85, 95, 60, 45, 50, 187, GrowthRate.SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.WATER, Type.ICE, 2.5, 220, Abilities.WATER_ABSORB, Abilities.SHELL_ARMOR, Abilities.HYDRATION, 535, 130, 85, 80, 85, 95, 60, 45, 50, 187),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.WATER, Type.ICE, 24, 220, Abilities.WATER_ABSORB, Abilities.SHELL_ARMOR, Abilities.HYDRATION, 635, 160, 95, 110, 95, 125, 50, 45, 50, 187),
),
- new PokemonSpecies(Species.DITTO, "Ditto", 1, false, false, false, "Transform Pokémon", Type.NORMAL, null, 0.3, 4, Abilities.LIMBER, Abilities.NONE, Abilities.IMPOSTER, 288, 48, 48, 48, 48, 48, 48, 35, 50, 101, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.EEVEE, "Eevee", 1, false, false, false, "Evolution Pokémon", Type.NORMAL, null, 0.3, 6.5, Abilities.RUN_AWAY, Abilities.ADAPTABILITY, Abilities.ANTICIPATION, 325, 55, 55, 50, 45, 65, 55, 45, 50, 65, GrowthRate.MEDIUM_FAST, 87.5, false, true,
+ new PokemonSpecies(Species.DITTO, 1, false, false, false, "Transform Pokémon", Type.NORMAL, null, 0.3, 4, Abilities.LIMBER, Abilities.NONE, Abilities.IMPOSTER, 288, 48, 48, 48, 48, 48, 48, 35, 50, 101, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.EEVEE, 1, false, false, false, "Evolution Pokémon", Type.NORMAL, null, 0.3, 6.5, Abilities.RUN_AWAY, Abilities.ADAPTABILITY, Abilities.ANTICIPATION, 325, 55, 55, 50, 45, 65, 55, 45, 50, 65, GrowthRate.MEDIUM_FAST, 87.5, false, true,
new PokemonForm("Normal", "", Type.NORMAL, null, 0.3, 6.5, Abilities.RUN_AWAY, Abilities.ADAPTABILITY, Abilities.ANTICIPATION, 325, 55, 55, 50, 45, 65, 55, 45, 50, 65),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.NORMAL, null, 18, 6.5, Abilities.RUN_AWAY, Abilities.ADAPTABILITY, Abilities.ANTICIPATION, 425, 70, 75, 80, 60, 95, 45, 45, 50, 65),
),
- new PokemonSpecies(Species.VAPOREON, "Vaporeon", 1, false, false, false, "Bubble Jet Pokémon", Type.WATER, null, 1, 29, Abilities.WATER_ABSORB, Abilities.NONE, Abilities.HYDRATION, 525, 130, 65, 60, 110, 95, 65, 45, 50, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.JOLTEON, "Jolteon", 1, false, false, false, "Lightning Pokémon", Type.ELECTRIC, null, 0.8, 24.5, Abilities.VOLT_ABSORB, Abilities.NONE, Abilities.QUICK_FEET, 525, 65, 65, 60, 110, 95, 130, 45, 50, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.FLAREON, "Flareon", 1, false, false, false, "Flame Pokémon", Type.FIRE, null, 0.9, 25, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.GUTS, 525, 65, 130, 60, 95, 110, 65, 45, 50, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.PORYGON, "Porygon", 1, false, false, false, "Virtual Pokémon", Type.NORMAL, null, 0.8, 36.5, Abilities.TRACE, Abilities.DOWNLOAD, Abilities.ANALYTIC, 395, 65, 60, 70, 85, 75, 40, 45, 50, 79, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.OMANYTE, "Omanyte", 1, false, false, false, "Spiral Pokémon", Type.ROCK, Type.WATER, 0.4, 7.5, Abilities.SWIFT_SWIM, Abilities.SHELL_ARMOR, Abilities.WEAK_ARMOR, 355, 35, 40, 100, 90, 55, 35, 45, 50, 71, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.OMASTAR, "Omastar", 1, false, false, false, "Spiral Pokémon", Type.ROCK, Type.WATER, 1, 35, Abilities.SWIFT_SWIM, Abilities.SHELL_ARMOR, Abilities.WEAK_ARMOR, 495, 70, 60, 125, 115, 70, 55, 45, 50, 173, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.KABUTO, "Kabuto", 1, false, false, false, "Shellfish Pokémon", Type.ROCK, Type.WATER, 0.5, 11.5, Abilities.SWIFT_SWIM, Abilities.BATTLE_ARMOR, Abilities.WEAK_ARMOR, 355, 30, 80, 90, 55, 45, 55, 45, 50, 71, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.KABUTOPS, "Kabutops", 1, false, false, false, "Shellfish Pokémon", Type.ROCK, Type.WATER, 1.3, 40.5, Abilities.SWIFT_SWIM, Abilities.BATTLE_ARMOR, Abilities.WEAK_ARMOR, 495, 60, 115, 105, 65, 70, 80, 45, 50, 173, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.AERODACTYL, "Aerodactyl", 1, false, false, false, "Fossil Pokémon", Type.ROCK, Type.FLYING, 1.8, 59, Abilities.ROCK_HEAD, Abilities.PRESSURE, Abilities.UNNERVE, 515, 80, 105, 65, 60, 75, 130, 45, 50, 180, GrowthRate.SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.VAPOREON, 1, false, false, false, "Bubble Jet Pokémon", Type.WATER, null, 1, 29, Abilities.WATER_ABSORB, Abilities.NONE, Abilities.HYDRATION, 525, 130, 65, 60, 110, 95, 65, 45, 50, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.JOLTEON, 1, false, false, false, "Lightning Pokémon", Type.ELECTRIC, null, 0.8, 24.5, Abilities.VOLT_ABSORB, Abilities.NONE, Abilities.QUICK_FEET, 525, 65, 65, 60, 110, 95, 130, 45, 50, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.FLAREON, 1, false, false, false, "Flame Pokémon", Type.FIRE, null, 0.9, 25, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.GUTS, 525, 65, 130, 60, 95, 110, 65, 45, 50, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.PORYGON, 1, false, false, false, "Virtual Pokémon", Type.NORMAL, null, 0.8, 36.5, Abilities.TRACE, Abilities.DOWNLOAD, Abilities.ANALYTIC, 395, 65, 60, 70, 85, 75, 40, 45, 50, 79, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.OMANYTE, 1, false, false, false, "Spiral Pokémon", Type.ROCK, Type.WATER, 0.4, 7.5, Abilities.SWIFT_SWIM, Abilities.SHELL_ARMOR, Abilities.WEAK_ARMOR, 355, 35, 40, 100, 90, 55, 35, 45, 50, 71, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.OMASTAR, 1, false, false, false, "Spiral Pokémon", Type.ROCK, Type.WATER, 1, 35, Abilities.SWIFT_SWIM, Abilities.SHELL_ARMOR, Abilities.WEAK_ARMOR, 495, 70, 60, 125, 115, 70, 55, 45, 50, 173, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.KABUTO, 1, false, false, false, "Shellfish Pokémon", Type.ROCK, Type.WATER, 0.5, 11.5, Abilities.SWIFT_SWIM, Abilities.BATTLE_ARMOR, Abilities.WEAK_ARMOR, 355, 30, 80, 90, 55, 45, 55, 45, 50, 71, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.KABUTOPS, 1, false, false, false, "Shellfish Pokémon", Type.ROCK, Type.WATER, 1.3, 40.5, Abilities.SWIFT_SWIM, Abilities.BATTLE_ARMOR, Abilities.WEAK_ARMOR, 495, 60, 115, 105, 65, 70, 80, 45, 50, 173, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.AERODACTYL, 1, false, false, false, "Fossil Pokémon", Type.ROCK, Type.FLYING, 1.8, 59, Abilities.ROCK_HEAD, Abilities.PRESSURE, Abilities.UNNERVE, 515, 80, 105, 65, 60, 75, 130, 45, 50, 180, GrowthRate.SLOW, 87.5, false, true,
new PokemonForm("Normal", "", Type.ROCK, Type.FLYING, 1.8, 59, Abilities.ROCK_HEAD, Abilities.PRESSURE, Abilities.UNNERVE, 515, 80, 105, 65, 60, 75, 130, 45, 50, 180),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.ROCK, Type.FLYING, 2.1, 79, Abilities.TOUGH_CLAWS, Abilities.TOUGH_CLAWS, Abilities.TOUGH_CLAWS, 615, 80, 135, 85, 70, 95, 150, 45, 50, 180),
),
- new PokemonSpecies(Species.SNORLAX, "Snorlax", 1, false, false, false, "Sleeping Pokémon", Type.NORMAL, null, 2.1, 460, Abilities.IMMUNITY, Abilities.THICK_FAT, Abilities.GLUTTONY, 540, 160, 110, 65, 65, 110, 30, 25, 50, 189, GrowthRate.SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.SNORLAX, 1, false, false, false, "Sleeping Pokémon", Type.NORMAL, null, 2.1, 460, Abilities.IMMUNITY, Abilities.THICK_FAT, Abilities.GLUTTONY, 540, 160, 110, 65, 65, 110, 30, 25, 50, 189, GrowthRate.SLOW, 87.5, false, true,
new PokemonForm("Normal", "", Type.NORMAL, null, 2.1, 460, Abilities.IMMUNITY, Abilities.THICK_FAT, Abilities.GLUTTONY, 540, 160, 110, 65, 65, 110, 30, 25, 50, 189),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.NORMAL, null, 35, 460, Abilities.IMMUNITY, Abilities.THICK_FAT, Abilities.GLUTTONY, 640, 200, 130, 85, 75, 130, 20, 25, 50, 189),
),
- new PokemonSpecies(Species.ARTICUNO, "Articuno", 1, true, false, false, "Freeze Pokémon", Type.ICE, Type.FLYING, 1.7, 55.4, Abilities.PRESSURE, Abilities.NONE, Abilities.SNOW_CLOAK, 580, 90, 85, 100, 95, 125, 85, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.ZAPDOS, "Zapdos", 1, true, false, false, "Electric Pokémon", Type.ELECTRIC, Type.FLYING, 1.6, 52.6, Abilities.PRESSURE, Abilities.NONE, Abilities.STATIC, 580, 90, 90, 85, 125, 90, 100, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.MOLTRES, "Moltres", 1, true, false, false, "Flame Pokémon", Type.FIRE, Type.FLYING, 2, 60, Abilities.PRESSURE, Abilities.NONE, Abilities.FLAME_BODY, 580, 90, 100, 90, 125, 85, 90, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.DRATINI, "Dratini", 1, false, false, false, "Dragon Pokémon", Type.DRAGON, null, 1.8, 3.3, Abilities.SHED_SKIN, Abilities.NONE, Abilities.MARVEL_SCALE, 300, 41, 64, 45, 50, 50, 50, 45, 35, 60, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.DRAGONAIR, "Dragonair", 1, false, false, false, "Dragon Pokémon", Type.DRAGON, null, 4, 16.5, Abilities.SHED_SKIN, Abilities.NONE, Abilities.MARVEL_SCALE, 420, 61, 84, 65, 70, 70, 70, 45, 35, 147, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.DRAGONITE, "Dragonite", 1, false, false, false, "Dragon Pokémon", Type.DRAGON, Type.FLYING, 2.2, 210, Abilities.INNER_FOCUS, Abilities.NONE, Abilities.MULTISCALE, 600, 91, 134, 95, 100, 100, 80, 45, 35, 300, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.MEWTWO, "Mewtwo", 1, false, true, false, "Genetic Pokémon", Type.PSYCHIC, null, 2, 122, Abilities.PRESSURE, Abilities.NONE, Abilities.UNNERVE, 680, 106, 110, 90, 154, 90, 130, 3, 0, 340, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.ARTICUNO, 1, true, false, false, "Freeze Pokémon", Type.ICE, Type.FLYING, 1.7, 55.4, Abilities.PRESSURE, Abilities.NONE, Abilities.SNOW_CLOAK, 580, 90, 85, 100, 95, 125, 85, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.ZAPDOS, 1, true, false, false, "Electric Pokémon", Type.ELECTRIC, Type.FLYING, 1.6, 52.6, Abilities.PRESSURE, Abilities.NONE, Abilities.STATIC, 580, 90, 90, 85, 125, 90, 100, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.MOLTRES, 1, true, false, false, "Flame Pokémon", Type.FIRE, Type.FLYING, 2, 60, Abilities.PRESSURE, Abilities.NONE, Abilities.FLAME_BODY, 580, 90, 100, 90, 125, 85, 90, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.DRATINI, 1, false, false, false, "Dragon Pokémon", Type.DRAGON, null, 1.8, 3.3, Abilities.SHED_SKIN, Abilities.NONE, Abilities.MARVEL_SCALE, 300, 41, 64, 45, 50, 50, 50, 45, 35, 60, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.DRAGONAIR, 1, false, false, false, "Dragon Pokémon", Type.DRAGON, null, 4, 16.5, Abilities.SHED_SKIN, Abilities.NONE, Abilities.MARVEL_SCALE, 420, 61, 84, 65, 70, 70, 70, 45, 35, 147, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.DRAGONITE, 1, false, false, false, "Dragon Pokémon", Type.DRAGON, Type.FLYING, 2.2, 210, Abilities.INNER_FOCUS, Abilities.NONE, Abilities.MULTISCALE, 600, 91, 134, 95, 100, 100, 80, 45, 35, 300, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.MEWTWO, 1, false, true, false, "Genetic Pokémon", Type.PSYCHIC, null, 2, 122, Abilities.PRESSURE, Abilities.NONE, Abilities.UNNERVE, 680, 106, 110, 90, 154, 90, 130, 3, 0, 340, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.PSYCHIC, null, 2, 122, Abilities.PRESSURE, Abilities.NONE, Abilities.UNNERVE, 680, 106, 110, 90, 154, 90, 130, 3, 0, 340),
new PokemonForm("Mega X", SpeciesFormKey.MEGA_X, Type.PSYCHIC, Type.FIGHTING, 2.3, 127, Abilities.STEADFAST, Abilities.NONE, Abilities.STEADFAST, 780, 106, 190, 100, 154, 100, 130, 3, 0, 340),
new PokemonForm("Mega Y", SpeciesFormKey.MEGA_Y, Type.PSYCHIC, null, 1.5, 33, Abilities.INSOMNIA, Abilities.NONE, Abilities.INSOMNIA, 780, 106, 150, 70, 194, 120, 140, 3, 0, 340),
),
- new PokemonSpecies(Species.MEW, "Mew", 1, false, false, true, "New Species Pokémon", Type.PSYCHIC, null, 0.4, 4, Abilities.SYNCHRONIZE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 45, 100, 300, GrowthRate.MEDIUM_SLOW, null, false),
- new PokemonSpecies(Species.CHIKORITA, "Chikorita", 2, false, false, false, "Leaf Pokémon", Type.GRASS, null, 0.9, 6.4, Abilities.OVERGROW, Abilities.NONE, Abilities.LEAF_GUARD, 318, 45, 49, 65, 49, 65, 45, 45, 70, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.BAYLEEF, "Bayleef", 2, false, false, false, "Leaf Pokémon", Type.GRASS, null, 1.2, 15.8, Abilities.OVERGROW, Abilities.NONE, Abilities.LEAF_GUARD, 405, 60, 62, 80, 63, 80, 60, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.MEGANIUM, "Meganium", 2, false, false, false, "Herb Pokémon", Type.GRASS, null, 1.8, 100.5, Abilities.OVERGROW, Abilities.NONE, Abilities.LEAF_GUARD, 525, 80, 82, 100, 83, 100, 80, 45, 70, 236, GrowthRate.MEDIUM_SLOW, 87.5, true),
- new PokemonSpecies(Species.CYNDAQUIL, "Cyndaquil", 2, false, false, false, "Fire Mouse Pokémon", Type.FIRE, null, 0.5, 7.9, Abilities.BLAZE, Abilities.NONE, Abilities.FLASH_FIRE, 309, 39, 52, 43, 60, 50, 65, 45, 70, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.QUILAVA, "Quilava", 2, false, false, false, "Volcano Pokémon", Type.FIRE, null, 0.9, 19, Abilities.BLAZE, Abilities.NONE, Abilities.FLASH_FIRE, 405, 58, 64, 58, 80, 65, 80, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.TYPHLOSION, "Typhlosion", 2, false, false, false, "Volcano Pokémon", Type.FIRE, null, 1.7, 79.5, Abilities.BLAZE, Abilities.NONE, Abilities.FLASH_FIRE, 534, 78, 84, 78, 109, 85, 100, 45, 70, 240, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.TOTODILE, "Totodile", 2, false, false, false, "Big Jaw Pokémon", Type.WATER, null, 0.6, 9.5, Abilities.TORRENT, Abilities.NONE, Abilities.SHEER_FORCE, 314, 50, 65, 64, 44, 48, 43, 45, 70, 63, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.CROCONAW, "Croconaw", 2, false, false, false, "Big Jaw Pokémon", Type.WATER, null, 1.1, 25, Abilities.TORRENT, Abilities.NONE, Abilities.SHEER_FORCE, 405, 65, 80, 80, 59, 63, 58, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.FERALIGATR, "Feraligatr", 2, false, false, false, "Big Jaw Pokémon", Type.WATER, null, 2.3, 88.8, Abilities.TORRENT, Abilities.NONE, Abilities.SHEER_FORCE, 530, 85, 105, 100, 79, 83, 78, 45, 70, 239, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.SENTRET, "Sentret", 2, false, false, false, "Scout Pokémon", Type.NORMAL, null, 0.8, 6, Abilities.RUN_AWAY, Abilities.KEEN_EYE, Abilities.FRISK, 215, 35, 46, 34, 35, 45, 20, 255, 70, 43, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FURRET, "Furret", 2, false, false, false, "Long Body Pokémon", Type.NORMAL, null, 1.8, 32.5, Abilities.RUN_AWAY, Abilities.KEEN_EYE, Abilities.FRISK, 415, 85, 76, 64, 45, 55, 90, 90, 70, 145, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.HOOTHOOT, "Hoothoot", 2, false, false, false, "Owl Pokémon", Type.NORMAL, Type.FLYING, 0.7, 21.2, Abilities.INSOMNIA, Abilities.KEEN_EYE, Abilities.TINTED_LENS, 262, 60, 30, 30, 36, 56, 50, 255, 50, 52, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.NOCTOWL, "Noctowl", 2, false, false, false, "Owl Pokémon", Type.NORMAL, Type.FLYING, 1.6, 40.8, Abilities.INSOMNIA, Abilities.KEEN_EYE, Abilities.TINTED_LENS, 452, 100, 50, 50, 86, 96, 70, 90, 50, 158, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.LEDYBA, "Ledyba", 2, false, false, false, "Five Star Pokémon", Type.BUG, Type.FLYING, 1, 10.8, Abilities.SWARM, Abilities.EARLY_BIRD, Abilities.RATTLED, 265, 40, 20, 30, 40, 80, 55, 255, 70, 53, GrowthRate.FAST, 50, true),
- new PokemonSpecies(Species.LEDIAN, "Ledian", 2, false, false, false, "Five Star Pokémon", Type.BUG, Type.FLYING, 1.4, 35.6, Abilities.SWARM, Abilities.EARLY_BIRD, Abilities.IRON_FIST, 390, 55, 35, 50, 55, 110, 85, 90, 70, 137, GrowthRate.FAST, 50, true),
- new PokemonSpecies(Species.SPINARAK, "Spinarak", 2, false, false, false, "String Spit Pokémon", Type.BUG, Type.POISON, 0.5, 8.5, Abilities.SWARM, Abilities.INSOMNIA, Abilities.SNIPER, 250, 40, 60, 40, 40, 40, 30, 255, 70, 50, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.ARIADOS, "Ariados", 2, false, false, false, "Long Leg Pokémon", Type.BUG, Type.POISON, 1.1, 33.5, Abilities.SWARM, Abilities.INSOMNIA, Abilities.SNIPER, 400, 70, 90, 70, 60, 70, 40, 90, 70, 140, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.CROBAT, "Crobat", 2, false, false, false, "Bat Pokémon", Type.POISON, Type.FLYING, 1.8, 75, Abilities.INNER_FOCUS, Abilities.NONE, Abilities.INFILTRATOR, 535, 85, 90, 80, 70, 80, 130, 90, 50, 268, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CHINCHOU, "Chinchou", 2, false, false, false, "Angler Pokémon", Type.WATER, Type.ELECTRIC, 0.5, 12, Abilities.VOLT_ABSORB, Abilities.ILLUMINATE, Abilities.WATER_ABSORB, 330, 75, 38, 38, 56, 56, 67, 190, 50, 66, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.LANTURN, "Lanturn", 2, false, false, false, "Light Pokémon", Type.WATER, Type.ELECTRIC, 1.2, 22.5, Abilities.VOLT_ABSORB, Abilities.ILLUMINATE, Abilities.WATER_ABSORB, 460, 125, 58, 58, 76, 76, 67, 75, 50, 161, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.PICHU, "Pichu", 2, false, false, false, "Tiny Mouse Pokémon", Type.ELECTRIC, null, 0.3, 2, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 205, 20, 40, 15, 35, 35, 60, 190, 70, 41, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.MEW, 1, false, false, true, "New Species Pokémon", Type.PSYCHIC, null, 0.4, 4, Abilities.SYNCHRONIZE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 45, 100, 300, GrowthRate.MEDIUM_SLOW, null, false),
+ new PokemonSpecies(Species.CHIKORITA, 2, false, false, false, "Leaf Pokémon", Type.GRASS, null, 0.9, 6.4, Abilities.OVERGROW, Abilities.NONE, Abilities.LEAF_GUARD, 318, 45, 49, 65, 49, 65, 45, 45, 70, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.BAYLEEF, 2, false, false, false, "Leaf Pokémon", Type.GRASS, null, 1.2, 15.8, Abilities.OVERGROW, Abilities.NONE, Abilities.LEAF_GUARD, 405, 60, 62, 80, 63, 80, 60, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.MEGANIUM, 2, false, false, false, "Herb Pokémon", Type.GRASS, null, 1.8, 100.5, Abilities.OVERGROW, Abilities.NONE, Abilities.LEAF_GUARD, 525, 80, 82, 100, 83, 100, 80, 45, 70, 236, GrowthRate.MEDIUM_SLOW, 87.5, true),
+ new PokemonSpecies(Species.CYNDAQUIL, 2, false, false, false, "Fire Mouse Pokémon", Type.FIRE, null, 0.5, 7.9, Abilities.BLAZE, Abilities.NONE, Abilities.FLASH_FIRE, 309, 39, 52, 43, 60, 50, 65, 45, 70, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.QUILAVA, 2, false, false, false, "Volcano Pokémon", Type.FIRE, null, 0.9, 19, Abilities.BLAZE, Abilities.NONE, Abilities.FLASH_FIRE, 405, 58, 64, 58, 80, 65, 80, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.TYPHLOSION, 2, false, false, false, "Volcano Pokémon", Type.FIRE, null, 1.7, 79.5, Abilities.BLAZE, Abilities.NONE, Abilities.FLASH_FIRE, 534, 78, 84, 78, 109, 85, 100, 45, 70, 240, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.TOTODILE, 2, false, false, false, "Big Jaw Pokémon", Type.WATER, null, 0.6, 9.5, Abilities.TORRENT, Abilities.NONE, Abilities.SHEER_FORCE, 314, 50, 65, 64, 44, 48, 43, 45, 70, 63, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.CROCONAW, 2, false, false, false, "Big Jaw Pokémon", Type.WATER, null, 1.1, 25, Abilities.TORRENT, Abilities.NONE, Abilities.SHEER_FORCE, 405, 65, 80, 80, 59, 63, 58, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.FERALIGATR, 2, false, false, false, "Big Jaw Pokémon", Type.WATER, null, 2.3, 88.8, Abilities.TORRENT, Abilities.NONE, Abilities.SHEER_FORCE, 530, 85, 105, 100, 79, 83, 78, 45, 70, 239, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.SENTRET, 2, false, false, false, "Scout Pokémon", Type.NORMAL, null, 0.8, 6, Abilities.RUN_AWAY, Abilities.KEEN_EYE, Abilities.FRISK, 215, 35, 46, 34, 35, 45, 20, 255, 70, 43, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FURRET, 2, false, false, false, "Long Body Pokémon", Type.NORMAL, null, 1.8, 32.5, Abilities.RUN_AWAY, Abilities.KEEN_EYE, Abilities.FRISK, 415, 85, 76, 64, 45, 55, 90, 90, 70, 145, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.HOOTHOOT, 2, false, false, false, "Owl Pokémon", Type.NORMAL, Type.FLYING, 0.7, 21.2, Abilities.INSOMNIA, Abilities.KEEN_EYE, Abilities.TINTED_LENS, 262, 60, 30, 30, 36, 56, 50, 255, 50, 52, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.NOCTOWL, 2, false, false, false, "Owl Pokémon", Type.NORMAL, Type.FLYING, 1.6, 40.8, Abilities.INSOMNIA, Abilities.KEEN_EYE, Abilities.TINTED_LENS, 452, 100, 50, 50, 86, 96, 70, 90, 50, 158, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.LEDYBA, 2, false, false, false, "Five Star Pokémon", Type.BUG, Type.FLYING, 1, 10.8, Abilities.SWARM, Abilities.EARLY_BIRD, Abilities.RATTLED, 265, 40, 20, 30, 40, 80, 55, 255, 70, 53, GrowthRate.FAST, 50, true),
+ new PokemonSpecies(Species.LEDIAN, 2, false, false, false, "Five Star Pokémon", Type.BUG, Type.FLYING, 1.4, 35.6, Abilities.SWARM, Abilities.EARLY_BIRD, Abilities.IRON_FIST, 390, 55, 35, 50, 55, 110, 85, 90, 70, 137, GrowthRate.FAST, 50, true),
+ new PokemonSpecies(Species.SPINARAK, 2, false, false, false, "String Spit Pokémon", Type.BUG, Type.POISON, 0.5, 8.5, Abilities.SWARM, Abilities.INSOMNIA, Abilities.SNIPER, 250, 40, 60, 40, 40, 40, 30, 255, 70, 50, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.ARIADOS, 2, false, false, false, "Long Leg Pokémon", Type.BUG, Type.POISON, 1.1, 33.5, Abilities.SWARM, Abilities.INSOMNIA, Abilities.SNIPER, 400, 70, 90, 70, 60, 70, 40, 90, 70, 140, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.CROBAT, 2, false, false, false, "Bat Pokémon", Type.POISON, Type.FLYING, 1.8, 75, Abilities.INNER_FOCUS, Abilities.NONE, Abilities.INFILTRATOR, 535, 85, 90, 80, 70, 80, 130, 90, 50, 268, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CHINCHOU, 2, false, false, false, "Angler Pokémon", Type.WATER, Type.ELECTRIC, 0.5, 12, Abilities.VOLT_ABSORB, Abilities.ILLUMINATE, Abilities.WATER_ABSORB, 330, 75, 38, 38, 56, 56, 67, 190, 50, 66, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.LANTURN, 2, false, false, false, "Light Pokémon", Type.WATER, Type.ELECTRIC, 1.2, 22.5, Abilities.VOLT_ABSORB, Abilities.ILLUMINATE, Abilities.WATER_ABSORB, 460, 125, 58, 58, 76, 76, 67, 75, 50, 161, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.PICHU, 2, false, false, false, "Tiny Mouse Pokémon", Type.ELECTRIC, null, 0.3, 2, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 205, 20, 40, 15, 35, 35, 60, 190, 70, 41, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Normal", "", Type.ELECTRIC, null, 1.4, 61.5, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 205, 20, 40, 15, 35, 35, 60, 190, 70, 41),
new PokemonForm("Spiky-Eared", "spiky", Type.ELECTRIC, null, 1.4, 61.5, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 205, 20, 40, 15, 35, 35, 60, 190, 70, 41),
),
- new PokemonSpecies(Species.CLEFFA, "Cleffa", 2, false, false, false, "Star Shape Pokémon", Type.FAIRY, null, 0.3, 3, Abilities.CUTE_CHARM, Abilities.MAGIC_GUARD, Abilities.FRIEND_GUARD, 218, 50, 25, 28, 45, 55, 15, 150, 140, 44, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.IGGLYBUFF, "Igglybuff", 2, false, false, false, "Balloon Pokémon", Type.NORMAL, Type.FAIRY, 0.3, 1, Abilities.CUTE_CHARM, Abilities.COMPETITIVE, Abilities.FRIEND_GUARD, 210, 90, 30, 15, 40, 20, 15, 170, 50, 42, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.TOGEPI, "Togepi", 2, false, false, false, "Spike Ball Pokémon", Type.FAIRY, null, 0.3, 1.5, Abilities.HUSTLE, Abilities.SERENE_GRACE, Abilities.SUPER_LUCK, 245, 35, 20, 65, 40, 65, 20, 190, 50, 49, GrowthRate.FAST, 87.5, false),
- new PokemonSpecies(Species.TOGETIC, "Togetic", 2, false, false, false, "Happiness Pokémon", Type.FAIRY, Type.FLYING, 0.6, 3.2, Abilities.HUSTLE, Abilities.SERENE_GRACE, Abilities.SUPER_LUCK, 405, 55, 40, 85, 80, 105, 40, 75, 50, 142, GrowthRate.FAST, 87.5, false),
- new PokemonSpecies(Species.NATU, "Natu", 2, false, false, false, "Tiny Bird Pokémon", Type.PSYCHIC, Type.FLYING, 0.2, 2, Abilities.SYNCHRONIZE, Abilities.EARLY_BIRD, Abilities.MAGIC_BOUNCE, 320, 40, 50, 45, 70, 45, 70, 190, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.XATU, "Xatu", 2, false, false, false, "Mystic Pokémon", Type.PSYCHIC, Type.FLYING, 1.5, 15, Abilities.SYNCHRONIZE, Abilities.EARLY_BIRD, Abilities.MAGIC_BOUNCE, 470, 65, 75, 70, 95, 70, 95, 75, 50, 165, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.MAREEP, "Mareep", 2, false, false, false, "Wool Pokémon", Type.ELECTRIC, null, 0.6, 7.8, Abilities.STATIC, Abilities.NONE, Abilities.PLUS, 280, 55, 40, 40, 65, 45, 35, 235, 70, 56, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.FLAAFFY, "Flaaffy", 2, false, false, false, "Wool Pokémon", Type.ELECTRIC, null, 0.8, 13.3, Abilities.STATIC, Abilities.NONE, Abilities.PLUS, 365, 70, 55, 55, 80, 60, 45, 120, 70, 128, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.AMPHAROS, "Ampharos", 2, false, false, false, "Light Pokémon", Type.ELECTRIC, null, 1.4, 61.5, Abilities.STATIC, Abilities.NONE, Abilities.PLUS, 510, 90, 75, 85, 115, 90, 55, 45, 70, 230, GrowthRate.MEDIUM_SLOW, 50, false, true,
+ new PokemonSpecies(Species.CLEFFA, 2, false, false, false, "Star Shape Pokémon", Type.FAIRY, null, 0.3, 3, Abilities.CUTE_CHARM, Abilities.MAGIC_GUARD, Abilities.FRIEND_GUARD, 218, 50, 25, 28, 45, 55, 15, 150, 140, 44, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.IGGLYBUFF, 2, false, false, false, "Balloon Pokémon", Type.NORMAL, Type.FAIRY, 0.3, 1, Abilities.CUTE_CHARM, Abilities.COMPETITIVE, Abilities.FRIEND_GUARD, 210, 90, 30, 15, 40, 20, 15, 170, 50, 42, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.TOGEPI, 2, false, false, false, "Spike Ball Pokémon", Type.FAIRY, null, 0.3, 1.5, Abilities.HUSTLE, Abilities.SERENE_GRACE, Abilities.SUPER_LUCK, 245, 35, 20, 65, 40, 65, 20, 190, 50, 49, GrowthRate.FAST, 87.5, false),
+ new PokemonSpecies(Species.TOGETIC, 2, false, false, false, "Happiness Pokémon", Type.FAIRY, Type.FLYING, 0.6, 3.2, Abilities.HUSTLE, Abilities.SERENE_GRACE, Abilities.SUPER_LUCK, 405, 55, 40, 85, 80, 105, 40, 75, 50, 142, GrowthRate.FAST, 87.5, false),
+ new PokemonSpecies(Species.NATU, 2, false, false, false, "Tiny Bird Pokémon", Type.PSYCHIC, Type.FLYING, 0.2, 2, Abilities.SYNCHRONIZE, Abilities.EARLY_BIRD, Abilities.MAGIC_BOUNCE, 320, 40, 50, 45, 70, 45, 70, 190, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.XATU, 2, false, false, false, "Mystic Pokémon", Type.PSYCHIC, Type.FLYING, 1.5, 15, Abilities.SYNCHRONIZE, Abilities.EARLY_BIRD, Abilities.MAGIC_BOUNCE, 470, 65, 75, 70, 95, 70, 95, 75, 50, 165, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.MAREEP, 2, false, false, false, "Wool Pokémon", Type.ELECTRIC, null, 0.6, 7.8, Abilities.STATIC, Abilities.NONE, Abilities.PLUS, 280, 55, 40, 40, 65, 45, 35, 235, 70, 56, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.FLAAFFY, 2, false, false, false, "Wool Pokémon", Type.ELECTRIC, null, 0.8, 13.3, Abilities.STATIC, Abilities.NONE, Abilities.PLUS, 365, 70, 55, 55, 80, 60, 45, 120, 70, 128, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.AMPHAROS, 2, false, false, false, "Light Pokémon", Type.ELECTRIC, null, 1.4, 61.5, Abilities.STATIC, Abilities.NONE, Abilities.PLUS, 510, 90, 75, 85, 115, 90, 55, 45, 70, 230, GrowthRate.MEDIUM_SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.ELECTRIC, null, 1.4, 61.5, Abilities.STATIC, Abilities.NONE, Abilities.PLUS, 510, 90, 75, 85, 115, 90, 55, 45, 70, 230),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.ELECTRIC, Type.DRAGON, 1.4, 61.5, Abilities.MOLD_BREAKER, Abilities.NONE, Abilities.MOLD_BREAKER, 610, 90, 95, 105, 165, 110, 45, 45, 70, 230),
),
- new PokemonSpecies(Species.BELLOSSOM, "Bellossom", 2, false, false, false, "Flower Pokémon", Type.GRASS, null, 0.4, 5.8, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.HEALER, 490, 75, 80, 95, 90, 100, 50, 45, 50, 245, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.MARILL, "Marill", 2, false, false, false, "Aqua Mouse Pokémon", Type.WATER, Type.FAIRY, 0.4, 8.5, Abilities.THICK_FAT, Abilities.HUGE_POWER, Abilities.SAP_SIPPER, 250, 70, 20, 50, 20, 50, 40, 190, 50, 88, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.AZUMARILL, "Azumarill", 2, false, false, false, "Aqua Rabbit Pokémon", Type.WATER, Type.FAIRY, 0.8, 28.5, Abilities.THICK_FAT, Abilities.HUGE_POWER, Abilities.SAP_SIPPER, 420, 100, 50, 80, 60, 80, 50, 75, 50, 210, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.SUDOWOODO, "Sudowoodo", 2, false, false, false, "Imitation Pokémon", Type.ROCK, null, 1.2, 38, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.RATTLED, 410, 70, 100, 115, 30, 65, 30, 65, 50, 144, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.POLITOED, "Politoed", 2, false, false, false, "Frog Pokémon", Type.WATER, null, 1.1, 33.9, Abilities.WATER_ABSORB, Abilities.DAMP, Abilities.DRIZZLE, 500, 90, 75, 75, 90, 100, 70, 45, 50, 250, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.HOPPIP, "Hoppip", 2, false, false, false, "Cottonweed Pokémon", Type.GRASS, Type.FLYING, 0.4, 0.5, Abilities.CHLOROPHYLL, Abilities.LEAF_GUARD, Abilities.INFILTRATOR, 250, 35, 35, 40, 35, 55, 50, 255, 70, 50, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SKIPLOOM, "Skiploom", 2, false, false, false, "Cottonweed Pokémon", Type.GRASS, Type.FLYING, 0.6, 1, Abilities.CHLOROPHYLL, Abilities.LEAF_GUARD, Abilities.INFILTRATOR, 340, 55, 45, 50, 45, 65, 80, 120, 70, 119, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.JUMPLUFF, "Jumpluff", 2, false, false, false, "Cottonweed Pokémon", Type.GRASS, Type.FLYING, 0.8, 3, Abilities.CHLOROPHYLL, Abilities.LEAF_GUARD, Abilities.INFILTRATOR, 460, 75, 55, 70, 55, 95, 110, 45, 70, 207, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.AIPOM, "Aipom", 2, false, false, false, "Long Tail Pokémon", Type.NORMAL, null, 0.8, 11.5, Abilities.RUN_AWAY, Abilities.PICKUP, Abilities.SKILL_LINK, 360, 55, 70, 55, 40, 55, 85, 45, 70, 72, GrowthRate.FAST, 50, true),
- new PokemonSpecies(Species.SUNKERN, "Sunkern", 2, false, false, false, "Seed Pokémon", Type.GRASS, null, 0.3, 1.8, Abilities.CHLOROPHYLL, Abilities.SOLAR_POWER, Abilities.EARLY_BIRD, 180, 30, 30, 30, 30, 30, 30, 235, 70, 36, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SUNFLORA, "Sunflora", 2, false, false, false, "Sun Pokémon", Type.GRASS, null, 0.8, 8.5, Abilities.CHLOROPHYLL, Abilities.SOLAR_POWER, Abilities.EARLY_BIRD, 425, 75, 75, 55, 105, 85, 30, 120, 70, 149, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.YANMA, "Yanma", 2, false, false, false, "Clear Wing Pokémon", Type.BUG, Type.FLYING, 1.2, 38, Abilities.SPEED_BOOST, Abilities.COMPOUND_EYES, Abilities.FRISK, 390, 65, 65, 45, 75, 45, 95, 75, 70, 78, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.WOOPER, "Wooper", 2, false, false, false, "Water Fish Pokémon", Type.WATER, Type.GROUND, 0.4, 8.5, Abilities.DAMP, Abilities.WATER_ABSORB, Abilities.UNAWARE, 210, 55, 45, 45, 25, 25, 15, 255, 50, 42, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.QUAGSIRE, "Quagsire", 2, false, false, false, "Water Fish Pokémon", Type.WATER, Type.GROUND, 1.4, 75, Abilities.DAMP, Abilities.WATER_ABSORB, Abilities.UNAWARE, 430, 95, 85, 85, 65, 65, 35, 90, 50, 151, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.ESPEON, "Espeon", 2, false, false, false, "Sun Pokémon", Type.PSYCHIC, null, 0.9, 26.5, Abilities.SYNCHRONIZE, Abilities.NONE, Abilities.MAGIC_BOUNCE, 525, 65, 65, 60, 130, 95, 110, 45, 50, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.UMBREON, "Umbreon", 2, false, false, false, "Moonlight Pokémon", Type.DARK, null, 1, 27, Abilities.SYNCHRONIZE, Abilities.NONE, Abilities.INNER_FOCUS, 525, 95, 65, 110, 60, 130, 65, 45, 35, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.MURKROW, "Murkrow", 2, false, false, false, "Darkness Pokémon", Type.DARK, Type.FLYING, 0.5, 2.1, Abilities.INSOMNIA, Abilities.SUPER_LUCK, Abilities.PRANKSTER, 405, 60, 85, 42, 85, 42, 91, 30, 35, 81, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.SLOWKING, "Slowking", 2, false, false, false, "Royal Pokémon", Type.WATER, Type.PSYCHIC, 2, 79.5, Abilities.OBLIVIOUS, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 490, 95, 75, 80, 100, 110, 30, 70, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MISDREAVUS, "Misdreavus", 2, false, false, false, "Screech Pokémon", Type.GHOST, null, 0.7, 1, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 435, 60, 60, 60, 85, 85, 85, 45, 35, 87, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.UNOWN, "Unown", 2, false, false, false, "Symbol Pokémon", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, GrowthRate.MEDIUM_FAST, null, false, false,
+ new PokemonSpecies(Species.BELLOSSOM, 2, false, false, false, "Flower Pokémon", Type.GRASS, null, 0.4, 5.8, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.HEALER, 490, 75, 80, 95, 90, 100, 50, 45, 50, 245, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.MARILL, 2, false, false, false, "Aqua Mouse Pokémon", Type.WATER, Type.FAIRY, 0.4, 8.5, Abilities.THICK_FAT, Abilities.HUGE_POWER, Abilities.SAP_SIPPER, 250, 70, 20, 50, 20, 50, 40, 190, 50, 88, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.AZUMARILL, 2, false, false, false, "Aqua Rabbit Pokémon", Type.WATER, Type.FAIRY, 0.8, 28.5, Abilities.THICK_FAT, Abilities.HUGE_POWER, Abilities.SAP_SIPPER, 420, 100, 50, 80, 60, 80, 50, 75, 50, 210, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.SUDOWOODO, 2, false, false, false, "Imitation Pokémon", Type.ROCK, null, 1.2, 38, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.RATTLED, 410, 70, 100, 115, 30, 65, 30, 65, 50, 144, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.POLITOED, 2, false, false, false, "Frog Pokémon", Type.WATER, null, 1.1, 33.9, Abilities.WATER_ABSORB, Abilities.DAMP, Abilities.DRIZZLE, 500, 90, 75, 75, 90, 100, 70, 45, 50, 250, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.HOPPIP, 2, false, false, false, "Cottonweed Pokémon", Type.GRASS, Type.FLYING, 0.4, 0.5, Abilities.CHLOROPHYLL, Abilities.LEAF_GUARD, Abilities.INFILTRATOR, 250, 35, 35, 40, 35, 55, 50, 255, 70, 50, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SKIPLOOM, 2, false, false, false, "Cottonweed Pokémon", Type.GRASS, Type.FLYING, 0.6, 1, Abilities.CHLOROPHYLL, Abilities.LEAF_GUARD, Abilities.INFILTRATOR, 340, 55, 45, 50, 45, 65, 80, 120, 70, 119, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.JUMPLUFF, 2, false, false, false, "Cottonweed Pokémon", Type.GRASS, Type.FLYING, 0.8, 3, Abilities.CHLOROPHYLL, Abilities.LEAF_GUARD, Abilities.INFILTRATOR, 460, 75, 55, 70, 55, 95, 110, 45, 70, 207, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.AIPOM, 2, false, false, false, "Long Tail Pokémon", Type.NORMAL, null, 0.8, 11.5, Abilities.RUN_AWAY, Abilities.PICKUP, Abilities.SKILL_LINK, 360, 55, 70, 55, 40, 55, 85, 45, 70, 72, GrowthRate.FAST, 50, true),
+ new PokemonSpecies(Species.SUNKERN, 2, false, false, false, "Seed Pokémon", Type.GRASS, null, 0.3, 1.8, Abilities.CHLOROPHYLL, Abilities.SOLAR_POWER, Abilities.EARLY_BIRD, 180, 30, 30, 30, 30, 30, 30, 235, 70, 36, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SUNFLORA, 2, false, false, false, "Sun Pokémon", Type.GRASS, null, 0.8, 8.5, Abilities.CHLOROPHYLL, Abilities.SOLAR_POWER, Abilities.EARLY_BIRD, 425, 75, 75, 55, 105, 85, 30, 120, 70, 149, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.YANMA, 2, false, false, false, "Clear Wing Pokémon", Type.BUG, Type.FLYING, 1.2, 38, Abilities.SPEED_BOOST, Abilities.COMPOUND_EYES, Abilities.FRISK, 390, 65, 65, 45, 75, 45, 95, 75, 70, 78, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.WOOPER, 2, false, false, false, "Water Fish Pokémon", Type.WATER, Type.GROUND, 0.4, 8.5, Abilities.DAMP, Abilities.WATER_ABSORB, Abilities.UNAWARE, 210, 55, 45, 45, 25, 25, 15, 255, 50, 42, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.QUAGSIRE, 2, false, false, false, "Water Fish Pokémon", Type.WATER, Type.GROUND, 1.4, 75, Abilities.DAMP, Abilities.WATER_ABSORB, Abilities.UNAWARE, 430, 95, 85, 85, 65, 65, 35, 90, 50, 151, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.ESPEON, 2, false, false, false, "Sun Pokémon", Type.PSYCHIC, null, 0.9, 26.5, Abilities.SYNCHRONIZE, Abilities.NONE, Abilities.MAGIC_BOUNCE, 525, 65, 65, 60, 130, 95, 110, 45, 50, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.UMBREON, 2, false, false, false, "Moonlight Pokémon", Type.DARK, null, 1, 27, Abilities.SYNCHRONIZE, Abilities.NONE, Abilities.INNER_FOCUS, 525, 95, 65, 110, 60, 130, 65, 45, 35, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.MURKROW, 2, false, false, false, "Darkness Pokémon", Type.DARK, Type.FLYING, 0.5, 2.1, Abilities.INSOMNIA, Abilities.SUPER_LUCK, Abilities.PRANKSTER, 405, 60, 85, 42, 85, 42, 91, 30, 35, 81, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.SLOWKING, 2, false, false, false, "Royal Pokémon", Type.WATER, Type.PSYCHIC, 2, 79.5, Abilities.OBLIVIOUS, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 490, 95, 75, 80, 100, 110, 30, 70, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MISDREAVUS, 2, false, false, false, "Screech Pokémon", Type.GHOST, null, 0.7, 1, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 435, 60, 60, 60, 85, 85, 85, 45, 35, 87, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.UNOWN, 2, false, false, false, "Symbol Pokémon", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, GrowthRate.MEDIUM_FAST, null, false, false,
new PokemonForm("A", "a", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("B", "b", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("C", "c", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
@@ -1037,407 +1084,407 @@ export function initSpecies() {
new PokemonForm("!", "exclamation", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("?", "question", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
),
- new PokemonSpecies(Species.WOBBUFFET, "Wobbuffet", 2, false, false, false, "Patient Pokémon", Type.PSYCHIC, null, 1.3, 28.5, Abilities.SHADOW_TAG, Abilities.NONE, Abilities.TELEPATHY, 405, 190, 33, 58, 33, 58, 33, 45, 50, 142, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.GIRAFARIG, "Girafarig", 2, false, false, false, "Long Neck Pokémon", Type.NORMAL, Type.PSYCHIC, 1.5, 41.5, Abilities.INNER_FOCUS, Abilities.EARLY_BIRD, Abilities.SAP_SIPPER, 455, 70, 80, 65, 90, 65, 85, 60, 70, 159, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.PINECO, "Pineco", 2, false, false, false, "Bagworm Pokémon", Type.BUG, null, 0.6, 7.2, Abilities.STURDY, Abilities.NONE, Abilities.OVERCOAT, 290, 50, 65, 90, 35, 35, 15, 190, 70, 58, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FORRETRESS, "Forretress", 2, false, false, false, "Bagworm Pokémon", Type.BUG, Type.STEEL, 1.2, 125.8, Abilities.STURDY, Abilities.NONE, Abilities.OVERCOAT, 465, 75, 90, 140, 60, 60, 40, 75, 70, 163, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DUNSPARCE, "Dunsparce", 2, false, false, false, "Land Snake Pokémon", Type.NORMAL, null, 1.5, 14, Abilities.SERENE_GRACE, Abilities.RUN_AWAY, Abilities.RATTLED, 415, 100, 70, 70, 65, 65, 45, 190, 50, 145, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GLIGAR, "Gligar", 2, false, false, false, "Fly Scorpion Pokémon", Type.GROUND, Type.FLYING, 1.1, 64.8, Abilities.HYPER_CUTTER, Abilities.SAND_VEIL, Abilities.IMMUNITY, 430, 65, 75, 105, 35, 65, 85, 60, 70, 86, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.STEELIX, "Steelix", 2, false, false, false, "Iron Snake Pokémon", Type.STEEL, Type.GROUND, 9.2, 400, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.SHEER_FORCE, 510, 75, 85, 200, 55, 65, 30, 25, 50, 179, GrowthRate.MEDIUM_FAST, 50, true, true,
+ new PokemonSpecies(Species.WOBBUFFET, 2, false, false, false, "Patient Pokémon", Type.PSYCHIC, null, 1.3, 28.5, Abilities.SHADOW_TAG, Abilities.NONE, Abilities.TELEPATHY, 405, 190, 33, 58, 33, 58, 33, 45, 50, 142, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.GIRAFARIG, 2, false, false, false, "Long Neck Pokémon", Type.NORMAL, Type.PSYCHIC, 1.5, 41.5, Abilities.INNER_FOCUS, Abilities.EARLY_BIRD, Abilities.SAP_SIPPER, 455, 70, 80, 65, 90, 65, 85, 60, 70, 159, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.PINECO, 2, false, false, false, "Bagworm Pokémon", Type.BUG, null, 0.6, 7.2, Abilities.STURDY, Abilities.NONE, Abilities.OVERCOAT, 290, 50, 65, 90, 35, 35, 15, 190, 70, 58, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FORRETRESS, 2, false, false, false, "Bagworm Pokémon", Type.BUG, Type.STEEL, 1.2, 125.8, Abilities.STURDY, Abilities.NONE, Abilities.OVERCOAT, 465, 75, 90, 140, 60, 60, 40, 75, 70, 163, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DUNSPARCE, 2, false, false, false, "Land Snake Pokémon", Type.NORMAL, null, 1.5, 14, Abilities.SERENE_GRACE, Abilities.RUN_AWAY, Abilities.RATTLED, 415, 100, 70, 70, 65, 65, 45, 190, 50, 145, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GLIGAR, 2, false, false, false, "Fly Scorpion Pokémon", Type.GROUND, Type.FLYING, 1.1, 64.8, Abilities.HYPER_CUTTER, Abilities.SAND_VEIL, Abilities.IMMUNITY, 430, 65, 75, 105, 35, 65, 85, 60, 70, 86, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.STEELIX, 2, false, false, false, "Iron Snake Pokémon", Type.STEEL, Type.GROUND, 9.2, 400, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.SHEER_FORCE, 510, 75, 85, 200, 55, 65, 30, 25, 50, 179, GrowthRate.MEDIUM_FAST, 50, true, true,
new PokemonForm("Normal", "", Type.STEEL, Type.GROUND, 9.2, 400, Abilities.ROCK_HEAD, Abilities.STURDY, Abilities.SHEER_FORCE, 510, 75, 85, 200, 55, 65, 30, 25, 50, 179, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.STEEL, Type.GROUND, 10.5, 740, Abilities.SAND_FORCE, Abilities.SAND_FORCE, Abilities.SAND_FORCE, 610, 75, 125, 230, 55, 95, 30, 25, 50, 179, true),
),
- new PokemonSpecies(Species.SNUBBULL, "Snubbull", 2, false, false, false, "Fairy Pokémon", Type.FAIRY, null, 0.6, 7.8, Abilities.INTIMIDATE, Abilities.RUN_AWAY, Abilities.RATTLED, 300, 60, 80, 50, 40, 40, 30, 190, 70, 60, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.GRANBULL, "Granbull", 2, false, false, false, "Fairy Pokémon", Type.FAIRY, null, 1.4, 48.7, Abilities.INTIMIDATE, Abilities.QUICK_FEET, Abilities.RATTLED, 450, 90, 120, 75, 60, 60, 45, 75, 70, 158, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.QWILFISH, "Qwilfish", 2, false, false, false, "Balloon Pokémon", Type.WATER, Type.POISON, 0.5, 3.9, Abilities.POISON_POINT, Abilities.SWIFT_SWIM, Abilities.INTIMIDATE, 440, 65, 95, 85, 55, 55, 85, 45, 50, 88, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SCIZOR, "Scizor", 2, false, false, false, "Pincer Pokémon", Type.BUG, Type.STEEL, 1.8, 118, Abilities.SWARM, Abilities.TECHNICIAN, Abilities.LIGHT_METAL, 500, 70, 130, 100, 55, 80, 65, 25, 50, 175, GrowthRate.MEDIUM_FAST, 50, true, true,
+ new PokemonSpecies(Species.SNUBBULL, 2, false, false, false, "Fairy Pokémon", Type.FAIRY, null, 0.6, 7.8, Abilities.INTIMIDATE, Abilities.RUN_AWAY, Abilities.RATTLED, 300, 60, 80, 50, 40, 40, 30, 190, 70, 60, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.GRANBULL, 2, false, false, false, "Fairy Pokémon", Type.FAIRY, null, 1.4, 48.7, Abilities.INTIMIDATE, Abilities.QUICK_FEET, Abilities.RATTLED, 450, 90, 120, 75, 60, 60, 45, 75, 70, 158, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.QWILFISH, 2, false, false, false, "Balloon Pokémon", Type.WATER, Type.POISON, 0.5, 3.9, Abilities.POISON_POINT, Abilities.SWIFT_SWIM, Abilities.INTIMIDATE, 440, 65, 95, 85, 55, 55, 85, 45, 50, 88, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SCIZOR, 2, false, false, false, "Pincer Pokémon", Type.BUG, Type.STEEL, 1.8, 118, Abilities.SWARM, Abilities.TECHNICIAN, Abilities.LIGHT_METAL, 500, 70, 130, 100, 55, 80, 65, 25, 50, 175, GrowthRate.MEDIUM_FAST, 50, true, true,
new PokemonForm("Normal", "", Type.BUG, Type.STEEL, 1.8, 118, Abilities.SWARM, Abilities.TECHNICIAN, Abilities.LIGHT_METAL, 500, 70, 130, 100, 55, 80, 65, 25, 50, 175, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.BUG, Type.STEEL, 2, 125, Abilities.TECHNICIAN, Abilities.TECHNICIAN, Abilities.TECHNICIAN, 600, 70, 150, 140, 65, 100, 75, 25, 50, 175, true),
),
- new PokemonSpecies(Species.SHUCKLE, "Shuckle", 2, false, false, false, "Mold Pokémon", Type.BUG, Type.ROCK, 0.6, 20.5, Abilities.STURDY, Abilities.GLUTTONY, Abilities.CONTRARY, 505, 20, 10, 230, 10, 230, 5, 190, 50, 177, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.HERACROSS, "Heracross", 2, false, false, false, "Single Horn Pokémon", Type.BUG, Type.FIGHTING, 1.5, 54, Abilities.SWARM, Abilities.GUTS, Abilities.MOXIE, 500, 80, 125, 75, 40, 95, 85, 45, 50, 175, GrowthRate.SLOW, 50, true, true,
+ new PokemonSpecies(Species.SHUCKLE, 2, false, false, false, "Mold Pokémon", Type.BUG, Type.ROCK, 0.6, 20.5, Abilities.STURDY, Abilities.GLUTTONY, Abilities.CONTRARY, 505, 20, 10, 230, 10, 230, 5, 190, 50, 177, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.HERACROSS, 2, false, false, false, "Single Horn Pokémon", Type.BUG, Type.FIGHTING, 1.5, 54, Abilities.SWARM, Abilities.GUTS, Abilities.MOXIE, 500, 80, 125, 75, 40, 95, 85, 45, 50, 175, GrowthRate.SLOW, 50, true, true,
new PokemonForm("Normal", "", Type.BUG, Type.FIGHTING, 1.5, 54, Abilities.SWARM, Abilities.GUTS, Abilities.MOXIE, 500, 80, 125, 75, 40, 95, 85, 45, 50, 175, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.BUG, Type.FIGHTING, 1.7, 62.5, Abilities.SKILL_LINK, Abilities.SKILL_LINK, Abilities.SKILL_LINK, 600, 80, 185, 115, 40, 105, 75, 45, 50, 175, true),
),
- new PokemonSpecies(Species.SNEASEL, "Sneasel", 2, false, false, false, "Sharp Claw Pokémon", Type.DARK, Type.ICE, 0.9, 28, Abilities.INNER_FOCUS, Abilities.KEEN_EYE, Abilities.PICKPOCKET, 430, 55, 95, 55, 35, 75, 115, 60, 35, 86, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.TEDDIURSA, "Teddiursa", 2, false, false, false, "Little Bear Pokémon", Type.NORMAL, null, 0.6, 8.8, Abilities.PICKUP, Abilities.QUICK_FEET, Abilities.HONEY_GATHER, 330, 60, 80, 50, 50, 50, 40, 120, 70, 66, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.URSARING, "Ursaring", 2, false, false, false, "Hibernator Pokémon", Type.NORMAL, null, 1.8, 125.8, Abilities.GUTS, Abilities.QUICK_FEET, Abilities.UNNERVE, 500, 90, 130, 75, 75, 75, 55, 60, 70, 175, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.SLUGMA, "Slugma", 2, false, false, false, "Lava Pokémon", Type.FIRE, null, 0.7, 35, Abilities.MAGMA_ARMOR, Abilities.FLAME_BODY, Abilities.WEAK_ARMOR, 250, 40, 40, 40, 70, 40, 20, 190, 70, 50, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MAGCARGO, "Magcargo", 2, false, false, false, "Lava Pokémon", Type.FIRE, Type.ROCK, 0.8, 55, Abilities.MAGMA_ARMOR, Abilities.FLAME_BODY, Abilities.WEAK_ARMOR, 430, 60, 50, 120, 90, 80, 30, 75, 70, 151, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SWINUB, "Swinub", 2, false, false, false, "Pig Pokémon", Type.ICE, Type.GROUND, 0.4, 6.5, Abilities.OBLIVIOUS, Abilities.SNOW_CLOAK, Abilities.THICK_FAT, 250, 50, 50, 40, 30, 30, 50, 225, 50, 50, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.PILOSWINE, "Piloswine", 2, false, false, false, "Swine Pokémon", Type.ICE, Type.GROUND, 1.1, 55.8, Abilities.OBLIVIOUS, Abilities.SNOW_CLOAK, Abilities.THICK_FAT, 450, 100, 100, 80, 60, 60, 50, 75, 50, 158, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.CORSOLA, "Corsola", 2, false, false, false, "Coral Pokémon", Type.WATER, Type.ROCK, 0.6, 5, Abilities.HUSTLE, Abilities.NATURAL_CURE, Abilities.REGENERATOR, 410, 65, 55, 95, 65, 95, 35, 60, 50, 144, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.REMORAID, "Remoraid", 2, false, false, false, "Jet Pokémon", Type.WATER, null, 0.6, 12, Abilities.HUSTLE, Abilities.SNIPER, Abilities.MOODY, 300, 35, 65, 35, 65, 35, 65, 190, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.OCTILLERY, "Octillery", 2, false, false, false, "Jet Pokémon", Type.WATER, null, 0.9, 28.5, Abilities.SUCTION_CUPS, Abilities.SNIPER, Abilities.MOODY, 480, 75, 105, 75, 105, 75, 45, 75, 50, 168, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.DELIBIRD, "Delibird", 2, false, false, false, "Delivery Pokémon", Type.ICE, Type.FLYING, 0.9, 16, Abilities.VITAL_SPIRIT, Abilities.HUSTLE, Abilities.INSOMNIA, 330, 45, 55, 45, 65, 45, 75, 45, 50, 116, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.MANTINE, "Mantine", 2, false, false, false, "Kite Pokémon", Type.WATER, Type.FLYING, 2.1, 220, Abilities.SWIFT_SWIM, Abilities.WATER_ABSORB, Abilities.WATER_VEIL, 485, 85, 40, 70, 80, 140, 70, 25, 50, 170, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.SKARMORY, "Skarmory", 2, false, false, false, "Armor Bird Pokémon", Type.STEEL, Type.FLYING, 1.7, 50.5, Abilities.KEEN_EYE, Abilities.STURDY, Abilities.WEAK_ARMOR, 465, 65, 80, 140, 40, 70, 70, 25, 50, 163, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.HOUNDOUR, "Houndour", 2, false, false, false, "Dark Pokémon", Type.DARK, Type.FIRE, 0.6, 10.8, Abilities.EARLY_BIRD, Abilities.FLASH_FIRE, Abilities.UNNERVE, 330, 45, 60, 30, 80, 50, 65, 120, 35, 66, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.HOUNDOOM, "Houndoom", 2, false, false, false, "Dark Pokémon", Type.DARK, Type.FIRE, 1.4, 35, Abilities.EARLY_BIRD, Abilities.FLASH_FIRE, Abilities.UNNERVE, 500, 75, 90, 50, 110, 80, 95, 45, 35, 175, GrowthRate.SLOW, 50, true, true,
+ new PokemonSpecies(Species.SNEASEL, 2, false, false, false, "Sharp Claw Pokémon", Type.DARK, Type.ICE, 0.9, 28, Abilities.INNER_FOCUS, Abilities.KEEN_EYE, Abilities.PICKPOCKET, 430, 55, 95, 55, 35, 75, 115, 60, 35, 86, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.TEDDIURSA, 2, false, false, false, "Little Bear Pokémon", Type.NORMAL, null, 0.6, 8.8, Abilities.PICKUP, Abilities.QUICK_FEET, Abilities.HONEY_GATHER, 330, 60, 80, 50, 50, 50, 40, 120, 70, 66, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.URSARING, 2, false, false, false, "Hibernator Pokémon", Type.NORMAL, null, 1.8, 125.8, Abilities.GUTS, Abilities.QUICK_FEET, Abilities.UNNERVE, 500, 90, 130, 75, 75, 75, 55, 60, 70, 175, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.SLUGMA, 2, false, false, false, "Lava Pokémon", Type.FIRE, null, 0.7, 35, Abilities.MAGMA_ARMOR, Abilities.FLAME_BODY, Abilities.WEAK_ARMOR, 250, 40, 40, 40, 70, 40, 20, 190, 70, 50, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MAGCARGO, 2, false, false, false, "Lava Pokémon", Type.FIRE, Type.ROCK, 0.8, 55, Abilities.MAGMA_ARMOR, Abilities.FLAME_BODY, Abilities.WEAK_ARMOR, 430, 60, 50, 120, 90, 80, 30, 75, 70, 151, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SWINUB, 2, false, false, false, "Pig Pokémon", Type.ICE, Type.GROUND, 0.4, 6.5, Abilities.OBLIVIOUS, Abilities.SNOW_CLOAK, Abilities.THICK_FAT, 250, 50, 50, 40, 30, 30, 50, 225, 50, 50, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.PILOSWINE, 2, false, false, false, "Swine Pokémon", Type.ICE, Type.GROUND, 1.1, 55.8, Abilities.OBLIVIOUS, Abilities.SNOW_CLOAK, Abilities.THICK_FAT, 450, 100, 100, 80, 60, 60, 50, 75, 50, 158, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.CORSOLA, 2, false, false, false, "Coral Pokémon", Type.WATER, Type.ROCK, 0.6, 5, Abilities.HUSTLE, Abilities.NATURAL_CURE, Abilities.REGENERATOR, 410, 65, 55, 95, 65, 95, 35, 60, 50, 144, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.REMORAID, 2, false, false, false, "Jet Pokémon", Type.WATER, null, 0.6, 12, Abilities.HUSTLE, Abilities.SNIPER, Abilities.MOODY, 300, 35, 65, 35, 65, 35, 65, 190, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.OCTILLERY, 2, false, false, false, "Jet Pokémon", Type.WATER, null, 0.9, 28.5, Abilities.SUCTION_CUPS, Abilities.SNIPER, Abilities.MOODY, 480, 75, 105, 75, 105, 75, 45, 75, 50, 168, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.DELIBIRD, 2, false, false, false, "Delivery Pokémon", Type.ICE, Type.FLYING, 0.9, 16, Abilities.VITAL_SPIRIT, Abilities.HUSTLE, Abilities.INSOMNIA, 330, 45, 55, 45, 65, 45, 75, 45, 50, 116, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.MANTINE, 2, false, false, false, "Kite Pokémon", Type.WATER, Type.FLYING, 2.1, 220, Abilities.SWIFT_SWIM, Abilities.WATER_ABSORB, Abilities.WATER_VEIL, 485, 85, 40, 70, 80, 140, 70, 25, 50, 170, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.SKARMORY, 2, false, false, false, "Armor Bird Pokémon", Type.STEEL, Type.FLYING, 1.7, 50.5, Abilities.KEEN_EYE, Abilities.STURDY, Abilities.WEAK_ARMOR, 465, 65, 80, 140, 40, 70, 70, 25, 50, 163, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.HOUNDOUR, 2, false, false, false, "Dark Pokémon", Type.DARK, Type.FIRE, 0.6, 10.8, Abilities.EARLY_BIRD, Abilities.FLASH_FIRE, Abilities.UNNERVE, 330, 45, 60, 30, 80, 50, 65, 120, 35, 66, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.HOUNDOOM, 2, false, false, false, "Dark Pokémon", Type.DARK, Type.FIRE, 1.4, 35, Abilities.EARLY_BIRD, Abilities.FLASH_FIRE, Abilities.UNNERVE, 500, 75, 90, 50, 110, 80, 95, 45, 35, 175, GrowthRate.SLOW, 50, true, true,
new PokemonForm("Normal", "", Type.DARK, Type.FIRE, 1.4, 35, Abilities.EARLY_BIRD, Abilities.FLASH_FIRE, Abilities.UNNERVE, 500, 75, 90, 50, 110, 80, 95, 45, 35, 175, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.DARK, Type.FIRE, 1.9, 49.5, Abilities.SOLAR_POWER, Abilities.SOLAR_POWER, Abilities.SOLAR_POWER, 600, 75, 90, 90, 140, 90, 115, 45, 35, 175, true),
),
- new PokemonSpecies(Species.KINGDRA, "Kingdra", 2, false, false, false, "Dragon Pokémon", Type.WATER, Type.DRAGON, 1.8, 152, Abilities.SWIFT_SWIM, Abilities.SNIPER, Abilities.DAMP, 540, 75, 95, 95, 95, 95, 85, 45, 50, 270, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PHANPY, "Phanpy", 2, false, false, false, "Long Nose Pokémon", Type.GROUND, null, 0.5, 33.5, Abilities.PICKUP, Abilities.NONE, Abilities.SAND_VEIL, 330, 90, 60, 60, 40, 40, 40, 120, 70, 66, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DONPHAN, "Donphan", 2, false, false, false, "Armor Pokémon", Type.GROUND, null, 1.1, 120, Abilities.STURDY, Abilities.NONE, Abilities.SAND_VEIL, 500, 90, 120, 120, 60, 60, 50, 60, 70, 175, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.PORYGON2, "Porygon2", 2, false, false, false, "Virtual Pokémon", Type.NORMAL, null, 0.6, 32.5, Abilities.TRACE, Abilities.DOWNLOAD, Abilities.ANALYTIC, 515, 85, 80, 90, 105, 95, 60, 45, 50, 180, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.STANTLER, "Stantler", 2, false, false, false, "Big Horn Pokémon", Type.NORMAL, null, 1.4, 71.2, Abilities.INTIMIDATE, Abilities.FRISK, Abilities.SAP_SIPPER, 465, 73, 95, 62, 85, 65, 85, 45, 70, 163, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.SMEARGLE, "Smeargle", 2, false, false, false, "Painter Pokémon", Type.NORMAL, null, 1.2, 58, Abilities.OWN_TEMPO, Abilities.TECHNICIAN, Abilities.MOODY, 250, 55, 20, 35, 20, 45, 75, 45, 70, 88, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.TYROGUE, "Tyrogue", 2, false, false, false, "Scuffle Pokémon", Type.FIGHTING, null, 0.7, 21, Abilities.GUTS, Abilities.STEADFAST, Abilities.VITAL_SPIRIT, 210, 35, 35, 35, 35, 35, 35, 75, 50, 42, GrowthRate.MEDIUM_FAST, 100, false),
- new PokemonSpecies(Species.HITMONTOP, "Hitmontop", 2, false, false, false, "Handstand Pokémon", Type.FIGHTING, null, 1.4, 48, Abilities.INTIMIDATE, Abilities.TECHNICIAN, Abilities.STEADFAST, 455, 50, 95, 95, 35, 110, 70, 45, 50, 159, GrowthRate.MEDIUM_FAST, 100, false),
- new PokemonSpecies(Species.SMOOCHUM, "Smoochum", 2, false, false, false, "Kiss Pokémon", Type.ICE, Type.PSYCHIC, 0.4, 6, Abilities.OBLIVIOUS, Abilities.FOREWARN, Abilities.HYDRATION, 305, 45, 30, 15, 85, 65, 65, 45, 50, 61, GrowthRate.MEDIUM_FAST, 0, false),
- new PokemonSpecies(Species.ELEKID, "Elekid", 2, false, false, false, "Electric Pokémon", Type.ELECTRIC, null, 0.6, 23.5, Abilities.STATIC, Abilities.NONE, Abilities.VITAL_SPIRIT, 360, 45, 63, 37, 65, 55, 95, 45, 50, 72, GrowthRate.MEDIUM_FAST, 75, false),
- new PokemonSpecies(Species.MAGBY, "Magby", 2, false, false, false, "Live Coal Pokémon", Type.FIRE, null, 0.7, 21.4, Abilities.FLAME_BODY, Abilities.NONE, Abilities.VITAL_SPIRIT, 365, 45, 75, 37, 70, 55, 83, 45, 50, 73, GrowthRate.MEDIUM_FAST, 75, false),
- new PokemonSpecies(Species.MILTANK, "Miltank", 2, false, false, false, "Milk Cow Pokémon", Type.NORMAL, null, 1.2, 75.5, Abilities.THICK_FAT, Abilities.SCRAPPY, Abilities.SAP_SIPPER, 490, 95, 80, 105, 40, 70, 100, 45, 50, 172, GrowthRate.SLOW, 0, false),
- new PokemonSpecies(Species.BLISSEY, "Blissey", 2, false, false, false, "Happiness Pokémon", Type.NORMAL, null, 1.5, 46.8, Abilities.NATURAL_CURE, Abilities.SERENE_GRACE, Abilities.HEALER, 540, 255, 10, 10, 75, 135, 55, 30, 140, 635, GrowthRate.FAST, 0, false),
- new PokemonSpecies(Species.RAIKOU, "Raikou", 2, true, false, false, "Thunder Pokémon", Type.ELECTRIC, null, 1.9, 178, Abilities.PRESSURE, Abilities.NONE, Abilities.INNER_FOCUS, 580, 90, 85, 75, 115, 100, 115, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.ENTEI, "Entei", 2, true, false, false, "Volcano Pokémon", Type.FIRE, null, 2.1, 198, Abilities.PRESSURE, Abilities.NONE, Abilities.INNER_FOCUS, 580, 115, 115, 85, 90, 75, 100, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.SUICUNE, "Suicune", 2, true, false, false, "Aurora Pokémon", Type.WATER, null, 2, 187, Abilities.PRESSURE, Abilities.NONE, Abilities.INNER_FOCUS, 580, 100, 75, 115, 90, 115, 85, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.LARVITAR, "Larvitar", 2, false, false, false, "Rock Skin Pokémon", Type.ROCK, Type.GROUND, 0.6, 72, Abilities.GUTS, Abilities.NONE, Abilities.SAND_VEIL, 300, 50, 64, 50, 45, 50, 41, 45, 35, 60, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.PUPITAR, "Pupitar", 2, false, false, false, "Hard Shell Pokémon", Type.ROCK, Type.GROUND, 1.2, 152, Abilities.SHED_SKIN, Abilities.NONE, Abilities.SHED_SKIN, 410, 70, 84, 70, 65, 70, 51, 45, 35, 144, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.TYRANITAR, "Tyranitar", 2, false, false, false, "Armor Pokémon", Type.ROCK, Type.DARK, 2, 202, Abilities.SAND_STREAM, Abilities.NONE, Abilities.UNNERVE, 600, 100, 134, 110, 95, 100, 61, 45, 35, 300, GrowthRate.SLOW, 50, false, true,
+ new PokemonSpecies(Species.KINGDRA, 2, false, false, false, "Dragon Pokémon", Type.WATER, Type.DRAGON, 1.8, 152, Abilities.SWIFT_SWIM, Abilities.SNIPER, Abilities.DAMP, 540, 75, 95, 95, 95, 95, 85, 45, 50, 270, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PHANPY, 2, false, false, false, "Long Nose Pokémon", Type.GROUND, null, 0.5, 33.5, Abilities.PICKUP, Abilities.NONE, Abilities.SAND_VEIL, 330, 90, 60, 60, 40, 40, 40, 120, 70, 66, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DONPHAN, 2, false, false, false, "Armor Pokémon", Type.GROUND, null, 1.1, 120, Abilities.STURDY, Abilities.NONE, Abilities.SAND_VEIL, 500, 90, 120, 120, 60, 60, 50, 60, 70, 175, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.PORYGON2, 2, false, false, false, "Virtual Pokémon", Type.NORMAL, null, 0.6, 32.5, Abilities.TRACE, Abilities.DOWNLOAD, Abilities.ANALYTIC, 515, 85, 80, 90, 105, 95, 60, 45, 50, 180, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.STANTLER, 2, false, false, false, "Big Horn Pokémon", Type.NORMAL, null, 1.4, 71.2, Abilities.INTIMIDATE, Abilities.FRISK, Abilities.SAP_SIPPER, 465, 73, 95, 62, 85, 65, 85, 45, 70, 163, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.SMEARGLE, 2, false, false, false, "Painter Pokémon", Type.NORMAL, null, 1.2, 58, Abilities.OWN_TEMPO, Abilities.TECHNICIAN, Abilities.MOODY, 250, 55, 20, 35, 20, 45, 75, 45, 70, 88, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.TYROGUE, 2, false, false, false, "Scuffle Pokémon", Type.FIGHTING, null, 0.7, 21, Abilities.GUTS, Abilities.STEADFAST, Abilities.VITAL_SPIRIT, 210, 35, 35, 35, 35, 35, 35, 75, 50, 42, GrowthRate.MEDIUM_FAST, 100, false),
+ new PokemonSpecies(Species.HITMONTOP, 2, false, false, false, "Handstand Pokémon", Type.FIGHTING, null, 1.4, 48, Abilities.INTIMIDATE, Abilities.TECHNICIAN, Abilities.STEADFAST, 455, 50, 95, 95, 35, 110, 70, 45, 50, 159, GrowthRate.MEDIUM_FAST, 100, false),
+ new PokemonSpecies(Species.SMOOCHUM, 2, false, false, false, "Kiss Pokémon", Type.ICE, Type.PSYCHIC, 0.4, 6, Abilities.OBLIVIOUS, Abilities.FOREWARN, Abilities.HYDRATION, 305, 45, 30, 15, 85, 65, 65, 45, 50, 61, GrowthRate.MEDIUM_FAST, 0, false),
+ new PokemonSpecies(Species.ELEKID, 2, false, false, false, "Electric Pokémon", Type.ELECTRIC, null, 0.6, 23.5, Abilities.STATIC, Abilities.NONE, Abilities.VITAL_SPIRIT, 360, 45, 63, 37, 65, 55, 95, 45, 50, 72, GrowthRate.MEDIUM_FAST, 75, false),
+ new PokemonSpecies(Species.MAGBY, 2, false, false, false, "Live Coal Pokémon", Type.FIRE, null, 0.7, 21.4, Abilities.FLAME_BODY, Abilities.NONE, Abilities.VITAL_SPIRIT, 365, 45, 75, 37, 70, 55, 83, 45, 50, 73, GrowthRate.MEDIUM_FAST, 75, false),
+ new PokemonSpecies(Species.MILTANK, 2, false, false, false, "Milk Cow Pokémon", Type.NORMAL, null, 1.2, 75.5, Abilities.THICK_FAT, Abilities.SCRAPPY, Abilities.SAP_SIPPER, 490, 95, 80, 105, 40, 70, 100, 45, 50, 172, GrowthRate.SLOW, 0, false),
+ new PokemonSpecies(Species.BLISSEY, 2, false, false, false, "Happiness Pokémon", Type.NORMAL, null, 1.5, 46.8, Abilities.NATURAL_CURE, Abilities.SERENE_GRACE, Abilities.HEALER, 540, 255, 10, 10, 75, 135, 55, 30, 140, 635, GrowthRate.FAST, 0, false),
+ new PokemonSpecies(Species.RAIKOU, 2, true, false, false, "Thunder Pokémon", Type.ELECTRIC, null, 1.9, 178, Abilities.PRESSURE, Abilities.NONE, Abilities.INNER_FOCUS, 580, 90, 85, 75, 115, 100, 115, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.ENTEI, 2, true, false, false, "Volcano Pokémon", Type.FIRE, null, 2.1, 198, Abilities.PRESSURE, Abilities.NONE, Abilities.INNER_FOCUS, 580, 115, 115, 85, 90, 75, 100, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.SUICUNE, 2, true, false, false, "Aurora Pokémon", Type.WATER, null, 2, 187, Abilities.PRESSURE, Abilities.NONE, Abilities.INNER_FOCUS, 580, 100, 75, 115, 90, 115, 85, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.LARVITAR, 2, false, false, false, "Rock Skin Pokémon", Type.ROCK, Type.GROUND, 0.6, 72, Abilities.GUTS, Abilities.NONE, Abilities.SAND_VEIL, 300, 50, 64, 50, 45, 50, 41, 45, 35, 60, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.PUPITAR, 2, false, false, false, "Hard Shell Pokémon", Type.ROCK, Type.GROUND, 1.2, 152, Abilities.SHED_SKIN, Abilities.NONE, Abilities.SHED_SKIN, 410, 70, 84, 70, 65, 70, 51, 45, 35, 144, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.TYRANITAR, 2, false, false, false, "Armor Pokémon", Type.ROCK, Type.DARK, 2, 202, Abilities.SAND_STREAM, Abilities.NONE, Abilities.UNNERVE, 600, 100, 134, 110, 95, 100, 61, 45, 35, 300, GrowthRate.SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.ROCK, Type.DARK, 2, 202, Abilities.SAND_STREAM, Abilities.NONE, Abilities.UNNERVE, 600, 100, 134, 110, 95, 100, 61, 45, 35, 300),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.ROCK, Type.DARK, 2.5, 255, Abilities.SAND_STREAM, Abilities.NONE, Abilities.SAND_STREAM, 700, 100, 164, 150, 95, 120, 71, 45, 35, 300),
),
- new PokemonSpecies(Species.LUGIA, "Lugia", 2, false, true, false, "Diving Pokémon", Type.PSYCHIC, Type.FLYING, 5.2, 216, Abilities.PRESSURE, Abilities.NONE, Abilities.MULTISCALE, 680, 106, 90, 130, 90, 154, 110, 3, 0, 340, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.HO_OH, "Ho-Oh", 2, false, true, false, "Rainbow Pokémon", Type.FIRE, Type.FLYING, 3.8, 199, Abilities.PRESSURE, Abilities.NONE, Abilities.REGENERATOR, 680, 106, 130, 90, 110, 154, 90, 3, 0, 340, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.CELEBI, "Celebi", 2, false, false, true, "Time Travel Pokémon", Type.PSYCHIC, Type.GRASS, 0.6, 5, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 45, 100, 300, GrowthRate.MEDIUM_SLOW, null, false),
- new PokemonSpecies(Species.TREECKO, "Treecko", 3, false, false, false, "Wood Gecko Pokémon", Type.GRASS, null, 0.5, 5, Abilities.OVERGROW, Abilities.NONE, Abilities.UNBURDEN, 310, 40, 45, 35, 65, 55, 70, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.GROVYLE, "Grovyle", 3, false, false, false, "Wood Gecko Pokémon", Type.GRASS, null, 0.9, 21.6, Abilities.OVERGROW, Abilities.NONE, Abilities.UNBURDEN, 405, 50, 65, 45, 85, 65, 95, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.SCEPTILE, "Sceptile", 3, false, false, false, "Forest Pokémon", Type.GRASS, null, 1.7, 52.2, Abilities.OVERGROW, Abilities.NONE, Abilities.UNBURDEN, 530, 70, 85, 65, 105, 85, 120, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.LUGIA, 2, false, true, false, "Diving Pokémon", Type.PSYCHIC, Type.FLYING, 5.2, 216, Abilities.PRESSURE, Abilities.NONE, Abilities.MULTISCALE, 680, 106, 90, 130, 90, 154, 110, 3, 0, 340, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.HO_OH, 2, false, true, false, "Rainbow Pokémon", Type.FIRE, Type.FLYING, 3.8, 199, Abilities.PRESSURE, Abilities.NONE, Abilities.REGENERATOR, 680, 106, 130, 90, 110, 154, 90, 3, 0, 340, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.CELEBI, 2, false, false, true, "Time Travel Pokémon", Type.PSYCHIC, Type.GRASS, 0.6, 5, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 45, 100, 300, GrowthRate.MEDIUM_SLOW, null, false),
+ new PokemonSpecies(Species.TREECKO, 3, false, false, false, "Wood Gecko Pokémon", Type.GRASS, null, 0.5, 5, Abilities.OVERGROW, Abilities.NONE, Abilities.UNBURDEN, 310, 40, 45, 35, 65, 55, 70, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.GROVYLE, 3, false, false, false, "Wood Gecko Pokémon", Type.GRASS, null, 0.9, 21.6, Abilities.OVERGROW, Abilities.NONE, Abilities.UNBURDEN, 405, 50, 65, 45, 85, 65, 95, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.SCEPTILE, 3, false, false, false, "Forest Pokémon", Type.GRASS, null, 1.7, 52.2, Abilities.OVERGROW, Abilities.NONE, Abilities.UNBURDEN, 530, 70, 85, 65, 105, 85, 120, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
new PokemonForm("Normal", "", Type.GRASS, null, 1.7, 52.2, Abilities.OVERGROW, Abilities.NONE, Abilities.UNBURDEN, 530, 70, 85, 65, 105, 85, 120, 45, 50, 265),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.GRASS, Type.DRAGON, 1.9, 55.2, Abilities.LIGHTNING_ROD, Abilities.NONE, Abilities.LIGHTNING_ROD, 630, 70, 110, 75, 145, 85, 145, 45, 50, 265),
),
- new PokemonSpecies(Species.TORCHIC, "Torchic", 3, false, false, false, "Chick Pokémon", Type.FIRE, null, 0.4, 2.5, Abilities.BLAZE, Abilities.NONE, Abilities.SPEED_BOOST, 310, 45, 60, 40, 70, 50, 45, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, true),
- new PokemonSpecies(Species.COMBUSKEN, "Combusken", 3, false, false, false, "Young Fowl Pokémon", Type.FIRE, Type.FIGHTING, 0.9, 19.5, Abilities.BLAZE, Abilities.NONE, Abilities.SPEED_BOOST, 405, 60, 85, 60, 85, 60, 55, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, true),
- new PokemonSpecies(Species.BLAZIKEN, "Blaziken", 3, false, false, false, "Blaze Pokémon", Type.FIRE, Type.FIGHTING, 1.9, 52, Abilities.BLAZE, Abilities.NONE, Abilities.SPEED_BOOST, 530, 80, 120, 70, 110, 70, 80, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, true, true,
+ new PokemonSpecies(Species.TORCHIC, 3, false, false, false, "Chick Pokémon", Type.FIRE, null, 0.4, 2.5, Abilities.BLAZE, Abilities.NONE, Abilities.SPEED_BOOST, 310, 45, 60, 40, 70, 50, 45, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, true),
+ new PokemonSpecies(Species.COMBUSKEN, 3, false, false, false, "Young Fowl Pokémon", Type.FIRE, Type.FIGHTING, 0.9, 19.5, Abilities.BLAZE, Abilities.NONE, Abilities.SPEED_BOOST, 405, 60, 85, 60, 85, 60, 55, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, true),
+ new PokemonSpecies(Species.BLAZIKEN, 3, false, false, false, "Blaze Pokémon", Type.FIRE, Type.FIGHTING, 1.9, 52, Abilities.BLAZE, Abilities.NONE, Abilities.SPEED_BOOST, 530, 80, 120, 70, 110, 70, 80, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, true, true,
new PokemonForm("Normal", "", Type.FIRE, Type.FIGHTING, 1.9, 52, Abilities.BLAZE, Abilities.NONE, Abilities.SPEED_BOOST, 530, 80, 120, 70, 110, 70, 80, 45, 50, 265, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.FIRE, Type.FIGHTING, 1.9, 52, Abilities.SPEED_BOOST, Abilities.NONE, Abilities.SPEED_BOOST, 630, 80, 160, 80, 130, 80, 100, 45, 50, 265, true),
),
- new PokemonSpecies(Species.MUDKIP, "Mudkip", 3, false, false, false, "Mud Fish Pokémon", Type.WATER, null, 0.4, 7.6, Abilities.TORRENT, Abilities.NONE, Abilities.DAMP, 310, 50, 70, 50, 50, 50, 40, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.MARSHTOMP, "Marshtomp", 3, false, false, false, "Mud Fish Pokémon", Type.WATER, Type.GROUND, 0.7, 28, Abilities.TORRENT, Abilities.NONE, Abilities.DAMP, 405, 70, 85, 70, 60, 70, 50, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.SWAMPERT, "Swampert", 3, false, false, false, "Mud Fish Pokémon", Type.WATER, Type.GROUND, 1.5, 81.9, Abilities.TORRENT, Abilities.NONE, Abilities.DAMP, 535, 100, 110, 90, 85, 90, 60, 45, 50, 268, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.MUDKIP, 3, false, false, false, "Mud Fish Pokémon", Type.WATER, null, 0.4, 7.6, Abilities.TORRENT, Abilities.NONE, Abilities.DAMP, 310, 50, 70, 50, 50, 50, 40, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.MARSHTOMP, 3, false, false, false, "Mud Fish Pokémon", Type.WATER, Type.GROUND, 0.7, 28, Abilities.TORRENT, Abilities.NONE, Abilities.DAMP, 405, 70, 85, 70, 60, 70, 50, 45, 50, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.SWAMPERT, 3, false, false, false, "Mud Fish Pokémon", Type.WATER, Type.GROUND, 1.5, 81.9, Abilities.TORRENT, Abilities.NONE, Abilities.DAMP, 535, 100, 110, 90, 85, 90, 60, 45, 50, 268, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
new PokemonForm("Normal", "", Type.WATER, Type.GROUND, 1.5, 81.9, Abilities.TORRENT, Abilities.NONE, Abilities.DAMP, 535, 100, 110, 90, 85, 90, 60, 45, 50, 268),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.WATER, Type.GROUND, 1.9, 102, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.SWIFT_SWIM, 635, 100, 150, 110, 95, 110, 70, 45, 50, 268),
),
- new PokemonSpecies(Species.POOCHYENA, "Poochyena", 3, false, false, false, "Bite Pokémon", Type.DARK, null, 0.5, 13.6, Abilities.RUN_AWAY, Abilities.QUICK_FEET, Abilities.RATTLED, 220, 35, 55, 35, 30, 30, 35, 255, 70, 56, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MIGHTYENA, "Mightyena", 3, false, false, false, "Bite Pokémon", Type.DARK, null, 1, 37, Abilities.INTIMIDATE, Abilities.QUICK_FEET, Abilities.MOXIE, 420, 70, 90, 70, 60, 60, 70, 127, 70, 147, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ZIGZAGOON, "Zigzagoon", 3, false, false, false, "Tiny Raccoon Pokémon", Type.NORMAL, null, 0.4, 17.5, Abilities.PICKUP, Abilities.GLUTTONY, Abilities.QUICK_FEET, 240, 38, 30, 41, 30, 41, 60, 255, 50, 56, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.LINOONE, "Linoone", 3, false, false, false, "Rushing Pokémon", Type.NORMAL, null, 0.5, 32.5, Abilities.PICKUP, Abilities.GLUTTONY, Abilities.QUICK_FEET, 420, 78, 70, 61, 50, 61, 100, 90, 50, 147, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.WURMPLE, "Wurmple", 3, false, false, false, "Worm Pokémon", Type.BUG, null, 0.3, 3.6, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.RUN_AWAY, 195, 45, 45, 35, 20, 30, 20, 255, 70, 56, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SILCOON, "Silcoon", 3, false, false, false, "Cocoon Pokémon", Type.BUG, null, 0.6, 10, Abilities.SHED_SKIN, Abilities.NONE, Abilities.NONE, 205, 50, 35, 55, 25, 25, 15, 120, 70, 72, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BEAUTIFLY, "Beautifly", 3, false, false, false, "Butterfly Pokémon", Type.BUG, Type.FLYING, 1, 28.4, Abilities.SWARM, Abilities.NONE, Abilities.RIVALRY, 395, 60, 70, 50, 100, 50, 65, 45, 70, 178, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.CASCOON, "Cascoon", 3, false, false, false, "Cocoon Pokémon", Type.BUG, null, 0.7, 11.5, Abilities.SHED_SKIN, Abilities.NONE, Abilities.NONE, 205, 50, 35, 55, 25, 25, 15, 120, 70, 72, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DUSTOX, "Dustox", 3, false, false, false, "Poison Moth Pokémon", Type.BUG, Type.POISON, 1.2, 31.6, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.COMPOUND_EYES, 385, 60, 50, 70, 50, 90, 65, 45, 70, 173, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.LOTAD, "Lotad", 3, false, false, false, "Water Weed Pokémon", Type.WATER, Type.GRASS, 0.5, 2.6, Abilities.SWIFT_SWIM, Abilities.RAIN_DISH, Abilities.OWN_TEMPO, 220, 40, 30, 30, 40, 50, 30, 255, 50, 44, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.LOMBRE, "Lombre", 3, false, false, false, "Jolly Pokémon", Type.WATER, Type.GRASS, 1.2, 32.5, Abilities.SWIFT_SWIM, Abilities.RAIN_DISH, Abilities.OWN_TEMPO, 340, 60, 50, 50, 60, 70, 50, 120, 50, 119, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.LUDICOLO, "Ludicolo", 3, false, false, false, "Carefree Pokémon", Type.WATER, Type.GRASS, 1.5, 55, Abilities.SWIFT_SWIM, Abilities.RAIN_DISH, Abilities.OWN_TEMPO, 480, 80, 70, 70, 90, 100, 70, 45, 50, 240, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.SEEDOT, "Seedot", 3, false, false, false, "Acorn Pokémon", Type.GRASS, null, 0.5, 4, Abilities.CHLOROPHYLL, Abilities.EARLY_BIRD, Abilities.PICKPOCKET, 220, 40, 40, 50, 30, 30, 30, 255, 50, 44, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.NUZLEAF, "Nuzleaf", 3, false, false, false, "Wily Pokémon", Type.GRASS, Type.DARK, 1, 28, Abilities.CHLOROPHYLL, Abilities.EARLY_BIRD, Abilities.PICKPOCKET, 340, 70, 70, 40, 60, 40, 60, 120, 50, 119, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.SHIFTRY, "Shiftry", 3, false, false, false, "Wicked Pokémon", Type.GRASS, Type.DARK, 1.3, 59.6, Abilities.CHLOROPHYLL, Abilities.WIND_RIDER, Abilities.PICKPOCKET, 480, 90, 100, 60, 90, 60, 80, 45, 50, 240, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.TAILLOW, "Taillow", 3, false, false, false, "Tiny Swallow Pokémon", Type.NORMAL, Type.FLYING, 0.3, 2.3, Abilities.GUTS, Abilities.NONE, Abilities.SCRAPPY, 270, 40, 55, 30, 30, 30, 85, 200, 70, 54, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SWELLOW, "Swellow", 3, false, false, false, "Swallow Pokémon", Type.NORMAL, Type.FLYING, 0.7, 19.8, Abilities.GUTS, Abilities.NONE, Abilities.SCRAPPY, 455, 60, 85, 60, 75, 50, 125, 45, 70, 159, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.WINGULL, "Wingull", 3, false, false, false, "Seagull Pokémon", Type.WATER, Type.FLYING, 0.6, 9.5, Abilities.KEEN_EYE, Abilities.HYDRATION, Abilities.RAIN_DISH, 270, 40, 30, 30, 55, 30, 85, 190, 50, 54, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PELIPPER, "Pelipper", 3, false, false, false, "Water Bird Pokémon", Type.WATER, Type.FLYING, 1.2, 28, Abilities.KEEN_EYE, Abilities.DRIZZLE, Abilities.RAIN_DISH, 440, 60, 50, 100, 95, 70, 65, 45, 50, 154, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.RALTS, "Ralts", 3, false, false, false, "Feeling Pokémon", Type.PSYCHIC, Type.FAIRY, 0.4, 6.6, Abilities.SYNCHRONIZE, Abilities.TRACE, Abilities.TELEPATHY, 198, 28, 25, 25, 45, 35, 40, 235, 35, 40, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.KIRLIA, "Kirlia", 3, false, false, false, "Emotion Pokémon", Type.PSYCHIC, Type.FAIRY, 0.8, 20.2, Abilities.SYNCHRONIZE, Abilities.TRACE, Abilities.TELEPATHY, 278, 38, 35, 35, 65, 55, 50, 120, 35, 97, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.GARDEVOIR, "Gardevoir", 3, false, false, false, "Embrace Pokémon", Type.PSYCHIC, Type.FAIRY, 1.6, 48.4, Abilities.SYNCHRONIZE, Abilities.TRACE, Abilities.TELEPATHY, 518, 68, 65, 65, 125, 115, 80, 45, 35, 259, GrowthRate.SLOW, 0, false, true,
+ new PokemonSpecies(Species.POOCHYENA, 3, false, false, false, "Bite Pokémon", Type.DARK, null, 0.5, 13.6, Abilities.RUN_AWAY, Abilities.QUICK_FEET, Abilities.RATTLED, 220, 35, 55, 35, 30, 30, 35, 255, 70, 56, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MIGHTYENA, 3, false, false, false, "Bite Pokémon", Type.DARK, null, 1, 37, Abilities.INTIMIDATE, Abilities.QUICK_FEET, Abilities.MOXIE, 420, 70, 90, 70, 60, 60, 70, 127, 70, 147, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ZIGZAGOON, 3, false, false, false, "Tiny Raccoon Pokémon", Type.NORMAL, null, 0.4, 17.5, Abilities.PICKUP, Abilities.GLUTTONY, Abilities.QUICK_FEET, 240, 38, 30, 41, 30, 41, 60, 255, 50, 56, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.LINOONE, 3, false, false, false, "Rushing Pokémon", Type.NORMAL, null, 0.5, 32.5, Abilities.PICKUP, Abilities.GLUTTONY, Abilities.QUICK_FEET, 420, 78, 70, 61, 50, 61, 100, 90, 50, 147, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.WURMPLE, 3, false, false, false, "Worm Pokémon", Type.BUG, null, 0.3, 3.6, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.RUN_AWAY, 195, 45, 45, 35, 20, 30, 20, 255, 70, 56, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SILCOON, 3, false, false, false, "Cocoon Pokémon", Type.BUG, null, 0.6, 10, Abilities.SHED_SKIN, Abilities.NONE, Abilities.NONE, 205, 50, 35, 55, 25, 25, 15, 120, 70, 72, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BEAUTIFLY, 3, false, false, false, "Butterfly Pokémon", Type.BUG, Type.FLYING, 1, 28.4, Abilities.SWARM, Abilities.NONE, Abilities.RIVALRY, 395, 60, 70, 50, 100, 50, 65, 45, 70, 178, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.CASCOON, 3, false, false, false, "Cocoon Pokémon", Type.BUG, null, 0.7, 11.5, Abilities.SHED_SKIN, Abilities.NONE, Abilities.NONE, 205, 50, 35, 55, 25, 25, 15, 120, 70, 72, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DUSTOX, 3, false, false, false, "Poison Moth Pokémon", Type.BUG, Type.POISON, 1.2, 31.6, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.COMPOUND_EYES, 385, 60, 50, 70, 50, 90, 65, 45, 70, 173, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.LOTAD, 3, false, false, false, "Water Weed Pokémon", Type.WATER, Type.GRASS, 0.5, 2.6, Abilities.SWIFT_SWIM, Abilities.RAIN_DISH, Abilities.OWN_TEMPO, 220, 40, 30, 30, 40, 50, 30, 255, 50, 44, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.LOMBRE, 3, false, false, false, "Jolly Pokémon", Type.WATER, Type.GRASS, 1.2, 32.5, Abilities.SWIFT_SWIM, Abilities.RAIN_DISH, Abilities.OWN_TEMPO, 340, 60, 50, 50, 60, 70, 50, 120, 50, 119, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.LUDICOLO, 3, false, false, false, "Carefree Pokémon", Type.WATER, Type.GRASS, 1.5, 55, Abilities.SWIFT_SWIM, Abilities.RAIN_DISH, Abilities.OWN_TEMPO, 480, 80, 70, 70, 90, 100, 70, 45, 50, 240, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.SEEDOT, 3, false, false, false, "Acorn Pokémon", Type.GRASS, null, 0.5, 4, Abilities.CHLOROPHYLL, Abilities.EARLY_BIRD, Abilities.PICKPOCKET, 220, 40, 40, 50, 30, 30, 30, 255, 50, 44, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.NUZLEAF, 3, false, false, false, "Wily Pokémon", Type.GRASS, Type.DARK, 1, 28, Abilities.CHLOROPHYLL, Abilities.EARLY_BIRD, Abilities.PICKPOCKET, 340, 70, 70, 40, 60, 40, 60, 120, 50, 119, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.SHIFTRY, 3, false, false, false, "Wicked Pokémon", Type.GRASS, Type.DARK, 1.3, 59.6, Abilities.CHLOROPHYLL, Abilities.WIND_RIDER, Abilities.PICKPOCKET, 480, 90, 100, 60, 90, 60, 80, 45, 50, 240, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.TAILLOW, 3, false, false, false, "Tiny Swallow Pokémon", Type.NORMAL, Type.FLYING, 0.3, 2.3, Abilities.GUTS, Abilities.NONE, Abilities.SCRAPPY, 270, 40, 55, 30, 30, 30, 85, 200, 70, 54, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SWELLOW, 3, false, false, false, "Swallow Pokémon", Type.NORMAL, Type.FLYING, 0.7, 19.8, Abilities.GUTS, Abilities.NONE, Abilities.SCRAPPY, 455, 60, 85, 60, 75, 50, 125, 45, 70, 159, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.WINGULL, 3, false, false, false, "Seagull Pokémon", Type.WATER, Type.FLYING, 0.6, 9.5, Abilities.KEEN_EYE, Abilities.HYDRATION, Abilities.RAIN_DISH, 270, 40, 30, 30, 55, 30, 85, 190, 50, 54, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PELIPPER, 3, false, false, false, "Water Bird Pokémon", Type.WATER, Type.FLYING, 1.2, 28, Abilities.KEEN_EYE, Abilities.DRIZZLE, Abilities.RAIN_DISH, 440, 60, 50, 100, 95, 70, 65, 45, 50, 154, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.RALTS, 3, false, false, false, "Feeling Pokémon", Type.PSYCHIC, Type.FAIRY, 0.4, 6.6, Abilities.SYNCHRONIZE, Abilities.TRACE, Abilities.TELEPATHY, 198, 28, 25, 25, 45, 35, 40, 235, 35, 40, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.KIRLIA, 3, false, false, false, "Emotion Pokémon", Type.PSYCHIC, Type.FAIRY, 0.8, 20.2, Abilities.SYNCHRONIZE, Abilities.TRACE, Abilities.TELEPATHY, 278, 38, 35, 35, 65, 55, 50, 120, 35, 97, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.GARDEVOIR, 3, false, false, false, "Embrace Pokémon", Type.PSYCHIC, Type.FAIRY, 1.6, 48.4, Abilities.SYNCHRONIZE, Abilities.TRACE, Abilities.TELEPATHY, 518, 68, 65, 65, 125, 115, 80, 45, 35, 259, GrowthRate.SLOW, 0, false, true,
new PokemonForm("Normal", "", Type.PSYCHIC, Type.FAIRY, 1.6, 48.4, Abilities.SYNCHRONIZE, Abilities.TRACE, Abilities.TELEPATHY, 518, 68, 65, 65, 125, 115, 80, 45, 35, 259),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.PSYCHIC, Type.FAIRY, 1.6, 48.4, Abilities.PIXILATE, Abilities.PIXILATE, Abilities.PIXILATE, 618, 68, 85, 65, 165, 135, 100, 45, 35, 259),
),
- new PokemonSpecies(Species.SURSKIT, "Surskit", 3, false, false, false, "Pond Skater Pokémon", Type.BUG, Type.WATER, 0.5, 1.7, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.RAIN_DISH, 269, 40, 30, 32, 50, 52, 65, 200, 70, 54, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MASQUERAIN, "Masquerain", 3, false, false, false, "Eyeball Pokémon", Type.BUG, Type.FLYING, 0.8, 3.6, Abilities.INTIMIDATE, Abilities.NONE, Abilities.UNNERVE, 454, 70, 60, 62, 100, 82, 80, 75, 70, 159, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SHROOMISH, "Shroomish", 3, false, false, false, "Mushroom Pokémon", Type.GRASS, null, 0.4, 4.5, Abilities.EFFECT_SPORE, Abilities.POISON_HEAL, Abilities.QUICK_FEET, 295, 60, 40, 60, 40, 60, 35, 255, 70, 59, GrowthRate.FLUCTUATING, 50, false),
- new PokemonSpecies(Species.BRELOOM, "Breloom", 3, false, false, false, "Mushroom Pokémon", Type.GRASS, Type.FIGHTING, 1.2, 39.2, Abilities.EFFECT_SPORE, Abilities.POISON_HEAL, Abilities.TECHNICIAN, 460, 60, 130, 80, 60, 60, 70, 90, 70, 161, GrowthRate.FLUCTUATING, 50, false),
- new PokemonSpecies(Species.SLAKOTH, "Slakoth", 3, false, false, false, "Slacker Pokémon", Type.NORMAL, null, 0.8, 24, Abilities.TRUANT, Abilities.NONE, Abilities.NONE, 280, 60, 60, 60, 35, 35, 30, 255, 70, 56, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.VIGOROTH, "Vigoroth", 3, false, false, false, "Wild Monkey Pokémon", Type.NORMAL, null, 1.4, 46.5, Abilities.VITAL_SPIRIT, Abilities.NONE, Abilities.NONE, 440, 80, 80, 80, 55, 55, 90, 120, 70, 154, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.SLAKING, "Slaking", 3, false, false, false, "Lazy Pokémon", Type.NORMAL, null, 2, 130.5, Abilities.TRUANT, Abilities.NONE, Abilities.NONE, 670, 150, 160, 100, 95, 65, 100, 45, 70, 252, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.NINCADA, "Nincada", 3, false, false, false, "Trainee Pokémon", Type.BUG, Type.GROUND, 0.5, 5.5, Abilities.COMPOUND_EYES, Abilities.NONE, Abilities.RUN_AWAY, 266, 31, 45, 90, 30, 30, 40, 255, 50, 53, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.NINJASK, "Ninjask", 3, false, false, false, "Ninja Pokémon", Type.BUG, Type.FLYING, 0.8, 12, Abilities.SPEED_BOOST, Abilities.NONE, Abilities.INFILTRATOR, 456, 61, 90, 45, 50, 50, 160, 120, 50, 160, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.SHEDINJA, "Shedinja", 3, false, false, false, "Shed Pokémon", Type.BUG, Type.GHOST, 0.8, 1.2, Abilities.WONDER_GUARD, Abilities.NONE, Abilities.NONE, 236, 1, 90, 45, 30, 30, 40, 45, 50, 83, GrowthRate.ERRATIC, null, false),
- new PokemonSpecies(Species.WHISMUR, "Whismur", 3, false, false, false, "Whisper Pokémon", Type.NORMAL, null, 0.6, 16.3, Abilities.SOUNDPROOF, Abilities.NONE, Abilities.RATTLED, 240, 64, 51, 23, 51, 23, 28, 190, 50, 48, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.LOUDRED, "Loudred", 3, false, false, false, "Big Voice Pokémon", Type.NORMAL, null, 1, 40.5, Abilities.SOUNDPROOF, Abilities.NONE, Abilities.SCRAPPY, 360, 84, 71, 43, 71, 43, 48, 120, 50, 126, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.EXPLOUD, "Exploud", 3, false, false, false, "Loud Noise Pokémon", Type.NORMAL, null, 1.5, 84, Abilities.SOUNDPROOF, Abilities.NONE, Abilities.SCRAPPY, 490, 104, 91, 63, 91, 73, 68, 45, 50, 245, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.MAKUHITA, "Makuhita", 3, false, false, false, "Guts Pokémon", Type.FIGHTING, null, 1, 86.4, Abilities.THICK_FAT, Abilities.GUTS, Abilities.SHEER_FORCE, 237, 72, 60, 30, 20, 30, 25, 180, 70, 47, GrowthRate.FLUCTUATING, 75, false),
- new PokemonSpecies(Species.HARIYAMA, "Hariyama", 3, false, false, false, "Arm Thrust Pokémon", Type.FIGHTING, null, 2.3, 253.8, Abilities.THICK_FAT, Abilities.GUTS, Abilities.SHEER_FORCE, 474, 144, 120, 60, 40, 60, 50, 200, 70, 166, GrowthRate.FLUCTUATING, 75, false),
- new PokemonSpecies(Species.AZURILL, "Azurill", 3, false, false, false, "Polka Dot Pokémon", Type.NORMAL, Type.FAIRY, 0.2, 2, Abilities.THICK_FAT, Abilities.HUGE_POWER, Abilities.SAP_SIPPER, 190, 50, 20, 40, 20, 40, 20, 150, 50, 38, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.NOSEPASS, "Nosepass", 3, false, false, false, "Compass Pokémon", Type.ROCK, null, 1, 97, Abilities.STURDY, Abilities.MAGNET_PULL, Abilities.SAND_FORCE, 375, 30, 45, 135, 45, 90, 30, 255, 70, 75, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SKITTY, "Skitty", 3, false, false, false, "Kitten Pokémon", Type.NORMAL, null, 0.6, 11, Abilities.CUTE_CHARM, Abilities.NORMALIZE, Abilities.WONDER_SKIN, 260, 50, 45, 45, 35, 35, 50, 255, 70, 52, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.DELCATTY, "Delcatty", 3, false, false, false, "Prim Pokémon", Type.NORMAL, null, 1.1, 32.6, Abilities.CUTE_CHARM, Abilities.NORMALIZE, Abilities.WONDER_SKIN, 400, 70, 65, 65, 55, 55, 90, 60, 70, 140, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.SABLEYE, "Sableye", 3, false, false, false, "Darkness Pokémon", Type.DARK, Type.GHOST, 0.5, 11, Abilities.KEEN_EYE, Abilities.STALL, Abilities.PRANKSTER, 380, 50, 75, 75, 65, 65, 50, 45, 35, 133, GrowthRate.MEDIUM_SLOW, 50, false, true,
+ new PokemonSpecies(Species.SURSKIT, 3, false, false, false, "Pond Skater Pokémon", Type.BUG, Type.WATER, 0.5, 1.7, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.RAIN_DISH, 269, 40, 30, 32, 50, 52, 65, 200, 70, 54, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MASQUERAIN, 3, false, false, false, "Eyeball Pokémon", Type.BUG, Type.FLYING, 0.8, 3.6, Abilities.INTIMIDATE, Abilities.NONE, Abilities.UNNERVE, 454, 70, 60, 62, 100, 82, 80, 75, 70, 159, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SHROOMISH, 3, false, false, false, "Mushroom Pokémon", Type.GRASS, null, 0.4, 4.5, Abilities.EFFECT_SPORE, Abilities.POISON_HEAL, Abilities.QUICK_FEET, 295, 60, 40, 60, 40, 60, 35, 255, 70, 59, GrowthRate.FLUCTUATING, 50, false),
+ new PokemonSpecies(Species.BRELOOM, 3, false, false, false, "Mushroom Pokémon", Type.GRASS, Type.FIGHTING, 1.2, 39.2, Abilities.EFFECT_SPORE, Abilities.POISON_HEAL, Abilities.TECHNICIAN, 460, 60, 130, 80, 60, 60, 70, 90, 70, 161, GrowthRate.FLUCTUATING, 50, false),
+ new PokemonSpecies(Species.SLAKOTH, 3, false, false, false, "Slacker Pokémon", Type.NORMAL, null, 0.8, 24, Abilities.TRUANT, Abilities.NONE, Abilities.NONE, 280, 60, 60, 60, 35, 35, 30, 255, 70, 56, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.VIGOROTH, 3, false, false, false, "Wild Monkey Pokémon", Type.NORMAL, null, 1.4, 46.5, Abilities.VITAL_SPIRIT, Abilities.NONE, Abilities.NONE, 440, 80, 80, 80, 55, 55, 90, 120, 70, 154, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.SLAKING, 3, false, false, false, "Lazy Pokémon", Type.NORMAL, null, 2, 130.5, Abilities.TRUANT, Abilities.NONE, Abilities.NONE, 670, 150, 160, 100, 95, 65, 100, 45, 70, 252, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.NINCADA, 3, false, false, false, "Trainee Pokémon", Type.BUG, Type.GROUND, 0.5, 5.5, Abilities.COMPOUND_EYES, Abilities.NONE, Abilities.RUN_AWAY, 266, 31, 45, 90, 30, 30, 40, 255, 50, 53, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.NINJASK, 3, false, false, false, "Ninja Pokémon", Type.BUG, Type.FLYING, 0.8, 12, Abilities.SPEED_BOOST, Abilities.NONE, Abilities.INFILTRATOR, 456, 61, 90, 45, 50, 50, 160, 120, 50, 160, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.SHEDINJA, 3, false, false, false, "Shed Pokémon", Type.BUG, Type.GHOST, 0.8, 1.2, Abilities.WONDER_GUARD, Abilities.NONE, Abilities.NONE, 236, 1, 90, 45, 30, 30, 40, 45, 50, 83, GrowthRate.ERRATIC, null, false),
+ new PokemonSpecies(Species.WHISMUR, 3, false, false, false, "Whisper Pokémon", Type.NORMAL, null, 0.6, 16.3, Abilities.SOUNDPROOF, Abilities.NONE, Abilities.RATTLED, 240, 64, 51, 23, 51, 23, 28, 190, 50, 48, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.LOUDRED, 3, false, false, false, "Big Voice Pokémon", Type.NORMAL, null, 1, 40.5, Abilities.SOUNDPROOF, Abilities.NONE, Abilities.SCRAPPY, 360, 84, 71, 43, 71, 43, 48, 120, 50, 126, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.EXPLOUD, 3, false, false, false, "Loud Noise Pokémon", Type.NORMAL, null, 1.5, 84, Abilities.SOUNDPROOF, Abilities.NONE, Abilities.SCRAPPY, 490, 104, 91, 63, 91, 73, 68, 45, 50, 245, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.MAKUHITA, 3, false, false, false, "Guts Pokémon", Type.FIGHTING, null, 1, 86.4, Abilities.THICK_FAT, Abilities.GUTS, Abilities.SHEER_FORCE, 237, 72, 60, 30, 20, 30, 25, 180, 70, 47, GrowthRate.FLUCTUATING, 75, false),
+ new PokemonSpecies(Species.HARIYAMA, 3, false, false, false, "Arm Thrust Pokémon", Type.FIGHTING, null, 2.3, 253.8, Abilities.THICK_FAT, Abilities.GUTS, Abilities.SHEER_FORCE, 474, 144, 120, 60, 40, 60, 50, 200, 70, 166, GrowthRate.FLUCTUATING, 75, false),
+ new PokemonSpecies(Species.AZURILL, 3, false, false, false, "Polka Dot Pokémon", Type.NORMAL, Type.FAIRY, 0.2, 2, Abilities.THICK_FAT, Abilities.HUGE_POWER, Abilities.SAP_SIPPER, 190, 50, 20, 40, 20, 40, 20, 150, 50, 38, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.NOSEPASS, 3, false, false, false, "Compass Pokémon", Type.ROCK, null, 1, 97, Abilities.STURDY, Abilities.MAGNET_PULL, Abilities.SAND_FORCE, 375, 30, 45, 135, 45, 90, 30, 255, 70, 75, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SKITTY, 3, false, false, false, "Kitten Pokémon", Type.NORMAL, null, 0.6, 11, Abilities.CUTE_CHARM, Abilities.NORMALIZE, Abilities.WONDER_SKIN, 260, 50, 45, 45, 35, 35, 50, 255, 70, 52, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.DELCATTY, 3, false, false, false, "Prim Pokémon", Type.NORMAL, null, 1.1, 32.6, Abilities.CUTE_CHARM, Abilities.NORMALIZE, Abilities.WONDER_SKIN, 400, 70, 65, 65, 55, 55, 90, 60, 70, 140, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.SABLEYE, 3, false, false, false, "Darkness Pokémon", Type.DARK, Type.GHOST, 0.5, 11, Abilities.KEEN_EYE, Abilities.STALL, Abilities.PRANKSTER, 380, 50, 75, 75, 65, 65, 50, 45, 35, 133, GrowthRate.MEDIUM_SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.DARK, Type.GHOST, 0.5, 11, Abilities.KEEN_EYE, Abilities.STALL, Abilities.PRANKSTER, 380, 50, 75, 75, 65, 65, 50, 45, 35, 133),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.DARK, Type.GHOST, 0.5, 161, Abilities.MAGIC_BOUNCE, Abilities.MAGIC_BOUNCE, Abilities.MAGIC_BOUNCE, 480, 50, 85, 125, 85, 115, 20, 45, 35, 133),
),
- new PokemonSpecies(Species.MAWILE, "Mawile", 3, false, false, false, "Deceiver Pokémon", Type.STEEL, Type.FAIRY, 0.6, 11.5, Abilities.HYPER_CUTTER, Abilities.INTIMIDATE, Abilities.SHEER_FORCE, 380, 50, 85, 85, 55, 55, 50, 45, 50, 133, GrowthRate.FAST, 50, false, true,
+ new PokemonSpecies(Species.MAWILE, 3, false, false, false, "Deceiver Pokémon", Type.STEEL, Type.FAIRY, 0.6, 11.5, Abilities.HYPER_CUTTER, Abilities.INTIMIDATE, Abilities.SHEER_FORCE, 380, 50, 85, 85, 55, 55, 50, 45, 50, 133, GrowthRate.FAST, 50, false, true,
new PokemonForm("Normal", "", Type.STEEL, Type.FAIRY, 0.6, 11.5, Abilities.HYPER_CUTTER, Abilities.INTIMIDATE, Abilities.SHEER_FORCE, 380, 50, 85, 85, 55, 55, 50, 45, 50, 133),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.STEEL, Type.FAIRY, 1, 23.5, Abilities.HUGE_POWER, Abilities.HUGE_POWER, Abilities.HUGE_POWER, 480, 50, 105, 125, 55, 95, 50, 45, 50, 133),
),
- new PokemonSpecies(Species.ARON, "Aron", 3, false, false, false, "Iron Armor Pokémon", Type.STEEL, Type.ROCK, 0.4, 60, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.HEAVY_METAL, 330, 50, 70, 100, 40, 40, 30, 180, 35, 66, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.LAIRON, "Lairon", 3, false, false, false, "Iron Armor Pokémon", Type.STEEL, Type.ROCK, 0.9, 120, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.HEAVY_METAL, 430, 60, 90, 140, 50, 50, 40, 90, 35, 151, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.AGGRON, "Aggron", 3, false, false, false, "Iron Armor Pokémon", Type.STEEL, Type.ROCK, 2.1, 360, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.HEAVY_METAL, 530, 70, 110, 180, 60, 60, 50, 45, 35, 265, GrowthRate.SLOW, 50, false, true,
+ new PokemonSpecies(Species.ARON, 3, false, false, false, "Iron Armor Pokémon", Type.STEEL, Type.ROCK, 0.4, 60, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.HEAVY_METAL, 330, 50, 70, 100, 40, 40, 30, 180, 35, 66, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.LAIRON, 3, false, false, false, "Iron Armor Pokémon", Type.STEEL, Type.ROCK, 0.9, 120, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.HEAVY_METAL, 430, 60, 90, 140, 50, 50, 40, 90, 35, 151, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.AGGRON, 3, false, false, false, "Iron Armor Pokémon", Type.STEEL, Type.ROCK, 2.1, 360, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.HEAVY_METAL, 530, 70, 110, 180, 60, 60, 50, 45, 35, 265, GrowthRate.SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.STEEL, Type.ROCK, 2.1, 360, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.HEAVY_METAL, 530, 70, 110, 180, 60, 60, 50, 45, 35, 265),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.STEEL, null, 2.2, 395, Abilities.FILTER, Abilities.FILTER, Abilities.FILTER, 630, 70, 140, 230, 60, 80, 50, 45, 35, 265),
),
- new PokemonSpecies(Species.MEDITITE, "Meditite", 3, false, false, false, "Meditate Pokémon", Type.FIGHTING, Type.PSYCHIC, 0.6, 11.2, Abilities.PURE_POWER, Abilities.NONE, Abilities.TELEPATHY, 280, 30, 40, 55, 40, 55, 60, 180, 70, 56, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.MEDICHAM, "Medicham", 3, false, false, false, "Meditate Pokémon", Type.FIGHTING, Type.PSYCHIC, 1.3, 31.5, Abilities.PURE_POWER, Abilities.NONE, Abilities.TELEPATHY, 410, 60, 60, 75, 60, 75, 80, 90, 70, 144, GrowthRate.MEDIUM_FAST, 50, true, true,
+ new PokemonSpecies(Species.MEDITITE, 3, false, false, false, "Meditate Pokémon", Type.FIGHTING, Type.PSYCHIC, 0.6, 11.2, Abilities.PURE_POWER, Abilities.NONE, Abilities.TELEPATHY, 280, 30, 40, 55, 40, 55, 60, 180, 70, 56, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.MEDICHAM, 3, false, false, false, "Meditate Pokémon", Type.FIGHTING, Type.PSYCHIC, 1.3, 31.5, Abilities.PURE_POWER, Abilities.NONE, Abilities.TELEPATHY, 410, 60, 60, 75, 60, 75, 80, 90, 70, 144, GrowthRate.MEDIUM_FAST, 50, true, true,
new PokemonForm("Normal", "", Type.FIGHTING, Type.PSYCHIC, 1.3, 31.5, Abilities.PURE_POWER, Abilities.NONE, Abilities.TELEPATHY, 410, 60, 60, 75, 60, 75, 80, 90, 70, 144, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.FIGHTING, Type.PSYCHIC, 1.3, 31.5, Abilities.PURE_POWER, Abilities.NONE, Abilities.PURE_POWER, 510, 60, 100, 85, 80, 85, 100, 90, 70, 144, true),
),
- new PokemonSpecies(Species.ELECTRIKE, "Electrike", 3, false, false, false, "Lightning Pokémon", Type.ELECTRIC, null, 0.6, 15.2, Abilities.STATIC, Abilities.LIGHTNING_ROD, Abilities.MINUS, 295, 40, 45, 40, 65, 40, 65, 120, 50, 59, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.MANECTRIC, "Manectric", 3, false, false, false, "Discharge Pokémon", Type.ELECTRIC, null, 1.5, 40.2, Abilities.STATIC, Abilities.LIGHTNING_ROD, Abilities.MINUS, 475, 70, 75, 60, 105, 60, 105, 45, 50, 166, GrowthRate.SLOW, 50, false, true,
+ new PokemonSpecies(Species.ELECTRIKE, 3, false, false, false, "Lightning Pokémon", Type.ELECTRIC, null, 0.6, 15.2, Abilities.STATIC, Abilities.LIGHTNING_ROD, Abilities.MINUS, 295, 40, 45, 40, 65, 40, 65, 120, 50, 59, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.MANECTRIC, 3, false, false, false, "Discharge Pokémon", Type.ELECTRIC, null, 1.5, 40.2, Abilities.STATIC, Abilities.LIGHTNING_ROD, Abilities.MINUS, 475, 70, 75, 60, 105, 60, 105, 45, 50, 166, GrowthRate.SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.ELECTRIC, null, 1.5, 40.2, Abilities.STATIC, Abilities.LIGHTNING_ROD, Abilities.MINUS, 475, 70, 75, 60, 105, 60, 105, 45, 50, 166),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.ELECTRIC, null, 1.8, 44, Abilities.INTIMIDATE, Abilities.INTIMIDATE, Abilities.INTIMIDATE, 575, 70, 75, 80, 135, 80, 135, 45, 50, 166),
),
- new PokemonSpecies(Species.PLUSLE, "Plusle", 3, false, false, false, "Cheering Pokémon", Type.ELECTRIC, null, 0.4, 4.2, Abilities.PLUS, Abilities.NONE, Abilities.LIGHTNING_ROD, 405, 60, 50, 40, 85, 75, 95, 200, 70, 142, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MINUN, "Minun", 3, false, false, false, "Cheering Pokémon", Type.ELECTRIC, null, 0.4, 4.2, Abilities.MINUS, Abilities.NONE, Abilities.VOLT_ABSORB, 405, 60, 40, 50, 75, 85, 95, 200, 70, 142, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.VOLBEAT, "Volbeat", 3, false, false, false, "Firefly Pokémon", Type.BUG, null, 0.7, 17.7, Abilities.ILLUMINATE, Abilities.SWARM, Abilities.PRANKSTER, 430, 65, 73, 75, 47, 85, 85, 150, 70, 151, GrowthRate.ERRATIC, 100, false),
- new PokemonSpecies(Species.ILLUMISE, "Illumise", 3, false, false, false, "Firefly Pokémon", Type.BUG, null, 0.6, 17.7, Abilities.OBLIVIOUS, Abilities.TINTED_LENS, Abilities.PRANKSTER, 430, 65, 47, 75, 73, 85, 85, 150, 70, 151, GrowthRate.FLUCTUATING, 0, false),
- new PokemonSpecies(Species.ROSELIA, "Roselia", 3, false, false, false, "Thorn Pokémon", Type.GRASS, Type.POISON, 0.3, 2, Abilities.NATURAL_CURE, Abilities.POISON_POINT, Abilities.LEAF_GUARD, 400, 50, 60, 45, 100, 80, 65, 150, 50, 140, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.GULPIN, "Gulpin", 3, false, false, false, "Stomach Pokémon", Type.POISON, null, 0.4, 10.3, Abilities.LIQUID_OOZE, Abilities.STICKY_HOLD, Abilities.GLUTTONY, 302, 70, 43, 53, 43, 53, 40, 225, 70, 60, GrowthRate.FLUCTUATING, 50, true),
- new PokemonSpecies(Species.SWALOT, "Swalot", 3, false, false, false, "Poison Bag Pokémon", Type.POISON, null, 1.7, 80, Abilities.LIQUID_OOZE, Abilities.STICKY_HOLD, Abilities.GLUTTONY, 467, 100, 73, 83, 73, 83, 55, 75, 70, 163, GrowthRate.FLUCTUATING, 50, true),
- new PokemonSpecies(Species.CARVANHA, "Carvanha", 3, false, false, false, "Savage Pokémon", Type.WATER, Type.DARK, 0.8, 20.8, Abilities.ROUGH_SKIN, Abilities.NONE, Abilities.SPEED_BOOST, 305, 45, 90, 20, 65, 20, 65, 225, 35, 61, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.SHARPEDO, "Sharpedo", 3, false, false, false, "Brutal Pokémon", Type.WATER, Type.DARK, 1.8, 88.8, Abilities.ROUGH_SKIN, Abilities.NONE, Abilities.SPEED_BOOST, 460, 70, 120, 40, 95, 40, 95, 60, 35, 161, GrowthRate.SLOW, 50, false, true,
+ new PokemonSpecies(Species.PLUSLE, 3, false, false, false, "Cheering Pokémon", Type.ELECTRIC, null, 0.4, 4.2, Abilities.PLUS, Abilities.NONE, Abilities.LIGHTNING_ROD, 405, 60, 50, 40, 85, 75, 95, 200, 70, 142, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MINUN, 3, false, false, false, "Cheering Pokémon", Type.ELECTRIC, null, 0.4, 4.2, Abilities.MINUS, Abilities.NONE, Abilities.VOLT_ABSORB, 405, 60, 40, 50, 75, 85, 95, 200, 70, 142, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.VOLBEAT, 3, false, false, false, "Firefly Pokémon", Type.BUG, null, 0.7, 17.7, Abilities.ILLUMINATE, Abilities.SWARM, Abilities.PRANKSTER, 430, 65, 73, 75, 47, 85, 85, 150, 70, 151, GrowthRate.ERRATIC, 100, false),
+ new PokemonSpecies(Species.ILLUMISE, 3, false, false, false, "Firefly Pokémon", Type.BUG, null, 0.6, 17.7, Abilities.OBLIVIOUS, Abilities.TINTED_LENS, Abilities.PRANKSTER, 430, 65, 47, 75, 73, 85, 85, 150, 70, 151, GrowthRate.FLUCTUATING, 0, false),
+ new PokemonSpecies(Species.ROSELIA, 3, false, false, false, "Thorn Pokémon", Type.GRASS, Type.POISON, 0.3, 2, Abilities.NATURAL_CURE, Abilities.POISON_POINT, Abilities.LEAF_GUARD, 400, 50, 60, 45, 100, 80, 65, 150, 50, 140, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.GULPIN, 3, false, false, false, "Stomach Pokémon", Type.POISON, null, 0.4, 10.3, Abilities.LIQUID_OOZE, Abilities.STICKY_HOLD, Abilities.GLUTTONY, 302, 70, 43, 53, 43, 53, 40, 225, 70, 60, GrowthRate.FLUCTUATING, 50, true),
+ new PokemonSpecies(Species.SWALOT, 3, false, false, false, "Poison Bag Pokémon", Type.POISON, null, 1.7, 80, Abilities.LIQUID_OOZE, Abilities.STICKY_HOLD, Abilities.GLUTTONY, 467, 100, 73, 83, 73, 83, 55, 75, 70, 163, GrowthRate.FLUCTUATING, 50, true),
+ new PokemonSpecies(Species.CARVANHA, 3, false, false, false, "Savage Pokémon", Type.WATER, Type.DARK, 0.8, 20.8, Abilities.ROUGH_SKIN, Abilities.NONE, Abilities.SPEED_BOOST, 305, 45, 90, 20, 65, 20, 65, 225, 35, 61, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.SHARPEDO, 3, false, false, false, "Brutal Pokémon", Type.WATER, Type.DARK, 1.8, 88.8, Abilities.ROUGH_SKIN, Abilities.NONE, Abilities.SPEED_BOOST, 460, 70, 120, 40, 95, 40, 95, 60, 35, 161, GrowthRate.SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.WATER, Type.DARK, 1.8, 88.8, Abilities.ROUGH_SKIN, Abilities.NONE, Abilities.SPEED_BOOST, 460, 70, 120, 40, 95, 40, 95, 60, 35, 161),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.WATER, Type.DARK, 2.5, 130.3, Abilities.STRONG_JAW, Abilities.NONE, Abilities.STRONG_JAW, 560, 70, 140, 70, 110, 65, 105, 60, 35, 161),
),
- new PokemonSpecies(Species.WAILMER, "Wailmer", 3, false, false, false, "Ball Whale Pokémon", Type.WATER, null, 2, 130, Abilities.WATER_VEIL, Abilities.OBLIVIOUS, Abilities.PRESSURE, 400, 130, 70, 35, 70, 35, 60, 125, 50, 80, GrowthRate.FLUCTUATING, 50, false),
- new PokemonSpecies(Species.WAILORD, "Wailord", 3, false, false, false, "Float Whale Pokémon", Type.WATER, null, 14.5, 398, Abilities.WATER_VEIL, Abilities.OBLIVIOUS, Abilities.PRESSURE, 500, 170, 90, 45, 90, 45, 60, 60, 50, 175, GrowthRate.FLUCTUATING, 50, false),
- new PokemonSpecies(Species.NUMEL, "Numel", 3, false, false, false, "Numb Pokémon", Type.FIRE, Type.GROUND, 0.7, 24, Abilities.OBLIVIOUS, Abilities.SIMPLE, Abilities.OWN_TEMPO, 305, 60, 60, 40, 65, 45, 35, 255, 70, 61, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.CAMERUPT, "Camerupt", 3, false, false, false, "Eruption Pokémon", Type.FIRE, Type.GROUND, 1.9, 220, Abilities.MAGMA_ARMOR, Abilities.SOLID_ROCK, Abilities.ANGER_POINT, 460, 70, 100, 70, 105, 75, 40, 150, 70, 161, GrowthRate.MEDIUM_FAST, 50, true, true,
+ new PokemonSpecies(Species.WAILMER, 3, false, false, false, "Ball Whale Pokémon", Type.WATER, null, 2, 130, Abilities.WATER_VEIL, Abilities.OBLIVIOUS, Abilities.PRESSURE, 400, 130, 70, 35, 70, 35, 60, 125, 50, 80, GrowthRate.FLUCTUATING, 50, false),
+ new PokemonSpecies(Species.WAILORD, 3, false, false, false, "Float Whale Pokémon", Type.WATER, null, 14.5, 398, Abilities.WATER_VEIL, Abilities.OBLIVIOUS, Abilities.PRESSURE, 500, 170, 90, 45, 90, 45, 60, 60, 50, 175, GrowthRate.FLUCTUATING, 50, false),
+ new PokemonSpecies(Species.NUMEL, 3, false, false, false, "Numb Pokémon", Type.FIRE, Type.GROUND, 0.7, 24, Abilities.OBLIVIOUS, Abilities.SIMPLE, Abilities.OWN_TEMPO, 305, 60, 60, 40, 65, 45, 35, 255, 70, 61, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.CAMERUPT, 3, false, false, false, "Eruption Pokémon", Type.FIRE, Type.GROUND, 1.9, 220, Abilities.MAGMA_ARMOR, Abilities.SOLID_ROCK, Abilities.ANGER_POINT, 460, 70, 100, 70, 105, 75, 40, 150, 70, 161, GrowthRate.MEDIUM_FAST, 50, true, true,
new PokemonForm("Normal", "", Type.FIRE, Type.GROUND, 1.9, 220, Abilities.MAGMA_ARMOR, Abilities.SOLID_ROCK, Abilities.ANGER_POINT, 460, 70, 100, 70, 105, 75, 40, 150, 70, 161, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.FIRE, Type.GROUND, 2.5, 320.5, Abilities.SHEER_FORCE, Abilities.SHEER_FORCE, Abilities.SHEER_FORCE, 560, 70, 120, 100, 145, 105, 20, 150, 70, 161),
),
- new PokemonSpecies(Species.TORKOAL, "Torkoal", 3, false, false, false, "Coal Pokémon", Type.FIRE, null, 0.5, 80.4, Abilities.WHITE_SMOKE, Abilities.DROUGHT, Abilities.SHELL_ARMOR, 470, 70, 85, 140, 85, 70, 20, 90, 50, 165, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SPOINK, "Spoink", 3, false, false, false, "Bounce Pokémon", Type.PSYCHIC, null, 0.7, 30.6, Abilities.THICK_FAT, Abilities.OWN_TEMPO, Abilities.GLUTTONY, 330, 60, 25, 35, 70, 80, 60, 255, 70, 66, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.GRUMPIG, "Grumpig", 3, false, false, false, "Manipulate Pokémon", Type.PSYCHIC, null, 0.9, 71.5, Abilities.THICK_FAT, Abilities.OWN_TEMPO, Abilities.GLUTTONY, 470, 80, 45, 65, 90, 110, 80, 60, 70, 165, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.SPINDA, "Spinda", 3, false, false, false, "Spot Panda Pokémon", Type.NORMAL, null, 1.1, 5, Abilities.OWN_TEMPO, Abilities.TANGLED_FEET, Abilities.CONTRARY, 360, 60, 60, 60, 60, 60, 60, 255, 70, 126, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.TRAPINCH, "Trapinch", 3, false, false, false, "Ant Pit Pokémon", Type.GROUND, null, 0.7, 15, Abilities.HYPER_CUTTER, Abilities.ARENA_TRAP, Abilities.SHEER_FORCE, 290, 45, 100, 45, 45, 45, 10, 255, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.VIBRAVA, "Vibrava", 3, false, false, false, "Vibration Pokémon", Type.GROUND, Type.DRAGON, 1.1, 15.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 340, 50, 70, 50, 50, 50, 70, 120, 50, 119, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.FLYGON, "Flygon", 3, false, false, false, "Mystic Pokémon", Type.GROUND, Type.DRAGON, 2, 82, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 80, 100, 80, 80, 80, 100, 45, 50, 260, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.CACNEA, "Cacnea", 3, false, false, false, "Cactus Pokémon", Type.GRASS, null, 0.4, 51.3, Abilities.SAND_VEIL, Abilities.NONE, Abilities.WATER_ABSORB, 335, 50, 85, 40, 85, 40, 35, 190, 35, 67, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.CACTURNE, "Cacturne", 3, false, false, false, "Scarecrow Pokémon", Type.GRASS, Type.DARK, 1.3, 77.4, Abilities.SAND_VEIL, Abilities.NONE, Abilities.WATER_ABSORB, 475, 70, 115, 60, 115, 60, 55, 60, 35, 166, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.SWABLU, "Swablu", 3, false, false, false, "Cotton Bird Pokémon", Type.NORMAL, Type.FLYING, 0.4, 1.2, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.CLOUD_NINE, 310, 45, 40, 60, 40, 75, 50, 255, 50, 62, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.ALTARIA, "Altaria", 3, false, false, false, "Humming Pokémon", Type.DRAGON, Type.FLYING, 1.1, 20.6, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.CLOUD_NINE, 490, 75, 70, 90, 70, 105, 80, 45, 50, 172, GrowthRate.ERRATIC, 50, false, true,
+ new PokemonSpecies(Species.TORKOAL, 3, false, false, false, "Coal Pokémon", Type.FIRE, null, 0.5, 80.4, Abilities.WHITE_SMOKE, Abilities.DROUGHT, Abilities.SHELL_ARMOR, 470, 70, 85, 140, 85, 70, 20, 90, 50, 165, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SPOINK, 3, false, false, false, "Bounce Pokémon", Type.PSYCHIC, null, 0.7, 30.6, Abilities.THICK_FAT, Abilities.OWN_TEMPO, Abilities.GLUTTONY, 330, 60, 25, 35, 70, 80, 60, 255, 70, 66, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.GRUMPIG, 3, false, false, false, "Manipulate Pokémon", Type.PSYCHIC, null, 0.9, 71.5, Abilities.THICK_FAT, Abilities.OWN_TEMPO, Abilities.GLUTTONY, 470, 80, 45, 65, 90, 110, 80, 60, 70, 165, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.SPINDA, 3, false, false, false, "Spot Panda Pokémon", Type.NORMAL, null, 1.1, 5, Abilities.OWN_TEMPO, Abilities.TANGLED_FEET, Abilities.CONTRARY, 360, 60, 60, 60, 60, 60, 60, 255, 70, 126, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.TRAPINCH, 3, false, false, false, "Ant Pit Pokémon", Type.GROUND, null, 0.7, 15, Abilities.HYPER_CUTTER, Abilities.ARENA_TRAP, Abilities.SHEER_FORCE, 290, 45, 100, 45, 45, 45, 10, 255, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.VIBRAVA, 3, false, false, false, "Vibration Pokémon", Type.GROUND, Type.DRAGON, 1.1, 15.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 340, 50, 70, 50, 50, 50, 70, 120, 50, 119, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.FLYGON, 3, false, false, false, "Mystic Pokémon", Type.GROUND, Type.DRAGON, 2, 82, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 80, 100, 80, 80, 80, 100, 45, 50, 260, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.CACNEA, 3, false, false, false, "Cactus Pokémon", Type.GRASS, null, 0.4, 51.3, Abilities.SAND_VEIL, Abilities.NONE, Abilities.WATER_ABSORB, 335, 50, 85, 40, 85, 40, 35, 190, 35, 67, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.CACTURNE, 3, false, false, false, "Scarecrow Pokémon", Type.GRASS, Type.DARK, 1.3, 77.4, Abilities.SAND_VEIL, Abilities.NONE, Abilities.WATER_ABSORB, 475, 70, 115, 60, 115, 60, 55, 60, 35, 166, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.SWABLU, 3, false, false, false, "Cotton Bird Pokémon", Type.NORMAL, Type.FLYING, 0.4, 1.2, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.CLOUD_NINE, 310, 45, 40, 60, 40, 75, 50, 255, 50, 62, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.ALTARIA, 3, false, false, false, "Humming Pokémon", Type.DRAGON, Type.FLYING, 1.1, 20.6, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.CLOUD_NINE, 490, 75, 70, 90, 70, 105, 80, 45, 50, 172, GrowthRate.ERRATIC, 50, false, true,
new PokemonForm("Normal", "", Type.DRAGON, Type.FLYING, 1.1, 20.6, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.CLOUD_NINE, 490, 75, 70, 90, 70, 105, 80, 45, 50, 172),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.DRAGON, Type.FAIRY, 1.5, 20.6, Abilities.PIXILATE, Abilities.NONE, Abilities.PIXILATE, 590, 75, 110, 110, 110, 105, 80, 45, 50, 172),
),
- new PokemonSpecies(Species.ZANGOOSE, "Zangoose", 3, false, false, false, "Cat Ferret Pokémon", Type.NORMAL, null, 1.3, 40.3, Abilities.IMMUNITY, Abilities.NONE, Abilities.TOXIC_BOOST, 458, 73, 115, 60, 60, 60, 90, 90, 70, 160, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.SEVIPER, "Seviper", 3, false, false, false, "Fang Snake Pokémon", Type.POISON, null, 2.7, 52.5, Abilities.SHED_SKIN, Abilities.NONE, Abilities.INFILTRATOR, 458, 73, 100, 60, 100, 60, 65, 90, 70, 160, GrowthRate.FLUCTUATING, 50, false),
- new PokemonSpecies(Species.LUNATONE, "Lunatone", 3, false, false, false, "Meteorite Pokémon", Type.ROCK, Type.PSYCHIC, 1, 168, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 460, 90, 55, 65, 95, 85, 70, 45, 50, 161, GrowthRate.FAST, null, false),
- new PokemonSpecies(Species.SOLROCK, "Solrock", 3, false, false, false, "Meteorite Pokémon", Type.ROCK, Type.PSYCHIC, 1.2, 154, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 460, 90, 95, 85, 55, 65, 70, 45, 50, 161, GrowthRate.FAST, null, false),
- new PokemonSpecies(Species.BARBOACH, "Barboach", 3, false, false, false, "Whiskers Pokémon", Type.WATER, Type.GROUND, 0.4, 1.9, Abilities.OBLIVIOUS, Abilities.ANTICIPATION, Abilities.HYDRATION, 288, 50, 48, 43, 46, 41, 60, 190, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.WHISCASH, "Whiscash", 3, false, false, false, "Whiskers Pokémon", Type.WATER, Type.GROUND, 0.9, 23.6, Abilities.OBLIVIOUS, Abilities.ANTICIPATION, Abilities.HYDRATION, 468, 110, 78, 73, 76, 71, 60, 75, 50, 164, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CORPHISH, "Corphish", 3, false, false, false, "Ruffian Pokémon", Type.WATER, null, 0.6, 11.5, Abilities.HYPER_CUTTER, Abilities.SHELL_ARMOR, Abilities.ADAPTABILITY, 308, 43, 80, 65, 50, 35, 35, 205, 50, 62, GrowthRate.FLUCTUATING, 50, false),
- new PokemonSpecies(Species.CRAWDAUNT, "Crawdaunt", 3, false, false, false, "Rogue Pokémon", Type.WATER, Type.DARK, 1.1, 32.8, Abilities.HYPER_CUTTER, Abilities.SHELL_ARMOR, Abilities.ADAPTABILITY, 468, 63, 120, 85, 90, 55, 55, 155, 50, 164, GrowthRate.FLUCTUATING, 50, false),
- new PokemonSpecies(Species.BALTOY, "Baltoy", 3, false, false, false, "Clay Doll Pokémon", Type.GROUND, Type.PSYCHIC, 0.5, 21.5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 300, 40, 40, 55, 40, 70, 55, 255, 50, 60, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.CLAYDOL, "Claydol", 3, false, false, false, "Clay Doll Pokémon", Type.GROUND, Type.PSYCHIC, 1.5, 108, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 500, 60, 70, 105, 70, 120, 75, 90, 50, 175, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.LILEEP, "Lileep", 3, false, false, false, "Sea Lily Pokémon", Type.ROCK, Type.GRASS, 1, 23.8, Abilities.SUCTION_CUPS, Abilities.NONE, Abilities.STORM_DRAIN, 355, 66, 41, 77, 61, 87, 23, 45, 50, 71, GrowthRate.ERRATIC, 87.5, false),
- new PokemonSpecies(Species.CRADILY, "Cradily", 3, false, false, false, "Barnacle Pokémon", Type.ROCK, Type.GRASS, 1.5, 60.4, Abilities.SUCTION_CUPS, Abilities.NONE, Abilities.STORM_DRAIN, 495, 86, 81, 97, 81, 107, 43, 45, 50, 173, GrowthRate.ERRATIC, 87.5, false),
- new PokemonSpecies(Species.ANORITH, "Anorith", 3, false, false, false, "Old Shrimp Pokémon", Type.ROCK, Type.BUG, 0.7, 12.5, Abilities.BATTLE_ARMOR, Abilities.NONE, Abilities.SWIFT_SWIM, 355, 45, 95, 50, 40, 50, 75, 45, 50, 71, GrowthRate.ERRATIC, 87.5, false),
- new PokemonSpecies(Species.ARMALDO, "Armaldo", 3, false, false, false, "Plate Pokémon", Type.ROCK, Type.BUG, 1.5, 68.2, Abilities.BATTLE_ARMOR, Abilities.NONE, Abilities.SWIFT_SWIM, 495, 75, 125, 100, 70, 80, 45, 45, 50, 173, GrowthRate.ERRATIC, 87.5, false),
- new PokemonSpecies(Species.FEEBAS, "Feebas", 3, false, false, false, "Fish Pokémon", Type.WATER, null, 0.6, 7.4, Abilities.SWIFT_SWIM, Abilities.OBLIVIOUS, Abilities.ADAPTABILITY, 200, 20, 15, 20, 10, 55, 80, 255, 50, 40, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.MILOTIC, "Milotic", 3, false, false, false, "Tender Pokémon", Type.WATER, null, 6.2, 162, Abilities.MARVEL_SCALE, Abilities.COMPETITIVE, Abilities.CUTE_CHARM, 540, 95, 60, 79, 100, 125, 81, 60, 50, 189, GrowthRate.ERRATIC, 50, true),
- new PokemonSpecies(Species.CASTFORM, "Castform", 3, false, false, false, "Weather Pokémon", Type.NORMAL, null, 0.3, 0.8, Abilities.FORECAST, Abilities.NONE, Abilities.NONE, 420, 70, 70, 70, 70, 70, 70, 45, 70, 147, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.ZANGOOSE, 3, false, false, false, "Cat Ferret Pokémon", Type.NORMAL, null, 1.3, 40.3, Abilities.IMMUNITY, Abilities.NONE, Abilities.TOXIC_BOOST, 458, 73, 115, 60, 60, 60, 90, 90, 70, 160, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.SEVIPER, 3, false, false, false, "Fang Snake Pokémon", Type.POISON, null, 2.7, 52.5, Abilities.SHED_SKIN, Abilities.NONE, Abilities.INFILTRATOR, 458, 73, 100, 60, 100, 60, 65, 90, 70, 160, GrowthRate.FLUCTUATING, 50, false),
+ new PokemonSpecies(Species.LUNATONE, 3, false, false, false, "Meteorite Pokémon", Type.ROCK, Type.PSYCHIC, 1, 168, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 460, 90, 55, 65, 95, 85, 70, 45, 50, 161, GrowthRate.FAST, null, false),
+ new PokemonSpecies(Species.SOLROCK, 3, false, false, false, "Meteorite Pokémon", Type.ROCK, Type.PSYCHIC, 1.2, 154, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 460, 90, 95, 85, 55, 65, 70, 45, 50, 161, GrowthRate.FAST, null, false),
+ new PokemonSpecies(Species.BARBOACH, 3, false, false, false, "Whiskers Pokémon", Type.WATER, Type.GROUND, 0.4, 1.9, Abilities.OBLIVIOUS, Abilities.ANTICIPATION, Abilities.HYDRATION, 288, 50, 48, 43, 46, 41, 60, 190, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.WHISCASH, 3, false, false, false, "Whiskers Pokémon", Type.WATER, Type.GROUND, 0.9, 23.6, Abilities.OBLIVIOUS, Abilities.ANTICIPATION, Abilities.HYDRATION, 468, 110, 78, 73, 76, 71, 60, 75, 50, 164, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CORPHISH, 3, false, false, false, "Ruffian Pokémon", Type.WATER, null, 0.6, 11.5, Abilities.HYPER_CUTTER, Abilities.SHELL_ARMOR, Abilities.ADAPTABILITY, 308, 43, 80, 65, 50, 35, 35, 205, 50, 62, GrowthRate.FLUCTUATING, 50, false),
+ new PokemonSpecies(Species.CRAWDAUNT, 3, false, false, false, "Rogue Pokémon", Type.WATER, Type.DARK, 1.1, 32.8, Abilities.HYPER_CUTTER, Abilities.SHELL_ARMOR, Abilities.ADAPTABILITY, 468, 63, 120, 85, 90, 55, 55, 155, 50, 164, GrowthRate.FLUCTUATING, 50, false),
+ new PokemonSpecies(Species.BALTOY, 3, false, false, false, "Clay Doll Pokémon", Type.GROUND, Type.PSYCHIC, 0.5, 21.5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 300, 40, 40, 55, 40, 70, 55, 255, 50, 60, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.CLAYDOL, 3, false, false, false, "Clay Doll Pokémon", Type.GROUND, Type.PSYCHIC, 1.5, 108, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 500, 60, 70, 105, 70, 120, 75, 90, 50, 175, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.LILEEP, 3, false, false, false, "Sea Lily Pokémon", Type.ROCK, Type.GRASS, 1, 23.8, Abilities.SUCTION_CUPS, Abilities.NONE, Abilities.STORM_DRAIN, 355, 66, 41, 77, 61, 87, 23, 45, 50, 71, GrowthRate.ERRATIC, 87.5, false),
+ new PokemonSpecies(Species.CRADILY, 3, false, false, false, "Barnacle Pokémon", Type.ROCK, Type.GRASS, 1.5, 60.4, Abilities.SUCTION_CUPS, Abilities.NONE, Abilities.STORM_DRAIN, 495, 86, 81, 97, 81, 107, 43, 45, 50, 173, GrowthRate.ERRATIC, 87.5, false),
+ new PokemonSpecies(Species.ANORITH, 3, false, false, false, "Old Shrimp Pokémon", Type.ROCK, Type.BUG, 0.7, 12.5, Abilities.BATTLE_ARMOR, Abilities.NONE, Abilities.SWIFT_SWIM, 355, 45, 95, 50, 40, 50, 75, 45, 50, 71, GrowthRate.ERRATIC, 87.5, false),
+ new PokemonSpecies(Species.ARMALDO, 3, false, false, false, "Plate Pokémon", Type.ROCK, Type.BUG, 1.5, 68.2, Abilities.BATTLE_ARMOR, Abilities.NONE, Abilities.SWIFT_SWIM, 495, 75, 125, 100, 70, 80, 45, 45, 50, 173, GrowthRate.ERRATIC, 87.5, false),
+ new PokemonSpecies(Species.FEEBAS, 3, false, false, false, "Fish Pokémon", Type.WATER, null, 0.6, 7.4, Abilities.SWIFT_SWIM, Abilities.OBLIVIOUS, Abilities.ADAPTABILITY, 200, 20, 15, 20, 10, 55, 80, 255, 50, 40, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.MILOTIC, 3, false, false, false, "Tender Pokémon", Type.WATER, null, 6.2, 162, Abilities.MARVEL_SCALE, Abilities.COMPETITIVE, Abilities.CUTE_CHARM, 540, 95, 60, 79, 100, 125, 81, 60, 50, 189, GrowthRate.ERRATIC, 50, true),
+ new PokemonSpecies(Species.CASTFORM, 3, false, false, false, "Weather Pokémon", Type.NORMAL, null, 0.3, 0.8, Abilities.FORECAST, Abilities.NONE, Abilities.NONE, 420, 70, 70, 70, 70, 70, 70, 45, 70, 147, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal Form", "", Type.NORMAL, null, 0.3, 0.8, Abilities.FORECAST, Abilities.NONE, Abilities.NONE, 420, 70, 70, 70, 70, 70, 70, 45, 70, 147),
new PokemonForm("Sunny Form", "sunny", Type.FIRE, null, 0.3, 0.8, Abilities.FORECAST, Abilities.NONE, Abilities.NONE, 420, 70, 70, 70, 70, 70, 70, 45, 70, 147),
new PokemonForm("Rainy Form", "rainy", Type.WATER, null, 0.3, 0.8, Abilities.FORECAST, Abilities.NONE, Abilities.NONE, 420, 70, 70, 70, 70, 70, 70, 45, 70, 147),
new PokemonForm("Snowy Form", "snowy", Type.ICE, null, 0.3, 0.8, Abilities.FORECAST, Abilities.NONE, Abilities.NONE, 420, 70, 70, 70, 70, 70, 70, 45, 70, 147),
),
- new PokemonSpecies(Species.KECLEON, "Kecleon", 3, false, false, false, "Color Swap Pokémon", Type.NORMAL, null, 1, 22, Abilities.COLOR_CHANGE, Abilities.NONE, Abilities.PROTEAN, 440, 60, 90, 70, 60, 120, 40, 200, 70, 154, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SHUPPET, "Shuppet", 3, false, false, false, "Puppet Pokémon", Type.GHOST, null, 0.6, 2.3, Abilities.INSOMNIA, Abilities.FRISK, Abilities.CURSED_BODY, 295, 44, 75, 35, 63, 33, 45, 225, 35, 59, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.BANETTE, "Banette", 3, false, false, false, "Marionette Pokémon", Type.GHOST, null, 1.1, 12.5, Abilities.INSOMNIA, Abilities.FRISK, Abilities.CURSED_BODY, 455, 64, 115, 65, 83, 63, 65, 45, 35, 159, GrowthRate.FAST, 50, false, true,
+ new PokemonSpecies(Species.KECLEON, 3, false, false, false, "Color Swap Pokémon", Type.NORMAL, null, 1, 22, Abilities.COLOR_CHANGE, Abilities.NONE, Abilities.PROTEAN, 440, 60, 90, 70, 60, 120, 40, 200, 70, 154, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SHUPPET, 3, false, false, false, "Puppet Pokémon", Type.GHOST, null, 0.6, 2.3, Abilities.INSOMNIA, Abilities.FRISK, Abilities.CURSED_BODY, 295, 44, 75, 35, 63, 33, 45, 225, 35, 59, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.BANETTE, 3, false, false, false, "Marionette Pokémon", Type.GHOST, null, 1.1, 12.5, Abilities.INSOMNIA, Abilities.FRISK, Abilities.CURSED_BODY, 455, 64, 115, 65, 83, 63, 65, 45, 35, 159, GrowthRate.FAST, 50, false, true,
new PokemonForm("Normal", "", Type.GHOST, null, 1.1, 12.5, Abilities.INSOMNIA, Abilities.FRISK, Abilities.CURSED_BODY, 455, 64, 115, 65, 83, 63, 65, 45, 35, 159),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.GHOST, null, 1.2, 13, Abilities.PRANKSTER, Abilities.PRANKSTER, Abilities.PRANKSTER, 555, 64, 165, 75, 93, 83, 75, 45, 35, 159),
),
- new PokemonSpecies(Species.DUSKULL, "Duskull", 3, false, false, false, "Requiem Pokémon", Type.GHOST, null, 0.8, 15, Abilities.LEVITATE, Abilities.NONE, Abilities.FRISK, 295, 20, 40, 90, 30, 90, 25, 190, 35, 59, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.DUSCLOPS, "Dusclops", 3, false, false, false, "Beckon Pokémon", Type.GHOST, null, 1.6, 30.6, Abilities.PRESSURE, Abilities.NONE, Abilities.FRISK, 455, 40, 70, 130, 60, 130, 25, 90, 35, 159, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.TROPIUS, "Tropius", 3, false, false, false, "Fruit Pokémon", Type.GRASS, Type.FLYING, 2, 100, Abilities.CHLOROPHYLL, Abilities.SOLAR_POWER, Abilities.HARVEST, 460, 99, 68, 83, 72, 87, 51, 200, 70, 161, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.CHIMECHO, "Chimecho", 3, false, false, false, "Wind Chime Pokémon", Type.PSYCHIC, null, 0.6, 1, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 455, 75, 50, 80, 95, 90, 65, 45, 70, 159, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.ABSOL, "Absol", 3, false, false, false, "Disaster Pokémon", Type.DARK, null, 1.2, 47, Abilities.PRESSURE, Abilities.SUPER_LUCK, Abilities.JUSTIFIED, 465, 65, 130, 60, 75, 60, 75, 30, 35, 163, GrowthRate.MEDIUM_SLOW, 50, false, true,
+ new PokemonSpecies(Species.DUSKULL, 3, false, false, false, "Requiem Pokémon", Type.GHOST, null, 0.8, 15, Abilities.LEVITATE, Abilities.NONE, Abilities.FRISK, 295, 20, 40, 90, 30, 90, 25, 190, 35, 59, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.DUSCLOPS, 3, false, false, false, "Beckon Pokémon", Type.GHOST, null, 1.6, 30.6, Abilities.PRESSURE, Abilities.NONE, Abilities.FRISK, 455, 40, 70, 130, 60, 130, 25, 90, 35, 159, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.TROPIUS, 3, false, false, false, "Fruit Pokémon", Type.GRASS, Type.FLYING, 2, 100, Abilities.CHLOROPHYLL, Abilities.SOLAR_POWER, Abilities.HARVEST, 460, 99, 68, 83, 72, 87, 51, 200, 70, 161, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.CHIMECHO, 3, false, false, false, "Wind Chime Pokémon", Type.PSYCHIC, null, 0.6, 1, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 455, 75, 50, 80, 95, 90, 65, 45, 70, 159, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.ABSOL, 3, false, false, false, "Disaster Pokémon", Type.DARK, null, 1.2, 47, Abilities.PRESSURE, Abilities.SUPER_LUCK, Abilities.JUSTIFIED, 465, 65, 130, 60, 75, 60, 75, 30, 35, 163, GrowthRate.MEDIUM_SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.DARK, null, 1.2, 47, Abilities.PRESSURE, Abilities.SUPER_LUCK, Abilities.JUSTIFIED, 465, 65, 130, 60, 75, 60, 75, 30, 35, 163),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.DARK, null, 1.2, 49, Abilities.MAGIC_BOUNCE, Abilities.MAGIC_BOUNCE, Abilities.MAGIC_BOUNCE, 565, 65, 150, 60, 115, 60, 115, 30, 35, 163),
),
- new PokemonSpecies(Species.WYNAUT, "Wynaut", 3, false, false, false, "Bright Pokémon", Type.PSYCHIC, null, 0.6, 14, Abilities.SHADOW_TAG, Abilities.NONE, Abilities.TELEPATHY, 260, 95, 23, 48, 23, 48, 23, 125, 50, 52, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SNORUNT, "Snorunt", 3, false, false, false, "Snow Hat Pokémon", Type.ICE, null, 0.7, 16.8, Abilities.INNER_FOCUS, Abilities.ICE_BODY, Abilities.MOODY, 300, 50, 50, 50, 50, 50, 50, 190, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GLALIE, "Glalie", 3, false, false, false, "Face Pokémon", Type.ICE, null, 1.5, 256.5, Abilities.INNER_FOCUS, Abilities.ICE_BODY, Abilities.MOODY, 480, 80, 80, 80, 80, 80, 80, 75, 50, 168, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.WYNAUT, 3, false, false, false, "Bright Pokémon", Type.PSYCHIC, null, 0.6, 14, Abilities.SHADOW_TAG, Abilities.NONE, Abilities.TELEPATHY, 260, 95, 23, 48, 23, 48, 23, 125, 50, 52, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SNORUNT, 3, false, false, false, "Snow Hat Pokémon", Type.ICE, null, 0.7, 16.8, Abilities.INNER_FOCUS, Abilities.ICE_BODY, Abilities.MOODY, 300, 50, 50, 50, 50, 50, 50, 190, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GLALIE, 3, false, false, false, "Face Pokémon", Type.ICE, null, 1.5, 256.5, Abilities.INNER_FOCUS, Abilities.ICE_BODY, Abilities.MOODY, 480, 80, 80, 80, 80, 80, 80, 75, 50, 168, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.ICE, null, 1.5, 256.5, Abilities.INNER_FOCUS, Abilities.ICE_BODY, Abilities.MOODY, 480, 80, 80, 80, 80, 80, 80, 75, 50, 168),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.ICE, null, 2.1, 350.2, Abilities.REFRIGERATE, Abilities.REFRIGERATE, Abilities.REFRIGERATE, 580, 80, 120, 80, 120, 80, 100, 75, 50, 168),
),
- new PokemonSpecies(Species.SPHEAL, "Spheal", 3, false, false, false, "Clap Pokémon", Type.ICE, Type.WATER, 0.8, 39.5, Abilities.THICK_FAT, Abilities.ICE_BODY, Abilities.OBLIVIOUS, 290, 70, 40, 50, 55, 50, 25, 255, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SEALEO, "Sealeo", 3, false, false, false, "Ball Roll Pokémon", Type.ICE, Type.WATER, 1.1, 87.6, Abilities.THICK_FAT, Abilities.ICE_BODY, Abilities.OBLIVIOUS, 410, 90, 60, 70, 75, 70, 45, 120, 50, 144, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.WALREIN, "Walrein", 3, false, false, false, "Ice Break Pokémon", Type.ICE, Type.WATER, 1.4, 150.6, Abilities.THICK_FAT, Abilities.ICE_BODY, Abilities.OBLIVIOUS, 530, 110, 80, 90, 95, 90, 65, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.CLAMPERL, "Clamperl", 3, false, false, false, "Bivalve Pokémon", Type.WATER, null, 0.4, 52.5, Abilities.SHELL_ARMOR, Abilities.NONE, Abilities.RATTLED, 345, 35, 64, 85, 74, 55, 32, 255, 70, 69, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.HUNTAIL, "Huntail", 3, false, false, false, "Deep Sea Pokémon", Type.WATER, null, 1.7, 27, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.WATER_VEIL, 485, 55, 104, 105, 94, 75, 52, 60, 70, 170, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.GOREBYSS, "Gorebyss", 3, false, false, false, "South Sea Pokémon", Type.WATER, null, 1.8, 22.6, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.HYDRATION, 485, 55, 84, 105, 114, 75, 52, 60, 70, 170, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.RELICANTH, "Relicanth", 3, false, false, false, "Longevity Pokémon", Type.WATER, Type.ROCK, 1, 23.4, Abilities.SWIFT_SWIM, Abilities.ROCK_HEAD, Abilities.STURDY, 485, 100, 90, 130, 45, 65, 55, 25, 50, 170, GrowthRate.SLOW, 87.5, true),
- new PokemonSpecies(Species.LUVDISC, "Luvdisc", 3, false, false, false, "Rendezvous Pokémon", Type.WATER, null, 0.6, 8.7, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.HYDRATION, 330, 43, 30, 55, 40, 65, 97, 225, 70, 116, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.BAGON, "Bagon", 3, false, false, false, "Rock Head Pokémon", Type.DRAGON, null, 0.6, 42.1, Abilities.ROCK_HEAD, Abilities.NONE, Abilities.SHEER_FORCE, 300, 45, 75, 60, 40, 30, 50, 45, 35, 60, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.SHELGON, "Shelgon", 3, false, false, false, "Endurance Pokémon", Type.DRAGON, null, 1.1, 110.5, Abilities.ROCK_HEAD, Abilities.NONE, Abilities.OVERCOAT, 420, 65, 95, 100, 60, 50, 50, 45, 35, 147, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.SALAMENCE, "Salamence", 3, false, false, false, "Dragon Pokémon", Type.DRAGON, Type.FLYING, 1.5, 102.6, Abilities.INTIMIDATE, Abilities.NONE, Abilities.MOXIE, 600, 95, 135, 80, 110, 80, 100, 45, 35, 300, GrowthRate.SLOW, 50, false, true,
+ new PokemonSpecies(Species.SPHEAL, 3, false, false, false, "Clap Pokémon", Type.ICE, Type.WATER, 0.8, 39.5, Abilities.THICK_FAT, Abilities.ICE_BODY, Abilities.OBLIVIOUS, 290, 70, 40, 50, 55, 50, 25, 255, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SEALEO, 3, false, false, false, "Ball Roll Pokémon", Type.ICE, Type.WATER, 1.1, 87.6, Abilities.THICK_FAT, Abilities.ICE_BODY, Abilities.OBLIVIOUS, 410, 90, 60, 70, 75, 70, 45, 120, 50, 144, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.WALREIN, 3, false, false, false, "Ice Break Pokémon", Type.ICE, Type.WATER, 1.4, 150.6, Abilities.THICK_FAT, Abilities.ICE_BODY, Abilities.OBLIVIOUS, 530, 110, 80, 90, 95, 90, 65, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.CLAMPERL, 3, false, false, false, "Bivalve Pokémon", Type.WATER, null, 0.4, 52.5, Abilities.SHELL_ARMOR, Abilities.NONE, Abilities.RATTLED, 345, 35, 64, 85, 74, 55, 32, 255, 70, 69, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.HUNTAIL, 3, false, false, false, "Deep Sea Pokémon", Type.WATER, null, 1.7, 27, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.WATER_VEIL, 485, 55, 104, 105, 94, 75, 52, 60, 70, 170, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.GOREBYSS, 3, false, false, false, "South Sea Pokémon", Type.WATER, null, 1.8, 22.6, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.HYDRATION, 485, 55, 84, 105, 114, 75, 52, 60, 70, 170, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.RELICANTH, 3, false, false, false, "Longevity Pokémon", Type.WATER, Type.ROCK, 1, 23.4, Abilities.SWIFT_SWIM, Abilities.ROCK_HEAD, Abilities.STURDY, 485, 100, 90, 130, 45, 65, 55, 25, 50, 170, GrowthRate.SLOW, 87.5, true),
+ new PokemonSpecies(Species.LUVDISC, 3, false, false, false, "Rendezvous Pokémon", Type.WATER, null, 0.6, 8.7, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.HYDRATION, 330, 43, 30, 55, 40, 65, 97, 225, 70, 116, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.BAGON, 3, false, false, false, "Rock Head Pokémon", Type.DRAGON, null, 0.6, 42.1, Abilities.ROCK_HEAD, Abilities.NONE, Abilities.SHEER_FORCE, 300, 45, 75, 60, 40, 30, 50, 45, 35, 60, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.SHELGON, 3, false, false, false, "Endurance Pokémon", Type.DRAGON, null, 1.1, 110.5, Abilities.ROCK_HEAD, Abilities.NONE, Abilities.OVERCOAT, 420, 65, 95, 100, 60, 50, 50, 45, 35, 147, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.SALAMENCE, 3, false, false, false, "Dragon Pokémon", Type.DRAGON, Type.FLYING, 1.5, 102.6, Abilities.INTIMIDATE, Abilities.NONE, Abilities.MOXIE, 600, 95, 135, 80, 110, 80, 100, 45, 35, 300, GrowthRate.SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.DRAGON, Type.FLYING, 1.5, 102.6, Abilities.INTIMIDATE, Abilities.NONE, Abilities.MOXIE, 600, 95, 135, 80, 110, 80, 100, 45, 35, 300),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.DRAGON, Type.FLYING, 1.8, 112.6, Abilities.AERILATE, Abilities.NONE, Abilities.AERILATE, 700, 95, 145, 130, 120, 90, 120, 45, 35, 300),
),
- new PokemonSpecies(Species.BELDUM, "Beldum", 3, false, false, false, "Iron Ball Pokémon", Type.STEEL, Type.PSYCHIC, 0.6, 95.2, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.LIGHT_METAL, 300, 40, 55, 80, 35, 60, 30, 3, 35, 60, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.METANG, "Metang", 3, false, false, false, "Iron Claw Pokémon", Type.STEEL, Type.PSYCHIC, 1.2, 202.5, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.LIGHT_METAL, 420, 60, 75, 100, 55, 80, 50, 3, 35, 147, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.METAGROSS, "Metagross", 3, false, false, false, "Iron Leg Pokémon", Type.STEEL, Type.PSYCHIC, 1.6, 550, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.LIGHT_METAL, 600, 80, 135, 130, 95, 90, 70, 3, 35, 300, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.BELDUM, 3, false, false, false, "Iron Ball Pokémon", Type.STEEL, Type.PSYCHIC, 0.6, 95.2, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.LIGHT_METAL, 300, 40, 55, 80, 35, 60, 30, 3, 35, 60, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.METANG, 3, false, false, false, "Iron Claw Pokémon", Type.STEEL, Type.PSYCHIC, 1.2, 202.5, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.LIGHT_METAL, 420, 60, 75, 100, 55, 80, 50, 3, 35, 147, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.METAGROSS, 3, false, false, false, "Iron Leg Pokémon", Type.STEEL, Type.PSYCHIC, 1.6, 550, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.LIGHT_METAL, 600, 80, 135, 130, 95, 90, 70, 3, 35, 300, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.STEEL, Type.PSYCHIC, 1.6, 550, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.LIGHT_METAL, 600, 80, 135, 130, 95, 90, 70, 3, 35, 300),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.STEEL, Type.PSYCHIC, 2.5, 942.9, Abilities.TOUGH_CLAWS, Abilities.NONE, Abilities.TOUGH_CLAWS, 700, 80, 145, 150, 105, 110, 110, 3, 35, 300),
),
- new PokemonSpecies(Species.REGIROCK, "Regirock", 3, true, false, false, "Rock Peak Pokémon", Type.ROCK, null, 1.7, 230, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.STURDY, 580, 80, 100, 200, 50, 100, 50, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.REGICE, "Regice", 3, true, false, false, "Iceberg Pokémon", Type.ICE, null, 1.8, 175, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.ICE_BODY, 580, 80, 50, 100, 100, 200, 50, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.REGISTEEL, "Registeel", 3, true, false, false, "Iron Pokémon", Type.STEEL, null, 1.9, 205, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.LIGHT_METAL, 580, 80, 75, 150, 75, 150, 50, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.LATIAS, "Latias", 3, true, false, false, "Eon Pokémon", Type.DRAGON, Type.PSYCHIC, 1.4, 40, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 600, 80, 80, 90, 110, 130, 110, 3, 90, 300, GrowthRate.SLOW, 0, false, true,
+ new PokemonSpecies(Species.REGIROCK, 3, true, false, false, "Rock Peak Pokémon", Type.ROCK, null, 1.7, 230, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.STURDY, 580, 80, 100, 200, 50, 100, 50, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.REGICE, 3, true, false, false, "Iceberg Pokémon", Type.ICE, null, 1.8, 175, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.ICE_BODY, 580, 80, 50, 100, 100, 200, 50, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.REGISTEEL, 3, true, false, false, "Iron Pokémon", Type.STEEL, null, 1.9, 205, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.LIGHT_METAL, 580, 80, 75, 150, 75, 150, 50, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.LATIAS, 3, true, false, false, "Eon Pokémon", Type.DRAGON, Type.PSYCHIC, 1.4, 40, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 600, 80, 80, 90, 110, 130, 110, 3, 90, 300, GrowthRate.SLOW, 0, false, true,
new PokemonForm("Normal", "", Type.DRAGON, Type.PSYCHIC, 1.4, 40, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 600, 80, 80, 90, 110, 130, 110, 3, 90, 300),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.DRAGON, Type.PSYCHIC, 1.8, 52, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 700, 80, 100, 120, 140, 150, 110, 3, 90, 300),
),
- new PokemonSpecies(Species.LATIOS, "Latios", 3, true, false, false, "Eon Pokémon", Type.DRAGON, Type.PSYCHIC, 2, 60, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 600, 80, 90, 80, 130, 110, 110, 3, 90, 300, GrowthRate.SLOW, 100, false, true,
+ new PokemonSpecies(Species.LATIOS, 3, true, false, false, "Eon Pokémon", Type.DRAGON, Type.PSYCHIC, 2, 60, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 600, 80, 90, 80, 130, 110, 110, 3, 90, 300, GrowthRate.SLOW, 100, false, true,
new PokemonForm("Normal", "", Type.DRAGON, Type.PSYCHIC, 2, 60, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 600, 80, 90, 80, 130, 110, 110, 3, 90, 300),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.DRAGON, Type.PSYCHIC, 2.3, 70, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 700, 80, 130, 100, 160, 120, 110, 3, 90, 300),
),
- new PokemonSpecies(Species.KYOGRE, "Kyogre", 3, false, true, false, "Sea Basin Pokémon", Type.WATER, null, 4.5, 352, Abilities.DRIZZLE, Abilities.NONE, Abilities.NONE, 670, 100, 100, 90, 150, 140, 90, 3, 0, 335, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.KYOGRE, 3, false, true, false, "Sea Basin Pokémon", Type.WATER, null, 4.5, 352, Abilities.DRIZZLE, Abilities.NONE, Abilities.NONE, 670, 100, 100, 90, 150, 140, 90, 3, 0, 335, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.WATER, null, 4.5, 352, Abilities.DRIZZLE, Abilities.NONE, Abilities.NONE, 670, 100, 100, 90, 150, 140, 90, 3, 0, 335),
new PokemonForm("Primal", "primal", Type.WATER, null, 9.8, 430, Abilities.PRIMORDIAL_SEA, Abilities.NONE, Abilities.NONE, 770, 100, 150, 90, 180, 160, 90, 3, 0, 335),
),
- new PokemonSpecies(Species.GROUDON, "Groudon", 3, false, true, false, "Continent Pokémon", Type.GROUND, null, 3.5, 950, Abilities.DROUGHT, Abilities.NONE, Abilities.NONE, 670, 100, 150, 140, 100, 90, 90, 3, 0, 335, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.GROUDON, 3, false, true, false, "Continent Pokémon", Type.GROUND, null, 3.5, 950, Abilities.DROUGHT, Abilities.NONE, Abilities.NONE, 670, 100, 150, 140, 100, 90, 90, 3, 0, 335, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.GROUND, null, 3.5, 950, Abilities.DROUGHT, Abilities.NONE, Abilities.NONE, 670, 100, 150, 140, 100, 90, 90, 3, 0, 335),
new PokemonForm("Primal", "primal", Type.GROUND, Type.FIRE, 5, 999.7, Abilities.DESOLATE_LAND, Abilities.NONE, Abilities.NONE, 770, 100, 180, 160, 150, 90, 90, 3, 0, 335),
),
- new PokemonSpecies(Species.RAYQUAZA, "Rayquaza", 3, false, true, false, "Sky High Pokémon", Type.DRAGON, Type.FLYING, 7, 206.5, Abilities.AIR_LOCK, Abilities.NONE, Abilities.NONE, 680, 105, 150, 90, 150, 90, 95, 45, 0, 340, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.RAYQUAZA, 3, false, true, false, "Sky High Pokémon", Type.DRAGON, Type.FLYING, 7, 206.5, Abilities.AIR_LOCK, Abilities.NONE, Abilities.NONE, 680, 105, 150, 90, 150, 90, 95, 45, 0, 340, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.DRAGON, Type.FLYING, 7, 206.5, Abilities.AIR_LOCK, Abilities.NONE, Abilities.NONE, 680, 105, 150, 90, 150, 90, 95, 45, 0, 340),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.DRAGON, Type.FLYING, 10.8, 392, Abilities.DELTA_STREAM, Abilities.NONE, Abilities.NONE, 780, 105, 180, 100, 180, 100, 115, 45, 0, 340),
),
- new PokemonSpecies(Species.JIRACHI, "Jirachi", 3, false, false, true, "Wish Pokémon", Type.STEEL, Type.PSYCHIC, 0.3, 1.1, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 3, 100, 300, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.DEOXYS, "Deoxys", 3, false, false, true, "DNA Pokémon", Type.PSYCHIC, null, 1.7, 60.8, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 600, 50, 150, 50, 150, 50, 150, 3, 0, 270, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.JIRACHI, 3, false, false, true, "Wish Pokémon", Type.STEEL, Type.PSYCHIC, 0.3, 1.1, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 3, 100, 300, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.DEOXYS, 3, false, false, true, "DNA Pokémon", Type.PSYCHIC, null, 1.7, 60.8, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 600, 50, 150, 50, 150, 50, 150, 3, 0, 270, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal Forme", "normal", Type.PSYCHIC, null, 1.7, 60.8, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 600, 50, 150, 50, 150, 50, 150, 3, 0, 270, false, ""),
new PokemonForm("Attack Forme", "attack", Type.PSYCHIC, null, 1.7, 60.8, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 600, 50, 180, 20, 180, 20, 150, 3, 0, 270),
new PokemonForm("Defense Forme", "defense", Type.PSYCHIC, null, 1.7, 60.8, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 600, 50, 70, 160, 70, 160, 90, 3, 0, 270),
new PokemonForm("Speed Forme", "speed", Type.PSYCHIC, null, 1.7, 60.8, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 600, 50, 95, 90, 95, 90, 180, 3, 0, 270),
),
- new PokemonSpecies(Species.TURTWIG, "Turtwig", 4, false, false, false, "Tiny Leaf Pokémon", Type.GRASS, null, 0.4, 10.2, Abilities.OVERGROW, Abilities.NONE, Abilities.SHELL_ARMOR, 318, 55, 68, 64, 45, 55, 31, 45, 70, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.GROTLE, "Grotle", 4, false, false, false, "Grove Pokémon", Type.GRASS, null, 1.1, 97, Abilities.OVERGROW, Abilities.NONE, Abilities.SHELL_ARMOR, 405, 75, 89, 85, 55, 65, 36, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.TORTERRA, "Torterra", 4, false, false, false, "Continent Pokémon", Type.GRASS, Type.GROUND, 2.2, 310, Abilities.OVERGROW, Abilities.NONE, Abilities.SHELL_ARMOR, 525, 95, 109, 105, 75, 85, 56, 45, 70, 236, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.CHIMCHAR, "Chimchar", 4, false, false, false, "Chimp Pokémon", Type.FIRE, null, 0.5, 6.2, Abilities.BLAZE, Abilities.NONE, Abilities.IRON_FIST, 309, 44, 58, 44, 58, 44, 61, 45, 70, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.MONFERNO, "Monferno", 4, false, false, false, "Playful Pokémon", Type.FIRE, Type.FIGHTING, 0.9, 22, Abilities.BLAZE, Abilities.NONE, Abilities.IRON_FIST, 405, 64, 78, 52, 78, 52, 81, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.INFERNAPE, "Infernape", 4, false, false, false, "Flame Pokémon", Type.FIRE, Type.FIGHTING, 1.2, 55, Abilities.BLAZE, Abilities.NONE, Abilities.IRON_FIST, 534, 76, 104, 71, 104, 71, 108, 45, 70, 240, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.PIPLUP, "Piplup", 4, false, false, false, "Penguin Pokémon", Type.WATER, null, 0.4, 5.2, Abilities.TORRENT, Abilities.NONE, Abilities.COMPETITIVE, 314, 53, 51, 53, 61, 56, 40, 45, 70, 63, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.PRINPLUP, "Prinplup", 4, false, false, false, "Penguin Pokémon", Type.WATER, null, 0.8, 23, Abilities.TORRENT, Abilities.NONE, Abilities.COMPETITIVE, 405, 64, 66, 68, 81, 76, 50, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.EMPOLEON, "Empoleon", 4, false, false, false, "Emperor Pokémon", Type.WATER, Type.STEEL, 1.7, 84.5, Abilities.TORRENT, Abilities.NONE, Abilities.COMPETITIVE, 530, 84, 86, 88, 111, 101, 60, 45, 70, 239, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.STARLY, "Starly", 4, false, false, false, "Starling Pokémon", Type.NORMAL, Type.FLYING, 0.3, 2, Abilities.KEEN_EYE, Abilities.NONE, Abilities.RECKLESS, 245, 40, 55, 30, 30, 30, 60, 255, 70, 49, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.STARAVIA, "Staravia", 4, false, false, false, "Starling Pokémon", Type.NORMAL, Type.FLYING, 0.6, 15.5, Abilities.INTIMIDATE, Abilities.NONE, Abilities.RECKLESS, 340, 55, 75, 50, 40, 40, 80, 120, 70, 119, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.STARAPTOR, "Staraptor", 4, false, false, false, "Predator Pokémon", Type.NORMAL, Type.FLYING, 1.2, 24.9, Abilities.INTIMIDATE, Abilities.NONE, Abilities.RECKLESS, 485, 85, 120, 70, 50, 60, 100, 45, 70, 218, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.BIDOOF, "Bidoof", 4, false, false, false, "Plump Mouse Pokémon", Type.NORMAL, null, 0.5, 20, Abilities.SIMPLE, Abilities.UNAWARE, Abilities.MOODY, 250, 59, 45, 40, 35, 40, 31, 255, 70, 50, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.BIBAREL, "Bibarel", 4, false, false, false, "Beaver Pokémon", Type.NORMAL, Type.WATER, 1, 31.5, Abilities.SIMPLE, Abilities.UNAWARE, Abilities.MOODY, 410, 79, 85, 60, 55, 60, 71, 127, 70, 144, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.KRICKETOT, "Kricketot", 4, false, false, false, "Cricket Pokémon", Type.BUG, null, 0.3, 2.2, Abilities.SHED_SKIN, Abilities.NONE, Abilities.RUN_AWAY, 194, 37, 25, 41, 25, 41, 25, 255, 70, 39, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.KRICKETUNE, "Kricketune", 4, false, false, false, "Cricket Pokémon", Type.BUG, null, 1, 25.5, Abilities.SWARM, Abilities.NONE, Abilities.TECHNICIAN, 384, 77, 85, 51, 55, 51, 65, 45, 70, 134, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.SHINX, "Shinx", 4, false, false, false, "Flash Pokémon", Type.ELECTRIC, null, 0.5, 9.5, Abilities.RIVALRY, Abilities.INTIMIDATE, Abilities.GUTS, 263, 45, 65, 34, 40, 34, 45, 235, 50, 53, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.LUXIO, "Luxio", 4, false, false, false, "Spark Pokémon", Type.ELECTRIC, null, 0.9, 30.5, Abilities.RIVALRY, Abilities.INTIMIDATE, Abilities.GUTS, 363, 60, 85, 49, 60, 49, 60, 120, 100, 127, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.LUXRAY, "Luxray", 4, false, false, false, "Gleam Eyes Pokémon", Type.ELECTRIC, null, 1.4, 42, Abilities.RIVALRY, Abilities.INTIMIDATE, Abilities.GUTS, 523, 80, 120, 79, 95, 79, 70, 45, 50, 262, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.BUDEW, "Budew", 4, false, false, false, "Bud Pokémon", Type.GRASS, Type.POISON, 0.2, 1.2, Abilities.NATURAL_CURE, Abilities.POISON_POINT, Abilities.LEAF_GUARD, 280, 40, 30, 35, 50, 70, 55, 255, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.ROSERADE, "Roserade", 4, false, false, false, "Bouquet Pokémon", Type.GRASS, Type.POISON, 0.9, 14.5, Abilities.NATURAL_CURE, Abilities.POISON_POINT, Abilities.TECHNICIAN, 515, 60, 70, 65, 125, 105, 90, 75, 50, 258, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.CRANIDOS, "Cranidos", 4, false, false, false, "Head Butt Pokémon", Type.ROCK, null, 0.9, 31.5, Abilities.MOLD_BREAKER, Abilities.NONE, Abilities.SHEER_FORCE, 350, 67, 125, 40, 30, 30, 58, 45, 70, 70, GrowthRate.ERRATIC, 87.5, false),
- new PokemonSpecies(Species.RAMPARDOS, "Rampardos", 4, false, false, false, "Head Butt Pokémon", Type.ROCK, null, 1.6, 102.5, Abilities.MOLD_BREAKER, Abilities.NONE, Abilities.SHEER_FORCE, 495, 97, 165, 60, 65, 50, 58, 45, 70, 173, GrowthRate.ERRATIC, 87.5, false),
- new PokemonSpecies(Species.SHIELDON, "Shieldon", 4, false, false, false, "Shield Pokémon", Type.ROCK, Type.STEEL, 0.5, 57, Abilities.STURDY, Abilities.NONE, Abilities.SOUNDPROOF, 350, 30, 42, 118, 42, 88, 30, 45, 70, 70, GrowthRate.ERRATIC, 87.5, false),
- new PokemonSpecies(Species.BASTIODON, "Bastiodon", 4, false, false, false, "Shield Pokémon", Type.ROCK, Type.STEEL, 1.3, 149.5, Abilities.STURDY, Abilities.NONE, Abilities.SOUNDPROOF, 495, 60, 52, 168, 47, 138, 30, 45, 70, 173, GrowthRate.ERRATIC, 87.5, false),
- new PokemonSpecies(Species.BURMY, "Burmy", 4, false, false, false, "Bagworm Pokémon", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.TURTWIG, 4, false, false, false, "Tiny Leaf Pokémon", Type.GRASS, null, 0.4, 10.2, Abilities.OVERGROW, Abilities.NONE, Abilities.SHELL_ARMOR, 318, 55, 68, 64, 45, 55, 31, 45, 70, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.GROTLE, 4, false, false, false, "Grove Pokémon", Type.GRASS, null, 1.1, 97, Abilities.OVERGROW, Abilities.NONE, Abilities.SHELL_ARMOR, 405, 75, 89, 85, 55, 65, 36, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.TORTERRA, 4, false, false, false, "Continent Pokémon", Type.GRASS, Type.GROUND, 2.2, 310, Abilities.OVERGROW, Abilities.NONE, Abilities.SHELL_ARMOR, 525, 95, 109, 105, 75, 85, 56, 45, 70, 236, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.CHIMCHAR, 4, false, false, false, "Chimp Pokémon", Type.FIRE, null, 0.5, 6.2, Abilities.BLAZE, Abilities.NONE, Abilities.IRON_FIST, 309, 44, 58, 44, 58, 44, 61, 45, 70, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.MONFERNO, 4, false, false, false, "Playful Pokémon", Type.FIRE, Type.FIGHTING, 0.9, 22, Abilities.BLAZE, Abilities.NONE, Abilities.IRON_FIST, 405, 64, 78, 52, 78, 52, 81, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.INFERNAPE, 4, false, false, false, "Flame Pokémon", Type.FIRE, Type.FIGHTING, 1.2, 55, Abilities.BLAZE, Abilities.NONE, Abilities.IRON_FIST, 534, 76, 104, 71, 104, 71, 108, 45, 70, 240, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.PIPLUP, 4, false, false, false, "Penguin Pokémon", Type.WATER, null, 0.4, 5.2, Abilities.TORRENT, Abilities.NONE, Abilities.COMPETITIVE, 314, 53, 51, 53, 61, 56, 40, 45, 70, 63, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.PRINPLUP, 4, false, false, false, "Penguin Pokémon", Type.WATER, null, 0.8, 23, Abilities.TORRENT, Abilities.NONE, Abilities.COMPETITIVE, 405, 64, 66, 68, 81, 76, 50, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.EMPOLEON, 4, false, false, false, "Emperor Pokémon", Type.WATER, Type.STEEL, 1.7, 84.5, Abilities.TORRENT, Abilities.NONE, Abilities.COMPETITIVE, 530, 84, 86, 88, 111, 101, 60, 45, 70, 239, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.STARLY, 4, false, false, false, "Starling Pokémon", Type.NORMAL, Type.FLYING, 0.3, 2, Abilities.KEEN_EYE, Abilities.NONE, Abilities.RECKLESS, 245, 40, 55, 30, 30, 30, 60, 255, 70, 49, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.STARAVIA, 4, false, false, false, "Starling Pokémon", Type.NORMAL, Type.FLYING, 0.6, 15.5, Abilities.INTIMIDATE, Abilities.NONE, Abilities.RECKLESS, 340, 55, 75, 50, 40, 40, 80, 120, 70, 119, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.STARAPTOR, 4, false, false, false, "Predator Pokémon", Type.NORMAL, Type.FLYING, 1.2, 24.9, Abilities.INTIMIDATE, Abilities.NONE, Abilities.RECKLESS, 485, 85, 120, 70, 50, 60, 100, 45, 70, 218, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.BIDOOF, 4, false, false, false, "Plump Mouse Pokémon", Type.NORMAL, null, 0.5, 20, Abilities.SIMPLE, Abilities.UNAWARE, Abilities.MOODY, 250, 59, 45, 40, 35, 40, 31, 255, 70, 50, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.BIBAREL, 4, false, false, false, "Beaver Pokémon", Type.NORMAL, Type.WATER, 1, 31.5, Abilities.SIMPLE, Abilities.UNAWARE, Abilities.MOODY, 410, 79, 85, 60, 55, 60, 71, 127, 70, 144, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.KRICKETOT, 4, false, false, false, "Cricket Pokémon", Type.BUG, null, 0.3, 2.2, Abilities.SHED_SKIN, Abilities.NONE, Abilities.RUN_AWAY, 194, 37, 25, 41, 25, 41, 25, 255, 70, 39, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.KRICKETUNE, 4, false, false, false, "Cricket Pokémon", Type.BUG, null, 1, 25.5, Abilities.SWARM, Abilities.NONE, Abilities.TECHNICIAN, 384, 77, 85, 51, 55, 51, 65, 45, 70, 134, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.SHINX, 4, false, false, false, "Flash Pokémon", Type.ELECTRIC, null, 0.5, 9.5, Abilities.RIVALRY, Abilities.INTIMIDATE, Abilities.GUTS, 263, 45, 65, 34, 40, 34, 45, 235, 50, 53, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.LUXIO, 4, false, false, false, "Spark Pokémon", Type.ELECTRIC, null, 0.9, 30.5, Abilities.RIVALRY, Abilities.INTIMIDATE, Abilities.GUTS, 363, 60, 85, 49, 60, 49, 60, 120, 100, 127, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.LUXRAY, 4, false, false, false, "Gleam Eyes Pokémon", Type.ELECTRIC, null, 1.4, 42, Abilities.RIVALRY, Abilities.INTIMIDATE, Abilities.GUTS, 523, 80, 120, 79, 95, 79, 70, 45, 50, 262, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.BUDEW, 4, false, false, false, "Bud Pokémon", Type.GRASS, Type.POISON, 0.2, 1.2, Abilities.NATURAL_CURE, Abilities.POISON_POINT, Abilities.LEAF_GUARD, 280, 40, 30, 35, 50, 70, 55, 255, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.ROSERADE, 4, false, false, false, "Bouquet Pokémon", Type.GRASS, Type.POISON, 0.9, 14.5, Abilities.NATURAL_CURE, Abilities.POISON_POINT, Abilities.TECHNICIAN, 515, 60, 70, 65, 125, 105, 90, 75, 50, 258, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.CRANIDOS, 4, false, false, false, "Head Butt Pokémon", Type.ROCK, null, 0.9, 31.5, Abilities.MOLD_BREAKER, Abilities.NONE, Abilities.SHEER_FORCE, 350, 67, 125, 40, 30, 30, 58, 45, 70, 70, GrowthRate.ERRATIC, 87.5, false),
+ new PokemonSpecies(Species.RAMPARDOS, 4, false, false, false, "Head Butt Pokémon", Type.ROCK, null, 1.6, 102.5, Abilities.MOLD_BREAKER, Abilities.NONE, Abilities.SHEER_FORCE, 495, 97, 165, 60, 65, 50, 58, 45, 70, 173, GrowthRate.ERRATIC, 87.5, false),
+ new PokemonSpecies(Species.SHIELDON, 4, false, false, false, "Shield Pokémon", Type.ROCK, Type.STEEL, 0.5, 57, Abilities.STURDY, Abilities.NONE, Abilities.SOUNDPROOF, 350, 30, 42, 118, 42, 88, 30, 45, 70, 70, GrowthRate.ERRATIC, 87.5, false),
+ new PokemonSpecies(Species.BASTIODON, 4, false, false, false, "Shield Pokémon", Type.ROCK, Type.STEEL, 1.3, 149.5, Abilities.STURDY, Abilities.NONE, Abilities.SOUNDPROOF, 495, 60, 52, 168, 47, 138, 30, 45, 70, 173, GrowthRate.ERRATIC, 87.5, false),
+ new PokemonSpecies(Species.BURMY, 4, false, false, false, "Bagworm Pokémon", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Plant Cloak", "plant", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45),
new PokemonForm("Sandy Cloak", "sandy", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45),
new PokemonForm("Trash Cloak", "trash", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45),
),
- new PokemonSpecies(Species.WORMADAM, "Wormadam", 4, false, false, false, "Bagworm Pokémon", Type.BUG, Type.GRASS, 0.5, 6.5, Abilities.ANTICIPATION, Abilities.NONE, Abilities.OVERCOAT, 424, 60, 59, 85, 79, 105, 36, 45, 70, 148, GrowthRate.MEDIUM_FAST, 0, false, false,
+ new PokemonSpecies(Species.WORMADAM, 4, false, false, false, "Bagworm Pokémon", Type.BUG, Type.GRASS, 0.5, 6.5, Abilities.ANTICIPATION, Abilities.NONE, Abilities.OVERCOAT, 424, 60, 59, 85, 79, 105, 36, 45, 70, 148, GrowthRate.MEDIUM_FAST, 0, false, false,
new PokemonForm("Plant Cloak", "plant", Type.BUG, Type.GRASS, 0.5, 6.5, Abilities.ANTICIPATION, Abilities.NONE, Abilities.OVERCOAT, 424, 60, 59, 85, 79, 105, 36, 45, 70, 148),
new PokemonForm("Sandy Cloak", "sandy", Type.BUG, Type.GROUND, 0.5, 6.5, Abilities.ANTICIPATION, Abilities.NONE, Abilities.OVERCOAT, 424, 60, 79, 105, 59, 85, 36, 45, 70, 148),
new PokemonForm("Trash Cloak", "trash", Type.BUG, Type.STEEL, 0.5, 6.5, Abilities.ANTICIPATION, Abilities.NONE, Abilities.OVERCOAT, 424, 60, 69, 95, 69, 95, 36, 45, 70, 148),
),
- new PokemonSpecies(Species.MOTHIM, "Mothim", 4, false, false, false, "Moth Pokémon", Type.BUG, Type.FLYING, 0.9, 23.3, Abilities.SWARM, Abilities.NONE, Abilities.TINTED_LENS, 424, 70, 94, 50, 94, 50, 66, 45, 70, 148, GrowthRate.MEDIUM_FAST, 100, false),
- new PokemonSpecies(Species.COMBEE, "Combee", 4, false, false, false, "Tiny Bee Pokémon", Type.BUG, Type.FLYING, 0.3, 5.5, Abilities.HONEY_GATHER, Abilities.NONE, Abilities.HUSTLE, 244, 30, 30, 42, 30, 42, 70, 120, 50, 49, GrowthRate.MEDIUM_SLOW, 87.5, true),
- new PokemonSpecies(Species.VESPIQUEN, "Vespiquen", 4, false, false, false, "Beehive Pokémon", Type.BUG, Type.FLYING, 1.2, 38.5, Abilities.PRESSURE, Abilities.NONE, Abilities.UNNERVE, 474, 70, 80, 102, 80, 102, 40, 45, 50, 166, GrowthRate.MEDIUM_SLOW, 0, false),
- new PokemonSpecies(Species.PACHIRISU, "Pachirisu", 4, false, false, false, "EleSquirrel Pokémon", Type.ELECTRIC, null, 0.4, 3.9, Abilities.RUN_AWAY, Abilities.PICKUP, Abilities.VOLT_ABSORB, 405, 60, 45, 70, 45, 90, 95, 200, 100, 142, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.BUIZEL, "Buizel", 4, false, false, false, "Sea Weasel Pokémon", Type.WATER, null, 0.7, 29.5, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.WATER_VEIL, 330, 55, 65, 35, 60, 30, 85, 190, 70, 66, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.FLOATZEL, "Floatzel", 4, false, false, false, "Sea Weasel Pokémon", Type.WATER, null, 1.1, 33.5, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.WATER_VEIL, 495, 85, 105, 55, 85, 50, 115, 75, 70, 173, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.CHERUBI, "Cherubi", 4, false, false, false, "Cherry Pokémon", Type.GRASS, null, 0.4, 3.3, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.NONE, 275, 45, 35, 45, 62, 53, 35, 190, 50, 55, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CHERRIM, "Cherrim", 4, false, false, false, "Blossom Pokémon", Type.GRASS, null, 0.5, 9.3, Abilities.FLOWER_GIFT, Abilities.NONE, Abilities.NONE, 450, 70, 60, 70, 87, 78, 85, 75, 50, 158, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.MOTHIM, 4, false, false, false, "Moth Pokémon", Type.BUG, Type.FLYING, 0.9, 23.3, Abilities.SWARM, Abilities.NONE, Abilities.TINTED_LENS, 424, 70, 94, 50, 94, 50, 66, 45, 70, 148, GrowthRate.MEDIUM_FAST, 100, false),
+ new PokemonSpecies(Species.COMBEE, 4, false, false, false, "Tiny Bee Pokémon", Type.BUG, Type.FLYING, 0.3, 5.5, Abilities.HONEY_GATHER, Abilities.NONE, Abilities.HUSTLE, 244, 30, 30, 42, 30, 42, 70, 120, 50, 49, GrowthRate.MEDIUM_SLOW, 87.5, true),
+ new PokemonSpecies(Species.VESPIQUEN, 4, false, false, false, "Beehive Pokémon", Type.BUG, Type.FLYING, 1.2, 38.5, Abilities.PRESSURE, Abilities.NONE, Abilities.UNNERVE, 474, 70, 80, 102, 80, 102, 40, 45, 50, 166, GrowthRate.MEDIUM_SLOW, 0, false),
+ new PokemonSpecies(Species.PACHIRISU, 4, false, false, false, "EleSquirrel Pokémon", Type.ELECTRIC, null, 0.4, 3.9, Abilities.RUN_AWAY, Abilities.PICKUP, Abilities.VOLT_ABSORB, 405, 60, 45, 70, 45, 90, 95, 200, 100, 142, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.BUIZEL, 4, false, false, false, "Sea Weasel Pokémon", Type.WATER, null, 0.7, 29.5, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.WATER_VEIL, 330, 55, 65, 35, 60, 30, 85, 190, 70, 66, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.FLOATZEL, 4, false, false, false, "Sea Weasel Pokémon", Type.WATER, null, 1.1, 33.5, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.WATER_VEIL, 495, 85, 105, 55, 85, 50, 115, 75, 70, 173, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.CHERUBI, 4, false, false, false, "Cherry Pokémon", Type.GRASS, null, 0.4, 3.3, Abilities.CHLOROPHYLL, Abilities.NONE, Abilities.NONE, 275, 45, 35, 45, 62, 53, 35, 190, 50, 55, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CHERRIM, 4, false, false, false, "Blossom Pokémon", Type.GRASS, null, 0.5, 9.3, Abilities.FLOWER_GIFT, Abilities.NONE, Abilities.NONE, 450, 70, 60, 70, 87, 78, 85, 75, 50, 158, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Overcast Form", "overcast", Type.GRASS, null, 0.5, 9.3, Abilities.FLOWER_GIFT, Abilities.NONE, Abilities.NONE, 450, 70, 60, 70, 87, 78, 85, 75, 50, 158),
new PokemonForm("Sunshine Form", "sunshine", Type.GRASS, null, 0.5, 9.3, Abilities.FLOWER_GIFT, Abilities.NONE, Abilities.NONE, 450, 70, 60, 70, 87, 78, 85, 75, 50, 158),
),
- new PokemonSpecies(Species.SHELLOS, "Shellos", 4, false, false, false, "Sea Slug Pokémon", Type.WATER, null, 0.3, 6.3, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 325, 76, 48, 48, 57, 62, 34, 190, 50, 65, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.SHELLOS, 4, false, false, false, "Sea Slug Pokémon", Type.WATER, null, 0.3, 6.3, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 325, 76, 48, 48, 57, 62, 34, 190, 50, 65, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("East Sea", "east", Type.WATER, null, 0.3, 6.3, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 325, 76, 48, 48, 57, 62, 34, 190, 50, 65),
new PokemonForm("West Sea", "west", Type.WATER, null, 0.3, 6.3, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 325, 76, 48, 48, 57, 62, 34, 190, 50, 65),
),
- new PokemonSpecies(Species.GASTRODON, "Gastrodon", 4, false, false, false, "Sea Slug Pokémon", Type.WATER, Type.GROUND, 0.9, 29.9, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 475, 111, 83, 68, 92, 82, 39, 75, 50, 166, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.GASTRODON, 4, false, false, false, "Sea Slug Pokémon", Type.WATER, Type.GROUND, 0.9, 29.9, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 475, 111, 83, 68, 92, 82, 39, 75, 50, 166, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("East Sea", "east", Type.WATER, Type.GROUND, 0.9, 29.9, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 475, 111, 83, 68, 92, 82, 39, 75, 50, 166),
new PokemonForm("West Sea", "west", Type.WATER, Type.GROUND, 0.9, 29.9, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 475, 111, 83, 68, 92, 82, 39, 75, 50, 166),
),
- new PokemonSpecies(Species.AMBIPOM, "Ambipom", 4, false, false, false, "Long Tail Pokémon", Type.NORMAL, null, 1.2, 20.3, Abilities.TECHNICIAN, Abilities.PICKUP, Abilities.SKILL_LINK, 482, 75, 100, 66, 60, 66, 115, 45, 100, 169, GrowthRate.FAST, 50, true),
- new PokemonSpecies(Species.DRIFLOON, "Drifloon", 4, false, false, false, "Balloon Pokémon", Type.GHOST, Type.FLYING, 0.4, 1.2, Abilities.AFTERMATH, Abilities.UNBURDEN, Abilities.FLARE_BOOST, 348, 90, 50, 34, 60, 44, 70, 125, 50, 70, GrowthRate.FLUCTUATING, 50, false),
- new PokemonSpecies(Species.DRIFBLIM, "Drifblim", 4, false, false, false, "Blimp Pokémon", Type.GHOST, Type.FLYING, 1.2, 15, Abilities.AFTERMATH, Abilities.UNBURDEN, Abilities.FLARE_BOOST, 498, 150, 80, 44, 90, 54, 80, 60, 50, 174, GrowthRate.FLUCTUATING, 50, false),
- new PokemonSpecies(Species.BUNEARY, "Buneary", 4, false, false, false, "Rabbit Pokémon", Type.NORMAL, null, 0.4, 5.5, Abilities.RUN_AWAY, Abilities.KLUTZ, Abilities.LIMBER, 350, 55, 66, 44, 44, 56, 85, 190, 0, 70, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.LOPUNNY, "Lopunny", 4, false, false, false, "Rabbit Pokémon", Type.NORMAL, null, 1.2, 33.3, Abilities.CUTE_CHARM, Abilities.KLUTZ, Abilities.LIMBER, 480, 65, 76, 84, 54, 96, 105, 60, 140, 168, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.AMBIPOM, 4, false, false, false, "Long Tail Pokémon", Type.NORMAL, null, 1.2, 20.3, Abilities.TECHNICIAN, Abilities.PICKUP, Abilities.SKILL_LINK, 482, 75, 100, 66, 60, 66, 115, 45, 100, 169, GrowthRate.FAST, 50, true),
+ new PokemonSpecies(Species.DRIFLOON, 4, false, false, false, "Balloon Pokémon", Type.GHOST, Type.FLYING, 0.4, 1.2, Abilities.AFTERMATH, Abilities.UNBURDEN, Abilities.FLARE_BOOST, 348, 90, 50, 34, 60, 44, 70, 125, 50, 70, GrowthRate.FLUCTUATING, 50, false),
+ new PokemonSpecies(Species.DRIFBLIM, 4, false, false, false, "Blimp Pokémon", Type.GHOST, Type.FLYING, 1.2, 15, Abilities.AFTERMATH, Abilities.UNBURDEN, Abilities.FLARE_BOOST, 498, 150, 80, 44, 90, 54, 80, 60, 50, 174, GrowthRate.FLUCTUATING, 50, false),
+ new PokemonSpecies(Species.BUNEARY, 4, false, false, false, "Rabbit Pokémon", Type.NORMAL, null, 0.4, 5.5, Abilities.RUN_AWAY, Abilities.KLUTZ, Abilities.LIMBER, 350, 55, 66, 44, 44, 56, 85, 190, 0, 70, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.LOPUNNY, 4, false, false, false, "Rabbit Pokémon", Type.NORMAL, null, 1.2, 33.3, Abilities.CUTE_CHARM, Abilities.KLUTZ, Abilities.LIMBER, 480, 65, 76, 84, 54, 96, 105, 60, 140, 168, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.NORMAL, null, 1.2, 33.3, Abilities.CUTE_CHARM, Abilities.KLUTZ, Abilities.LIMBER, 480, 65, 76, 84, 54, 96, 105, 60, 140, 168),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.NORMAL, Type.FIGHTING, 1.3, 28.3, Abilities.SCRAPPY, Abilities.SCRAPPY, Abilities.SCRAPPY, 580, 65, 136, 94, 54, 96, 135, 60, 140, 168),
),
- new PokemonSpecies(Species.MISMAGIUS, "Mismagius", 4, false, false, false, "Magical Pokémon", Type.GHOST, null, 0.9, 4.4, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 495, 60, 60, 60, 105, 105, 105, 45, 35, 173, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.HONCHKROW, "Honchkrow", 4, false, false, false, "Big Boss Pokémon", Type.DARK, Type.FLYING, 0.9, 27.3, Abilities.INSOMNIA, Abilities.SUPER_LUCK, Abilities.MOXIE, 505, 100, 125, 52, 105, 52, 71, 30, 35, 177, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GLAMEOW, "Glameow", 4, false, false, false, "Catty Pokémon", Type.NORMAL, null, 0.5, 3.9, Abilities.LIMBER, Abilities.OWN_TEMPO, Abilities.KEEN_EYE, 310, 49, 55, 42, 42, 37, 85, 190, 70, 62, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.PURUGLY, "Purugly", 4, false, false, false, "Tiger Cat Pokémon", Type.NORMAL, null, 1, 43.8, Abilities.THICK_FAT, Abilities.OWN_TEMPO, Abilities.DEFIANT, 452, 71, 82, 64, 64, 59, 112, 75, 70, 158, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.CHINGLING, "Chingling", 4, false, false, false, "Bell Pokémon", Type.PSYCHIC, null, 0.2, 0.6, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 285, 45, 30, 50, 65, 50, 45, 120, 70, 57, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.STUNKY, "Stunky", 4, false, false, false, "Skunk Pokémon", Type.POISON, Type.DARK, 0.4, 19.2, Abilities.STENCH, Abilities.AFTERMATH, Abilities.KEEN_EYE, 329, 63, 63, 47, 41, 41, 74, 225, 50, 66, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SKUNTANK, "Skuntank", 4, false, false, false, "Skunk Pokémon", Type.POISON, Type.DARK, 1, 38, Abilities.STENCH, Abilities.AFTERMATH, Abilities.KEEN_EYE, 479, 103, 93, 67, 71, 61, 84, 60, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BRONZOR, "Bronzor", 4, false, false, false, "Bronze Pokémon", Type.STEEL, Type.PSYCHIC, 0.5, 60.5, Abilities.LEVITATE, Abilities.HEATPROOF, Abilities.HEAVY_METAL, 300, 57, 24, 86, 24, 86, 23, 255, 50, 60, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.BRONZONG, "Bronzong", 4, false, false, false, "Bronze Bell Pokémon", Type.STEEL, Type.PSYCHIC, 1.3, 187, Abilities.LEVITATE, Abilities.HEATPROOF, Abilities.HEAVY_METAL, 500, 67, 89, 116, 79, 116, 33, 90, 50, 175, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.BONSLY, "Bonsly", 4, false, false, false, "Bonsai Pokémon", Type.ROCK, null, 0.5, 15, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.RATTLED, 290, 50, 80, 95, 10, 45, 10, 255, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MIME_JR, "Mime Jr.", 4, false, false, false, "Mime Pokémon", Type.PSYCHIC, Type.FAIRY, 0.6, 13, Abilities.SOUNDPROOF, Abilities.FILTER, Abilities.TECHNICIAN, 310, 20, 25, 45, 70, 90, 60, 145, 50, 62, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.HAPPINY, "Happiny", 4, false, false, false, "Playhouse Pokémon", Type.NORMAL, null, 0.6, 24.4, Abilities.NATURAL_CURE, Abilities.SERENE_GRACE, Abilities.FRIEND_GUARD, 220, 100, 5, 5, 15, 65, 30, 130, 140, 110, GrowthRate.FAST, 0, false),
- new PokemonSpecies(Species.CHATOT, "Chatot", 4, false, false, false, "Music Note Pokémon", Type.NORMAL, Type.FLYING, 0.5, 1.9, Abilities.KEEN_EYE, Abilities.TANGLED_FEET, Abilities.BIG_PECKS, 411, 76, 65, 45, 92, 42, 91, 30, 35, 144, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SPIRITOMB, "Spiritomb", 4, false, false, false, "Forbidden Pokémon", Type.GHOST, Type.DARK, 1, 108, Abilities.PRESSURE, Abilities.NONE, Abilities.INFILTRATOR, 485, 50, 92, 108, 92, 108, 35, 100, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GIBLE, "Gible", 4, false, false, false, "Land Shark Pokémon", Type.DRAGON, Type.GROUND, 0.7, 20.5, Abilities.SAND_VEIL, Abilities.NONE, Abilities.ROUGH_SKIN, 300, 58, 70, 45, 40, 45, 42, 45, 50, 60, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.GABITE, "Gabite", 4, false, false, false, "Cave Pokémon", Type.DRAGON, Type.GROUND, 1.4, 56, Abilities.SAND_VEIL, Abilities.NONE, Abilities.ROUGH_SKIN, 410, 68, 90, 65, 50, 55, 82, 45, 50, 144, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.GARCHOMP, "Garchomp", 4, false, false, false, "Mach Pokémon", Type.DRAGON, Type.GROUND, 1.9, 95, Abilities.SAND_VEIL, Abilities.NONE, Abilities.ROUGH_SKIN, 600, 108, 130, 95, 80, 85, 102, 45, 50, 300, GrowthRate.SLOW, 50, true, true,
+ new PokemonSpecies(Species.MISMAGIUS, 4, false, false, false, "Magical Pokémon", Type.GHOST, null, 0.9, 4.4, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 495, 60, 60, 60, 105, 105, 105, 45, 35, 173, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.HONCHKROW, 4, false, false, false, "Big Boss Pokémon", Type.DARK, Type.FLYING, 0.9, 27.3, Abilities.INSOMNIA, Abilities.SUPER_LUCK, Abilities.MOXIE, 505, 100, 125, 52, 105, 52, 71, 30, 35, 177, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GLAMEOW, 4, false, false, false, "Catty Pokémon", Type.NORMAL, null, 0.5, 3.9, Abilities.LIMBER, Abilities.OWN_TEMPO, Abilities.KEEN_EYE, 310, 49, 55, 42, 42, 37, 85, 190, 70, 62, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.PURUGLY, 4, false, false, false, "Tiger Cat Pokémon", Type.NORMAL, null, 1, 43.8, Abilities.THICK_FAT, Abilities.OWN_TEMPO, Abilities.DEFIANT, 452, 71, 82, 64, 64, 59, 112, 75, 70, 158, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.CHINGLING, 4, false, false, false, "Bell Pokémon", Type.PSYCHIC, null, 0.2, 0.6, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 285, 45, 30, 50, 65, 50, 45, 120, 70, 57, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.STUNKY, 4, false, false, false, "Skunk Pokémon", Type.POISON, Type.DARK, 0.4, 19.2, Abilities.STENCH, Abilities.AFTERMATH, Abilities.KEEN_EYE, 329, 63, 63, 47, 41, 41, 74, 225, 50, 66, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SKUNTANK, 4, false, false, false, "Skunk Pokémon", Type.POISON, Type.DARK, 1, 38, Abilities.STENCH, Abilities.AFTERMATH, Abilities.KEEN_EYE, 479, 103, 93, 67, 71, 61, 84, 60, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BRONZOR, 4, false, false, false, "Bronze Pokémon", Type.STEEL, Type.PSYCHIC, 0.5, 60.5, Abilities.LEVITATE, Abilities.HEATPROOF, Abilities.HEAVY_METAL, 300, 57, 24, 86, 24, 86, 23, 255, 50, 60, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.BRONZONG, 4, false, false, false, "Bronze Bell Pokémon", Type.STEEL, Type.PSYCHIC, 1.3, 187, Abilities.LEVITATE, Abilities.HEATPROOF, Abilities.HEAVY_METAL, 500, 67, 89, 116, 79, 116, 33, 90, 50, 175, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.BONSLY, 4, false, false, false, "Bonsai Pokémon", Type.ROCK, null, 0.5, 15, Abilities.STURDY, Abilities.ROCK_HEAD, Abilities.RATTLED, 290, 50, 80, 95, 10, 45, 10, 255, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MIME_JR, 4, false, false, false, "Mime Pokémon", Type.PSYCHIC, Type.FAIRY, 0.6, 13, Abilities.SOUNDPROOF, Abilities.FILTER, Abilities.TECHNICIAN, 310, 20, 25, 45, 70, 90, 60, 145, 50, 62, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.HAPPINY, 4, false, false, false, "Playhouse Pokémon", Type.NORMAL, null, 0.6, 24.4, Abilities.NATURAL_CURE, Abilities.SERENE_GRACE, Abilities.FRIEND_GUARD, 220, 100, 5, 5, 15, 65, 30, 130, 140, 110, GrowthRate.FAST, 0, false),
+ new PokemonSpecies(Species.CHATOT, 4, false, false, false, "Music Note Pokémon", Type.NORMAL, Type.FLYING, 0.5, 1.9, Abilities.KEEN_EYE, Abilities.TANGLED_FEET, Abilities.BIG_PECKS, 411, 76, 65, 45, 92, 42, 91, 30, 35, 144, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SPIRITOMB, 4, false, false, false, "Forbidden Pokémon", Type.GHOST, Type.DARK, 1, 108, Abilities.PRESSURE, Abilities.NONE, Abilities.INFILTRATOR, 485, 50, 92, 108, 92, 108, 35, 100, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GIBLE, 4, false, false, false, "Land Shark Pokémon", Type.DRAGON, Type.GROUND, 0.7, 20.5, Abilities.SAND_VEIL, Abilities.NONE, Abilities.ROUGH_SKIN, 300, 58, 70, 45, 40, 45, 42, 45, 50, 60, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.GABITE, 4, false, false, false, "Cave Pokémon", Type.DRAGON, Type.GROUND, 1.4, 56, Abilities.SAND_VEIL, Abilities.NONE, Abilities.ROUGH_SKIN, 410, 68, 90, 65, 50, 55, 82, 45, 50, 144, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.GARCHOMP, 4, false, false, false, "Mach Pokémon", Type.DRAGON, Type.GROUND, 1.9, 95, Abilities.SAND_VEIL, Abilities.NONE, Abilities.ROUGH_SKIN, 600, 108, 130, 95, 80, 85, 102, 45, 50, 300, GrowthRate.SLOW, 50, true, true,
new PokemonForm("Normal", "", Type.DRAGON, Type.GROUND, 1.9, 95, Abilities.SAND_VEIL, Abilities.NONE, Abilities.ROUGH_SKIN, 600, 108, 130, 95, 80, 85, 102, 45, 50, 300, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.DRAGON, Type.GROUND, 1.9, 95, Abilities.SAND_FORCE, Abilities.NONE, Abilities.SAND_FORCE, 700, 108, 170, 115, 120, 95, 92, 45, 50, 300, true),
),
- new PokemonSpecies(Species.MUNCHLAX, "Munchlax", 4, false, false, false, "Big Eater Pokémon", Type.NORMAL, null, 0.6, 105, Abilities.PICKUP, Abilities.THICK_FAT, Abilities.GLUTTONY, 390, 135, 85, 40, 40, 85, 5, 50, 50, 78, GrowthRate.SLOW, 87.5, false),
- new PokemonSpecies(Species.RIOLU, "Riolu", 4, false, false, false, "Emanation Pokémon", Type.FIGHTING, null, 0.7, 20.2, Abilities.STEADFAST, Abilities.INNER_FOCUS, Abilities.PRANKSTER, 285, 40, 70, 40, 35, 40, 60, 75, 50, 57, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.LUCARIO, "Lucario", 4, false, false, false, "Aura Pokémon", Type.FIGHTING, Type.STEEL, 1.2, 54, Abilities.STEADFAST, Abilities.INNER_FOCUS, Abilities.JUSTIFIED, 525, 70, 110, 70, 115, 70, 90, 45, 50, 184, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.MUNCHLAX, 4, false, false, false, "Big Eater Pokémon", Type.NORMAL, null, 0.6, 105, Abilities.PICKUP, Abilities.THICK_FAT, Abilities.GLUTTONY, 390, 135, 85, 40, 40, 85, 5, 50, 50, 78, GrowthRate.SLOW, 87.5, false),
+ new PokemonSpecies(Species.RIOLU, 4, false, false, false, "Emanation Pokémon", Type.FIGHTING, null, 0.7, 20.2, Abilities.STEADFAST, Abilities.INNER_FOCUS, Abilities.PRANKSTER, 285, 40, 70, 40, 35, 40, 60, 75, 50, 57, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.LUCARIO, 4, false, false, false, "Aura Pokémon", Type.FIGHTING, Type.STEEL, 1.2, 54, Abilities.STEADFAST, Abilities.INNER_FOCUS, Abilities.JUSTIFIED, 525, 70, 110, 70, 115, 70, 90, 45, 50, 184, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
new PokemonForm("Normal", "", Type.FIGHTING, Type.STEEL, 1.2, 54, Abilities.STEADFAST, Abilities.INNER_FOCUS, Abilities.JUSTIFIED, 525, 70, 110, 70, 115, 70, 90, 45, 50, 184),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.FIGHTING, Type.STEEL, 1.3, 57.5, Abilities.ADAPTABILITY, Abilities.ADAPTABILITY, Abilities.ADAPTABILITY, 625, 70, 145, 88, 140, 70, 112, 45, 50, 184),
),
- new PokemonSpecies(Species.HIPPOPOTAS, "Hippopotas", 4, false, false, false, "Hippo Pokémon", Type.GROUND, null, 0.8, 49.5, Abilities.SAND_STREAM, Abilities.NONE, Abilities.SAND_FORCE, 330, 68, 72, 78, 38, 42, 32, 140, 50, 66, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.HIPPOWDON, "Hippowdon", 4, false, false, false, "Heavyweight Pokémon", Type.GROUND, null, 2, 300, Abilities.SAND_STREAM, Abilities.NONE, Abilities.SAND_FORCE, 525, 108, 112, 118, 68, 72, 47, 60, 50, 184, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.SKORUPI, "Skorupi", 4, false, false, false, "Scorpion Pokémon", Type.POISON, Type.BUG, 0.8, 12, Abilities.BATTLE_ARMOR, Abilities.SNIPER, Abilities.KEEN_EYE, 330, 40, 50, 90, 30, 55, 65, 120, 50, 66, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.DRAPION, "Drapion", 4, false, false, false, "Ogre Scorpion Pokémon", Type.POISON, Type.DARK, 1.3, 61.5, Abilities.BATTLE_ARMOR, Abilities.SNIPER, Abilities.KEEN_EYE, 500, 70, 90, 110, 60, 75, 95, 45, 50, 175, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.CROAGUNK, "Croagunk", 4, false, false, false, "Toxic Mouth Pokémon", Type.POISON, Type.FIGHTING, 0.7, 23, Abilities.ANTICIPATION, Abilities.DRY_SKIN, Abilities.POISON_TOUCH, 300, 48, 61, 40, 61, 40, 50, 140, 100, 60, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.TOXICROAK, "Toxicroak", 4, false, false, false, "Toxic Mouth Pokémon", Type.POISON, Type.FIGHTING, 1.3, 44.4, Abilities.ANTICIPATION, Abilities.DRY_SKIN, Abilities.POISON_TOUCH, 490, 83, 106, 65, 86, 65, 85, 75, 50, 172, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.CARNIVINE, "Carnivine", 4, false, false, false, "Bug Catcher Pokémon", Type.GRASS, null, 1.4, 27, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 454, 74, 100, 72, 90, 72, 46, 200, 70, 159, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.FINNEON, "Finneon", 4, false, false, false, "Wing Fish Pokémon", Type.WATER, null, 0.4, 7, Abilities.SWIFT_SWIM, Abilities.STORM_DRAIN, Abilities.WATER_VEIL, 330, 49, 49, 56, 49, 61, 66, 190, 70, 66, GrowthRate.ERRATIC, 50, true),
- new PokemonSpecies(Species.LUMINEON, "Lumineon", 4, false, false, false, "Neon Pokémon", Type.WATER, null, 1.2, 24, Abilities.SWIFT_SWIM, Abilities.STORM_DRAIN, Abilities.WATER_VEIL, 460, 69, 69, 76, 69, 86, 91, 75, 70, 161, GrowthRate.ERRATIC, 50, true),
- new PokemonSpecies(Species.MANTYKE, "Mantyke", 4, false, false, false, "Kite Pokémon", Type.WATER, Type.FLYING, 1, 65, Abilities.SWIFT_SWIM, Abilities.WATER_ABSORB, Abilities.WATER_VEIL, 345, 45, 20, 50, 60, 120, 50, 25, 50, 69, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.SNOVER, "Snover", 4, false, false, false, "Frost Tree Pokémon", Type.GRASS, Type.ICE, 1, 50.5, Abilities.SNOW_WARNING, Abilities.NONE, Abilities.SOUNDPROOF, 334, 60, 62, 50, 62, 60, 40, 120, 50, 67, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.ABOMASNOW, "Abomasnow", 4, false, false, false, "Frost Tree Pokémon", Type.GRASS, Type.ICE, 2.2, 135.5, Abilities.SNOW_WARNING, Abilities.NONE, Abilities.SOUNDPROOF, 494, 90, 92, 75, 92, 85, 60, 60, 50, 173, GrowthRate.SLOW, 50, true, true,
+ new PokemonSpecies(Species.HIPPOPOTAS, 4, false, false, false, "Hippo Pokémon", Type.GROUND, null, 0.8, 49.5, Abilities.SAND_STREAM, Abilities.NONE, Abilities.SAND_FORCE, 330, 68, 72, 78, 38, 42, 32, 140, 50, 66, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.HIPPOWDON, 4, false, false, false, "Heavyweight Pokémon", Type.GROUND, null, 2, 300, Abilities.SAND_STREAM, Abilities.NONE, Abilities.SAND_FORCE, 525, 108, 112, 118, 68, 72, 47, 60, 50, 184, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.SKORUPI, 4, false, false, false, "Scorpion Pokémon", Type.POISON, Type.BUG, 0.8, 12, Abilities.BATTLE_ARMOR, Abilities.SNIPER, Abilities.KEEN_EYE, 330, 40, 50, 90, 30, 55, 65, 120, 50, 66, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.DRAPION, 4, false, false, false, "Ogre Scorpion Pokémon", Type.POISON, Type.DARK, 1.3, 61.5, Abilities.BATTLE_ARMOR, Abilities.SNIPER, Abilities.KEEN_EYE, 500, 70, 90, 110, 60, 75, 95, 45, 50, 175, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.CROAGUNK, 4, false, false, false, "Toxic Mouth Pokémon", Type.POISON, Type.FIGHTING, 0.7, 23, Abilities.ANTICIPATION, Abilities.DRY_SKIN, Abilities.POISON_TOUCH, 300, 48, 61, 40, 61, 40, 50, 140, 100, 60, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.TOXICROAK, 4, false, false, false, "Toxic Mouth Pokémon", Type.POISON, Type.FIGHTING, 1.3, 44.4, Abilities.ANTICIPATION, Abilities.DRY_SKIN, Abilities.POISON_TOUCH, 490, 83, 106, 65, 86, 65, 85, 75, 50, 172, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.CARNIVINE, 4, false, false, false, "Bug Catcher Pokémon", Type.GRASS, null, 1.4, 27, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 454, 74, 100, 72, 90, 72, 46, 200, 70, 159, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.FINNEON, 4, false, false, false, "Wing Fish Pokémon", Type.WATER, null, 0.4, 7, Abilities.SWIFT_SWIM, Abilities.STORM_DRAIN, Abilities.WATER_VEIL, 330, 49, 49, 56, 49, 61, 66, 190, 70, 66, GrowthRate.ERRATIC, 50, true),
+ new PokemonSpecies(Species.LUMINEON, 4, false, false, false, "Neon Pokémon", Type.WATER, null, 1.2, 24, Abilities.SWIFT_SWIM, Abilities.STORM_DRAIN, Abilities.WATER_VEIL, 460, 69, 69, 76, 69, 86, 91, 75, 70, 161, GrowthRate.ERRATIC, 50, true),
+ new PokemonSpecies(Species.MANTYKE, 4, false, false, false, "Kite Pokémon", Type.WATER, Type.FLYING, 1, 65, Abilities.SWIFT_SWIM, Abilities.WATER_ABSORB, Abilities.WATER_VEIL, 345, 45, 20, 50, 60, 120, 50, 25, 50, 69, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.SNOVER, 4, false, false, false, "Frost Tree Pokémon", Type.GRASS, Type.ICE, 1, 50.5, Abilities.SNOW_WARNING, Abilities.NONE, Abilities.SOUNDPROOF, 334, 60, 62, 50, 62, 60, 40, 120, 50, 67, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.ABOMASNOW, 4, false, false, false, "Frost Tree Pokémon", Type.GRASS, Type.ICE, 2.2, 135.5, Abilities.SNOW_WARNING, Abilities.NONE, Abilities.SOUNDPROOF, 494, 90, 92, 75, 92, 85, 60, 60, 50, 173, GrowthRate.SLOW, 50, true, true,
new PokemonForm("Normal", "", Type.GRASS, Type.ICE, 2.2, 135.5, Abilities.SNOW_WARNING, Abilities.NONE, Abilities.SOUNDPROOF, 494, 90, 92, 75, 92, 85, 60, 60, 50, 173, true),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.GRASS, Type.ICE, 2.7, 185, Abilities.SNOW_WARNING, Abilities.NONE, Abilities.SNOW_WARNING, 594, 90, 132, 105, 132, 105, 30, 60, 50, 173, true),
),
- new PokemonSpecies(Species.WEAVILE, "Weavile", 4, false, false, false, "Sharp Claw Pokémon", Type.DARK, Type.ICE, 1.1, 34, Abilities.PRESSURE, Abilities.NONE, Abilities.PICKPOCKET, 510, 70, 120, 65, 45, 85, 125, 45, 35, 179, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.MAGNEZONE, "Magnezone", 4, false, false, false, "Magnet Area Pokémon", Type.ELECTRIC, Type.STEEL, 1.2, 180, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.ANALYTIC, 535, 70, 70, 115, 130, 90, 60, 30, 50, 268, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.LICKILICKY, "Lickilicky", 4, false, false, false, "Licking Pokémon", Type.NORMAL, null, 1.7, 140, Abilities.OWN_TEMPO, Abilities.OBLIVIOUS, Abilities.CLOUD_NINE, 515, 110, 85, 95, 80, 95, 50, 30, 50, 180, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.RHYPERIOR, "Rhyperior", 4, false, false, false, "Drill Pokémon", Type.GROUND, Type.ROCK, 2.4, 282.8, Abilities.LIGHTNING_ROD, Abilities.SOLID_ROCK, Abilities.RECKLESS, 535, 115, 140, 130, 55, 55, 40, 30, 50, 268, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.TANGROWTH, "Tangrowth", 4, false, false, false, "Vine Pokémon", Type.GRASS, null, 2, 128.6, Abilities.CHLOROPHYLL, Abilities.LEAF_GUARD, Abilities.REGENERATOR, 535, 100, 100, 125, 110, 50, 50, 30, 50, 187, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.ELECTIVIRE, "Electivire", 4, false, false, false, "Thunderbolt Pokémon", Type.ELECTRIC, null, 1.8, 138.6, Abilities.MOTOR_DRIVE, Abilities.NONE, Abilities.VITAL_SPIRIT, 540, 75, 123, 67, 95, 85, 95, 30, 50, 270, GrowthRate.MEDIUM_FAST, 75, false),
- new PokemonSpecies(Species.MAGMORTAR, "Magmortar", 4, false, false, false, "Blast Pokémon", Type.FIRE, null, 1.6, 68, Abilities.FLAME_BODY, Abilities.NONE, Abilities.VITAL_SPIRIT, 540, 75, 95, 67, 125, 95, 83, 30, 50, 270, GrowthRate.MEDIUM_FAST, 75, false),
- new PokemonSpecies(Species.TOGEKISS, "Togekiss", 4, false, false, false, "Jubilee Pokémon", Type.FAIRY, Type.FLYING, 1.5, 38, Abilities.HUSTLE, Abilities.SERENE_GRACE, Abilities.SUPER_LUCK, 545, 85, 50, 95, 120, 115, 80, 30, 50, 273, GrowthRate.FAST, 87.5, false),
- new PokemonSpecies(Species.YANMEGA, "Yanmega", 4, false, false, false, "Ogre Darner Pokémon", Type.BUG, Type.FLYING, 1.9, 51.5, Abilities.SPEED_BOOST, Abilities.TINTED_LENS, Abilities.FRISK, 515, 86, 76, 86, 116, 56, 95, 30, 70, 180, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.LEAFEON, "Leafeon", 4, false, false, false, "Verdant Pokémon", Type.GRASS, null, 1, 25.5, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.CHLOROPHYLL, 525, 65, 110, 130, 60, 65, 95, 45, 35, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.GLACEON, "Glaceon", 4, false, false, false, "Fresh Snow Pokémon", Type.ICE, null, 0.8, 25.9, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.ICE_BODY, 525, 65, 60, 110, 130, 95, 65, 45, 35, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.GLISCOR, "Gliscor", 4, false, false, false, "Fang Scorpion Pokémon", Type.GROUND, Type.FLYING, 2, 42.5, Abilities.HYPER_CUTTER, Abilities.SAND_VEIL, Abilities.POISON_HEAL, 510, 75, 95, 125, 45, 75, 95, 30, 70, 179, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.MAMOSWINE, "Mamoswine", 4, false, false, false, "Twin Tusk Pokémon", Type.ICE, Type.GROUND, 2.5, 291, Abilities.OBLIVIOUS, Abilities.SNOW_CLOAK, Abilities.THICK_FAT, 530, 110, 130, 80, 70, 60, 80, 50, 50, 265, GrowthRate.SLOW, 50, true),
- new PokemonSpecies(Species.PORYGON_Z, "Porygon-Z", 4, false, false, false, "Virtual Pokémon", Type.NORMAL, null, 0.9, 34, Abilities.ADAPTABILITY, Abilities.DOWNLOAD, Abilities.ANALYTIC, 535, 85, 80, 70, 135, 75, 90, 30, 50, 268, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.GALLADE, "Gallade", 4, false, false, false, "Blade Pokémon", Type.PSYCHIC, Type.FIGHTING, 1.6, 52, Abilities.STEADFAST, Abilities.SHARPNESS, Abilities.JUSTIFIED, 518, 68, 125, 65, 65, 115, 80, 45, 35, 259, GrowthRate.SLOW, 100, false, true,
+ new PokemonSpecies(Species.WEAVILE, 4, false, false, false, "Sharp Claw Pokémon", Type.DARK, Type.ICE, 1.1, 34, Abilities.PRESSURE, Abilities.NONE, Abilities.PICKPOCKET, 510, 70, 120, 65, 45, 85, 125, 45, 35, 179, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.MAGNEZONE, 4, false, false, false, "Magnet Area Pokémon", Type.ELECTRIC, Type.STEEL, 1.2, 180, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.ANALYTIC, 535, 70, 70, 115, 130, 90, 60, 30, 50, 268, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.LICKILICKY, 4, false, false, false, "Licking Pokémon", Type.NORMAL, null, 1.7, 140, Abilities.OWN_TEMPO, Abilities.OBLIVIOUS, Abilities.CLOUD_NINE, 515, 110, 85, 95, 80, 95, 50, 30, 50, 180, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.RHYPERIOR, 4, false, false, false, "Drill Pokémon", Type.GROUND, Type.ROCK, 2.4, 282.8, Abilities.LIGHTNING_ROD, Abilities.SOLID_ROCK, Abilities.RECKLESS, 535, 115, 140, 130, 55, 55, 40, 30, 50, 268, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.TANGROWTH, 4, false, false, false, "Vine Pokémon", Type.GRASS, null, 2, 128.6, Abilities.CHLOROPHYLL, Abilities.LEAF_GUARD, Abilities.REGENERATOR, 535, 100, 100, 125, 110, 50, 50, 30, 50, 187, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.ELECTIVIRE, 4, false, false, false, "Thunderbolt Pokémon", Type.ELECTRIC, null, 1.8, 138.6, Abilities.MOTOR_DRIVE, Abilities.NONE, Abilities.VITAL_SPIRIT, 540, 75, 123, 67, 95, 85, 95, 30, 50, 270, GrowthRate.MEDIUM_FAST, 75, false),
+ new PokemonSpecies(Species.MAGMORTAR, 4, false, false, false, "Blast Pokémon", Type.FIRE, null, 1.6, 68, Abilities.FLAME_BODY, Abilities.NONE, Abilities.VITAL_SPIRIT, 540, 75, 95, 67, 125, 95, 83, 30, 50, 270, GrowthRate.MEDIUM_FAST, 75, false),
+ new PokemonSpecies(Species.TOGEKISS, 4, false, false, false, "Jubilee Pokémon", Type.FAIRY, Type.FLYING, 1.5, 38, Abilities.HUSTLE, Abilities.SERENE_GRACE, Abilities.SUPER_LUCK, 545, 85, 50, 95, 120, 115, 80, 30, 50, 273, GrowthRate.FAST, 87.5, false),
+ new PokemonSpecies(Species.YANMEGA, 4, false, false, false, "Ogre Darner Pokémon", Type.BUG, Type.FLYING, 1.9, 51.5, Abilities.SPEED_BOOST, Abilities.TINTED_LENS, Abilities.FRISK, 515, 86, 76, 86, 116, 56, 95, 30, 70, 180, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.LEAFEON, 4, false, false, false, "Verdant Pokémon", Type.GRASS, null, 1, 25.5, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.CHLOROPHYLL, 525, 65, 110, 130, 60, 65, 95, 45, 35, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.GLACEON, 4, false, false, false, "Fresh Snow Pokémon", Type.ICE, null, 0.8, 25.9, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.ICE_BODY, 525, 65, 60, 110, 130, 95, 65, 45, 35, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.GLISCOR, 4, false, false, false, "Fang Scorpion Pokémon", Type.GROUND, Type.FLYING, 2, 42.5, Abilities.HYPER_CUTTER, Abilities.SAND_VEIL, Abilities.POISON_HEAL, 510, 75, 95, 125, 45, 75, 95, 30, 70, 179, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.MAMOSWINE, 4, false, false, false, "Twin Tusk Pokémon", Type.ICE, Type.GROUND, 2.5, 291, Abilities.OBLIVIOUS, Abilities.SNOW_CLOAK, Abilities.THICK_FAT, 530, 110, 130, 80, 70, 60, 80, 50, 50, 265, GrowthRate.SLOW, 50, true),
+ new PokemonSpecies(Species.PORYGON_Z, 4, false, false, false, "Virtual Pokémon", Type.NORMAL, null, 0.9, 34, Abilities.ADAPTABILITY, Abilities.DOWNLOAD, Abilities.ANALYTIC, 535, 85, 80, 70, 135, 75, 90, 30, 50, 268, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.GALLADE, 4, false, false, false, "Blade Pokémon", Type.PSYCHIC, Type.FIGHTING, 1.6, 52, Abilities.STEADFAST, Abilities.SHARPNESS, Abilities.JUSTIFIED, 518, 68, 125, 65, 65, 115, 80, 45, 35, 259, GrowthRate.SLOW, 100, false, true,
new PokemonForm("Normal", "", Type.PSYCHIC, Type.FIGHTING, 1.6, 52, Abilities.STEADFAST, Abilities.SHARPNESS, Abilities.JUSTIFIED, 518, 68, 125, 65, 65, 115, 80, 45, 35, 259),
- new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.PSYCHIC, Type.FIGHTING, 1.6, 56.4, Abilities.INNER_FOCUS, Abilities.INNER_FOCUS, Abilities.INNER_FOCUS, 618, 68, 165, 95, 65, 115, 110, 45, 35, 259),
+ new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.PSYCHIC, Type.FIGHTING, 1.6, 56.4, Abilities.SHARPNESS, Abilities.SHARPNESS, Abilities.SHARPNESS, 618, 68, 165, 95, 65, 115, 110, 45, 35, 259),
),
- new PokemonSpecies(Species.PROBOPASS, "Probopass", 4, false, false, false, "Compass Pokémon", Type.ROCK, Type.STEEL, 1.4, 340, Abilities.STURDY, Abilities.MAGNET_PULL, Abilities.SAND_FORCE, 525, 60, 55, 145, 75, 150, 40, 60, 70, 184, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DUSKNOIR, "Dusknoir", 4, false, false, false, "Gripper Pokémon", Type.GHOST, null, 2.2, 106.6, Abilities.PRESSURE, Abilities.NONE, Abilities.FRISK, 525, 45, 100, 135, 65, 135, 45, 45, 35, 263, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.FROSLASS, "Froslass", 4, false, false, false, "Snow Land Pokémon", Type.ICE, Type.GHOST, 1.3, 26.6, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.CURSED_BODY, 480, 70, 80, 70, 80, 70, 110, 75, 50, 168, GrowthRate.MEDIUM_FAST, 0, false),
- new PokemonSpecies(Species.ROTOM, "Rotom", 4, false, false, false, "Plasma Pokémon", Type.ELECTRIC, Type.GHOST, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 440, 50, 50, 77, 95, 77, 91, 45, 50, 154, GrowthRate.MEDIUM_FAST, null, false, false,
+ new PokemonSpecies(Species.PROBOPASS, 4, false, false, false, "Compass Pokémon", Type.ROCK, Type.STEEL, 1.4, 340, Abilities.STURDY, Abilities.MAGNET_PULL, Abilities.SAND_FORCE, 525, 60, 55, 145, 75, 150, 40, 60, 70, 184, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DUSKNOIR, 4, false, false, false, "Gripper Pokémon", Type.GHOST, null, 2.2, 106.6, Abilities.PRESSURE, Abilities.NONE, Abilities.FRISK, 525, 45, 100, 135, 65, 135, 45, 45, 35, 263, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.FROSLASS, 4, false, false, false, "Snow Land Pokémon", Type.ICE, Type.GHOST, 1.3, 26.6, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.CURSED_BODY, 480, 70, 80, 70, 80, 70, 110, 75, 50, 168, GrowthRate.MEDIUM_FAST, 0, false),
+ new PokemonSpecies(Species.ROTOM, 4, false, false, false, "Plasma Pokémon", Type.ELECTRIC, Type.GHOST, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 440, 50, 50, 77, 95, 77, 91, 45, 50, 154, GrowthRate.MEDIUM_FAST, null, false, false,
new PokemonForm("Normal", "", Type.ELECTRIC, Type.GHOST, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 440, 50, 50, 77, 95, 77, 91, 45, 50, 154),
new PokemonForm("Heat", "heat", Type.ELECTRIC, Type.FIRE, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154),
new PokemonForm("Wash", "wash", Type.ELECTRIC, Type.WATER, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154),
@@ -1445,32 +1492,32 @@ export function initSpecies() {
new PokemonForm("Fan", "fan", Type.ELECTRIC, Type.FLYING, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154),
new PokemonForm("Mow", "mow", Type.ELECTRIC, Type.GRASS, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154),
),
- new PokemonSpecies(Species.UXIE, "Uxie", 4, true, false, false, "Knowledge Pokémon", Type.PSYCHIC, null, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 75, 75, 130, 75, 130, 95, 3, 140, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.MESPRIT, "Mesprit", 4, true, false, false, "Emotion Pokémon", Type.PSYCHIC, null, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 80, 105, 105, 105, 105, 80, 3, 140, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.AZELF, "Azelf", 4, true, false, false, "Willpower Pokémon", Type.PSYCHIC, null, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 75, 125, 70, 125, 70, 115, 3, 140, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.DIALGA, "Dialga", 4, false, true, false, "Temporal Pokémon", Type.STEEL, Type.DRAGON, 5.4, 683, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 100, 120, 120, 150, 100, 90, 3, 0, 340, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.UXIE, 4, true, false, false, "Knowledge Pokémon", Type.PSYCHIC, null, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 75, 75, 130, 75, 130, 95, 3, 140, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.MESPRIT, 4, true, false, false, "Emotion Pokémon", Type.PSYCHIC, null, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 80, 105, 105, 105, 105, 80, 3, 140, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.AZELF, 4, true, false, false, "Willpower Pokémon", Type.PSYCHIC, null, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 75, 125, 70, 125, 70, 115, 3, 140, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.DIALGA, 4, false, true, false, "Temporal Pokémon", Type.STEEL, Type.DRAGON, 5.4, 683, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 100, 120, 120, 150, 100, 90, 3, 0, 340, GrowthRate.SLOW, null, false, false,
new PokemonForm("Normal", "", Type.STEEL, Type.DRAGON, 5.4, 683, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 100, 120, 120, 150, 100, 90, 3, 0, 340),
new PokemonForm("Origin Forme", "origin", Type.STEEL, Type.DRAGON, 7, 848.7, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 100, 100, 120, 150, 120, 90, 3, 0, 340),
),
- new PokemonSpecies(Species.PALKIA, "Palkia", 4, false, true, false, "Spatial Pokémon", Type.WATER, Type.DRAGON, 4.2, 336, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 90, 120, 100, 150, 120, 100, 3, 0, 340, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.PALKIA, 4, false, true, false, "Spatial Pokémon", Type.WATER, Type.DRAGON, 4.2, 336, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 90, 120, 100, 150, 120, 100, 3, 0, 340, GrowthRate.SLOW, null, false, false,
new PokemonForm("Normal", "", Type.WATER, Type.DRAGON, 4.2, 336, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 90, 120, 100, 150, 120, 100, 3, 0, 340),
new PokemonForm("Origin Forme", "origin", Type.WATER, Type.DRAGON, 6.3, 659, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 90, 100, 100, 150, 120, 120, 3, 0, 340),
),
- new PokemonSpecies(Species.HEATRAN, "Heatran", 4, true, false, false, "Lava Dome Pokémon", Type.FIRE, Type.STEEL, 1.7, 430, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.FLAME_BODY, 600, 91, 90, 106, 130, 106, 77, 3, 100, 300, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.REGIGIGAS, "Regigigas", 4, false, true, false, "Colossal Pokémon", Type.NORMAL, null, 3.7, 420, Abilities.SLOW_START, Abilities.NONE, Abilities.NORMALIZE, 670, 110, 160, 110, 80, 110, 100, 3, 0, 335, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.GIRATINA, "Giratina", 4, false, true, false, "Renegade Pokémon", Type.GHOST, Type.DRAGON, 4.5, 750, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 150, 100, 120, 100, 120, 90, 3, 0, 340, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.HEATRAN, 4, true, false, false, "Lava Dome Pokémon", Type.FIRE, Type.STEEL, 1.7, 430, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.FLAME_BODY, 600, 91, 90, 106, 130, 106, 77, 3, 100, 300, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.REGIGIGAS, 4, false, true, false, "Colossal Pokémon", Type.NORMAL, null, 3.7, 420, Abilities.SLOW_START, Abilities.NONE, Abilities.NORMALIZE, 670, 110, 160, 110, 80, 110, 100, 3, 0, 335, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.GIRATINA, 4, false, true, false, "Renegade Pokémon", Type.GHOST, Type.DRAGON, 4.5, 750, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 150, 100, 120, 100, 120, 90, 3, 0, 340, GrowthRate.SLOW, null, false, true,
new PokemonForm("Altered Forme", "altered", Type.GHOST, Type.DRAGON, 4.5, 750, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 150, 100, 120, 100, 120, 90, 3, 0, 340),
new PokemonForm("Origin Forme", "origin", Type.GHOST, Type.DRAGON, 6.9, 650, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 680, 150, 120, 100, 120, 100, 90, 3, 0, 340),
),
- new PokemonSpecies(Species.CRESSELIA, "Cresselia", 4, true, false, false, "Lunar Pokémon", Type.PSYCHIC, null, 1.5, 85.6, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 120, 70, 110, 75, 120, 85, 3, 100, 300, GrowthRate.SLOW, 0, false),
- new PokemonSpecies(Species.PHIONE, "Phione", 4, false, false, true, "Sea Drifter Pokémon", Type.WATER, null, 0.4, 3.1, Abilities.HYDRATION, Abilities.NONE, Abilities.NONE, 480, 80, 80, 80, 80, 80, 80, 30, 70, 216, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.MANAPHY, "Manaphy", 4, false, false, true, "Seafaring Pokémon", Type.WATER, null, 0.3, 1.4, Abilities.HYDRATION, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 3, 70, 270, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.DARKRAI, "Darkrai", 4, false, false, true, "Pitch-Black Pokémon", Type.DARK, null, 1.5, 50.5, Abilities.BAD_DREAMS, Abilities.NONE, Abilities.NONE, 600, 70, 90, 90, 135, 90, 125, 3, 0, 270, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.SHAYMIN, "Shaymin", 4, false, false, true, "Gratitude Pokémon", Type.GRASS, null, 0.2, 2.1, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 45, 100, 270, GrowthRate.MEDIUM_SLOW, null, false, true,
+ new PokemonSpecies(Species.CRESSELIA, 4, true, false, false, "Lunar Pokémon", Type.PSYCHIC, null, 1.5, 85.6, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 120, 70, 110, 75, 120, 85, 3, 100, 300, GrowthRate.SLOW, 0, false),
+ new PokemonSpecies(Species.PHIONE, 4, false, false, true, "Sea Drifter Pokémon", Type.WATER, null, 0.4, 3.1, Abilities.HYDRATION, Abilities.NONE, Abilities.NONE, 480, 80, 80, 80, 80, 80, 80, 30, 70, 216, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.MANAPHY, 4, false, false, true, "Seafaring Pokémon", Type.WATER, null, 0.3, 1.4, Abilities.HYDRATION, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 3, 70, 270, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.DARKRAI, 4, false, false, true, "Pitch-Black Pokémon", Type.DARK, null, 1.5, 50.5, Abilities.BAD_DREAMS, Abilities.NONE, Abilities.NONE, 600, 70, 90, 90, 135, 90, 125, 3, 0, 270, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.SHAYMIN, 4, false, false, true, "Gratitude Pokémon", Type.GRASS, null, 0.2, 2.1, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 45, 100, 270, GrowthRate.MEDIUM_SLOW, null, false, true,
new PokemonForm("Land Forme", "land", Type.GRASS, null, 0.2, 2.1, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 45, 100, 270),
new PokemonForm("Sky Forme", "sky", Type.GRASS, Type.FLYING, 0.4, 5.2, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 103, 75, 120, 75, 127, 45, 100, 270),
),
- new PokemonSpecies(Species.ARCEUS, "Arceus", 4, false, false, true, "Alpha Pokémon", Type.NORMAL, null, 3.2, 320, Abilities.MULTITYPE, Abilities.NONE, Abilities.NONE, 720, 120, 120, 120, 120, 120, 120, 3, 0, 324, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.ARCEUS, 4, false, false, true, "Alpha Pokémon", Type.NORMAL, null, 3.2, 320, Abilities.MULTITYPE, Abilities.NONE, Abilities.NONE, 720, 120, 120, 120, 120, 120, 120, 3, 0, 324, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "normal", Type.NORMAL, null, 3.2, 320, Abilities.MULTITYPE, Abilities.NONE, Abilities.NONE, 720, 120, 120, 120, 120, 120, 120, 3, 0, 324),
new PokemonForm("Fighting", "fighting", Type.FIGHTING, null, 3.2, 320, Abilities.MULTITYPE, Abilities.NONE, Abilities.NONE, 720, 120, 120, 120, 120, 120, 120, 3, 0, 324),
new PokemonForm("Flying", "flying", Type.FLYING, null, 3.2, 320, Abilities.MULTITYPE, Abilities.NONE, Abilities.NONE, 720, 120, 120, 120, 120, 120, 120, 3, 0, 324),
@@ -1491,229 +1538,229 @@ export function initSpecies() {
new PokemonForm("Fairy", "fairy", Type.FAIRY, null, 3.2, 320, Abilities.MULTITYPE, Abilities.NONE, Abilities.NONE, 720, 120, 120, 120, 120, 120, 120, 3, 0, 324),
new PokemonForm("???", "unknown", Type.UNKNOWN, null, 3.2, 320, Abilities.MULTITYPE, Abilities.NONE, Abilities.NONE, 720, 120, 120, 120, 120, 120, 120, 3, 0, 324),
),
- new PokemonSpecies(Species.VICTINI, "Victini", 4, false, false, true, "Victory Pokémon", Type.PSYCHIC, Type.FIRE, 0.4, 4, Abilities.VICTORY_STAR, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 3, 100, 300, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.SNIVY, "Snivy", 5, false, false, false, "Grass Snake Pokémon", Type.GRASS, null, 0.6, 8.1, Abilities.OVERGROW, Abilities.NONE, Abilities.CONTRARY, 308, 45, 45, 55, 45, 55, 63, 45, 70, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.SERVINE, "Servine", 5, false, false, false, "Grass Snake Pokémon", Type.GRASS, null, 0.8, 16, Abilities.OVERGROW, Abilities.NONE, Abilities.CONTRARY, 413, 60, 60, 75, 60, 75, 83, 45, 70, 145, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.SERPERIOR, "Serperior", 5, false, false, false, "Regal Pokémon", Type.GRASS, null, 3.3, 63, Abilities.OVERGROW, Abilities.NONE, Abilities.CONTRARY, 528, 75, 75, 95, 75, 95, 113, 45, 70, 238, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.TEPIG, "Tepig", 5, false, false, false, "Fire Pig Pokémon", Type.FIRE, null, 0.5, 9.9, Abilities.BLAZE, Abilities.NONE, Abilities.THICK_FAT, 308, 65, 63, 45, 45, 45, 45, 45, 70, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.PIGNITE, "Pignite", 5, false, false, false, "Fire Pig Pokémon", Type.FIRE, Type.FIGHTING, 1, 55.5, Abilities.BLAZE, Abilities.NONE, Abilities.THICK_FAT, 418, 90, 93, 55, 70, 55, 55, 45, 70, 146, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.EMBOAR, "Emboar", 5, false, false, false, "Mega Fire Pig Pokémon", Type.FIRE, Type.FIGHTING, 1.6, 150, Abilities.BLAZE, Abilities.NONE, Abilities.RECKLESS, 528, 110, 123, 65, 100, 65, 65, 45, 70, 238, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.OSHAWOTT, "Oshawott", 5, false, false, false, "Sea Otter Pokémon", Type.WATER, null, 0.5, 5.9, Abilities.TORRENT, Abilities.NONE, Abilities.SHELL_ARMOR, 308, 55, 55, 45, 63, 45, 45, 45, 70, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.DEWOTT, "Dewott", 5, false, false, false, "Discipline Pokémon", Type.WATER, null, 0.8, 24.5, Abilities.TORRENT, Abilities.NONE, Abilities.SHELL_ARMOR, 413, 75, 75, 60, 83, 60, 60, 45, 70, 145, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.SAMUROTT, "Samurott", 5, false, false, false, "Formidable Pokémon", Type.WATER, null, 1.5, 94.6, Abilities.TORRENT, Abilities.NONE, Abilities.SHELL_ARMOR, 528, 95, 100, 85, 108, 70, 70, 45, 70, 238, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.PATRAT, "Patrat", 5, false, false, false, "Scout Pokémon", Type.NORMAL, null, 0.5, 11.6, Abilities.RUN_AWAY, Abilities.KEEN_EYE, Abilities.ANALYTIC, 255, 45, 55, 39, 35, 39, 42, 255, 70, 51, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.WATCHOG, "Watchog", 5, false, false, false, "Lookout Pokémon", Type.NORMAL, null, 1.1, 27, Abilities.ILLUMINATE, Abilities.KEEN_EYE, Abilities.ANALYTIC, 420, 60, 85, 69, 60, 69, 77, 255, 70, 147, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.LILLIPUP, "Lillipup", 5, false, false, false, "Puppy Pokémon", Type.NORMAL, null, 0.4, 4.1, Abilities.VITAL_SPIRIT, Abilities.PICKUP, Abilities.RUN_AWAY, 275, 45, 60, 45, 25, 45, 55, 255, 50, 55, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.HERDIER, "Herdier", 5, false, false, false, "Loyal Dog Pokémon", Type.NORMAL, null, 0.9, 14.7, Abilities.INTIMIDATE, Abilities.SAND_RUSH, Abilities.SCRAPPY, 370, 65, 80, 65, 35, 65, 60, 120, 50, 130, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.STOUTLAND, "Stoutland", 5, false, false, false, "Big-Hearted Pokémon", Type.NORMAL, null, 1.2, 61, Abilities.INTIMIDATE, Abilities.SAND_RUSH, Abilities.SCRAPPY, 500, 85, 110, 90, 45, 90, 80, 45, 50, 250, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.PURRLOIN, "Purrloin", 5, false, false, false, "Devious Pokémon", Type.DARK, null, 0.4, 10.1, Abilities.LIMBER, Abilities.UNBURDEN, Abilities.PRANKSTER, 281, 41, 50, 37, 50, 37, 66, 255, 50, 56, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.LIEPARD, "Liepard", 5, false, false, false, "Cruel Pokémon", Type.DARK, null, 1.1, 37.5, Abilities.LIMBER, Abilities.UNBURDEN, Abilities.PRANKSTER, 446, 64, 88, 50, 88, 50, 106, 90, 50, 156, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PANSAGE, "Pansage", 5, false, false, false, "Grass Monkey Pokémon", Type.GRASS, null, 0.6, 10.5, Abilities.GLUTTONY, Abilities.NONE, Abilities.OVERGROW, 316, 50, 53, 48, 53, 48, 64, 190, 70, 63, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.SIMISAGE, "Simisage", 5, false, false, false, "Thorn Monkey Pokémon", Type.GRASS, null, 1.1, 30.5, Abilities.GLUTTONY, Abilities.NONE, Abilities.OVERGROW, 498, 75, 98, 63, 98, 63, 101, 75, 70, 174, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.PANSEAR, "Pansear", 5, false, false, false, "High Temp Pokémon", Type.FIRE, null, 0.6, 11, Abilities.GLUTTONY, Abilities.NONE, Abilities.BLAZE, 316, 50, 53, 48, 53, 48, 64, 190, 70, 63, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.SIMISEAR, "Simisear", 5, false, false, false, "Ember Pokémon", Type.FIRE, null, 1, 28, Abilities.GLUTTONY, Abilities.NONE, Abilities.BLAZE, 498, 75, 98, 63, 98, 63, 101, 75, 70, 174, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.PANPOUR, "Panpour", 5, false, false, false, "Spray Pokémon", Type.WATER, null, 0.6, 13.5, Abilities.GLUTTONY, Abilities.NONE, Abilities.TORRENT, 316, 50, 53, 48, 53, 48, 64, 190, 70, 63, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.SIMIPOUR, "Simipour", 5, false, false, false, "Geyser Pokémon", Type.WATER, null, 1, 29, Abilities.GLUTTONY, Abilities.NONE, Abilities.TORRENT, 498, 75, 98, 63, 98, 63, 101, 75, 70, 174, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.MUNNA, "Munna", 5, false, false, false, "Dream Eater Pokémon", Type.PSYCHIC, null, 0.6, 23.3, Abilities.FOREWARN, Abilities.SYNCHRONIZE, Abilities.TELEPATHY, 292, 76, 25, 45, 67, 55, 24, 190, 50, 58, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.MUSHARNA, "Musharna", 5, false, false, false, "Drowsing Pokémon", Type.PSYCHIC, null, 1.1, 60.5, Abilities.FOREWARN, Abilities.SYNCHRONIZE, Abilities.TELEPATHY, 487, 116, 55, 85, 107, 95, 29, 75, 50, 170, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.PIDOVE, "Pidove", 5, false, false, false, "Tiny Pigeon Pokémon", Type.NORMAL, Type.FLYING, 0.3, 2.1, Abilities.BIG_PECKS, Abilities.SUPER_LUCK, Abilities.RIVALRY, 264, 50, 55, 50, 36, 30, 43, 255, 50, 53, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.TRANQUILL, "Tranquill", 5, false, false, false, "Wild Pigeon Pokémon", Type.NORMAL, Type.FLYING, 0.6, 15, Abilities.BIG_PECKS, Abilities.SUPER_LUCK, Abilities.RIVALRY, 358, 62, 77, 62, 50, 42, 65, 120, 50, 125, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.UNFEZANT, "Unfezant", 5, false, false, false, "Proud Pokémon", Type.NORMAL, Type.FLYING, 1.2, 29, Abilities.BIG_PECKS, Abilities.SUPER_LUCK, Abilities.RIVALRY, 488, 80, 115, 80, 65, 55, 93, 45, 50, 244, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.BLITZLE, "Blitzle", 5, false, false, false, "Electrified Pokémon", Type.ELECTRIC, null, 0.8, 29.8, Abilities.LIGHTNING_ROD, Abilities.MOTOR_DRIVE, Abilities.SAP_SIPPER, 295, 45, 60, 32, 50, 32, 76, 190, 70, 59, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ZEBSTRIKA, "Zebstrika", 5, false, false, false, "Thunderbolt Pokémon", Type.ELECTRIC, null, 1.6, 79.5, Abilities.LIGHTNING_ROD, Abilities.MOTOR_DRIVE, Abilities.SAP_SIPPER, 497, 75, 100, 63, 80, 63, 116, 75, 70, 174, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ROGGENROLA, "Roggenrola", 5, false, false, false, "Mantle Pokémon", Type.ROCK, null, 0.4, 18, Abilities.STURDY, Abilities.WEAK_ARMOR, Abilities.SAND_FORCE, 280, 55, 75, 85, 25, 25, 15, 255, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.BOLDORE, "Boldore", 5, false, false, false, "Ore Pokémon", Type.ROCK, null, 0.9, 102, Abilities.STURDY, Abilities.WEAK_ARMOR, Abilities.SAND_FORCE, 390, 70, 105, 105, 50, 40, 20, 120, 50, 137, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GIGALITH, "Gigalith", 5, false, false, false, "Compressed Pokémon", Type.ROCK, null, 1.7, 260, Abilities.STURDY, Abilities.SAND_STREAM, Abilities.SAND_FORCE, 515, 85, 135, 130, 60, 80, 25, 45, 50, 258, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.WOOBAT, "Woobat", 5, false, false, false, "Bat Pokémon", Type.PSYCHIC, Type.FLYING, 0.4, 2.1, Abilities.UNAWARE, Abilities.KLUTZ, Abilities.SIMPLE, 323, 65, 45, 43, 55, 43, 72, 190, 50, 65, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SWOOBAT, "Swoobat", 5, false, false, false, "Courting Pokémon", Type.PSYCHIC, Type.FLYING, 0.9, 10.5, Abilities.UNAWARE, Abilities.KLUTZ, Abilities.SIMPLE, 425, 67, 57, 55, 77, 55, 114, 45, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DRILBUR, "Drilbur", 5, false, false, false, "Mole Pokémon", Type.GROUND, null, 0.3, 8.5, Abilities.SAND_RUSH, Abilities.SAND_FORCE, Abilities.MOLD_BREAKER, 328, 60, 85, 40, 30, 45, 68, 120, 50, 66, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.EXCADRILL, "Excadrill", 5, false, false, false, "Subterrene Pokémon", Type.GROUND, Type.STEEL, 0.7, 40.4, Abilities.SAND_RUSH, Abilities.SAND_FORCE, Abilities.MOLD_BREAKER, 508, 110, 135, 60, 50, 65, 88, 60, 50, 178, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.AUDINO, "Audino", 5, false, false, false, "Hearing Pokémon", Type.NORMAL, null, 1.1, 31, Abilities.HEALER, Abilities.REGENERATOR, Abilities.KLUTZ, 445, 103, 60, 86, 60, 86, 50, 255, 50, 390, GrowthRate.FAST, 50, false, true,
+ new PokemonSpecies(Species.VICTINI, 4, false, false, true, "Victory Pokémon", Type.PSYCHIC, Type.FIRE, 0.4, 4, Abilities.VICTORY_STAR, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 3, 100, 300, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.SNIVY, 5, false, false, false, "Grass Snake Pokémon", Type.GRASS, null, 0.6, 8.1, Abilities.OVERGROW, Abilities.NONE, Abilities.CONTRARY, 308, 45, 45, 55, 45, 55, 63, 45, 70, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.SERVINE, 5, false, false, false, "Grass Snake Pokémon", Type.GRASS, null, 0.8, 16, Abilities.OVERGROW, Abilities.NONE, Abilities.CONTRARY, 413, 60, 60, 75, 60, 75, 83, 45, 70, 145, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.SERPERIOR, 5, false, false, false, "Regal Pokémon", Type.GRASS, null, 3.3, 63, Abilities.OVERGROW, Abilities.NONE, Abilities.CONTRARY, 528, 75, 75, 95, 75, 95, 113, 45, 70, 238, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.TEPIG, 5, false, false, false, "Fire Pig Pokémon", Type.FIRE, null, 0.5, 9.9, Abilities.BLAZE, Abilities.NONE, Abilities.THICK_FAT, 308, 65, 63, 45, 45, 45, 45, 45, 70, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.PIGNITE, 5, false, false, false, "Fire Pig Pokémon", Type.FIRE, Type.FIGHTING, 1, 55.5, Abilities.BLAZE, Abilities.NONE, Abilities.THICK_FAT, 418, 90, 93, 55, 70, 55, 55, 45, 70, 146, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.EMBOAR, 5, false, false, false, "Mega Fire Pig Pokémon", Type.FIRE, Type.FIGHTING, 1.6, 150, Abilities.BLAZE, Abilities.NONE, Abilities.RECKLESS, 528, 110, 123, 65, 100, 65, 65, 45, 70, 238, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.OSHAWOTT, 5, false, false, false, "Sea Otter Pokémon", Type.WATER, null, 0.5, 5.9, Abilities.TORRENT, Abilities.NONE, Abilities.SHELL_ARMOR, 308, 55, 55, 45, 63, 45, 45, 45, 70, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.DEWOTT, 5, false, false, false, "Discipline Pokémon", Type.WATER, null, 0.8, 24.5, Abilities.TORRENT, Abilities.NONE, Abilities.SHELL_ARMOR, 413, 75, 75, 60, 83, 60, 60, 45, 70, 145, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.SAMUROTT, 5, false, false, false, "Formidable Pokémon", Type.WATER, null, 1.5, 94.6, Abilities.TORRENT, Abilities.NONE, Abilities.SHELL_ARMOR, 528, 95, 100, 85, 108, 70, 70, 45, 70, 238, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.PATRAT, 5, false, false, false, "Scout Pokémon", Type.NORMAL, null, 0.5, 11.6, Abilities.RUN_AWAY, Abilities.KEEN_EYE, Abilities.ANALYTIC, 255, 45, 55, 39, 35, 39, 42, 255, 70, 51, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.WATCHOG, 5, false, false, false, "Lookout Pokémon", Type.NORMAL, null, 1.1, 27, Abilities.ILLUMINATE, Abilities.KEEN_EYE, Abilities.ANALYTIC, 420, 60, 85, 69, 60, 69, 77, 255, 70, 147, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.LILLIPUP, 5, false, false, false, "Puppy Pokémon", Type.NORMAL, null, 0.4, 4.1, Abilities.VITAL_SPIRIT, Abilities.PICKUP, Abilities.RUN_AWAY, 275, 45, 60, 45, 25, 45, 55, 255, 50, 55, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.HERDIER, 5, false, false, false, "Loyal Dog Pokémon", Type.NORMAL, null, 0.9, 14.7, Abilities.INTIMIDATE, Abilities.SAND_RUSH, Abilities.SCRAPPY, 370, 65, 80, 65, 35, 65, 60, 120, 50, 130, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.STOUTLAND, 5, false, false, false, "Big-Hearted Pokémon", Type.NORMAL, null, 1.2, 61, Abilities.INTIMIDATE, Abilities.SAND_RUSH, Abilities.SCRAPPY, 500, 85, 110, 90, 45, 90, 80, 45, 50, 250, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.PURRLOIN, 5, false, false, false, "Devious Pokémon", Type.DARK, null, 0.4, 10.1, Abilities.LIMBER, Abilities.UNBURDEN, Abilities.PRANKSTER, 281, 41, 50, 37, 50, 37, 66, 255, 50, 56, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.LIEPARD, 5, false, false, false, "Cruel Pokémon", Type.DARK, null, 1.1, 37.5, Abilities.LIMBER, Abilities.UNBURDEN, Abilities.PRANKSTER, 446, 64, 88, 50, 88, 50, 106, 90, 50, 156, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PANSAGE, 5, false, false, false, "Grass Monkey Pokémon", Type.GRASS, null, 0.6, 10.5, Abilities.GLUTTONY, Abilities.NONE, Abilities.OVERGROW, 316, 50, 53, 48, 53, 48, 64, 190, 70, 63, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.SIMISAGE, 5, false, false, false, "Thorn Monkey Pokémon", Type.GRASS, null, 1.1, 30.5, Abilities.GLUTTONY, Abilities.NONE, Abilities.OVERGROW, 498, 75, 98, 63, 98, 63, 101, 75, 70, 174, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.PANSEAR, 5, false, false, false, "High Temp Pokémon", Type.FIRE, null, 0.6, 11, Abilities.GLUTTONY, Abilities.NONE, Abilities.BLAZE, 316, 50, 53, 48, 53, 48, 64, 190, 70, 63, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.SIMISEAR, 5, false, false, false, "Ember Pokémon", Type.FIRE, null, 1, 28, Abilities.GLUTTONY, Abilities.NONE, Abilities.BLAZE, 498, 75, 98, 63, 98, 63, 101, 75, 70, 174, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.PANPOUR, 5, false, false, false, "Spray Pokémon", Type.WATER, null, 0.6, 13.5, Abilities.GLUTTONY, Abilities.NONE, Abilities.TORRENT, 316, 50, 53, 48, 53, 48, 64, 190, 70, 63, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.SIMIPOUR, 5, false, false, false, "Geyser Pokémon", Type.WATER, null, 1, 29, Abilities.GLUTTONY, Abilities.NONE, Abilities.TORRENT, 498, 75, 98, 63, 98, 63, 101, 75, 70, 174, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.MUNNA, 5, false, false, false, "Dream Eater Pokémon", Type.PSYCHIC, null, 0.6, 23.3, Abilities.FOREWARN, Abilities.SYNCHRONIZE, Abilities.TELEPATHY, 292, 76, 25, 45, 67, 55, 24, 190, 50, 58, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.MUSHARNA, 5, false, false, false, "Drowsing Pokémon", Type.PSYCHIC, null, 1.1, 60.5, Abilities.FOREWARN, Abilities.SYNCHRONIZE, Abilities.TELEPATHY, 487, 116, 55, 85, 107, 95, 29, 75, 50, 170, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.PIDOVE, 5, false, false, false, "Tiny Pigeon Pokémon", Type.NORMAL, Type.FLYING, 0.3, 2.1, Abilities.BIG_PECKS, Abilities.SUPER_LUCK, Abilities.RIVALRY, 264, 50, 55, 50, 36, 30, 43, 255, 50, 53, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.TRANQUILL, 5, false, false, false, "Wild Pigeon Pokémon", Type.NORMAL, Type.FLYING, 0.6, 15, Abilities.BIG_PECKS, Abilities.SUPER_LUCK, Abilities.RIVALRY, 358, 62, 77, 62, 50, 42, 65, 120, 50, 125, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.UNFEZANT, 5, false, false, false, "Proud Pokémon", Type.NORMAL, Type.FLYING, 1.2, 29, Abilities.BIG_PECKS, Abilities.SUPER_LUCK, Abilities.RIVALRY, 488, 80, 115, 80, 65, 55, 93, 45, 50, 244, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.BLITZLE, 5, false, false, false, "Electrified Pokémon", Type.ELECTRIC, null, 0.8, 29.8, Abilities.LIGHTNING_ROD, Abilities.MOTOR_DRIVE, Abilities.SAP_SIPPER, 295, 45, 60, 32, 50, 32, 76, 190, 70, 59, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ZEBSTRIKA, 5, false, false, false, "Thunderbolt Pokémon", Type.ELECTRIC, null, 1.6, 79.5, Abilities.LIGHTNING_ROD, Abilities.MOTOR_DRIVE, Abilities.SAP_SIPPER, 497, 75, 100, 63, 80, 63, 116, 75, 70, 174, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ROGGENROLA, 5, false, false, false, "Mantle Pokémon", Type.ROCK, null, 0.4, 18, Abilities.STURDY, Abilities.WEAK_ARMOR, Abilities.SAND_FORCE, 280, 55, 75, 85, 25, 25, 15, 255, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.BOLDORE, 5, false, false, false, "Ore Pokémon", Type.ROCK, null, 0.9, 102, Abilities.STURDY, Abilities.WEAK_ARMOR, Abilities.SAND_FORCE, 390, 70, 105, 105, 50, 40, 20, 120, 50, 137, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GIGALITH, 5, false, false, false, "Compressed Pokémon", Type.ROCK, null, 1.7, 260, Abilities.STURDY, Abilities.SAND_STREAM, Abilities.SAND_FORCE, 515, 85, 135, 130, 60, 80, 25, 45, 50, 258, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.WOOBAT, 5, false, false, false, "Bat Pokémon", Type.PSYCHIC, Type.FLYING, 0.4, 2.1, Abilities.UNAWARE, Abilities.KLUTZ, Abilities.SIMPLE, 323, 65, 45, 43, 55, 43, 72, 190, 50, 65, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SWOOBAT, 5, false, false, false, "Courting Pokémon", Type.PSYCHIC, Type.FLYING, 0.9, 10.5, Abilities.UNAWARE, Abilities.KLUTZ, Abilities.SIMPLE, 425, 67, 57, 55, 77, 55, 114, 45, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DRILBUR, 5, false, false, false, "Mole Pokémon", Type.GROUND, null, 0.3, 8.5, Abilities.SAND_RUSH, Abilities.SAND_FORCE, Abilities.MOLD_BREAKER, 328, 60, 85, 40, 30, 45, 68, 120, 50, 66, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.EXCADRILL, 5, false, false, false, "Subterrene Pokémon", Type.GROUND, Type.STEEL, 0.7, 40.4, Abilities.SAND_RUSH, Abilities.SAND_FORCE, Abilities.MOLD_BREAKER, 508, 110, 135, 60, 50, 65, 88, 60, 50, 178, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.AUDINO, 5, false, false, false, "Hearing Pokémon", Type.NORMAL, null, 1.1, 31, Abilities.HEALER, Abilities.REGENERATOR, Abilities.KLUTZ, 445, 103, 60, 86, 60, 86, 50, 255, 50, 390, GrowthRate.FAST, 50, false, true,
new PokemonForm("Normal", "", Type.NORMAL, null, 1.1, 31, Abilities.HEALER, Abilities.REGENERATOR, Abilities.KLUTZ, 445, 103, 60, 86, 60, 86, 50, 255, 50, 390),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.NORMAL, Type.FAIRY, 1.5, 32, Abilities.HEALER, Abilities.HEALER, Abilities.HEALER, 545, 103, 60, 126, 80, 126, 50, 255, 50, 390),
),
- new PokemonSpecies(Species.TIMBURR, "Timburr", 5, false, false, false, "Muscular Pokémon", Type.FIGHTING, null, 0.6, 12.5, Abilities.GUTS, Abilities.SHEER_FORCE, Abilities.IRON_FIST, 305, 75, 80, 55, 25, 35, 35, 180, 70, 61, GrowthRate.MEDIUM_SLOW, 75, false),
- new PokemonSpecies(Species.GURDURR, "Gurdurr", 5, false, false, false, "Muscular Pokémon", Type.FIGHTING, null, 1.2, 40, Abilities.GUTS, Abilities.SHEER_FORCE, Abilities.IRON_FIST, 405, 85, 105, 85, 40, 50, 40, 90, 50, 142, GrowthRate.MEDIUM_SLOW, 75, false),
- new PokemonSpecies(Species.CONKELDURR, "Conkeldurr", 5, false, false, false, "Muscular Pokémon", Type.FIGHTING, null, 1.4, 87, Abilities.GUTS, Abilities.SHEER_FORCE, Abilities.IRON_FIST, 505, 105, 140, 95, 55, 65, 45, 45, 50, 253, GrowthRate.MEDIUM_SLOW, 75, false),
- new PokemonSpecies(Species.TYMPOLE, "Tympole", 5, false, false, false, "Tadpole Pokémon", Type.WATER, null, 0.5, 4.5, Abilities.SWIFT_SWIM, Abilities.HYDRATION, Abilities.WATER_ABSORB, 294, 50, 50, 40, 50, 40, 64, 255, 50, 59, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.PALPITOAD, "Palpitoad", 5, false, false, false, "Vibration Pokémon", Type.WATER, Type.GROUND, 0.8, 17, Abilities.SWIFT_SWIM, Abilities.HYDRATION, Abilities.WATER_ABSORB, 384, 75, 65, 55, 65, 55, 69, 120, 50, 134, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SEISMITOAD, "Seismitoad", 5, false, false, false, "Vibration Pokémon", Type.WATER, Type.GROUND, 1.5, 62, Abilities.SWIFT_SWIM, Abilities.POISON_TOUCH, Abilities.WATER_ABSORB, 509, 105, 95, 75, 85, 75, 74, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.THROH, "Throh", 5, false, false, false, "Judo Pokémon", Type.FIGHTING, null, 1.3, 55.5, Abilities.GUTS, Abilities.INNER_FOCUS, Abilities.MOLD_BREAKER, 465, 120, 100, 85, 30, 85, 45, 45, 50, 163, GrowthRate.MEDIUM_FAST, 100, false),
- new PokemonSpecies(Species.SAWK, "Sawk", 5, false, false, false, "Karate Pokémon", Type.FIGHTING, null, 1.4, 51, Abilities.STURDY, Abilities.INNER_FOCUS, Abilities.MOLD_BREAKER, 465, 75, 125, 75, 30, 75, 85, 45, 50, 163, GrowthRate.MEDIUM_FAST, 100, false),
- new PokemonSpecies(Species.SEWADDLE, "Sewaddle", 5, false, false, false, "Sewing Pokémon", Type.BUG, Type.GRASS, 0.3, 2.5, Abilities.SWARM, Abilities.CHLOROPHYLL, Abilities.OVERCOAT, 310, 45, 53, 70, 40, 60, 42, 255, 70, 62, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SWADLOON, "Swadloon", 5, false, false, false, "Leaf-Wrapped Pokémon", Type.BUG, Type.GRASS, 0.5, 7.3, Abilities.LEAF_GUARD, Abilities.CHLOROPHYLL, Abilities.OVERCOAT, 380, 55, 63, 90, 50, 80, 42, 120, 70, 133, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.LEAVANNY, "Leavanny", 5, false, false, false, "Nurturing Pokémon", Type.BUG, Type.GRASS, 1.2, 20.5, Abilities.SWARM, Abilities.CHLOROPHYLL, Abilities.OVERCOAT, 500, 75, 103, 80, 70, 80, 92, 45, 70, 225, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.VENIPEDE, "Venipede", 5, false, false, false, "Centipede Pokémon", Type.BUG, Type.POISON, 0.4, 5.3, Abilities.POISON_POINT, Abilities.SWARM, Abilities.SPEED_BOOST, 260, 30, 45, 59, 30, 39, 57, 255, 50, 52, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.WHIRLIPEDE, "Whirlipede", 5, false, false, false, "Curlipede Pokémon", Type.BUG, Type.POISON, 1.2, 58.5, Abilities.POISON_POINT, Abilities.SWARM, Abilities.SPEED_BOOST, 360, 40, 55, 99, 40, 79, 47, 120, 50, 126, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SCOLIPEDE, "Scolipede", 5, false, false, false, "Megapede Pokémon", Type.BUG, Type.POISON, 2.5, 200.5, Abilities.POISON_POINT, Abilities.SWARM, Abilities.SPEED_BOOST, 485, 60, 100, 89, 55, 69, 112, 45, 50, 243, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.COTTONEE, "Cottonee", 5, false, false, false, "Cotton Puff Pokémon", Type.GRASS, Type.FAIRY, 0.3, 0.6, Abilities.PRANKSTER, Abilities.INFILTRATOR, Abilities.CHLOROPHYLL, 280, 40, 27, 60, 37, 50, 66, 190, 50, 56, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.WHIMSICOTT, "Whimsicott", 5, false, false, false, "Windveiled Pokémon", Type.GRASS, Type.FAIRY, 0.7, 6.6, Abilities.PRANKSTER, Abilities.INFILTRATOR, Abilities.CHLOROPHYLL, 480, 60, 67, 85, 77, 75, 116, 75, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PETILIL, "Petilil", 5, false, false, false, "Bulb Pokémon", Type.GRASS, null, 0.5, 6.6, Abilities.CHLOROPHYLL, Abilities.OWN_TEMPO, Abilities.LEAF_GUARD, 280, 45, 35, 50, 70, 50, 30, 190, 50, 56, GrowthRate.MEDIUM_FAST, 0, false),
- new PokemonSpecies(Species.LILLIGANT, "Lilligant", 5, false, false, false, "Flowering Pokémon", Type.GRASS, null, 1.1, 16.3, Abilities.CHLOROPHYLL, Abilities.OWN_TEMPO, Abilities.LEAF_GUARD, 480, 70, 60, 75, 110, 75, 90, 75, 50, 168, GrowthRate.MEDIUM_FAST, 0, false),
- new PokemonSpecies(Species.BASCULIN, "Basculin", 5, false, false, false, "Hostile Pokémon", Type.WATER, null, 1, 18, Abilities.RECKLESS, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.TIMBURR, 5, false, false, false, "Muscular Pokémon", Type.FIGHTING, null, 0.6, 12.5, Abilities.GUTS, Abilities.SHEER_FORCE, Abilities.IRON_FIST, 305, 75, 80, 55, 25, 35, 35, 180, 70, 61, GrowthRate.MEDIUM_SLOW, 75, false),
+ new PokemonSpecies(Species.GURDURR, 5, false, false, false, "Muscular Pokémon", Type.FIGHTING, null, 1.2, 40, Abilities.GUTS, Abilities.SHEER_FORCE, Abilities.IRON_FIST, 405, 85, 105, 85, 40, 50, 40, 90, 50, 142, GrowthRate.MEDIUM_SLOW, 75, false),
+ new PokemonSpecies(Species.CONKELDURR, 5, false, false, false, "Muscular Pokémon", Type.FIGHTING, null, 1.4, 87, Abilities.GUTS, Abilities.SHEER_FORCE, Abilities.IRON_FIST, 505, 105, 140, 95, 55, 65, 45, 45, 50, 253, GrowthRate.MEDIUM_SLOW, 75, false),
+ new PokemonSpecies(Species.TYMPOLE, 5, false, false, false, "Tadpole Pokémon", Type.WATER, null, 0.5, 4.5, Abilities.SWIFT_SWIM, Abilities.HYDRATION, Abilities.WATER_ABSORB, 294, 50, 50, 40, 50, 40, 64, 255, 50, 59, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.PALPITOAD, 5, false, false, false, "Vibration Pokémon", Type.WATER, Type.GROUND, 0.8, 17, Abilities.SWIFT_SWIM, Abilities.HYDRATION, Abilities.WATER_ABSORB, 384, 75, 65, 55, 65, 55, 69, 120, 50, 134, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SEISMITOAD, 5, false, false, false, "Vibration Pokémon", Type.WATER, Type.GROUND, 1.5, 62, Abilities.SWIFT_SWIM, Abilities.POISON_TOUCH, Abilities.WATER_ABSORB, 509, 105, 95, 75, 85, 75, 74, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.THROH, 5, false, false, false, "Judo Pokémon", Type.FIGHTING, null, 1.3, 55.5, Abilities.GUTS, Abilities.INNER_FOCUS, Abilities.MOLD_BREAKER, 465, 120, 100, 85, 30, 85, 45, 45, 50, 163, GrowthRate.MEDIUM_FAST, 100, false),
+ new PokemonSpecies(Species.SAWK, 5, false, false, false, "Karate Pokémon", Type.FIGHTING, null, 1.4, 51, Abilities.STURDY, Abilities.INNER_FOCUS, Abilities.MOLD_BREAKER, 465, 75, 125, 75, 30, 75, 85, 45, 50, 163, GrowthRate.MEDIUM_FAST, 100, false),
+ new PokemonSpecies(Species.SEWADDLE, 5, false, false, false, "Sewing Pokémon", Type.BUG, Type.GRASS, 0.3, 2.5, Abilities.SWARM, Abilities.CHLOROPHYLL, Abilities.OVERCOAT, 310, 45, 53, 70, 40, 60, 42, 255, 70, 62, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SWADLOON, 5, false, false, false, "Leaf-Wrapped Pokémon", Type.BUG, Type.GRASS, 0.5, 7.3, Abilities.LEAF_GUARD, Abilities.CHLOROPHYLL, Abilities.OVERCOAT, 380, 55, 63, 90, 50, 80, 42, 120, 70, 133, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.LEAVANNY, 5, false, false, false, "Nurturing Pokémon", Type.BUG, Type.GRASS, 1.2, 20.5, Abilities.SWARM, Abilities.CHLOROPHYLL, Abilities.OVERCOAT, 500, 75, 103, 80, 70, 80, 92, 45, 70, 225, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.VENIPEDE, 5, false, false, false, "Centipede Pokémon", Type.BUG, Type.POISON, 0.4, 5.3, Abilities.POISON_POINT, Abilities.SWARM, Abilities.SPEED_BOOST, 260, 30, 45, 59, 30, 39, 57, 255, 50, 52, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.WHIRLIPEDE, 5, false, false, false, "Curlipede Pokémon", Type.BUG, Type.POISON, 1.2, 58.5, Abilities.POISON_POINT, Abilities.SWARM, Abilities.SPEED_BOOST, 360, 40, 55, 99, 40, 79, 47, 120, 50, 126, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SCOLIPEDE, 5, false, false, false, "Megapede Pokémon", Type.BUG, Type.POISON, 2.5, 200.5, Abilities.POISON_POINT, Abilities.SWARM, Abilities.SPEED_BOOST, 485, 60, 100, 89, 55, 69, 112, 45, 50, 243, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.COTTONEE, 5, false, false, false, "Cotton Puff Pokémon", Type.GRASS, Type.FAIRY, 0.3, 0.6, Abilities.PRANKSTER, Abilities.INFILTRATOR, Abilities.CHLOROPHYLL, 280, 40, 27, 60, 37, 50, 66, 190, 50, 56, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.WHIMSICOTT, 5, false, false, false, "Windveiled Pokémon", Type.GRASS, Type.FAIRY, 0.7, 6.6, Abilities.PRANKSTER, Abilities.INFILTRATOR, Abilities.CHLOROPHYLL, 480, 60, 67, 85, 77, 75, 116, 75, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PETILIL, 5, false, false, false, "Bulb Pokémon", Type.GRASS, null, 0.5, 6.6, Abilities.CHLOROPHYLL, Abilities.OWN_TEMPO, Abilities.LEAF_GUARD, 280, 45, 35, 50, 70, 50, 30, 190, 50, 56, GrowthRate.MEDIUM_FAST, 0, false),
+ new PokemonSpecies(Species.LILLIGANT, 5, false, false, false, "Flowering Pokémon", Type.GRASS, null, 1.1, 16.3, Abilities.CHLOROPHYLL, Abilities.OWN_TEMPO, Abilities.LEAF_GUARD, 480, 70, 60, 75, 110, 75, 90, 75, 50, 168, GrowthRate.MEDIUM_FAST, 0, false),
+ new PokemonSpecies(Species.BASCULIN, 5, false, false, false, "Hostile Pokémon", Type.WATER, null, 1, 18, Abilities.RECKLESS, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Red-Striped Form", "red-striped", Type.WATER, null, 1, 18, Abilities.RECKLESS, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161),
new PokemonForm("Blue-Striped Form", "blue-striped", Type.WATER, null, 1, 18, Abilities.ROCK_HEAD, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161),
new PokemonForm("White-Striped Form", "white-striped", Type.WATER, null, 1, 18, Abilities.RATTLED, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161),
),
- new PokemonSpecies(Species.SANDILE, "Sandile", 5, false, false, false, "Desert Croc Pokémon", Type.GROUND, Type.DARK, 0.7, 15.2, Abilities.INTIMIDATE, Abilities.MOXIE, Abilities.ANGER_POINT, 292, 50, 72, 35, 35, 35, 65, 180, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.KROKOROK, "Krokorok", 5, false, false, false, "Desert Croc Pokémon", Type.GROUND, Type.DARK, 1, 33.4, Abilities.INTIMIDATE, Abilities.MOXIE, Abilities.ANGER_POINT, 351, 60, 82, 45, 45, 45, 74, 90, 50, 123, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.KROOKODILE, "Krookodile", 5, false, false, false, "Intimidation Pokémon", Type.GROUND, Type.DARK, 1.5, 96.3, Abilities.INTIMIDATE, Abilities.MOXIE, Abilities.ANGER_POINT, 519, 95, 117, 80, 65, 70, 92, 45, 50, 260, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.DARUMAKA, "Darumaka", 5, false, false, false, "Zen Charm Pokémon", Type.FIRE, null, 0.6, 37.5, Abilities.HUSTLE, Abilities.NONE, Abilities.INNER_FOCUS, 315, 70, 90, 45, 15, 45, 50, 120, 50, 63, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.DARMANITAN, "Darmanitan", 5, false, false, false, "Blazing Pokémon", Type.FIRE, null, 1.3, 92.9, Abilities.SHEER_FORCE, Abilities.NONE, Abilities.ZEN_MODE, 480, 105, 140, 55, 30, 55, 95, 60, 50, 168, GrowthRate.MEDIUM_SLOW, 50, false, true,
+ new PokemonSpecies(Species.SANDILE, 5, false, false, false, "Desert Croc Pokémon", Type.GROUND, Type.DARK, 0.7, 15.2, Abilities.INTIMIDATE, Abilities.MOXIE, Abilities.ANGER_POINT, 292, 50, 72, 35, 35, 35, 65, 180, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.KROKOROK, 5, false, false, false, "Desert Croc Pokémon", Type.GROUND, Type.DARK, 1, 33.4, Abilities.INTIMIDATE, Abilities.MOXIE, Abilities.ANGER_POINT, 351, 60, 82, 45, 45, 45, 74, 90, 50, 123, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.KROOKODILE, 5, false, false, false, "Intimidation Pokémon", Type.GROUND, Type.DARK, 1.5, 96.3, Abilities.INTIMIDATE, Abilities.MOXIE, Abilities.ANGER_POINT, 519, 95, 117, 80, 65, 70, 92, 45, 50, 260, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.DARUMAKA, 5, false, false, false, "Zen Charm Pokémon", Type.FIRE, null, 0.6, 37.5, Abilities.HUSTLE, Abilities.NONE, Abilities.INNER_FOCUS, 315, 70, 90, 45, 15, 45, 50, 120, 50, 63, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.DARMANITAN, 5, false, false, false, "Blazing Pokémon", Type.FIRE, null, 1.3, 92.9, Abilities.SHEER_FORCE, Abilities.NONE, Abilities.ZEN_MODE, 480, 105, 140, 55, 30, 55, 95, 60, 50, 168, GrowthRate.MEDIUM_SLOW, 50, false, true,
new PokemonForm("Standard Mode", "", Type.FIRE, null, 1.3, 92.9, Abilities.SHEER_FORCE, Abilities.NONE, Abilities.ZEN_MODE, 480, 105, 140, 55, 30, 55, 95, 60, 50, 168),
new PokemonForm("Zen Mode", "zen", Type.FIRE, Type.PSYCHIC, 1.3, 92.9, Abilities.SHEER_FORCE, Abilities.NONE, Abilities.ZEN_MODE, 540, 105, 30, 105, 140, 105, 55, 60, 50, 168),
),
- new PokemonSpecies(Species.MARACTUS, "Maractus", 5, false, false, false, "Cactus Pokémon", Type.GRASS, null, 1, 28, Abilities.WATER_ABSORB, Abilities.CHLOROPHYLL, Abilities.STORM_DRAIN, 461, 75, 86, 67, 106, 67, 60, 255, 50, 161, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DWEBBLE, "Dwebble", 5, false, false, false, "Rock Inn Pokémon", Type.BUG, Type.ROCK, 0.3, 14.5, Abilities.STURDY, Abilities.SHELL_ARMOR, Abilities.WEAK_ARMOR, 325, 50, 65, 85, 35, 35, 55, 190, 50, 65, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CRUSTLE, "Crustle", 5, false, false, false, "Stone Home Pokémon", Type.BUG, Type.ROCK, 1.4, 200, Abilities.STURDY, Abilities.SHELL_ARMOR, Abilities.WEAK_ARMOR, 485, 70, 105, 125, 65, 75, 45, 75, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SCRAGGY, "Scraggy", 5, false, false, false, "Shedding Pokémon", Type.DARK, Type.FIGHTING, 0.6, 11.8, Abilities.SHED_SKIN, Abilities.MOXIE, Abilities.INTIMIDATE, 348, 50, 75, 70, 35, 70, 48, 180, 35, 70, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SCRAFTY, "Scrafty", 5, false, false, false, "Hoodlum Pokémon", Type.DARK, Type.FIGHTING, 1.1, 30, Abilities.SHED_SKIN, Abilities.MOXIE, Abilities.INTIMIDATE, 488, 65, 90, 115, 45, 115, 58, 90, 50, 171, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SIGILYPH, "Sigilyph", 5, false, false, false, "Avianoid Pokémon", Type.PSYCHIC, Type.FLYING, 1.4, 14, Abilities.WONDER_SKIN, Abilities.MAGIC_GUARD, Abilities.TINTED_LENS, 490, 72, 58, 80, 103, 80, 97, 45, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.YAMASK, "Yamask", 5, false, false, false, "Spirit Pokémon", Type.GHOST, null, 0.5, 1.5, Abilities.MUMMY, Abilities.NONE, Abilities.NONE, 303, 38, 30, 85, 55, 65, 30, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.COFAGRIGUS, "Cofagrigus", 5, false, false, false, "Coffin Pokémon", Type.GHOST, null, 1.7, 76.5, Abilities.MUMMY, Abilities.NONE, Abilities.NONE, 483, 58, 50, 145, 95, 105, 30, 90, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.TIRTOUGA, "Tirtouga", 5, false, false, false, "Prototurtle Pokémon", Type.WATER, Type.ROCK, 0.7, 16.5, Abilities.SOLID_ROCK, Abilities.STURDY, Abilities.SWIFT_SWIM, 355, 54, 78, 103, 53, 45, 22, 45, 50, 71, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.CARRACOSTA, "Carracosta", 5, false, false, false, "Prototurtle Pokémon", Type.WATER, Type.ROCK, 1.2, 81, Abilities.SOLID_ROCK, Abilities.STURDY, Abilities.SWIFT_SWIM, 495, 74, 108, 133, 83, 65, 32, 45, 50, 173, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.ARCHEN, "Archen", 5, false, false, false, "First Bird Pokémon", Type.ROCK, Type.FLYING, 0.5, 9.5, Abilities.DEFEATIST, Abilities.NONE, Abilities.NONE, 401, 55, 112, 45, 74, 45, 70, 45, 50, 71, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.ARCHEOPS, "Archeops", 5, false, false, false, "First Bird Pokémon", Type.ROCK, Type.FLYING, 1.4, 32, Abilities.DEFEATIST, Abilities.NONE, Abilities.NONE, 567, 75, 140, 65, 112, 65, 110, 45, 50, 177, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.TRUBBISH, "Trubbish", 5, false, false, false, "Trash Bag Pokémon", Type.POISON, null, 0.6, 31, Abilities.STENCH, Abilities.STICKY_HOLD, Abilities.AFTERMATH, 329, 50, 50, 62, 40, 62, 65, 190, 50, 66, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GARBODOR, "Garbodor", 5, false, false, false, "Trash Heap Pokémon", Type.POISON, null, 1.9, 107.3, Abilities.STENCH, Abilities.WEAK_ARMOR, Abilities.AFTERMATH, 474, 80, 95, 82, 60, 82, 75, 60, 50, 166, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.MARACTUS, 5, false, false, false, "Cactus Pokémon", Type.GRASS, null, 1, 28, Abilities.WATER_ABSORB, Abilities.CHLOROPHYLL, Abilities.STORM_DRAIN, 461, 75, 86, 67, 106, 67, 60, 255, 50, 161, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DWEBBLE, 5, false, false, false, "Rock Inn Pokémon", Type.BUG, Type.ROCK, 0.3, 14.5, Abilities.STURDY, Abilities.SHELL_ARMOR, Abilities.WEAK_ARMOR, 325, 50, 65, 85, 35, 35, 55, 190, 50, 65, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CRUSTLE, 5, false, false, false, "Stone Home Pokémon", Type.BUG, Type.ROCK, 1.4, 200, Abilities.STURDY, Abilities.SHELL_ARMOR, Abilities.WEAK_ARMOR, 485, 70, 105, 125, 65, 75, 45, 75, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SCRAGGY, 5, false, false, false, "Shedding Pokémon", Type.DARK, Type.FIGHTING, 0.6, 11.8, Abilities.SHED_SKIN, Abilities.MOXIE, Abilities.INTIMIDATE, 348, 50, 75, 70, 35, 70, 48, 180, 35, 70, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SCRAFTY, 5, false, false, false, "Hoodlum Pokémon", Type.DARK, Type.FIGHTING, 1.1, 30, Abilities.SHED_SKIN, Abilities.MOXIE, Abilities.INTIMIDATE, 488, 65, 90, 115, 45, 115, 58, 90, 50, 171, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SIGILYPH, 5, false, false, false, "Avianoid Pokémon", Type.PSYCHIC, Type.FLYING, 1.4, 14, Abilities.WONDER_SKIN, Abilities.MAGIC_GUARD, Abilities.TINTED_LENS, 490, 72, 58, 80, 103, 80, 97, 45, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.YAMASK, 5, false, false, false, "Spirit Pokémon", Type.GHOST, null, 0.5, 1.5, Abilities.MUMMY, Abilities.NONE, Abilities.NONE, 303, 38, 30, 85, 55, 65, 30, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.COFAGRIGUS, 5, false, false, false, "Coffin Pokémon", Type.GHOST, null, 1.7, 76.5, Abilities.MUMMY, Abilities.NONE, Abilities.NONE, 483, 58, 50, 145, 95, 105, 30, 90, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.TIRTOUGA, 5, false, false, false, "Prototurtle Pokémon", Type.WATER, Type.ROCK, 0.7, 16.5, Abilities.SOLID_ROCK, Abilities.STURDY, Abilities.SWIFT_SWIM, 355, 54, 78, 103, 53, 45, 22, 45, 50, 71, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.CARRACOSTA, 5, false, false, false, "Prototurtle Pokémon", Type.WATER, Type.ROCK, 1.2, 81, Abilities.SOLID_ROCK, Abilities.STURDY, Abilities.SWIFT_SWIM, 495, 74, 108, 133, 83, 65, 32, 45, 50, 173, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.ARCHEN, 5, false, false, false, "First Bird Pokémon", Type.ROCK, Type.FLYING, 0.5, 9.5, Abilities.DEFEATIST, Abilities.NONE, Abilities.NONE, 401, 55, 112, 45, 74, 45, 70, 45, 50, 71, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.ARCHEOPS, 5, false, false, false, "First Bird Pokémon", Type.ROCK, Type.FLYING, 1.4, 32, Abilities.DEFEATIST, Abilities.NONE, Abilities.NONE, 567, 75, 140, 65, 112, 65, 110, 45, 50, 177, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.TRUBBISH, 5, false, false, false, "Trash Bag Pokémon", Type.POISON, null, 0.6, 31, Abilities.STENCH, Abilities.STICKY_HOLD, Abilities.AFTERMATH, 329, 50, 50, 62, 40, 62, 65, 190, 50, 66, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GARBODOR, 5, false, false, false, "Trash Heap Pokémon", Type.POISON, null, 1.9, 107.3, Abilities.STENCH, Abilities.WEAK_ARMOR, Abilities.AFTERMATH, 474, 80, 95, 82, 60, 82, 75, 60, 50, 166, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.POISON, null, 1.9, 107.3, Abilities.STENCH, Abilities.WEAK_ARMOR, Abilities.AFTERMATH, 474, 80, 95, 82, 60, 82, 75, 60, 50, 166),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.POISON, null, 21, 107.3, Abilities.STENCH, Abilities.WEAK_ARMOR, Abilities.AFTERMATH, 574, 100, 125, 102, 80, 102, 65, 60, 50, 166),
),
- new PokemonSpecies(Species.ZORUA, "Zorua", 5, false, false, false, "Tricky Fox Pokémon", Type.DARK, null, 0.7, 12.5, Abilities.ILLUSION, Abilities.NONE, Abilities.NONE, 330, 40, 65, 40, 80, 40, 65, 75, 50, 66, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.ZOROARK, "Zoroark", 5, false, false, false, "Illusion Fox Pokémon", Type.DARK, null, 1.6, 81.1, Abilities.ILLUSION, Abilities.NONE, Abilities.NONE, 510, 60, 105, 60, 120, 60, 105, 45, 50, 179, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.MINCCINO, "Minccino", 5, false, false, false, "Chinchilla Pokémon", Type.NORMAL, null, 0.4, 5.8, Abilities.CUTE_CHARM, Abilities.TECHNICIAN, Abilities.SKILL_LINK, 300, 55, 50, 40, 40, 40, 75, 255, 50, 60, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.CINCCINO, "Cinccino", 5, false, false, false, "Scarf Pokémon", Type.NORMAL, null, 0.5, 7.5, Abilities.CUTE_CHARM, Abilities.TECHNICIAN, Abilities.SKILL_LINK, 470, 75, 95, 60, 65, 60, 115, 60, 50, 165, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.GOTHITA, "Gothita", 5, false, false, false, "Fixation Pokémon", Type.PSYCHIC, null, 0.4, 5.8, Abilities.FRISK, Abilities.COMPETITIVE, Abilities.SHADOW_TAG, 290, 45, 30, 50, 55, 65, 45, 200, 50, 58, GrowthRate.MEDIUM_SLOW, 25, false),
- new PokemonSpecies(Species.GOTHORITA, "Gothorita", 5, false, false, false, "Manipulate Pokémon", Type.PSYCHIC, null, 0.7, 18, Abilities.FRISK, Abilities.COMPETITIVE, Abilities.SHADOW_TAG, 390, 60, 45, 70, 75, 85, 55, 100, 50, 137, GrowthRate.MEDIUM_SLOW, 25, false),
- new PokemonSpecies(Species.GOTHITELLE, "Gothitelle", 5, false, false, false, "Astral Body Pokémon", Type.PSYCHIC, null, 1.5, 44, Abilities.FRISK, Abilities.COMPETITIVE, Abilities.SHADOW_TAG, 490, 70, 55, 95, 95, 110, 65, 50, 50, 245, GrowthRate.MEDIUM_SLOW, 25, false),
- new PokemonSpecies(Species.SOLOSIS, "Solosis", 5, false, false, false, "Cell Pokémon", Type.PSYCHIC, null, 0.3, 1, Abilities.OVERCOAT, Abilities.MAGIC_GUARD, Abilities.REGENERATOR, 290, 45, 30, 40, 105, 50, 20, 200, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.DUOSION, "Duosion", 5, false, false, false, "Mitosis Pokémon", Type.PSYCHIC, null, 0.6, 8, Abilities.OVERCOAT, Abilities.MAGIC_GUARD, Abilities.REGENERATOR, 370, 65, 40, 50, 125, 60, 30, 100, 50, 130, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.REUNICLUS, "Reuniclus", 5, false, false, false, "Multiplying Pokémon", Type.PSYCHIC, null, 1, 20.1, Abilities.OVERCOAT, Abilities.MAGIC_GUARD, Abilities.REGENERATOR, 490, 110, 65, 75, 125, 85, 30, 50, 50, 245, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.DUCKLETT, "Ducklett", 5, false, false, false, "Water Bird Pokémon", Type.WATER, Type.FLYING, 0.5, 5.5, Abilities.KEEN_EYE, Abilities.BIG_PECKS, Abilities.HYDRATION, 305, 62, 44, 50, 44, 50, 55, 190, 70, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SWANNA, "Swanna", 5, false, false, false, "White Bird Pokémon", Type.WATER, Type.FLYING, 1.3, 24.2, Abilities.KEEN_EYE, Abilities.BIG_PECKS, Abilities.HYDRATION, 473, 75, 87, 63, 87, 63, 98, 45, 70, 166, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.VANILLITE, "Vanillite", 5, false, false, false, "Fresh Snow Pokémon", Type.ICE, null, 0.4, 5.7, Abilities.ICE_BODY, Abilities.SNOW_CLOAK, Abilities.WEAK_ARMOR, 305, 36, 50, 50, 65, 60, 44, 255, 50, 61, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.VANILLISH, "Vanillish", 5, false, false, false, "Icy Snow Pokémon", Type.ICE, null, 1.1, 41, Abilities.ICE_BODY, Abilities.SNOW_CLOAK, Abilities.WEAK_ARMOR, 395, 51, 65, 65, 80, 75, 59, 120, 50, 138, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.VANILLUXE, "Vanilluxe", 5, false, false, false, "Snowstorm Pokémon", Type.ICE, null, 1.3, 57.5, Abilities.ICE_BODY, Abilities.SNOW_WARNING, Abilities.WEAK_ARMOR, 535, 71, 95, 85, 110, 95, 79, 45, 50, 268, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.DEERLING, "Deerling", 5, false, false, false, "Season Pokémon", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.ZORUA, 5, false, false, false, "Tricky Fox Pokémon", Type.DARK, null, 0.7, 12.5, Abilities.ILLUSION, Abilities.NONE, Abilities.NONE, 330, 40, 65, 40, 80, 40, 65, 75, 50, 66, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.ZOROARK, 5, false, false, false, "Illusion Fox Pokémon", Type.DARK, null, 1.6, 81.1, Abilities.ILLUSION, Abilities.NONE, Abilities.NONE, 510, 60, 105, 60, 120, 60, 105, 45, 50, 179, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.MINCCINO, 5, false, false, false, "Chinchilla Pokémon", Type.NORMAL, null, 0.4, 5.8, Abilities.CUTE_CHARM, Abilities.TECHNICIAN, Abilities.SKILL_LINK, 300, 55, 50, 40, 40, 40, 75, 255, 50, 60, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.CINCCINO, 5, false, false, false, "Scarf Pokémon", Type.NORMAL, null, 0.5, 7.5, Abilities.CUTE_CHARM, Abilities.TECHNICIAN, Abilities.SKILL_LINK, 470, 75, 95, 60, 65, 60, 115, 60, 50, 165, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.GOTHITA, 5, false, false, false, "Fixation Pokémon", Type.PSYCHIC, null, 0.4, 5.8, Abilities.FRISK, Abilities.COMPETITIVE, Abilities.SHADOW_TAG, 290, 45, 30, 50, 55, 65, 45, 200, 50, 58, GrowthRate.MEDIUM_SLOW, 25, false),
+ new PokemonSpecies(Species.GOTHORITA, 5, false, false, false, "Manipulate Pokémon", Type.PSYCHIC, null, 0.7, 18, Abilities.FRISK, Abilities.COMPETITIVE, Abilities.SHADOW_TAG, 390, 60, 45, 70, 75, 85, 55, 100, 50, 137, GrowthRate.MEDIUM_SLOW, 25, false),
+ new PokemonSpecies(Species.GOTHITELLE, 5, false, false, false, "Astral Body Pokémon", Type.PSYCHIC, null, 1.5, 44, Abilities.FRISK, Abilities.COMPETITIVE, Abilities.SHADOW_TAG, 490, 70, 55, 95, 95, 110, 65, 50, 50, 245, GrowthRate.MEDIUM_SLOW, 25, false),
+ new PokemonSpecies(Species.SOLOSIS, 5, false, false, false, "Cell Pokémon", Type.PSYCHIC, null, 0.3, 1, Abilities.OVERCOAT, Abilities.MAGIC_GUARD, Abilities.REGENERATOR, 290, 45, 30, 40, 105, 50, 20, 200, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.DUOSION, 5, false, false, false, "Mitosis Pokémon", Type.PSYCHIC, null, 0.6, 8, Abilities.OVERCOAT, Abilities.MAGIC_GUARD, Abilities.REGENERATOR, 370, 65, 40, 50, 125, 60, 30, 100, 50, 130, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.REUNICLUS, 5, false, false, false, "Multiplying Pokémon", Type.PSYCHIC, null, 1, 20.1, Abilities.OVERCOAT, Abilities.MAGIC_GUARD, Abilities.REGENERATOR, 490, 110, 65, 75, 125, 85, 30, 50, 50, 245, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.DUCKLETT, 5, false, false, false, "Water Bird Pokémon", Type.WATER, Type.FLYING, 0.5, 5.5, Abilities.KEEN_EYE, Abilities.BIG_PECKS, Abilities.HYDRATION, 305, 62, 44, 50, 44, 50, 55, 190, 70, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SWANNA, 5, false, false, false, "White Bird Pokémon", Type.WATER, Type.FLYING, 1.3, 24.2, Abilities.KEEN_EYE, Abilities.BIG_PECKS, Abilities.HYDRATION, 473, 75, 87, 63, 87, 63, 98, 45, 70, 166, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.VANILLITE, 5, false, false, false, "Fresh Snow Pokémon", Type.ICE, null, 0.4, 5.7, Abilities.ICE_BODY, Abilities.SNOW_CLOAK, Abilities.WEAK_ARMOR, 305, 36, 50, 50, 65, 60, 44, 255, 50, 61, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.VANILLISH, 5, false, false, false, "Icy Snow Pokémon", Type.ICE, null, 1.1, 41, Abilities.ICE_BODY, Abilities.SNOW_CLOAK, Abilities.WEAK_ARMOR, 395, 51, 65, 65, 80, 75, 59, 120, 50, 138, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.VANILLUXE, 5, false, false, false, "Snowstorm Pokémon", Type.ICE, null, 1.3, 57.5, Abilities.ICE_BODY, Abilities.SNOW_WARNING, Abilities.WEAK_ARMOR, 535, 71, 95, 85, 110, 95, 79, 45, 50, 268, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.DEERLING, 5, false, false, false, "Season Pokémon", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Spring Form", "spring", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67),
new PokemonForm("Summer Form", "summer", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67),
new PokemonForm("Autumn Form", "autumn", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67),
new PokemonForm("Winter Form", "winter", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67),
),
- new PokemonSpecies(Species.SAWSBUCK, "Sawsbuck", 5, false, false, false, "Season Pokémon", Type.NORMAL, Type.GRASS, 1.9, 92.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 475, 80, 100, 70, 60, 70, 95, 75, 70, 166, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.SAWSBUCK, 5, false, false, false, "Season Pokémon", Type.NORMAL, Type.GRASS, 1.9, 92.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 475, 80, 100, 70, 60, 70, 95, 75, 70, 166, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Spring Form", "spring", Type.NORMAL, Type.GRASS, 1.9, 92.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 475, 80, 100, 70, 60, 70, 95, 75, 70, 166),
new PokemonForm("Summer Form", "summer", Type.NORMAL, Type.GRASS, 1.9, 92.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 475, 80, 100, 70, 60, 70, 95, 75, 70, 166),
new PokemonForm("Autumn Form", "autumn", Type.NORMAL, Type.GRASS, 1.9, 92.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 475, 80, 100, 70, 60, 70, 95, 75, 70, 166),
new PokemonForm("Winter Form", "winter", Type.NORMAL, Type.GRASS, 1.9, 92.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 475, 80, 100, 70, 60, 70, 95, 75, 70, 166),
),
- new PokemonSpecies(Species.EMOLGA, "Emolga", 5, false, false, false, "Sky Squirrel Pokémon", Type.ELECTRIC, Type.FLYING, 0.4, 5, Abilities.STATIC, Abilities.NONE, Abilities.MOTOR_DRIVE, 428, 55, 75, 60, 75, 60, 103, 200, 50, 150, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.KARRABLAST, "Karrablast", 5, false, false, false, "Clamping Pokémon", Type.BUG, null, 0.5, 5.9, Abilities.SWARM, Abilities.SHED_SKIN, Abilities.NO_GUARD, 315, 50, 75, 45, 40, 45, 60, 200, 50, 63, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ESCAVALIER, "Escavalier", 5, false, false, false, "Cavalry Pokémon", Type.BUG, Type.STEEL, 1, 33, Abilities.SWARM, Abilities.SHELL_ARMOR, Abilities.OVERCOAT, 495, 70, 135, 105, 60, 105, 20, 75, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FOONGUS, "Foongus", 5, false, false, false, "Mushroom Pokémon", Type.GRASS, Type.POISON, 0.2, 1, Abilities.EFFECT_SPORE, Abilities.NONE, Abilities.REGENERATOR, 294, 69, 55, 45, 55, 55, 15, 190, 50, 59, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.AMOONGUSS, "Amoonguss", 5, false, false, false, "Mushroom Pokémon", Type.GRASS, Type.POISON, 0.6, 10.5, Abilities.EFFECT_SPORE, Abilities.NONE, Abilities.REGENERATOR, 464, 114, 85, 70, 85, 80, 30, 75, 50, 162, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FRILLISH, "Frillish", 5, false, false, false, "Floating Pokémon", Type.WATER, Type.GHOST, 1.2, 33, Abilities.WATER_ABSORB, Abilities.CURSED_BODY, Abilities.DAMP, 335, 55, 40, 50, 65, 85, 40, 190, 50, 67, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.JELLICENT, "Jellicent", 5, false, false, false, "Floating Pokémon", Type.WATER, Type.GHOST, 2.2, 135, Abilities.WATER_ABSORB, Abilities.CURSED_BODY, Abilities.DAMP, 480, 100, 60, 70, 85, 105, 60, 60, 50, 168, GrowthRate.MEDIUM_FAST, 50, true),
- new PokemonSpecies(Species.ALOMOMOLA, "Alomomola", 5, false, false, false, "Caring Pokémon", Type.WATER, null, 1.2, 31.6, Abilities.HEALER, Abilities.HYDRATION, Abilities.REGENERATOR, 470, 165, 75, 80, 40, 45, 65, 75, 70, 165, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.JOLTIK, "Joltik", 5, false, false, false, "Attaching Pokémon", Type.BUG, Type.ELECTRIC, 0.1, 0.6, Abilities.COMPOUND_EYES, Abilities.UNNERVE, Abilities.SWARM, 319, 50, 47, 50, 57, 50, 65, 190, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALVANTULA, "Galvantula", 5, false, false, false, "EleSpider Pokémon", Type.BUG, Type.ELECTRIC, 0.8, 14.3, Abilities.COMPOUND_EYES, Abilities.UNNERVE, Abilities.SWARM, 472, 70, 77, 60, 97, 60, 108, 75, 50, 165, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FERROSEED, "Ferroseed", 5, false, false, false, "Thorn Seed Pokémon", Type.GRASS, Type.STEEL, 0.6, 18.8, Abilities.IRON_BARBS, Abilities.NONE, Abilities.IRON_BARBS, 305, 44, 50, 91, 24, 86, 10, 255, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FERROTHORN, "Ferrothorn", 5, false, false, false, "Thorn Pod Pokémon", Type.GRASS, Type.STEEL, 1, 110, Abilities.IRON_BARBS, Abilities.NONE, Abilities.ANTICIPATION, 489, 74, 94, 131, 54, 116, 20, 90, 50, 171, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.KLINK, "Klink", 5, false, false, false, "Gear Pokémon", Type.STEEL, null, 0.3, 21, Abilities.PLUS, Abilities.MINUS, Abilities.CLEAR_BODY, 300, 40, 55, 70, 45, 60, 30, 130, 50, 60, GrowthRate.MEDIUM_SLOW, null, false),
- new PokemonSpecies(Species.KLANG, "Klang", 5, false, false, false, "Gear Pokémon", Type.STEEL, null, 0.6, 51, Abilities.PLUS, Abilities.MINUS, Abilities.CLEAR_BODY, 440, 60, 80, 95, 70, 85, 50, 60, 50, 154, GrowthRate.MEDIUM_SLOW, null, false),
- new PokemonSpecies(Species.KLINKLANG, "Klinklang", 5, false, false, false, "Gear Pokémon", Type.STEEL, null, 0.6, 81, Abilities.PLUS, Abilities.MINUS, Abilities.CLEAR_BODY, 520, 60, 100, 115, 70, 85, 90, 30, 50, 260, GrowthRate.MEDIUM_SLOW, null, false),
- new PokemonSpecies(Species.TYNAMO, "Tynamo", 5, false, false, false, "EleFish Pokémon", Type.ELECTRIC, null, 0.2, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 275, 35, 55, 40, 45, 40, 60, 190, 70, 55, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.EELEKTRIK, "Eelektrik", 5, false, false, false, "EleFish Pokémon", Type.ELECTRIC, null, 1.2, 22, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 405, 65, 85, 70, 75, 70, 40, 60, 70, 142, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.EELEKTROSS, "Eelektross", 5, false, false, false, "EleFish Pokémon", Type.ELECTRIC, null, 2.1, 80.5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 515, 85, 115, 80, 105, 80, 50, 30, 70, 232, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.ELGYEM, "Elgyem", 5, false, false, false, "Cerebral Pokémon", Type.PSYCHIC, null, 0.5, 9, Abilities.TELEPATHY, Abilities.SYNCHRONIZE, Abilities.ANALYTIC, 335, 55, 55, 55, 85, 55, 30, 255, 50, 67, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BEHEEYEM, "Beheeyem", 5, false, false, false, "Cerebral Pokémon", Type.PSYCHIC, null, 1, 34.5, Abilities.TELEPATHY, Abilities.SYNCHRONIZE, Abilities.ANALYTIC, 485, 75, 75, 75, 125, 95, 40, 90, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.LITWICK, "Litwick", 5, false, false, false, "Candle Pokémon", Type.GHOST, Type.FIRE, 0.3, 3.1, Abilities.FLASH_FIRE, Abilities.FLAME_BODY, Abilities.INFILTRATOR, 275, 50, 30, 55, 65, 55, 20, 190, 50, 55, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.LAMPENT, "Lampent", 5, false, false, false, "Lamp Pokémon", Type.GHOST, Type.FIRE, 0.6, 13, Abilities.FLASH_FIRE, Abilities.FLAME_BODY, Abilities.INFILTRATOR, 370, 60, 40, 60, 95, 60, 55, 90, 50, 130, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.CHANDELURE, "Chandelure", 5, false, false, false, "Luring Pokémon", Type.GHOST, Type.FIRE, 1, 34.3, Abilities.FLASH_FIRE, Abilities.FLAME_BODY, Abilities.INFILTRATOR, 520, 60, 55, 90, 145, 90, 80, 45, 50, 260, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.AXEW, "Axew", 5, false, false, false, "Tusk Pokémon", Type.DRAGON, null, 0.6, 18, Abilities.RIVALRY, Abilities.MOLD_BREAKER, Abilities.UNNERVE, 320, 46, 87, 60, 30, 40, 57, 75, 35, 64, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.FRAXURE, "Fraxure", 5, false, false, false, "Axe Jaw Pokémon", Type.DRAGON, null, 1, 36, Abilities.RIVALRY, Abilities.MOLD_BREAKER, Abilities.UNNERVE, 410, 66, 117, 70, 40, 50, 67, 60, 35, 144, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.HAXORUS, "Haxorus", 5, false, false, false, "Axe Jaw Pokémon", Type.DRAGON, null, 1.8, 105.5, Abilities.RIVALRY, Abilities.MOLD_BREAKER, Abilities.UNNERVE, 540, 76, 147, 90, 60, 70, 97, 45, 35, 270, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.CUBCHOO, "Cubchoo", 5, false, false, false, "Chill Pokémon", Type.ICE, null, 0.5, 8.5, Abilities.SNOW_CLOAK, Abilities.SLUSH_RUSH, Abilities.RATTLED, 305, 55, 70, 40, 60, 40, 40, 120, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BEARTIC, "Beartic", 5, false, false, false, "Freezing Pokémon", Type.ICE, null, 2.6, 260, Abilities.SNOW_CLOAK, Abilities.SLUSH_RUSH, Abilities.SWIFT_SWIM, 505, 95, 130, 80, 70, 80, 50, 60, 50, 177, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CRYOGONAL, "Cryogonal", 5, false, false, false, "Crystallizing Pokémon", Type.ICE, null, 1.1, 148, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 515, 80, 50, 50, 95, 135, 105, 25, 50, 180, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.SHELMET, "Shelmet", 5, false, false, false, "Snail Pokémon", Type.BUG, null, 0.4, 7.7, Abilities.HYDRATION, Abilities.SHELL_ARMOR, Abilities.OVERCOAT, 305, 50, 40, 85, 40, 65, 25, 200, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ACCELGOR, "Accelgor", 5, false, false, false, "Shell Out Pokémon", Type.BUG, null, 0.8, 25.3, Abilities.HYDRATION, Abilities.STICKY_HOLD, Abilities.UNBURDEN, 495, 80, 70, 40, 100, 60, 145, 75, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.STUNFISK, "Stunfisk", 5, false, false, false, "Trap Pokémon", Type.GROUND, Type.ELECTRIC, 0.7, 11, Abilities.STATIC, Abilities.LIMBER, Abilities.SAND_VEIL, 471, 109, 66, 84, 81, 99, 32, 75, 70, 165, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MIENFOO, "Mienfoo", 5, false, false, false, "Martial Arts Pokémon", Type.FIGHTING, null, 0.9, 20, Abilities.INNER_FOCUS, Abilities.REGENERATOR, Abilities.RECKLESS, 350, 45, 85, 50, 55, 50, 65, 180, 50, 70, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.MIENSHAO, "Mienshao", 5, false, false, false, "Martial Arts Pokémon", Type.FIGHTING, null, 1.4, 35.5, Abilities.INNER_FOCUS, Abilities.REGENERATOR, Abilities.RECKLESS, 510, 65, 125, 60, 95, 60, 105, 45, 50, 179, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.DRUDDIGON, "Druddigon", 5, false, false, false, "Cave Pokémon", Type.DRAGON, null, 1.6, 139, Abilities.ROUGH_SKIN, Abilities.SHEER_FORCE, Abilities.MOLD_BREAKER, 485, 77, 120, 90, 60, 90, 48, 45, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GOLETT, "Golett", 5, false, false, false, "Automaton Pokémon", Type.GROUND, Type.GHOST, 1, 92, Abilities.IRON_FIST, Abilities.KLUTZ, Abilities.NO_GUARD, 303, 59, 74, 50, 35, 50, 35, 190, 50, 61, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.GOLURK, "Golurk", 5, false, false, false, "Automaton Pokémon", Type.GROUND, Type.GHOST, 2.8, 330, Abilities.IRON_FIST, Abilities.KLUTZ, Abilities.NO_GUARD, 483, 89, 124, 80, 55, 80, 55, 90, 50, 169, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.PAWNIARD, "Pawniard", 5, false, false, false, "Sharp Blade Pokémon", Type.DARK, Type.STEEL, 0.5, 10.2, Abilities.DEFIANT, Abilities.INNER_FOCUS, Abilities.PRESSURE, 340, 45, 85, 70, 40, 40, 60, 120, 35, 68, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BISHARP, "Bisharp", 5, false, false, false, "Sword Blade Pokémon", Type.DARK, Type.STEEL, 1.6, 70, Abilities.DEFIANT, Abilities.INNER_FOCUS, Abilities.PRESSURE, 490, 65, 125, 100, 60, 70, 70, 45, 35, 172, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BOUFFALANT, "Bouffalant", 5, false, false, false, "Bash Buffalo Pokémon", Type.NORMAL, null, 1.6, 94.6, Abilities.RECKLESS, Abilities.SAP_SIPPER, Abilities.SOUNDPROOF, 490, 95, 110, 95, 40, 95, 55, 45, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.RUFFLET, "Rufflet", 5, false, false, false, "Eaglet Pokémon", Type.NORMAL, Type.FLYING, 0.5, 10.5, Abilities.KEEN_EYE, Abilities.SHEER_FORCE, Abilities.HUSTLE, 350, 70, 83, 50, 37, 50, 60, 190, 50, 70, GrowthRate.SLOW, 100, false),
- new PokemonSpecies(Species.BRAVIARY, "Braviary", 5, false, false, false, "Valiant Pokémon", Type.NORMAL, Type.FLYING, 1.5, 41, Abilities.KEEN_EYE, Abilities.SHEER_FORCE, Abilities.DEFIANT, 510, 100, 123, 75, 57, 75, 80, 60, 50, 179, GrowthRate.SLOW, 100, false),
- new PokemonSpecies(Species.VULLABY, "Vullaby", 5, false, false, false, "Diapered Pokémon", Type.DARK, Type.FLYING, 0.5, 9, Abilities.BIG_PECKS, Abilities.OVERCOAT, Abilities.WEAK_ARMOR, 370, 70, 55, 75, 45, 65, 60, 190, 35, 74, GrowthRate.SLOW, 0, false),
- new PokemonSpecies(Species.MANDIBUZZ, "Mandibuzz", 5, false, false, false, "Bone Vulture Pokémon", Type.DARK, Type.FLYING, 1.2, 39.5, Abilities.BIG_PECKS, Abilities.OVERCOAT, Abilities.WEAK_ARMOR, 510, 110, 65, 105, 55, 95, 80, 60, 35, 179, GrowthRate.SLOW, 0, false),
- new PokemonSpecies(Species.HEATMOR, "Heatmor", 5, false, false, false, "Anteater Pokémon", Type.FIRE, null, 1.4, 58, Abilities.GLUTTONY, Abilities.FLASH_FIRE, Abilities.WHITE_SMOKE, 484, 85, 97, 66, 105, 66, 65, 90, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DURANT, "Durant", 5, false, false, false, "Iron Ant Pokémon", Type.BUG, Type.STEEL, 0.3, 33, Abilities.SWARM, Abilities.HUSTLE, Abilities.TRUANT, 484, 58, 109, 112, 48, 48, 109, 90, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DEINO, "Deino", 5, false, false, false, "Irate Pokémon", Type.DARK, Type.DRAGON, 0.8, 17.3, Abilities.HUSTLE, Abilities.NONE, Abilities.NONE, 300, 52, 65, 50, 45, 50, 38, 45, 35, 60, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.ZWEILOUS, "Zweilous", 5, false, false, false, "Hostile Pokémon", Type.DARK, Type.DRAGON, 1.4, 50, Abilities.HUSTLE, Abilities.NONE, Abilities.NONE, 420, 72, 85, 70, 65, 70, 58, 45, 35, 147, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.HYDREIGON, "Hydreigon", 5, false, false, false, "Brutal Pokémon", Type.DARK, Type.DRAGON, 1.8, 160, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 600, 92, 105, 90, 125, 90, 98, 45, 35, 300, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.LARVESTA, "Larvesta", 5, false, false, false, "Torch Pokémon", Type.BUG, Type.FIRE, 1.1, 28.8, Abilities.FLAME_BODY, Abilities.NONE, Abilities.SWARM, 360, 55, 85, 55, 50, 55, 60, 45, 50, 72, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.VOLCARONA, "Volcarona", 5, false, false, false, "Sun Pokémon", Type.BUG, Type.FIRE, 1.6, 46, Abilities.FLAME_BODY, Abilities.NONE, Abilities.SWARM, 550, 85, 60, 65, 135, 105, 100, 15, 50, 275, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.COBALION, "Cobalion", 5, true, false, false, "Iron Will Pokémon", Type.STEEL, Type.FIGHTING, 2.1, 250, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 90, 129, 90, 72, 108, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.TERRAKION, "Terrakion", 5, true, false, false, "Cavern Pokémon", Type.ROCK, Type.FIGHTING, 1.9, 260, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 129, 90, 72, 90, 108, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.VIRIZION, "Virizion", 5, true, false, false, "Grassland Pokémon", Type.GRASS, Type.FIGHTING, 2, 200, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 90, 72, 90, 129, 108, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.TORNADUS, "Tornadus", 5, true, false, false, "Cyclone Pokémon", Type.FLYING, null, 1.5, 63, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290, GrowthRate.SLOW, 100, false, true,
+ new PokemonSpecies(Species.EMOLGA, 5, false, false, false, "Sky Squirrel Pokémon", Type.ELECTRIC, Type.FLYING, 0.4, 5, Abilities.STATIC, Abilities.NONE, Abilities.MOTOR_DRIVE, 428, 55, 75, 60, 75, 60, 103, 200, 50, 150, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.KARRABLAST, 5, false, false, false, "Clamping Pokémon", Type.BUG, null, 0.5, 5.9, Abilities.SWARM, Abilities.SHED_SKIN, Abilities.NO_GUARD, 315, 50, 75, 45, 40, 45, 60, 200, 50, 63, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ESCAVALIER, 5, false, false, false, "Cavalry Pokémon", Type.BUG, Type.STEEL, 1, 33, Abilities.SWARM, Abilities.SHELL_ARMOR, Abilities.OVERCOAT, 495, 70, 135, 105, 60, 105, 20, 75, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FOONGUS, 5, false, false, false, "Mushroom Pokémon", Type.GRASS, Type.POISON, 0.2, 1, Abilities.EFFECT_SPORE, Abilities.NONE, Abilities.REGENERATOR, 294, 69, 55, 45, 55, 55, 15, 190, 50, 59, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.AMOONGUSS, 5, false, false, false, "Mushroom Pokémon", Type.GRASS, Type.POISON, 0.6, 10.5, Abilities.EFFECT_SPORE, Abilities.NONE, Abilities.REGENERATOR, 464, 114, 85, 70, 85, 80, 30, 75, 50, 162, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FRILLISH, 5, false, false, false, "Floating Pokémon", Type.WATER, Type.GHOST, 1.2, 33, Abilities.WATER_ABSORB, Abilities.CURSED_BODY, Abilities.DAMP, 335, 55, 40, 50, 65, 85, 40, 190, 50, 67, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.JELLICENT, 5, false, false, false, "Floating Pokémon", Type.WATER, Type.GHOST, 2.2, 135, Abilities.WATER_ABSORB, Abilities.CURSED_BODY, Abilities.DAMP, 480, 100, 60, 70, 85, 105, 60, 60, 50, 168, GrowthRate.MEDIUM_FAST, 50, true),
+ new PokemonSpecies(Species.ALOMOMOLA, 5, false, false, false, "Caring Pokémon", Type.WATER, null, 1.2, 31.6, Abilities.HEALER, Abilities.HYDRATION, Abilities.REGENERATOR, 470, 165, 75, 80, 40, 45, 65, 75, 70, 165, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.JOLTIK, 5, false, false, false, "Attaching Pokémon", Type.BUG, Type.ELECTRIC, 0.1, 0.6, Abilities.COMPOUND_EYES, Abilities.UNNERVE, Abilities.SWARM, 319, 50, 47, 50, 57, 50, 65, 190, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALVANTULA, 5, false, false, false, "EleSpider Pokémon", Type.BUG, Type.ELECTRIC, 0.8, 14.3, Abilities.COMPOUND_EYES, Abilities.UNNERVE, Abilities.SWARM, 472, 70, 77, 60, 97, 60, 108, 75, 50, 165, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FERROSEED, 5, false, false, false, "Thorn Seed Pokémon", Type.GRASS, Type.STEEL, 0.6, 18.8, Abilities.IRON_BARBS, Abilities.NONE, Abilities.IRON_BARBS, 305, 44, 50, 91, 24, 86, 10, 255, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FERROTHORN, 5, false, false, false, "Thorn Pod Pokémon", Type.GRASS, Type.STEEL, 1, 110, Abilities.IRON_BARBS, Abilities.NONE, Abilities.ANTICIPATION, 489, 74, 94, 131, 54, 116, 20, 90, 50, 171, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.KLINK, 5, false, false, false, "Gear Pokémon", Type.STEEL, null, 0.3, 21, Abilities.PLUS, Abilities.MINUS, Abilities.CLEAR_BODY, 300, 40, 55, 70, 45, 60, 30, 130, 50, 60, GrowthRate.MEDIUM_SLOW, null, false),
+ new PokemonSpecies(Species.KLANG, 5, false, false, false, "Gear Pokémon", Type.STEEL, null, 0.6, 51, Abilities.PLUS, Abilities.MINUS, Abilities.CLEAR_BODY, 440, 60, 80, 95, 70, 85, 50, 60, 50, 154, GrowthRate.MEDIUM_SLOW, null, false),
+ new PokemonSpecies(Species.KLINKLANG, 5, false, false, false, "Gear Pokémon", Type.STEEL, null, 0.6, 81, Abilities.PLUS, Abilities.MINUS, Abilities.CLEAR_BODY, 520, 60, 100, 115, 70, 85, 90, 30, 50, 260, GrowthRate.MEDIUM_SLOW, null, false),
+ new PokemonSpecies(Species.TYNAMO, 5, false, false, false, "EleFish Pokémon", Type.ELECTRIC, null, 0.2, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 275, 35, 55, 40, 45, 40, 60, 190, 70, 55, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.EELEKTRIK, 5, false, false, false, "EleFish Pokémon", Type.ELECTRIC, null, 1.2, 22, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 405, 65, 85, 70, 75, 70, 40, 60, 70, 142, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.EELEKTROSS, 5, false, false, false, "EleFish Pokémon", Type.ELECTRIC, null, 2.1, 80.5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 515, 85, 115, 80, 105, 80, 50, 30, 70, 232, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.ELGYEM, 5, false, false, false, "Cerebral Pokémon", Type.PSYCHIC, null, 0.5, 9, Abilities.TELEPATHY, Abilities.SYNCHRONIZE, Abilities.ANALYTIC, 335, 55, 55, 55, 85, 55, 30, 255, 50, 67, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BEHEEYEM, 5, false, false, false, "Cerebral Pokémon", Type.PSYCHIC, null, 1, 34.5, Abilities.TELEPATHY, Abilities.SYNCHRONIZE, Abilities.ANALYTIC, 485, 75, 75, 75, 125, 95, 40, 90, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.LITWICK, 5, false, false, false, "Candle Pokémon", Type.GHOST, Type.FIRE, 0.3, 3.1, Abilities.FLASH_FIRE, Abilities.FLAME_BODY, Abilities.INFILTRATOR, 275, 50, 30, 55, 65, 55, 20, 190, 50, 55, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.LAMPENT, 5, false, false, false, "Lamp Pokémon", Type.GHOST, Type.FIRE, 0.6, 13, Abilities.FLASH_FIRE, Abilities.FLAME_BODY, Abilities.INFILTRATOR, 370, 60, 40, 60, 95, 60, 55, 90, 50, 130, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.CHANDELURE, 5, false, false, false, "Luring Pokémon", Type.GHOST, Type.FIRE, 1, 34.3, Abilities.FLASH_FIRE, Abilities.FLAME_BODY, Abilities.INFILTRATOR, 520, 60, 55, 90, 145, 90, 80, 45, 50, 260, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.AXEW, 5, false, false, false, "Tusk Pokémon", Type.DRAGON, null, 0.6, 18, Abilities.RIVALRY, Abilities.MOLD_BREAKER, Abilities.UNNERVE, 320, 46, 87, 60, 30, 40, 57, 75, 35, 64, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.FRAXURE, 5, false, false, false, "Axe Jaw Pokémon", Type.DRAGON, null, 1, 36, Abilities.RIVALRY, Abilities.MOLD_BREAKER, Abilities.UNNERVE, 410, 66, 117, 70, 40, 50, 67, 60, 35, 144, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.HAXORUS, 5, false, false, false, "Axe Jaw Pokémon", Type.DRAGON, null, 1.8, 105.5, Abilities.RIVALRY, Abilities.MOLD_BREAKER, Abilities.UNNERVE, 540, 76, 147, 90, 60, 70, 97, 45, 35, 270, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.CUBCHOO, 5, false, false, false, "Chill Pokémon", Type.ICE, null, 0.5, 8.5, Abilities.SNOW_CLOAK, Abilities.SLUSH_RUSH, Abilities.RATTLED, 305, 55, 70, 40, 60, 40, 40, 120, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BEARTIC, 5, false, false, false, "Freezing Pokémon", Type.ICE, null, 2.6, 260, Abilities.SNOW_CLOAK, Abilities.SLUSH_RUSH, Abilities.SWIFT_SWIM, 505, 95, 130, 80, 70, 80, 50, 60, 50, 177, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CRYOGONAL, 5, false, false, false, "Crystallizing Pokémon", Type.ICE, null, 1.1, 148, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 515, 80, 50, 50, 95, 135, 105, 25, 50, 180, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.SHELMET, 5, false, false, false, "Snail Pokémon", Type.BUG, null, 0.4, 7.7, Abilities.HYDRATION, Abilities.SHELL_ARMOR, Abilities.OVERCOAT, 305, 50, 40, 85, 40, 65, 25, 200, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ACCELGOR, 5, false, false, false, "Shell Out Pokémon", Type.BUG, null, 0.8, 25.3, Abilities.HYDRATION, Abilities.STICKY_HOLD, Abilities.UNBURDEN, 495, 80, 70, 40, 100, 60, 145, 75, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.STUNFISK, 5, false, false, false, "Trap Pokémon", Type.GROUND, Type.ELECTRIC, 0.7, 11, Abilities.STATIC, Abilities.LIMBER, Abilities.SAND_VEIL, 471, 109, 66, 84, 81, 99, 32, 75, 70, 165, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MIENFOO, 5, false, false, false, "Martial Arts Pokémon", Type.FIGHTING, null, 0.9, 20, Abilities.INNER_FOCUS, Abilities.REGENERATOR, Abilities.RECKLESS, 350, 45, 85, 50, 55, 50, 65, 180, 50, 70, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.MIENSHAO, 5, false, false, false, "Martial Arts Pokémon", Type.FIGHTING, null, 1.4, 35.5, Abilities.INNER_FOCUS, Abilities.REGENERATOR, Abilities.RECKLESS, 510, 65, 125, 60, 95, 60, 105, 45, 50, 179, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.DRUDDIGON, 5, false, false, false, "Cave Pokémon", Type.DRAGON, null, 1.6, 139, Abilities.ROUGH_SKIN, Abilities.SHEER_FORCE, Abilities.MOLD_BREAKER, 485, 77, 120, 90, 60, 90, 48, 45, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GOLETT, 5, false, false, false, "Automaton Pokémon", Type.GROUND, Type.GHOST, 1, 92, Abilities.IRON_FIST, Abilities.KLUTZ, Abilities.NO_GUARD, 303, 59, 74, 50, 35, 50, 35, 190, 50, 61, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.GOLURK, 5, false, false, false, "Automaton Pokémon", Type.GROUND, Type.GHOST, 2.8, 330, Abilities.IRON_FIST, Abilities.KLUTZ, Abilities.NO_GUARD, 483, 89, 124, 80, 55, 80, 55, 90, 50, 169, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.PAWNIARD, 5, false, false, false, "Sharp Blade Pokémon", Type.DARK, Type.STEEL, 0.5, 10.2, Abilities.DEFIANT, Abilities.INNER_FOCUS, Abilities.PRESSURE, 340, 45, 85, 70, 40, 40, 60, 120, 35, 68, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BISHARP, 5, false, false, false, "Sword Blade Pokémon", Type.DARK, Type.STEEL, 1.6, 70, Abilities.DEFIANT, Abilities.INNER_FOCUS, Abilities.PRESSURE, 490, 65, 125, 100, 60, 70, 70, 45, 35, 172, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BOUFFALANT, 5, false, false, false, "Bash Buffalo Pokémon", Type.NORMAL, null, 1.6, 94.6, Abilities.RECKLESS, Abilities.SAP_SIPPER, Abilities.SOUNDPROOF, 490, 95, 110, 95, 40, 95, 55, 45, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.RUFFLET, 5, false, false, false, "Eaglet Pokémon", Type.NORMAL, Type.FLYING, 0.5, 10.5, Abilities.KEEN_EYE, Abilities.SHEER_FORCE, Abilities.HUSTLE, 350, 70, 83, 50, 37, 50, 60, 190, 50, 70, GrowthRate.SLOW, 100, false),
+ new PokemonSpecies(Species.BRAVIARY, 5, false, false, false, "Valiant Pokémon", Type.NORMAL, Type.FLYING, 1.5, 41, Abilities.KEEN_EYE, Abilities.SHEER_FORCE, Abilities.DEFIANT, 510, 100, 123, 75, 57, 75, 80, 60, 50, 179, GrowthRate.SLOW, 100, false),
+ new PokemonSpecies(Species.VULLABY, 5, false, false, false, "Diapered Pokémon", Type.DARK, Type.FLYING, 0.5, 9, Abilities.BIG_PECKS, Abilities.OVERCOAT, Abilities.WEAK_ARMOR, 370, 70, 55, 75, 45, 65, 60, 190, 35, 74, GrowthRate.SLOW, 0, false),
+ new PokemonSpecies(Species.MANDIBUZZ, 5, false, false, false, "Bone Vulture Pokémon", Type.DARK, Type.FLYING, 1.2, 39.5, Abilities.BIG_PECKS, Abilities.OVERCOAT, Abilities.WEAK_ARMOR, 510, 110, 65, 105, 55, 95, 80, 60, 35, 179, GrowthRate.SLOW, 0, false),
+ new PokemonSpecies(Species.HEATMOR, 5, false, false, false, "Anteater Pokémon", Type.FIRE, null, 1.4, 58, Abilities.GLUTTONY, Abilities.FLASH_FIRE, Abilities.WHITE_SMOKE, 484, 85, 97, 66, 105, 66, 65, 90, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DURANT, 5, false, false, false, "Iron Ant Pokémon", Type.BUG, Type.STEEL, 0.3, 33, Abilities.SWARM, Abilities.HUSTLE, Abilities.TRUANT, 484, 58, 109, 112, 48, 48, 109, 90, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DEINO, 5, false, false, false, "Irate Pokémon", Type.DARK, Type.DRAGON, 0.8, 17.3, Abilities.HUSTLE, Abilities.NONE, Abilities.NONE, 300, 52, 65, 50, 45, 50, 38, 45, 35, 60, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.ZWEILOUS, 5, false, false, false, "Hostile Pokémon", Type.DARK, Type.DRAGON, 1.4, 50, Abilities.HUSTLE, Abilities.NONE, Abilities.NONE, 420, 72, 85, 70, 65, 70, 58, 45, 35, 147, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.HYDREIGON, 5, false, false, false, "Brutal Pokémon", Type.DARK, Type.DRAGON, 1.8, 160, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 600, 92, 105, 90, 125, 90, 98, 45, 35, 300, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.LARVESTA, 5, false, false, false, "Torch Pokémon", Type.BUG, Type.FIRE, 1.1, 28.8, Abilities.FLAME_BODY, Abilities.NONE, Abilities.SWARM, 360, 55, 85, 55, 50, 55, 60, 45, 50, 72, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.VOLCARONA, 5, false, false, false, "Sun Pokémon", Type.BUG, Type.FIRE, 1.6, 46, Abilities.FLAME_BODY, Abilities.NONE, Abilities.SWARM, 550, 85, 60, 65, 135, 105, 100, 15, 50, 275, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.COBALION, 5, true, false, false, "Iron Will Pokémon", Type.STEEL, Type.FIGHTING, 2.1, 250, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 90, 129, 90, 72, 108, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.TERRAKION, 5, true, false, false, "Cavern Pokémon", Type.ROCK, Type.FIGHTING, 1.9, 260, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 129, 90, 72, 90, 108, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.VIRIZION, 5, true, false, false, "Grassland Pokémon", Type.GRASS, Type.FIGHTING, 2, 200, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 90, 72, 90, 129, 108, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.TORNADUS, 5, true, false, false, "Cyclone Pokémon", Type.FLYING, null, 1.5, 63, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290, GrowthRate.SLOW, 100, false, true,
new PokemonForm("Incarnate Forme", "incarnate", Type.FLYING, null, 1.5, 63, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290),
new PokemonForm("Therian Forme", "therian", Type.FLYING, null, 1.4, 63, Abilities.REGENERATOR, Abilities.NONE, Abilities.NONE, 580, 79, 100, 80, 110, 90, 121, 3, 90, 290),
),
- new PokemonSpecies(Species.THUNDURUS, "Thundurus", 5, true, false, false, "Bolt Strike Pokémon", Type.ELECTRIC, Type.FLYING, 1.5, 61, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290, GrowthRate.SLOW, 100, false, true,
+ new PokemonSpecies(Species.THUNDURUS, 5, true, false, false, "Bolt Strike Pokémon", Type.ELECTRIC, Type.FLYING, 1.5, 61, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290, GrowthRate.SLOW, 100, false, true,
new PokemonForm("Incarnate Forme", "incarnate", Type.ELECTRIC, Type.FLYING, 1.5, 61, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290),
new PokemonForm("Therian Forme", "therian", Type.ELECTRIC, Type.FLYING, 3, 61, Abilities.VOLT_ABSORB, Abilities.NONE, Abilities.NONE, 580, 79, 105, 70, 145, 80, 101, 3, 90, 290),
),
- new PokemonSpecies(Species.RESHIRAM, "Reshiram", 5, false, true, false, "Vast White Pokémon", Type.DRAGON, Type.FIRE, 3.2, 330, Abilities.TURBOBLAZE, Abilities.NONE, Abilities.NONE, 680, 100, 120, 100, 150, 120, 90, 3, 0, 340, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.ZEKROM, "Zekrom", 5, false, true, false, "Deep Black Pokémon", Type.DRAGON, Type.ELECTRIC, 2.9, 345, Abilities.TERAVOLT, Abilities.NONE, Abilities.NONE, 680, 100, 150, 120, 120, 100, 90, 3, 0, 340, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.LANDORUS, "Landorus", 5, true, false, false, "Abundance Pokémon", Type.GROUND, Type.FLYING, 1.5, 68, Abilities.SAND_FORCE, Abilities.NONE, Abilities.SHEER_FORCE, 600, 89, 125, 90, 115, 80, 101, 3, 90, 300, GrowthRate.SLOW, 100, false, true,
+ new PokemonSpecies(Species.RESHIRAM, 5, false, true, false, "Vast White Pokémon", Type.DRAGON, Type.FIRE, 3.2, 330, Abilities.TURBOBLAZE, Abilities.NONE, Abilities.NONE, 680, 100, 120, 100, 150, 120, 90, 3, 0, 340, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.ZEKROM, 5, false, true, false, "Deep Black Pokémon", Type.DRAGON, Type.ELECTRIC, 2.9, 345, Abilities.TERAVOLT, Abilities.NONE, Abilities.NONE, 680, 100, 150, 120, 120, 100, 90, 3, 0, 340, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.LANDORUS, 5, true, false, false, "Abundance Pokémon", Type.GROUND, Type.FLYING, 1.5, 68, Abilities.SAND_FORCE, Abilities.NONE, Abilities.SHEER_FORCE, 600, 89, 125, 90, 115, 80, 101, 3, 90, 300, GrowthRate.SLOW, 100, false, true,
new PokemonForm("Incarnate Forme", "incarnate", Type.GROUND, Type.FLYING, 1.5, 68, Abilities.SAND_FORCE, Abilities.NONE, Abilities.SHEER_FORCE, 600, 89, 125, 90, 115, 80, 101, 3, 90, 300),
new PokemonForm("Therian Forme", "therian", Type.GROUND, Type.FLYING, 1.3, 68, Abilities.INTIMIDATE, Abilities.NONE, Abilities.NONE, 600, 89, 145, 90, 105, 80, 91, 3, 90, 300),
),
- new PokemonSpecies(Species.KYUREM, "Kyurem", 5, false, true, false, "Boundary Pokémon", Type.DRAGON, Type.ICE, 3, 325, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 660, 125, 130, 90, 130, 90, 95, 3, 0, 330, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.KYUREM, 5, false, true, false, "Boundary Pokémon", Type.DRAGON, Type.ICE, 3, 325, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 660, 125, 130, 90, 130, 90, 95, 3, 0, 330, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.DRAGON, Type.ICE, 3, 325, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 660, 125, 130, 90, 130, 90, 95, 3, 0, 330),
new PokemonForm("Black", "black", Type.DRAGON, Type.ICE, 3.3, 325, Abilities.TERAVOLT, Abilities.NONE, Abilities.NONE, 700, 125, 170, 100, 120, 90, 95, 3, 0, 330),
new PokemonForm("White", "white", Type.DRAGON, Type.ICE, 3.6, 325, Abilities.TURBOBLAZE, Abilities.NONE, Abilities.NONE, 700, 125, 120, 90, 170, 100, 95, 3, 0, 330),
),
- new PokemonSpecies(Species.KELDEO, "Keldeo", 5, false, false, true, "Colt Pokémon", Type.WATER, Type.FIGHTING, 1.4, 48.5, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 72, 90, 129, 90, 108, 3, 35, 290, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.KELDEO, 5, false, false, true, "Colt Pokémon", Type.WATER, Type.FIGHTING, 1.4, 48.5, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 72, 90, 129, 90, 108, 3, 35, 290, GrowthRate.SLOW, null, false, true,
new PokemonForm("Ordinary Form", "ordinary", Type.WATER, Type.FIGHTING, 1.4, 48.5, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 72, 90, 129, 90, 108, 3, 35, 290),
new PokemonForm("Resolute", "resolute", Type.WATER, Type.FIGHTING, 1.4, 48.5, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 72, 90, 129, 90, 108, 3, 35, 290),
),
- new PokemonSpecies(Species.MELOETTA, "Meloetta", 5, false, false, true, "Melody Pokémon", Type.NORMAL, Type.PSYCHIC, 0.6, 6.5, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 77, 77, 128, 128, 90, 3, 100, 270, GrowthRate.SLOW, 0, false, true,
+ new PokemonSpecies(Species.MELOETTA, 5, false, false, true, "Melody Pokémon", Type.NORMAL, Type.PSYCHIC, 0.6, 6.5, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 77, 77, 128, 128, 90, 3, 100, 270, GrowthRate.SLOW, 0, false, true,
new PokemonForm("Aria Forme", "aria", Type.NORMAL, Type.PSYCHIC, 0.6, 6.5, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 77, 77, 128, 128, 90, 3, 100, 270),
new PokemonForm("Pirouette Forme", "pirouette", Type.NORMAL, Type.FIGHTING, 0.6, 6.5, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 128, 90, 77, 77, 128, 3, 100, 270),
),
- new PokemonSpecies(Species.GENESECT, "Genesect", 5, false, false, true, "Paleozoic Pokémon", Type.BUG, Type.STEEL, 1.5, 82.5, Abilities.DOWNLOAD, Abilities.NONE, Abilities.NONE, 600, 71, 120, 95, 120, 95, 99, 3, 0, 300, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.GENESECT, 5, false, false, true, "Paleozoic Pokémon", Type.BUG, Type.STEEL, 1.5, 82.5, Abilities.DOWNLOAD, Abilities.NONE, Abilities.NONE, 600, 71, 120, 95, 120, 95, 99, 3, 0, 300, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.BUG, Type.STEEL, 1.5, 82.5, Abilities.DOWNLOAD, Abilities.NONE, Abilities.NONE, 600, 71, 120, 95, 120, 95, 99, 3, 0, 300),
new PokemonForm("Shock Drive", "shock", Type.BUG, Type.STEEL, 1.5, 82.5, Abilities.DOWNLOAD, Abilities.NONE, Abilities.NONE, 600, 71, 120, 95, 120, 95, 99, 3, 0, 300),
new PokemonForm("Burn Drive", "burn", Type.BUG, Type.STEEL, 1.5, 82.5, Abilities.DOWNLOAD, Abilities.NONE, Abilities.NONE, 600, 71, 120, 95, 120, 95, 99, 3, 0, 300),
new PokemonForm("Chill Drive", "chill", Type.BUG, Type.STEEL, 1.5, 82.5, Abilities.DOWNLOAD, Abilities.NONE, Abilities.NONE, 600, 71, 120, 95, 120, 95, 99, 3, 0, 300),
new PokemonForm("Douse Drive", "douse", Type.BUG, Type.STEEL, 1.5, 82.5, Abilities.DOWNLOAD, Abilities.NONE, Abilities.NONE, 600, 71, 120, 95, 120, 95, 99, 3, 0, 300),
),
- new PokemonSpecies(Species.CHESPIN, "Chespin", 6, false, false, false, "Spiny Nut Pokémon", Type.GRASS, null, 0.4, 9, Abilities.OVERGROW, Abilities.NONE, Abilities.BULLETPROOF, 313, 56, 61, 65, 48, 45, 38, 45, 70, 63, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.QUILLADIN, "Quilladin", 6, false, false, false, "Spiny Armor Pokémon", Type.GRASS, null, 0.7, 29, Abilities.OVERGROW, Abilities.NONE, Abilities.BULLETPROOF, 405, 61, 78, 95, 56, 58, 57, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.CHESNAUGHT, "Chesnaught", 6, false, false, false, "Spiny Armor Pokémon", Type.GRASS, Type.FIGHTING, 1.6, 90, Abilities.OVERGROW, Abilities.NONE, Abilities.BULLETPROOF, 530, 88, 107, 122, 74, 75, 64, 45, 70, 239, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.FENNEKIN, "Fennekin", 6, false, false, false, "Fox Pokémon", Type.FIRE, null, 0.4, 9.4, Abilities.BLAZE, Abilities.NONE, Abilities.MAGICIAN, 307, 40, 45, 40, 62, 60, 60, 45, 70, 61, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.BRAIXEN, "Braixen", 6, false, false, false, "Fox Pokémon", Type.FIRE, null, 1, 14.5, Abilities.BLAZE, Abilities.NONE, Abilities.MAGICIAN, 409, 59, 59, 58, 90, 70, 73, 45, 70, 143, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.DELPHOX, "Delphox", 6, false, false, false, "Fox Pokémon", Type.FIRE, Type.PSYCHIC, 1.5, 39, Abilities.BLAZE, Abilities.NONE, Abilities.MAGICIAN, 534, 75, 69, 72, 114, 100, 104, 45, 70, 240, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.FROAKIE, "Froakie", 6, false, false, false, "Bubble Frog Pokémon", Type.WATER, null, 0.3, 7, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 314, 41, 56, 40, 62, 44, 71, 45, 70, 63, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.FROGADIER, "Frogadier", 6, false, false, false, "Bubble Frog Pokémon", Type.WATER, null, 0.6, 10.9, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 405, 54, 63, 52, 83, 56, 97, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.GRENINJA, "Greninja", 6, false, false, false, "Ninja Pokémon", Type.WATER, Type.DARK, 1.5, 40, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 530, 72, 95, 67, 103, 71, 122, 45, 70, 239, GrowthRate.MEDIUM_SLOW, 87.5, false, false,
+ new PokemonSpecies(Species.CHESPIN, 6, false, false, false, "Spiny Nut Pokémon", Type.GRASS, null, 0.4, 9, Abilities.OVERGROW, Abilities.NONE, Abilities.BULLETPROOF, 313, 56, 61, 65, 48, 45, 38, 45, 70, 63, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.QUILLADIN, 6, false, false, false, "Spiny Armor Pokémon", Type.GRASS, null, 0.7, 29, Abilities.OVERGROW, Abilities.NONE, Abilities.BULLETPROOF, 405, 61, 78, 95, 56, 58, 57, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.CHESNAUGHT, 6, false, false, false, "Spiny Armor Pokémon", Type.GRASS, Type.FIGHTING, 1.6, 90, Abilities.OVERGROW, Abilities.NONE, Abilities.BULLETPROOF, 530, 88, 107, 122, 74, 75, 64, 45, 70, 239, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.FENNEKIN, 6, false, false, false, "Fox Pokémon", Type.FIRE, null, 0.4, 9.4, Abilities.BLAZE, Abilities.NONE, Abilities.MAGICIAN, 307, 40, 45, 40, 62, 60, 60, 45, 70, 61, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.BRAIXEN, 6, false, false, false, "Fox Pokémon", Type.FIRE, null, 1, 14.5, Abilities.BLAZE, Abilities.NONE, Abilities.MAGICIAN, 409, 59, 59, 58, 90, 70, 73, 45, 70, 143, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.DELPHOX, 6, false, false, false, "Fox Pokémon", Type.FIRE, Type.PSYCHIC, 1.5, 39, Abilities.BLAZE, Abilities.NONE, Abilities.MAGICIAN, 534, 75, 69, 72, 114, 100, 104, 45, 70, 240, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.FROAKIE, 6, false, false, false, "Bubble Frog Pokémon", Type.WATER, null, 0.3, 7, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 314, 41, 56, 40, 62, 44, 71, 45, 70, 63, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.FROGADIER, 6, false, false, false, "Bubble Frog Pokémon", Type.WATER, null, 0.6, 10.9, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 405, 54, 63, 52, 83, 56, 97, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.GRENINJA, 6, false, false, false, "Ninja Pokémon", Type.WATER, Type.DARK, 1.5, 40, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 530, 72, 95, 67, 103, 71, 122, 45, 70, 239, GrowthRate.MEDIUM_SLOW, 87.5, false, false,
new PokemonForm("Normal", "", Type.WATER, Type.DARK, 1.5, 40, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 530, 72, 95, 67, 103, 71, 122, 45, 70, 239),
new PokemonForm("Battle Bond", "battle-bond", Type.WATER, Type.DARK, 1.5, 40, Abilities.BATTLE_BOND, Abilities.NONE, Abilities.NONE, 530, 72, 95, 67, 103, 71, 122, 45, 70, 239, false, ""),
new PokemonForm("Ash", "ash", Type.WATER, Type.DARK, 1.5, 40, Abilities.BATTLE_BOND, Abilities.NONE, Abilities.NONE, 640, 72, 145, 67, 153, 71, 132, 45, 70, 239),
),
- new PokemonSpecies(Species.BUNNELBY, "Bunnelby", 6, false, false, false, "Digging Pokémon", Type.NORMAL, null, 0.4, 5, Abilities.PICKUP, Abilities.CHEEK_POUCH, Abilities.HUGE_POWER, 237, 38, 36, 38, 32, 36, 57, 255, 50, 47, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DIGGERSBY, "Diggersby", 6, false, false, false, "Digging Pokémon", Type.NORMAL, Type.GROUND, 1, 42.4, Abilities.PICKUP, Abilities.CHEEK_POUCH, Abilities.HUGE_POWER, 423, 85, 56, 77, 50, 77, 78, 127, 50, 148, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FLETCHLING, "Fletchling", 6, false, false, false, "Tiny Robin Pokémon", Type.NORMAL, Type.FLYING, 0.3, 1.7, Abilities.BIG_PECKS, Abilities.NONE, Abilities.GALE_WINGS, 278, 45, 50, 43, 40, 38, 62, 255, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.FLETCHINDER, "Fletchinder", 6, false, false, false, "Ember Pokémon", Type.FIRE, Type.FLYING, 0.7, 16, Abilities.FLAME_BODY, Abilities.NONE, Abilities.GALE_WINGS, 382, 62, 73, 55, 56, 52, 84, 120, 50, 134, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.TALONFLAME, "Talonflame", 6, false, false, false, "Scorching Pokémon", Type.FIRE, Type.FLYING, 1.2, 24.5, Abilities.FLAME_BODY, Abilities.NONE, Abilities.GALE_WINGS, 499, 78, 81, 71, 74, 69, 126, 45, 50, 175, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SCATTERBUG, "Scatterbug", 6, false, false, false, "Scatterdust Pokémon", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.BUNNELBY, 6, false, false, false, "Digging Pokémon", Type.NORMAL, null, 0.4, 5, Abilities.PICKUP, Abilities.CHEEK_POUCH, Abilities.HUGE_POWER, 237, 38, 36, 38, 32, 36, 57, 255, 50, 47, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DIGGERSBY, 6, false, false, false, "Digging Pokémon", Type.NORMAL, Type.GROUND, 1, 42.4, Abilities.PICKUP, Abilities.CHEEK_POUCH, Abilities.HUGE_POWER, 423, 85, 56, 77, 50, 77, 78, 127, 50, 148, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FLETCHLING, 6, false, false, false, "Tiny Robin Pokémon", Type.NORMAL, Type.FLYING, 0.3, 1.7, Abilities.BIG_PECKS, Abilities.NONE, Abilities.GALE_WINGS, 278, 45, 50, 43, 40, 38, 62, 255, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.FLETCHINDER, 6, false, false, false, "Ember Pokémon", Type.FIRE, Type.FLYING, 0.7, 16, Abilities.FLAME_BODY, Abilities.NONE, Abilities.GALE_WINGS, 382, 62, 73, 55, 56, 52, 84, 120, 50, 134, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.TALONFLAME, 6, false, false, false, "Scorching Pokémon", Type.FIRE, Type.FLYING, 1.2, 24.5, Abilities.FLAME_BODY, Abilities.NONE, Abilities.GALE_WINGS, 499, 78, 81, 71, 74, 69, 126, 45, 50, 175, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SCATTERBUG, 6, false, false, false, "Scatterdust Pokémon", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Meadow Pattern", "meadow", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Icy Snow Pattern", "icy-snow", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Polar Pattern", "polar", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
@@ -1735,7 +1782,7 @@ export function initSpecies() {
new PokemonForm("Fancy Pattern", "fancy", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Poké Ball Pattern", "poke-ball", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
),
- new PokemonSpecies(Species.SPEWPA, "Spewpa", 6, false, false, false, "Scatterdust Pokémon", Type.BUG, null, 0.3, 8.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.FRIEND_GUARD, 213, 45, 22, 60, 27, 30, 29, 120, 70, 75, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.SPEWPA, 6, false, false, false, "Scatterdust Pokémon", Type.BUG, null, 0.3, 8.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.FRIEND_GUARD, 213, 45, 22, 60, 27, 30, 29, 120, 70, 75, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Meadow Pattern", "meadow", Type.BUG, null, 0.3, 8.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.FRIEND_GUARD, 213, 45, 22, 60, 27, 30, 29, 120, 70, 75, false, ""),
new PokemonForm("Icy Snow Pattern", "icy-snow", Type.BUG, null, 0.3, 8.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.FRIEND_GUARD, 213, 45, 22, 60, 27, 30, 29, 120, 70, 75, false, ""),
new PokemonForm("Polar Pattern", "polar", Type.BUG, null, 0.3, 8.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.FRIEND_GUARD, 213, 45, 22, 60, 27, 30, 29, 120, 70, 75, false, ""),
@@ -1757,7 +1804,7 @@ export function initSpecies() {
new PokemonForm("Fancy Pattern", "fancy", Type.BUG, null, 0.3, 8.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.FRIEND_GUARD, 213, 45, 22, 60, 27, 30, 29, 120, 70, 75, false, ""),
new PokemonForm("Poké Ball Pattern", "poke-ball", Type.BUG, null, 0.3, 8.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.FRIEND_GUARD, 213, 45, 22, 60, 27, 30, 29, 120, 70, 75, false, ""),
),
- new PokemonSpecies(Species.VIVILLON, "Vivillon", 6, false, false, false, "Scale Pokémon", Type.BUG, Type.FLYING, 1.2, 17, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 411, 80, 52, 50, 90, 50, 89, 45, 70, 185, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.VIVILLON, 6, false, false, false, "Scale Pokémon", Type.BUG, Type.FLYING, 1.2, 17, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 411, 80, 52, 50, 90, 50, 89, 45, 70, 185, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Meadow Pattern", "meadow", Type.BUG, Type.FLYING, 1.2, 17, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 411, 80, 52, 50, 90, 50, 89, 45, 70, 185),
new PokemonForm("Icy Snow Pattern", "icy-snow", Type.BUG, Type.FLYING, 1.2, 17, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 411, 80, 52, 50, 90, 50, 89, 45, 70, 185),
new PokemonForm("Polar Pattern", "polar", Type.BUG, Type.FLYING, 1.2, 17, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 411, 80, 52, 50, 90, 50, 89, 45, 70, 185),
@@ -1779,34 +1826,34 @@ export function initSpecies() {
new PokemonForm("Fancy Pattern", "fancy", Type.BUG, Type.FLYING, 1.2, 17, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 411, 80, 52, 50, 90, 50, 89, 45, 70, 185),
new PokemonForm("Poké Ball Pattern", "poke-ball", Type.BUG, Type.FLYING, 1.2, 17, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 411, 80, 52, 50, 90, 50, 89, 45, 70, 185),
),
- new PokemonSpecies(Species.LITLEO, "Litleo", 6, false, false, false, "Lion Cub Pokémon", Type.FIRE, Type.NORMAL, 0.6, 13.5, Abilities.RIVALRY, Abilities.UNNERVE, Abilities.MOXIE, 369, 62, 50, 58, 73, 54, 72, 220, 70, 74, GrowthRate.MEDIUM_SLOW, 12.5, false),
- new PokemonSpecies(Species.PYROAR, "Pyroar", 6, false, false, false, "Royal Pokémon", Type.FIRE, Type.NORMAL, 1.5, 81.5, Abilities.RIVALRY, Abilities.UNNERVE, Abilities.MOXIE, 507, 86, 68, 72, 109, 66, 106, 65, 70, 177, GrowthRate.MEDIUM_SLOW, 12.5, true),
- new PokemonSpecies(Species.FLABEBE, "Flabébé", 6, false, false, false, "Single Bloom Pokémon", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61, GrowthRate.MEDIUM_FAST, 0, false, false,
+ new PokemonSpecies(Species.LITLEO, 6, false, false, false, "Lion Cub Pokémon", Type.FIRE, Type.NORMAL, 0.6, 13.5, Abilities.RIVALRY, Abilities.UNNERVE, Abilities.MOXIE, 369, 62, 50, 58, 73, 54, 72, 220, 70, 74, GrowthRate.MEDIUM_SLOW, 12.5, false),
+ new PokemonSpecies(Species.PYROAR, 6, false, false, false, "Royal Pokémon", Type.FIRE, Type.NORMAL, 1.5, 81.5, Abilities.RIVALRY, Abilities.UNNERVE, Abilities.MOXIE, 507, 86, 68, 72, 109, 66, 106, 65, 70, 177, GrowthRate.MEDIUM_SLOW, 12.5, true),
+ new PokemonSpecies(Species.FLABEBE, 6, false, false, false, "Single Bloom Pokémon", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61, GrowthRate.MEDIUM_FAST, 0, false, false,
new PokemonForm("Red Flower", "red", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61),
new PokemonForm("Yellow Flower", "yellow", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61),
new PokemonForm("Orange Flower", "orange", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61),
new PokemonForm("Blue Flower", "blue", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61),
new PokemonForm("White Flower", "white", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61),
),
- new PokemonSpecies(Species.FLOETTE, "Floette", 6, false, false, false, "Single Bloom Pokémon", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 371, 54, 45, 47, 75, 98, 52, 120, 70, 130, GrowthRate.MEDIUM_FAST, 0, false, false,
+ new PokemonSpecies(Species.FLOETTE, 6, false, false, false, "Single Bloom Pokémon", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 371, 54, 45, 47, 75, 98, 52, 120, 70, 130, GrowthRate.MEDIUM_FAST, 0, false, false,
new PokemonForm("Red Flower", "red", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 371, 54, 45, 47, 75, 98, 52, 120, 70, 130),
new PokemonForm("Yellow Flower", "yellow", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 371, 54, 45, 47, 75, 98, 52, 120, 70, 130),
new PokemonForm("Orange Flower", "orange", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 371, 54, 45, 47, 75, 98, 52, 120, 70, 130),
new PokemonForm("Blue Flower", "blue", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 371, 54, 45, 47, 75, 98, 52, 120, 70, 130),
new PokemonForm("White Flower", "white", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 371, 54, 45, 47, 75, 98, 52, 120, 70, 130),
),
- new PokemonSpecies(Species.FLORGES, "Florges", 6, false, false, false, "Garden Pokémon", Type.FAIRY, null, 1.1, 10, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 552, 78, 65, 68, 112, 154, 75, 45, 70, 248, GrowthRate.MEDIUM_FAST, 0, false, false,
+ new PokemonSpecies(Species.FLORGES, 6, false, false, false, "Garden Pokémon", Type.FAIRY, null, 1.1, 10, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 552, 78, 65, 68, 112, 154, 75, 45, 70, 248, GrowthRate.MEDIUM_FAST, 0, false, false,
new PokemonForm("Red Flower", "red", Type.FAIRY, null, 1.1, 10, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 552, 78, 65, 68, 112, 154, 75, 45, 70, 248),
new PokemonForm("Yellow Flower", "yellow", Type.FAIRY, null, 1.1, 10, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 552, 78, 65, 68, 112, 154, 75, 45, 70, 248),
new PokemonForm("Orange Flower", "orange", Type.FAIRY, null, 1.1, 10, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 552, 78, 65, 68, 112, 154, 75, 45, 70, 248),
new PokemonForm("Blue Flower", "blue", Type.FAIRY, null, 1.1, 10, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 552, 78, 65, 68, 112, 154, 75, 45, 70, 248),
new PokemonForm("White Flower", "white", Type.FAIRY, null, 1.1, 10, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 552, 78, 65, 68, 112, 154, 75, 45, 70, 248),
),
- new PokemonSpecies(Species.SKIDDO, "Skiddo", 6, false, false, false, "Mount Pokémon", Type.GRASS, null, 0.9, 31, Abilities.SAP_SIPPER, Abilities.NONE, Abilities.GRASS_PELT, 350, 66, 65, 48, 62, 57, 52, 200, 70, 70, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GOGOAT, "Gogoat", 6, false, false, false, "Mount Pokémon", Type.GRASS, null, 1.7, 91, Abilities.SAP_SIPPER, Abilities.NONE, Abilities.GRASS_PELT, 531, 123, 100, 62, 97, 81, 68, 45, 70, 186, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PANCHAM, "Pancham", 6, false, false, false, "Playful Pokémon", Type.FIGHTING, null, 0.6, 8, Abilities.IRON_FIST, Abilities.MOLD_BREAKER, Abilities.SCRAPPY, 348, 67, 82, 62, 46, 48, 43, 220, 50, 70, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PANGORO, "Pangoro", 6, false, false, false, "Daunting Pokémon", Type.FIGHTING, Type.DARK, 2.1, 136, Abilities.IRON_FIST, Abilities.MOLD_BREAKER, Abilities.SCRAPPY, 495, 95, 124, 78, 69, 71, 58, 65, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FURFROU, "Furfrou", 6, false, false, false, "Poodle Pokémon", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.SKIDDO, 6, false, false, false, "Mount Pokémon", Type.GRASS, null, 0.9, 31, Abilities.SAP_SIPPER, Abilities.NONE, Abilities.GRASS_PELT, 350, 66, 65, 48, 62, 57, 52, 200, 70, 70, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GOGOAT, 6, false, false, false, "Mount Pokémon", Type.GRASS, null, 1.7, 91, Abilities.SAP_SIPPER, Abilities.NONE, Abilities.GRASS_PELT, 531, 123, 100, 62, 97, 81, 68, 45, 70, 186, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PANCHAM, 6, false, false, false, "Playful Pokémon", Type.FIGHTING, null, 0.6, 8, Abilities.IRON_FIST, Abilities.MOLD_BREAKER, Abilities.SCRAPPY, 348, 67, 82, 62, 46, 48, 43, 220, 50, 70, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PANGORO, 6, false, false, false, "Daunting Pokémon", Type.FIGHTING, Type.DARK, 2.1, 136, Abilities.IRON_FIST, Abilities.MOLD_BREAKER, Abilities.SCRAPPY, 495, 95, 124, 78, 69, 71, 58, 65, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FURFROU, 6, false, false, false, "Poodle Pokémon", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Natural Form", "", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165),
new PokemonForm("Heart Trim", "heart", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, ""),
new PokemonForm("Star Trim", "star", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, ""),
@@ -1818,149 +1865,149 @@ export function initSpecies() {
new PokemonForm("Kabuki Trim", "kabuki", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, ""),
new PokemonForm("Pharaoh Trim", "pharaoh", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, ""),
),
- new PokemonSpecies(Species.ESPURR, "Espurr", 6, false, false, false, "Restraint Pokémon", Type.PSYCHIC, null, 0.3, 3.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.OWN_TEMPO, 355, 62, 48, 54, 63, 60, 68, 190, 50, 71, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MEOWSTIC, "Meowstic", 6, false, false, false, "Constraint Pokémon", Type.PSYCHIC, null, 0.6, 8.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.PRANKSTER, 466, 74, 48, 76, 83, 81, 104, 75, 50, 163, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.ESPURR, 6, false, false, false, "Restraint Pokémon", Type.PSYCHIC, null, 0.3, 3.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.OWN_TEMPO, 355, 62, 48, 54, 63, 60, 68, 190, 50, 71, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MEOWSTIC, 6, false, false, false, "Constraint Pokémon", Type.PSYCHIC, null, 0.6, 8.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.PRANKSTER, 466, 74, 48, 76, 83, 81, 104, 75, 50, 163, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Male", "male", Type.PSYCHIC, null, 0.6, 8.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.PRANKSTER, 466, 74, 48, 76, 83, 81, 104, 75, 50, 163, false, ""),
new PokemonForm("Female", "female", Type.PSYCHIC, null, 0.6, 8.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.COMPETITIVE, 466, 74, 48, 76, 83, 81, 104, 75, 50, 163, false),
),
- new PokemonSpecies(Species.HONEDGE, "Honedge", 6, false, false, false, "Sword Pokémon", Type.STEEL, Type.GHOST, 0.8, 2, Abilities.NO_GUARD, Abilities.NONE, Abilities.NONE, 325, 45, 80, 100, 35, 37, 28, 180, 50, 65, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DOUBLADE, "Doublade", 6, false, false, false, "Sword Pokémon", Type.STEEL, Type.GHOST, 0.8, 4.5, Abilities.NO_GUARD, Abilities.NONE, Abilities.NONE, 448, 59, 110, 150, 45, 49, 35, 90, 50, 157, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.AEGISLASH, "Aegislash", 6, false, false, false, "Royal Sword Pokémon", Type.STEEL, Type.GHOST, 1.7, 53, Abilities.STANCE_CHANGE, Abilities.NONE, Abilities.NONE, 500, 60, 50, 140, 50, 140, 60, 45, 50, 250, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.HONEDGE, 6, false, false, false, "Sword Pokémon", Type.STEEL, Type.GHOST, 0.8, 2, Abilities.NO_GUARD, Abilities.NONE, Abilities.NONE, 325, 45, 80, 100, 35, 37, 28, 180, 50, 65, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DOUBLADE, 6, false, false, false, "Sword Pokémon", Type.STEEL, Type.GHOST, 0.8, 4.5, Abilities.NO_GUARD, Abilities.NONE, Abilities.NONE, 448, 59, 110, 150, 45, 49, 35, 90, 50, 157, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.AEGISLASH, 6, false, false, false, "Royal Sword Pokémon", Type.STEEL, Type.GHOST, 1.7, 53, Abilities.STANCE_CHANGE, Abilities.NONE, Abilities.NONE, 500, 60, 50, 140, 50, 140, 60, 45, 50, 250, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Shield Forme", "shield", Type.STEEL, Type.GHOST, 1.7, 53, Abilities.STANCE_CHANGE, Abilities.NONE, Abilities.NONE, 500, 60, 50, 140, 50, 140, 60, 45, 50, 250, false, ""),
new PokemonForm("Blade Forme", "blade", Type.STEEL, Type.GHOST, 1.7, 53, Abilities.STANCE_CHANGE, Abilities.NONE, Abilities.NONE, 500, 60, 140, 50, 140, 50, 60, 45, 50, 250),
),
- new PokemonSpecies(Species.SPRITZEE, "Spritzee", 6, false, false, false, "Perfume Pokémon", Type.FAIRY, null, 0.2, 0.5, Abilities.HEALER, Abilities.NONE, Abilities.AROMA_VEIL, 341, 78, 52, 60, 63, 65, 23, 200, 50, 68, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.AROMATISSE, "Aromatisse", 6, false, false, false, "Fragrance Pokémon", Type.FAIRY, null, 0.8, 15.5, Abilities.HEALER, Abilities.NONE, Abilities.AROMA_VEIL, 462, 101, 72, 72, 99, 89, 29, 140, 50, 162, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SWIRLIX, "Swirlix", 6, false, false, false, "Cotton Candy Pokémon", Type.FAIRY, null, 0.4, 3.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.UNBURDEN, 341, 62, 48, 66, 59, 57, 49, 200, 50, 68, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SLURPUFF, "Slurpuff", 6, false, false, false, "Meringue Pokémon", Type.FAIRY, null, 0.8, 5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.UNBURDEN, 480, 82, 80, 86, 85, 75, 72, 140, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.INKAY, "Inkay", 6, false, false, false, "Revolving Pokémon", Type.DARK, Type.PSYCHIC, 0.4, 3.5, Abilities.CONTRARY, Abilities.SUCTION_CUPS, Abilities.INFILTRATOR, 288, 53, 54, 53, 37, 46, 45, 190, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MALAMAR, "Malamar", 6, false, false, false, "Overturning Pokémon", Type.DARK, Type.PSYCHIC, 1.5, 47, Abilities.CONTRARY, Abilities.SUCTION_CUPS, Abilities.INFILTRATOR, 482, 86, 92, 88, 68, 75, 73, 80, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BINACLE, "Binacle", 6, false, false, false, "Two-Handed Pokémon", Type.ROCK, Type.WATER, 0.5, 31, Abilities.TOUGH_CLAWS, Abilities.SNIPER, Abilities.PICKPOCKET, 306, 42, 52, 67, 39, 56, 50, 120, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BARBARACLE, "Barbaracle", 6, false, false, false, "Collective Pokémon", Type.ROCK, Type.WATER, 1.3, 96, Abilities.TOUGH_CLAWS, Abilities.SNIPER, Abilities.PICKPOCKET, 500, 72, 105, 115, 54, 86, 68, 45, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SKRELP, "Skrelp", 6, false, false, false, "Mock Kelp Pokémon", Type.POISON, Type.WATER, 0.5, 7.3, Abilities.POISON_POINT, Abilities.POISON_TOUCH, Abilities.ADAPTABILITY, 320, 50, 60, 60, 60, 60, 30, 225, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DRAGALGE, "Dragalge", 6, false, false, false, "Mock Kelp Pokémon", Type.POISON, Type.DRAGON, 1.8, 81.5, Abilities.POISON_POINT, Abilities.POISON_TOUCH, Abilities.ADAPTABILITY, 494, 65, 75, 90, 97, 123, 44, 55, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CLAUNCHER, "Clauncher", 6, false, false, false, "Water Gun Pokémon", Type.WATER, null, 0.5, 8.3, Abilities.MEGA_LAUNCHER, Abilities.NONE, Abilities.NONE, 330, 50, 53, 62, 58, 63, 44, 225, 50, 66, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.CLAWITZER, "Clawitzer", 6, false, false, false, "Howitzer Pokémon", Type.WATER, null, 1.3, 35.3, Abilities.MEGA_LAUNCHER, Abilities.NONE, Abilities.NONE, 500, 71, 73, 88, 120, 89, 59, 55, 50, 100, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.HELIOPTILE, "Helioptile", 6, false, false, false, "Generator Pokémon", Type.ELECTRIC, Type.NORMAL, 0.5, 6, Abilities.DRY_SKIN, Abilities.SAND_VEIL, Abilities.SOLAR_POWER, 289, 44, 38, 33, 61, 43, 70, 190, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.HELIOLISK, "Heliolisk", 6, false, false, false, "Generator Pokémon", Type.ELECTRIC, Type.NORMAL, 1, 21, Abilities.DRY_SKIN, Abilities.SAND_VEIL, Abilities.SOLAR_POWER, 481, 62, 55, 52, 109, 94, 109, 75, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.TYRUNT, "Tyrunt", 6, false, false, false, "Royal Heir Pokémon", Type.ROCK, Type.DRAGON, 0.8, 26, Abilities.STRONG_JAW, Abilities.NONE, Abilities.STURDY, 362, 58, 89, 77, 45, 45, 48, 45, 50, 72, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.TYRANTRUM, "Tyrantrum", 6, false, false, false, "Despot Pokémon", Type.ROCK, Type.DRAGON, 2.5, 270, Abilities.STRONG_JAW, Abilities.NONE, Abilities.ROCK_HEAD, 521, 82, 121, 119, 69, 59, 71, 45, 50, 182, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.AMAURA, "Amaura", 6, false, false, false, "Tundra Pokémon", Type.ROCK, Type.ICE, 1.3, 25.2, Abilities.REFRIGERATE, Abilities.NONE, Abilities.SNOW_WARNING, 362, 77, 59, 50, 67, 63, 46, 45, 50, 72, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.AURORUS, "Aurorus", 6, false, false, false, "Tundra Pokémon", Type.ROCK, Type.ICE, 2.7, 225, Abilities.REFRIGERATE, Abilities.NONE, Abilities.SNOW_WARNING, 521, 123, 77, 72, 99, 92, 58, 45, 50, 104, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.SYLVEON, "Sylveon", 6, false, false, false, "Intertwining Pokémon", Type.FAIRY, null, 1, 23.5, Abilities.CUTE_CHARM, Abilities.NONE, Abilities.PIXILATE, 525, 95, 65, 65, 110, 130, 60, 45, 50, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.HAWLUCHA, "Hawlucha", 6, false, false, false, "Wrestling Pokémon", Type.FIGHTING, Type.FLYING, 0.8, 21.5, Abilities.LIMBER, Abilities.UNBURDEN, Abilities.MOLD_BREAKER, 500, 78, 92, 75, 74, 63, 118, 100, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DEDENNE, "Dedenne", 6, false, false, false, "Antenna Pokémon", Type.ELECTRIC, Type.FAIRY, 0.2, 2.2, Abilities.CHEEK_POUCH, Abilities.PICKUP, Abilities.PLUS, 431, 67, 58, 57, 81, 67, 101, 180, 50, 151, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CARBINK, "Carbink", 6, false, false, false, "Jewel Pokémon", Type.ROCK, Type.FAIRY, 0.3, 5.7, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.STURDY, 500, 50, 50, 150, 50, 150, 50, 60, 50, 100, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.GOOMY, "Goomy", 6, false, false, false, "Soft Tissue Pokémon", Type.DRAGON, null, 0.3, 2.8, Abilities.SAP_SIPPER, Abilities.HYDRATION, Abilities.GOOEY, 300, 45, 50, 35, 55, 75, 40, 45, 35, 60, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.SLIGGOO, "Sliggoo", 6, false, false, false, "Soft Tissue Pokémon", Type.DRAGON, null, 0.8, 17.5, Abilities.SAP_SIPPER, Abilities.HYDRATION, Abilities.GOOEY, 452, 68, 75, 53, 83, 113, 60, 45, 35, 158, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.GOODRA, "Goodra", 6, false, false, false, "Dragon Pokémon", Type.DRAGON, null, 2, 150.5, Abilities.SAP_SIPPER, Abilities.HYDRATION, Abilities.GOOEY, 600, 90, 100, 70, 110, 150, 80, 45, 35, 300, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.KLEFKI, "Klefki", 6, false, false, false, "Key Ring Pokémon", Type.STEEL, Type.FAIRY, 0.2, 3, Abilities.PRANKSTER, Abilities.NONE, Abilities.MAGICIAN, 470, 57, 80, 91, 80, 87, 75, 75, 50, 165, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.PHANTUMP, "Phantump", 6, false, false, false, "Stump Pokémon", Type.GHOST, Type.GRASS, 0.4, 7, Abilities.NATURAL_CURE, Abilities.FRISK, Abilities.HARVEST, 309, 43, 70, 48, 50, 60, 38, 120, 50, 62, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.TREVENANT, "Trevenant", 6, false, false, false, "Elder Tree Pokémon", Type.GHOST, Type.GRASS, 1.5, 71, Abilities.NATURAL_CURE, Abilities.FRISK, Abilities.HARVEST, 474, 85, 110, 76, 65, 82, 56, 60, 50, 166, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PUMPKABOO, "Pumpkaboo", 6, false, false, false, "Pumpkin Pokémon", Type.GHOST, Type.GRASS, 0.4, 5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 49, 66, 70, 44, 55, 51, 120, 50, 67, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.SPRITZEE, 6, false, false, false, "Perfume Pokémon", Type.FAIRY, null, 0.2, 0.5, Abilities.HEALER, Abilities.NONE, Abilities.AROMA_VEIL, 341, 78, 52, 60, 63, 65, 23, 200, 50, 68, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.AROMATISSE, 6, false, false, false, "Fragrance Pokémon", Type.FAIRY, null, 0.8, 15.5, Abilities.HEALER, Abilities.NONE, Abilities.AROMA_VEIL, 462, 101, 72, 72, 99, 89, 29, 140, 50, 162, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SWIRLIX, 6, false, false, false, "Cotton Candy Pokémon", Type.FAIRY, null, 0.4, 3.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.UNBURDEN, 341, 62, 48, 66, 59, 57, 49, 200, 50, 68, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SLURPUFF, 6, false, false, false, "Meringue Pokémon", Type.FAIRY, null, 0.8, 5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.UNBURDEN, 480, 82, 80, 86, 85, 75, 72, 140, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.INKAY, 6, false, false, false, "Revolving Pokémon", Type.DARK, Type.PSYCHIC, 0.4, 3.5, Abilities.CONTRARY, Abilities.SUCTION_CUPS, Abilities.INFILTRATOR, 288, 53, 54, 53, 37, 46, 45, 190, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MALAMAR, 6, false, false, false, "Overturning Pokémon", Type.DARK, Type.PSYCHIC, 1.5, 47, Abilities.CONTRARY, Abilities.SUCTION_CUPS, Abilities.INFILTRATOR, 482, 86, 92, 88, 68, 75, 73, 80, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BINACLE, 6, false, false, false, "Two-Handed Pokémon", Type.ROCK, Type.WATER, 0.5, 31, Abilities.TOUGH_CLAWS, Abilities.SNIPER, Abilities.PICKPOCKET, 306, 42, 52, 67, 39, 56, 50, 120, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BARBARACLE, 6, false, false, false, "Collective Pokémon", Type.ROCK, Type.WATER, 1.3, 96, Abilities.TOUGH_CLAWS, Abilities.SNIPER, Abilities.PICKPOCKET, 500, 72, 105, 115, 54, 86, 68, 45, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SKRELP, 6, false, false, false, "Mock Kelp Pokémon", Type.POISON, Type.WATER, 0.5, 7.3, Abilities.POISON_POINT, Abilities.POISON_TOUCH, Abilities.ADAPTABILITY, 320, 50, 60, 60, 60, 60, 30, 225, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DRAGALGE, 6, false, false, false, "Mock Kelp Pokémon", Type.POISON, Type.DRAGON, 1.8, 81.5, Abilities.POISON_POINT, Abilities.POISON_TOUCH, Abilities.ADAPTABILITY, 494, 65, 75, 90, 97, 123, 44, 55, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CLAUNCHER, 6, false, false, false, "Water Gun Pokémon", Type.WATER, null, 0.5, 8.3, Abilities.MEGA_LAUNCHER, Abilities.NONE, Abilities.NONE, 330, 50, 53, 62, 58, 63, 44, 225, 50, 66, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.CLAWITZER, 6, false, false, false, "Howitzer Pokémon", Type.WATER, null, 1.3, 35.3, Abilities.MEGA_LAUNCHER, Abilities.NONE, Abilities.NONE, 500, 71, 73, 88, 120, 89, 59, 55, 50, 100, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.HELIOPTILE, 6, false, false, false, "Generator Pokémon", Type.ELECTRIC, Type.NORMAL, 0.5, 6, Abilities.DRY_SKIN, Abilities.SAND_VEIL, Abilities.SOLAR_POWER, 289, 44, 38, 33, 61, 43, 70, 190, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.HELIOLISK, 6, false, false, false, "Generator Pokémon", Type.ELECTRIC, Type.NORMAL, 1, 21, Abilities.DRY_SKIN, Abilities.SAND_VEIL, Abilities.SOLAR_POWER, 481, 62, 55, 52, 109, 94, 109, 75, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.TYRUNT, 6, false, false, false, "Royal Heir Pokémon", Type.ROCK, Type.DRAGON, 0.8, 26, Abilities.STRONG_JAW, Abilities.NONE, Abilities.STURDY, 362, 58, 89, 77, 45, 45, 48, 45, 50, 72, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.TYRANTRUM, 6, false, false, false, "Despot Pokémon", Type.ROCK, Type.DRAGON, 2.5, 270, Abilities.STRONG_JAW, Abilities.NONE, Abilities.ROCK_HEAD, 521, 82, 121, 119, 69, 59, 71, 45, 50, 182, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.AMAURA, 6, false, false, false, "Tundra Pokémon", Type.ROCK, Type.ICE, 1.3, 25.2, Abilities.REFRIGERATE, Abilities.NONE, Abilities.SNOW_WARNING, 362, 77, 59, 50, 67, 63, 46, 45, 50, 72, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.AURORUS, 6, false, false, false, "Tundra Pokémon", Type.ROCK, Type.ICE, 2.7, 225, Abilities.REFRIGERATE, Abilities.NONE, Abilities.SNOW_WARNING, 521, 123, 77, 72, 99, 92, 58, 45, 50, 104, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.SYLVEON, 6, false, false, false, "Intertwining Pokémon", Type.FAIRY, null, 1, 23.5, Abilities.CUTE_CHARM, Abilities.NONE, Abilities.PIXILATE, 525, 95, 65, 65, 110, 130, 60, 45, 50, 184, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.HAWLUCHA, 6, false, false, false, "Wrestling Pokémon", Type.FIGHTING, Type.FLYING, 0.8, 21.5, Abilities.LIMBER, Abilities.UNBURDEN, Abilities.MOLD_BREAKER, 500, 78, 92, 75, 74, 63, 118, 100, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DEDENNE, 6, false, false, false, "Antenna Pokémon", Type.ELECTRIC, Type.FAIRY, 0.2, 2.2, Abilities.CHEEK_POUCH, Abilities.PICKUP, Abilities.PLUS, 431, 67, 58, 57, 81, 67, 101, 180, 50, 151, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CARBINK, 6, false, false, false, "Jewel Pokémon", Type.ROCK, Type.FAIRY, 0.3, 5.7, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.STURDY, 500, 50, 50, 150, 50, 150, 50, 60, 50, 100, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.GOOMY, 6, false, false, false, "Soft Tissue Pokémon", Type.DRAGON, null, 0.3, 2.8, Abilities.SAP_SIPPER, Abilities.HYDRATION, Abilities.GOOEY, 300, 45, 50, 35, 55, 75, 40, 45, 35, 60, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.SLIGGOO, 6, false, false, false, "Soft Tissue Pokémon", Type.DRAGON, null, 0.8, 17.5, Abilities.SAP_SIPPER, Abilities.HYDRATION, Abilities.GOOEY, 452, 68, 75, 53, 83, 113, 60, 45, 35, 158, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.GOODRA, 6, false, false, false, "Dragon Pokémon", Type.DRAGON, null, 2, 150.5, Abilities.SAP_SIPPER, Abilities.HYDRATION, Abilities.GOOEY, 600, 90, 100, 70, 110, 150, 80, 45, 35, 300, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.KLEFKI, 6, false, false, false, "Key Ring Pokémon", Type.STEEL, Type.FAIRY, 0.2, 3, Abilities.PRANKSTER, Abilities.NONE, Abilities.MAGICIAN, 470, 57, 80, 91, 80, 87, 75, 75, 50, 165, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.PHANTUMP, 6, false, false, false, "Stump Pokémon", Type.GHOST, Type.GRASS, 0.4, 7, Abilities.NATURAL_CURE, Abilities.FRISK, Abilities.HARVEST, 309, 43, 70, 48, 50, 60, 38, 120, 50, 62, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.TREVENANT, 6, false, false, false, "Elder Tree Pokémon", Type.GHOST, Type.GRASS, 1.5, 71, Abilities.NATURAL_CURE, Abilities.FRISK, Abilities.HARVEST, 474, 85, 110, 76, 65, 82, 56, 60, 50, 166, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PUMPKABOO, 6, false, false, false, "Pumpkin Pokémon", Type.GHOST, Type.GRASS, 0.4, 5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 49, 66, 70, 44, 55, 51, 120, 50, 67, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Average Size", "", Type.GHOST, Type.GRASS, 0.4, 5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 49, 66, 70, 44, 55, 51, 120, 50, 67),
new PokemonForm("Small Size", "small", Type.GHOST, Type.GRASS, 0.3, 3.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 44, 66, 70, 44, 55, 56, 120, 50, 67),
new PokemonForm("Large Size", "large", Type.GHOST, Type.GRASS, 0.5, 7.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 54, 66, 70, 44, 55, 46, 120, 50, 67),
new PokemonForm("Super Size", "super", Type.GHOST, Type.GRASS, 0.8, 15, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 59, 66, 70, 44, 55, 41, 120, 50, 67),
),
- new PokemonSpecies(Species.GOURGEIST, "Gourgeist", 6, false, false, false, "Pumpkin Pokémon", Type.GHOST, Type.GRASS, 0.9, 12.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 494, 65, 90, 122, 58, 75, 84, 60, 50, 173, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.GOURGEIST, 6, false, false, false, "Pumpkin Pokémon", Type.GHOST, Type.GRASS, 0.9, 12.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 494, 65, 90, 122, 58, 75, 84, 60, 50, 173, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Average Size", "", Type.GHOST, Type.GRASS, 0.9, 12.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 494, 65, 90, 122, 58, 75, 84, 60, 50, 173),
new PokemonForm("Small Size", "small", Type.GHOST, Type.GRASS, 0.7, 9.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 494, 55, 85, 122, 58, 75, 99, 60, 50, 173),
new PokemonForm("Large Size", "large", Type.GHOST, Type.GRASS, 1.1, 14, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 494, 75, 95, 122, 58, 75, 69, 60, 50, 173),
new PokemonForm("Super Size", "super", Type.GHOST, Type.GRASS, 1.7, 39, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 494, 85, 100, 122, 58, 75, 54, 60, 50, 173),
),
- new PokemonSpecies(Species.BERGMITE, "Bergmite", 6, false, false, false, "Ice Chunk Pokémon", Type.ICE, null, 1, 99.5, Abilities.OWN_TEMPO, Abilities.ICE_BODY, Abilities.STURDY, 304, 55, 69, 85, 32, 35, 28, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.AVALUGG, "Avalugg", 6, false, false, false, "Iceberg Pokémon", Type.ICE, null, 2, 505, Abilities.OWN_TEMPO, Abilities.ICE_BODY, Abilities.STURDY, 514, 95, 117, 184, 44, 46, 28, 55, 50, 180, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.NOIBAT, "Noibat", 6, false, false, false, "Sound Wave Pokémon", Type.FLYING, Type.DRAGON, 0.5, 8, Abilities.FRISK, Abilities.INFILTRATOR, Abilities.TELEPATHY, 245, 40, 30, 35, 45, 40, 55, 190, 50, 49, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.NOIVERN, "Noivern", 6, false, false, false, "Sound Wave Pokémon", Type.FLYING, Type.DRAGON, 1.5, 85, Abilities.FRISK, Abilities.INFILTRATOR, Abilities.TELEPATHY, 535, 85, 70, 80, 97, 80, 123, 45, 50, 187, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.XERNEAS, "Xerneas", 6, false, true, false, "Life Pokémon", Type.FAIRY, null, 3, 215, Abilities.FAIRY_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.BERGMITE, 6, false, false, false, "Ice Chunk Pokémon", Type.ICE, null, 1, 99.5, Abilities.OWN_TEMPO, Abilities.ICE_BODY, Abilities.STURDY, 304, 55, 69, 85, 32, 35, 28, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.AVALUGG, 6, false, false, false, "Iceberg Pokémon", Type.ICE, null, 2, 505, Abilities.OWN_TEMPO, Abilities.ICE_BODY, Abilities.STURDY, 514, 95, 117, 184, 44, 46, 28, 55, 50, 180, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.NOIBAT, 6, false, false, false, "Sound Wave Pokémon", Type.FLYING, Type.DRAGON, 0.5, 8, Abilities.FRISK, Abilities.INFILTRATOR, Abilities.TELEPATHY, 245, 40, 30, 35, 45, 40, 55, 190, 50, 49, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.NOIVERN, 6, false, false, false, "Sound Wave Pokémon", Type.FLYING, Type.DRAGON, 1.5, 85, Abilities.FRISK, Abilities.INFILTRATOR, Abilities.TELEPATHY, 535, 85, 70, 80, 97, 80, 123, 45, 50, 187, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.XERNEAS, 6, false, true, false, "Life Pokémon", Type.FAIRY, null, 3, 215, Abilities.FAIRY_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340, GrowthRate.SLOW, null, false, true,
new PokemonForm("Neutral Mode", "neutral", Type.FAIRY, null, 3, 215, Abilities.FAIRY_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340),
new PokemonForm("Active Mode", "active", Type.FAIRY, null, 3, 215, Abilities.FAIRY_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340)
),
- new PokemonSpecies(Species.YVELTAL, "Yveltal", 6, false, true, false, "Destruction Pokémon", Type.DARK, Type.FLYING, 5.8, 203, Abilities.DARK_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.ZYGARDE, "Zygarde", 6, true, false, false, "Order Pokémon", Type.DRAGON, Type.GROUND, 5, 305, Abilities.AURA_BREAK, Abilities.NONE, Abilities.NONE, 600, 108, 100, 121, 81, 95, 95, 3, 0, 300, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.YVELTAL, 6, false, true, false, "Destruction Pokémon", Type.DARK, Type.FLYING, 5.8, 203, Abilities.DARK_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.ZYGARDE, 6, true, false, false, "Order Pokémon", Type.DRAGON, Type.GROUND, 5, 305, Abilities.AURA_BREAK, Abilities.NONE, Abilities.NONE, 600, 108, 100, 121, 81, 95, 95, 3, 0, 300, GrowthRate.SLOW, null, false, false,
new PokemonForm("50% Forme", "50", Type.DRAGON, Type.GROUND, 5, 305, Abilities.AURA_BREAK, Abilities.NONE, Abilities.NONE, 600, 108, 100, 121, 81, 95, 95, 3, 0, 300, false, ""),
new PokemonForm("10% Forme", "10", Type.DRAGON, Type.GROUND, 1.2, 33.5, Abilities.AURA_BREAK, Abilities.NONE, Abilities.NONE, 486, 54, 100, 71, 61, 85, 115, 3, 0, 300),
new PokemonForm("50% Forme Power Construct", "50-pc", Type.DRAGON, Type.GROUND, 5, 305, Abilities.POWER_CONSTRUCT, Abilities.NONE, Abilities.NONE, 600, 108, 100, 121, 81, 95, 95, 3, 0, 300, false, ""),
new PokemonForm("10% Forme Power Construct", "10-pc", Type.DRAGON, Type.GROUND, 1.2, 33.5, Abilities.POWER_CONSTRUCT, Abilities.NONE, Abilities.NONE, 486, 54, 100, 71, 61, 85, 115, 3, 0, 300, false, "10"),
new PokemonForm("Complete Forme", "complete", Type.DRAGON, Type.GROUND, 4.5, 610, Abilities.POWER_CONSTRUCT, Abilities.NONE, Abilities.NONE, 708, 216, 100, 121, 91, 95, 85, 3, 0, 300),
),
- new PokemonSpecies(Species.DIANCIE, "Diancie", 6, false, false, true, "Jewel Pokémon", Type.ROCK, Type.FAIRY, 0.7, 8.8, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.NONE, 600, 50, 100, 150, 100, 150, 50, 3, 50, 300, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.DIANCIE, 6, false, false, true, "Jewel Pokémon", Type.ROCK, Type.FAIRY, 0.7, 8.8, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.NONE, 600, 50, 100, 150, 100, 150, 50, 3, 50, 300, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.ROCK, Type.FAIRY, 0.7, 8.8, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.NONE, 600, 50, 100, 150, 100, 150, 50, 3, 50, 300),
new PokemonForm("Mega", SpeciesFormKey.MEGA, Type.ROCK, Type.FAIRY, 1.1, 27.8, Abilities.MAGIC_BOUNCE, Abilities.NONE, Abilities.NONE, 700, 50, 160, 110, 160, 110, 110, 3, 50, 300),
),
- new PokemonSpecies(Species.HOOPA, "Hoopa", 6, false, false, true, "Mischief Pokémon", Type.PSYCHIC, Type.GHOST, 0.5, 9, Abilities.MAGICIAN, Abilities.NONE, Abilities.NONE, 600, 80, 110, 60, 150, 130, 70, 3, 100, 270, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.HOOPA, 6, false, false, true, "Mischief Pokémon", Type.PSYCHIC, Type.GHOST, 0.5, 9, Abilities.MAGICIAN, Abilities.NONE, Abilities.NONE, 600, 80, 110, 60, 150, 130, 70, 3, 100, 270, GrowthRate.SLOW, null, false, false,
new PokemonForm("Hoopa Confined", "", Type.PSYCHIC, Type.GHOST, 0.5, 9, Abilities.MAGICIAN, Abilities.NONE, Abilities.NONE, 600, 80, 110, 60, 150, 130, 70, 3, 100, 270),
new PokemonForm("Hoopa Unbound", "unbound", Type.PSYCHIC, Type.DARK, 6.5, 490, Abilities.MAGICIAN, Abilities.NONE, Abilities.NONE, 680, 80, 160, 60, 170, 130, 80, 3, 100, 270),
),
- new PokemonSpecies(Species.VOLCANION, "Volcanion", 6, false, false, true, "Steam Pokémon", Type.FIRE, Type.WATER, 1.7, 195, Abilities.WATER_ABSORB, Abilities.NONE, Abilities.NONE, 600, 80, 110, 120, 130, 90, 70, 3, 100, 300, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.ROWLET, "Rowlet", 7, false, false, false, "Grass Quill Pokémon", Type.GRASS, Type.FLYING, 0.3, 1.5, Abilities.OVERGROW, Abilities.NONE, Abilities.LONG_REACH, 320, 68, 55, 55, 50, 50, 42, 45, 50, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.DARTRIX, "Dartrix", 7, false, false, false, "Blade Quill Pokémon", Type.GRASS, Type.FLYING, 0.7, 16, Abilities.OVERGROW, Abilities.NONE, Abilities.LONG_REACH, 420, 78, 75, 75, 70, 70, 52, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.DECIDUEYE, "Decidueye", 7, false, false, false, "Arrow Quill Pokémon", Type.GRASS, Type.GHOST, 1.6, 36.6, Abilities.OVERGROW, Abilities.NONE, Abilities.LONG_REACH, 530, 78, 107, 75, 100, 100, 70, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.LITTEN, "Litten", 7, false, false, false, "Fire Cat Pokémon", Type.FIRE, null, 0.4, 4.3, Abilities.BLAZE, Abilities.NONE, Abilities.INTIMIDATE, 320, 45, 65, 40, 60, 40, 70, 45, 50, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.TORRACAT, "Torracat", 7, false, false, false, "Fire Cat Pokémon", Type.FIRE, null, 0.7, 25, Abilities.BLAZE, Abilities.NONE, Abilities.INTIMIDATE, 420, 65, 85, 50, 80, 50, 90, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.INCINEROAR, "Incineroar", 7, false, false, false, "Heel Pokémon", Type.FIRE, Type.DARK, 1.8, 83, Abilities.BLAZE, Abilities.NONE, Abilities.INTIMIDATE, 530, 95, 115, 90, 80, 90, 60, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.POPPLIO, "Popplio", 7, false, false, false, "Sea Lion Pokémon", Type.WATER, null, 0.4, 7.5, Abilities.TORRENT, Abilities.NONE, Abilities.LIQUID_VOICE, 320, 50, 54, 54, 66, 56, 40, 45, 50, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.BRIONNE, "Brionne", 7, false, false, false, "Pop Star Pokémon", Type.WATER, null, 0.6, 17.5, Abilities.TORRENT, Abilities.NONE, Abilities.LIQUID_VOICE, 420, 60, 69, 69, 91, 81, 50, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.PRIMARINA, "Primarina", 7, false, false, false, "Soloist Pokémon", Type.WATER, Type.FAIRY, 1.8, 44, Abilities.TORRENT, Abilities.NONE, Abilities.LIQUID_VOICE, 530, 80, 74, 74, 126, 116, 60, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.PIKIPEK, "Pikipek", 7, false, false, false, "Woodpecker Pokémon", Type.NORMAL, Type.FLYING, 0.3, 1.2, Abilities.KEEN_EYE, Abilities.SKILL_LINK, Abilities.PICKUP, 265, 35, 75, 30, 30, 30, 65, 255, 70, 53, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.TRUMBEAK, "Trumbeak", 7, false, false, false, "Bugle Beak Pokémon", Type.NORMAL, Type.FLYING, 0.6, 14.8, Abilities.KEEN_EYE, Abilities.SKILL_LINK, Abilities.PICKUP, 355, 55, 85, 50, 40, 50, 75, 120, 70, 124, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.TOUCANNON, "Toucannon", 7, false, false, false, "Cannon Pokémon", Type.NORMAL, Type.FLYING, 1.1, 26, Abilities.KEEN_EYE, Abilities.SKILL_LINK, Abilities.SHEER_FORCE, 485, 80, 120, 75, 75, 75, 60, 45, 70, 218, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.YUNGOOS, "Yungoos", 7, false, false, false, "Loitering Pokémon", Type.NORMAL, null, 0.4, 6, Abilities.STAKEOUT, Abilities.STRONG_JAW, Abilities.ADAPTABILITY, 253, 48, 70, 30, 30, 30, 45, 255, 70, 51, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GUMSHOOS, "Gumshoos", 7, false, false, false, "Stakeout Pokémon", Type.NORMAL, null, 0.7, 14.2, Abilities.STAKEOUT, Abilities.STRONG_JAW, Abilities.ADAPTABILITY, 418, 88, 110, 60, 55, 60, 45, 127, 70, 146, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GRUBBIN, "Grubbin", 7, false, false, false, "Larva Pokémon", Type.BUG, null, 0.4, 4.4, Abilities.SWARM, Abilities.NONE, Abilities.NONE, 300, 47, 62, 45, 55, 45, 46, 255, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CHARJABUG, "Charjabug", 7, false, false, false, "Battery Pokémon", Type.BUG, Type.ELECTRIC, 0.5, 10.5, Abilities.BATTERY, Abilities.NONE, Abilities.NONE, 400, 57, 82, 95, 55, 75, 36, 120, 50, 140, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.VIKAVOLT, "Vikavolt", 7, false, false, false, "Stag Beetle Pokémon", Type.BUG, Type.ELECTRIC, 1.5, 45, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 500, 77, 70, 90, 145, 75, 43, 45, 50, 250, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CRABRAWLER, "Crabrawler", 7, false, false, false, "Boxing Pokémon", Type.FIGHTING, null, 0.6, 7, Abilities.HYPER_CUTTER, Abilities.IRON_FIST, Abilities.ANGER_POINT, 338, 47, 82, 57, 42, 47, 63, 225, 70, 68, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CRABOMINABLE, "Crabominable", 7, false, false, false, "Woolly Crab Pokémon", Type.FIGHTING, Type.ICE, 1.7, 180, Abilities.HYPER_CUTTER, Abilities.IRON_FIST, Abilities.ANGER_POINT, 478, 97, 132, 77, 62, 67, 43, 60, 70, 167, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ORICORIO, "Oricorio", 7, false, false, false, "Dancing Pokémon", Type.FIRE, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167, GrowthRate.MEDIUM_FAST, 25, false, false,
+ new PokemonSpecies(Species.VOLCANION, 6, false, false, true, "Steam Pokémon", Type.FIRE, Type.WATER, 1.7, 195, Abilities.WATER_ABSORB, Abilities.NONE, Abilities.NONE, 600, 80, 110, 120, 130, 90, 70, 3, 100, 300, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.ROWLET, 7, false, false, false, "Grass Quill Pokémon", Type.GRASS, Type.FLYING, 0.3, 1.5, Abilities.OVERGROW, Abilities.NONE, Abilities.LONG_REACH, 320, 68, 55, 55, 50, 50, 42, 45, 50, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.DARTRIX, 7, false, false, false, "Blade Quill Pokémon", Type.GRASS, Type.FLYING, 0.7, 16, Abilities.OVERGROW, Abilities.NONE, Abilities.LONG_REACH, 420, 78, 75, 75, 70, 70, 52, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.DECIDUEYE, 7, false, false, false, "Arrow Quill Pokémon", Type.GRASS, Type.GHOST, 1.6, 36.6, Abilities.OVERGROW, Abilities.NONE, Abilities.LONG_REACH, 530, 78, 107, 75, 100, 100, 70, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.LITTEN, 7, false, false, false, "Fire Cat Pokémon", Type.FIRE, null, 0.4, 4.3, Abilities.BLAZE, Abilities.NONE, Abilities.INTIMIDATE, 320, 45, 65, 40, 60, 40, 70, 45, 50, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.TORRACAT, 7, false, false, false, "Fire Cat Pokémon", Type.FIRE, null, 0.7, 25, Abilities.BLAZE, Abilities.NONE, Abilities.INTIMIDATE, 420, 65, 85, 50, 80, 50, 90, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.INCINEROAR, 7, false, false, false, "Heel Pokémon", Type.FIRE, Type.DARK, 1.8, 83, Abilities.BLAZE, Abilities.NONE, Abilities.INTIMIDATE, 530, 95, 115, 90, 80, 90, 60, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.POPPLIO, 7, false, false, false, "Sea Lion Pokémon", Type.WATER, null, 0.4, 7.5, Abilities.TORRENT, Abilities.NONE, Abilities.LIQUID_VOICE, 320, 50, 54, 54, 66, 56, 40, 45, 50, 64, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.BRIONNE, 7, false, false, false, "Pop Star Pokémon", Type.WATER, null, 0.6, 17.5, Abilities.TORRENT, Abilities.NONE, Abilities.LIQUID_VOICE, 420, 60, 69, 69, 91, 81, 50, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.PRIMARINA, 7, false, false, false, "Soloist Pokémon", Type.WATER, Type.FAIRY, 1.8, 44, Abilities.TORRENT, Abilities.NONE, Abilities.LIQUID_VOICE, 530, 80, 74, 74, 126, 116, 60, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.PIKIPEK, 7, false, false, false, "Woodpecker Pokémon", Type.NORMAL, Type.FLYING, 0.3, 1.2, Abilities.KEEN_EYE, Abilities.SKILL_LINK, Abilities.PICKUP, 265, 35, 75, 30, 30, 30, 65, 255, 70, 53, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.TRUMBEAK, 7, false, false, false, "Bugle Beak Pokémon", Type.NORMAL, Type.FLYING, 0.6, 14.8, Abilities.KEEN_EYE, Abilities.SKILL_LINK, Abilities.PICKUP, 355, 55, 85, 50, 40, 50, 75, 120, 70, 124, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.TOUCANNON, 7, false, false, false, "Cannon Pokémon", Type.NORMAL, Type.FLYING, 1.1, 26, Abilities.KEEN_EYE, Abilities.SKILL_LINK, Abilities.SHEER_FORCE, 485, 80, 120, 75, 75, 75, 60, 45, 70, 218, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.YUNGOOS, 7, false, false, false, "Loitering Pokémon", Type.NORMAL, null, 0.4, 6, Abilities.STAKEOUT, Abilities.STRONG_JAW, Abilities.ADAPTABILITY, 253, 48, 70, 30, 30, 30, 45, 255, 70, 51, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GUMSHOOS, 7, false, false, false, "Stakeout Pokémon", Type.NORMAL, null, 0.7, 14.2, Abilities.STAKEOUT, Abilities.STRONG_JAW, Abilities.ADAPTABILITY, 418, 88, 110, 60, 55, 60, 45, 127, 70, 146, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GRUBBIN, 7, false, false, false, "Larva Pokémon", Type.BUG, null, 0.4, 4.4, Abilities.SWARM, Abilities.NONE, Abilities.NONE, 300, 47, 62, 45, 55, 45, 46, 255, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CHARJABUG, 7, false, false, false, "Battery Pokémon", Type.BUG, Type.ELECTRIC, 0.5, 10.5, Abilities.BATTERY, Abilities.NONE, Abilities.NONE, 400, 57, 82, 95, 55, 75, 36, 120, 50, 140, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.VIKAVOLT, 7, false, false, false, "Stag Beetle Pokémon", Type.BUG, Type.ELECTRIC, 1.5, 45, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 500, 77, 70, 90, 145, 75, 43, 45, 50, 250, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CRABRAWLER, 7, false, false, false, "Boxing Pokémon", Type.FIGHTING, null, 0.6, 7, Abilities.HYPER_CUTTER, Abilities.IRON_FIST, Abilities.ANGER_POINT, 338, 47, 82, 57, 42, 47, 63, 225, 70, 68, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CRABOMINABLE, 7, false, false, false, "Woolly Crab Pokémon", Type.FIGHTING, Type.ICE, 1.7, 180, Abilities.HYPER_CUTTER, Abilities.IRON_FIST, Abilities.ANGER_POINT, 478, 97, 132, 77, 62, 67, 43, 60, 70, 167, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ORICORIO, 7, false, false, false, "Dancing Pokémon", Type.FIRE, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167, GrowthRate.MEDIUM_FAST, 25, false, false,
new PokemonForm("Baile Style", "baile", Type.FIRE, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167, false, ""),
new PokemonForm("Pom-Pom Style", "pompom", Type.ELECTRIC, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167),
new PokemonForm("Pau Style", "pau", Type.PSYCHIC, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167),
new PokemonForm("Sensu Style", "sensu", Type.GHOST, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167),
),
- new PokemonSpecies(Species.CUTIEFLY, "Cutiefly", 7, false, false, false, "Bee Fly Pokémon", Type.BUG, Type.FAIRY, 0.1, 0.2, Abilities.HONEY_GATHER, Abilities.SHIELD_DUST, Abilities.SWEET_VEIL, 304, 40, 45, 40, 55, 40, 84, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.RIBOMBEE, "Ribombee", 7, false, false, false, "Bee Fly Pokémon", Type.BUG, Type.FAIRY, 0.2, 0.5, Abilities.HONEY_GATHER, Abilities.SHIELD_DUST, Abilities.SWEET_VEIL, 464, 60, 55, 60, 95, 70, 124, 75, 50, 162, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ROCKRUFF, "Rockruff", 7, false, false, false, "Puppy Pokémon", Type.ROCK, null, 0.5, 9.2, Abilities.KEEN_EYE, Abilities.VITAL_SPIRIT, Abilities.STEADFAST, 280, 45, 65, 40, 30, 40, 60, 190, 50, 56, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.CUTIEFLY, 7, false, false, false, "Bee Fly Pokémon", Type.BUG, Type.FAIRY, 0.1, 0.2, Abilities.HONEY_GATHER, Abilities.SHIELD_DUST, Abilities.SWEET_VEIL, 304, 40, 45, 40, 55, 40, 84, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.RIBOMBEE, 7, false, false, false, "Bee Fly Pokémon", Type.BUG, Type.FAIRY, 0.2, 0.5, Abilities.HONEY_GATHER, Abilities.SHIELD_DUST, Abilities.SWEET_VEIL, 464, 60, 55, 60, 95, 70, 124, 75, 50, 162, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ROCKRUFF, 7, false, false, false, "Puppy Pokémon", Type.ROCK, null, 0.5, 9.2, Abilities.KEEN_EYE, Abilities.VITAL_SPIRIT, Abilities.STEADFAST, 280, 45, 65, 40, 30, 40, 60, 190, 50, 56, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Normal", "", Type.ROCK, null, 0.5, 9.2, Abilities.KEEN_EYE, Abilities.VITAL_SPIRIT, Abilities.STEADFAST, 280, 45, 65, 40, 30, 40, 60, 190, 50, 56),
new PokemonForm("Own Tempo", "own-tempo", Type.ROCK, null, 0.5, 9.2, Abilities.OWN_TEMPO, Abilities.NONE, Abilities.NONE, 280, 45, 65, 40, 30, 40, 60, 190, 50, 56, false, ""),
),
- new PokemonSpecies(Species.LYCANROC, "Lycanroc", 7, false, false, false, "Wolf Pokémon", Type.ROCK, null, 0.8, 25, Abilities.KEEN_EYE, Abilities.SAND_RUSH, Abilities.STEADFAST, 487, 75, 115, 65, 55, 65, 112, 90, 50, 170, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.LYCANROC, 7, false, false, false, "Wolf Pokémon", Type.ROCK, null, 0.8, 25, Abilities.KEEN_EYE, Abilities.SAND_RUSH, Abilities.STEADFAST, 487, 75, 115, 65, 55, 65, 112, 90, 50, 170, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Midday Form", "midday", Type.ROCK, null, 0.8, 25, Abilities.KEEN_EYE, Abilities.SAND_RUSH, Abilities.STEADFAST, 487, 75, 115, 65, 55, 65, 112, 90, 50, 170, false, ""),
new PokemonForm("Midnight Form", "midnight", Type.ROCK, null, 1.1, 25, Abilities.KEEN_EYE, Abilities.VITAL_SPIRIT, Abilities.NO_GUARD, 487, 85, 115, 75, 55, 75, 82, 90, 50, 170),
new PokemonForm("Dusk Form", "dusk", Type.ROCK, null, 0.8, 25, Abilities.TOUGH_CLAWS, Abilities.NONE, Abilities.NONE, 487, 75, 117, 65, 55, 65, 110, 90, 50, 170),
),
- new PokemonSpecies(Species.WISHIWASHI, "Wishiwashi", 7, false, false, false, "Small Fry Pokémon", Type.WATER, null, 0.2, 0.3, Abilities.SCHOOLING, Abilities.NONE, Abilities.NONE, 175, 45, 20, 20, 25, 25, 40, 60, 50, 61, GrowthRate.FAST, 50, false, false,
+ new PokemonSpecies(Species.WISHIWASHI, 7, false, false, false, "Small Fry Pokémon", Type.WATER, null, 0.2, 0.3, Abilities.SCHOOLING, Abilities.NONE, Abilities.NONE, 175, 45, 20, 20, 25, 25, 40, 60, 50, 61, GrowthRate.FAST, 50, false, false,
new PokemonForm("Solo Form", "", Type.WATER, null, 0.2, 0.3, Abilities.SCHOOLING, Abilities.NONE, Abilities.NONE, 175, 45, 20, 20, 25, 25, 40, 60, 50, 61),
new PokemonForm("School", "school", Type.WATER, null, 8.2, 78.6, Abilities.SCHOOLING, Abilities.NONE, Abilities.NONE, 620, 45, 140, 130, 140, 135, 30, 60, 50, 61),
),
- new PokemonSpecies(Species.MAREANIE, "Mareanie", 7, false, false, false, "Brutal Star Pokémon", Type.POISON, Type.WATER, 0.4, 8, Abilities.MERCILESS, Abilities.LIMBER, Abilities.REGENERATOR, 305, 50, 53, 62, 43, 52, 45, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.TOXAPEX, "Toxapex", 7, false, false, false, "Brutal Star Pokémon", Type.POISON, Type.WATER, 0.7, 14.5, Abilities.MERCILESS, Abilities.LIMBER, Abilities.REGENERATOR, 495, 50, 63, 152, 53, 142, 35, 75, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MUDBRAY, "Mudbray", 7, false, false, false, "Donkey Pokémon", Type.GROUND, null, 1, 110, Abilities.OWN_TEMPO, Abilities.STAMINA, Abilities.INNER_FOCUS, 385, 70, 100, 70, 45, 55, 45, 190, 50, 77, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MUDSDALE, "Mudsdale", 7, false, false, false, "Draft Horse Pokémon", Type.GROUND, null, 2.5, 920, Abilities.OWN_TEMPO, Abilities.STAMINA, Abilities.INNER_FOCUS, 500, 100, 125, 100, 55, 85, 35, 60, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DEWPIDER, "Dewpider", 7, false, false, false, "Water Bubble Pokémon", Type.WATER, Type.BUG, 0.3, 4, Abilities.WATER_BUBBLE, Abilities.NONE, Abilities.WATER_ABSORB, 269, 38, 40, 52, 40, 72, 27, 200, 50, 54, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ARAQUANID, "Araquanid", 7, false, false, false, "Water Bubble Pokémon", Type.WATER, Type.BUG, 1.8, 82, Abilities.WATER_BUBBLE, Abilities.NONE, Abilities.WATER_ABSORB, 454, 68, 70, 92, 50, 132, 42, 100, 50, 159, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FOMANTIS, "Fomantis", 7, false, false, false, "Sickle Grass Pokémon", Type.GRASS, null, 0.3, 1.5, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.CONTRARY, 250, 40, 55, 35, 50, 35, 35, 190, 50, 50, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.LURANTIS, "Lurantis", 7, false, false, false, "Bloom Sickle Pokémon", Type.GRASS, null, 0.9, 18.5, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.CONTRARY, 480, 70, 105, 90, 80, 90, 45, 75, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MORELULL, "Morelull", 7, false, false, false, "Illuminating Pokémon", Type.GRASS, Type.FAIRY, 0.2, 1.5, Abilities.ILLUMINATE, Abilities.EFFECT_SPORE, Abilities.RAIN_DISH, 285, 40, 35, 55, 65, 75, 15, 190, 50, 57, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SHIINOTIC, "Shiinotic", 7, false, false, false, "Illuminating Pokémon", Type.GRASS, Type.FAIRY, 1, 11.5, Abilities.ILLUMINATE, Abilities.EFFECT_SPORE, Abilities.RAIN_DISH, 405, 60, 45, 80, 90, 100, 30, 75, 50, 142, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SALANDIT, "Salandit", 7, false, false, false, "Toxic Lizard Pokémon", Type.POISON, Type.FIRE, 0.6, 4.8, Abilities.CORROSION, Abilities.NONE, Abilities.OBLIVIOUS, 320, 48, 44, 40, 71, 40, 77, 120, 50, 64, GrowthRate.MEDIUM_FAST, 87.5, false),
- new PokemonSpecies(Species.SALAZZLE, "Salazzle", 7, false, false, false, "Toxic Lizard Pokémon", Type.POISON, Type.FIRE, 1.2, 22.2, Abilities.CORROSION, Abilities.NONE, Abilities.OBLIVIOUS, 480, 68, 64, 60, 111, 60, 117, 45, 50, 168, GrowthRate.MEDIUM_FAST, 0, false),
- new PokemonSpecies(Species.STUFFUL, "Stufful", 7, false, false, false, "Flailing Pokémon", Type.NORMAL, Type.FIGHTING, 0.5, 6.8, Abilities.FLUFFY, Abilities.KLUTZ, Abilities.CUTE_CHARM, 340, 70, 75, 50, 45, 50, 50, 140, 50, 68, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BEWEAR, "Bewear", 7, false, false, false, "Strong Arm Pokémon", Type.NORMAL, Type.FIGHTING, 2.1, 135, Abilities.FLUFFY, Abilities.KLUTZ, Abilities.UNNERVE, 500, 120, 125, 80, 55, 60, 60, 70, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BOUNSWEET, "Bounsweet", 7, false, false, false, "Fruit Pokémon", Type.GRASS, null, 0.3, 3.2, Abilities.LEAF_GUARD, Abilities.OBLIVIOUS, Abilities.SWEET_VEIL, 210, 42, 30, 38, 30, 38, 32, 235, 50, 42, GrowthRate.MEDIUM_SLOW, 0, false),
- new PokemonSpecies(Species.STEENEE, "Steenee", 7, false, false, false, "Fruit Pokémon", Type.GRASS, null, 0.7, 8.2, Abilities.LEAF_GUARD, Abilities.OBLIVIOUS, Abilities.SWEET_VEIL, 290, 52, 40, 48, 40, 48, 62, 120, 50, 102, GrowthRate.MEDIUM_SLOW, 0, false),
- new PokemonSpecies(Species.TSAREENA, "Tsareena", 7, false, false, false, "Fruit Pokémon", Type.GRASS, null, 1.2, 21.4, Abilities.LEAF_GUARD, Abilities.QUEENLY_MAJESTY, Abilities.SWEET_VEIL, 510, 72, 120, 98, 50, 98, 72, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 0, false),
- new PokemonSpecies(Species.COMFEY, "Comfey", 7, false, false, false, "Posy Picker Pokémon", Type.FAIRY, null, 0.1, 0.3, Abilities.FLOWER_VEIL, Abilities.TRIAGE, Abilities.NATURAL_CURE, 485, 51, 52, 90, 82, 110, 100, 60, 50, 170, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.ORANGURU, "Oranguru", 7, false, false, false, "Sage Pokémon", Type.NORMAL, Type.PSYCHIC, 1.5, 76, Abilities.INNER_FOCUS, Abilities.TELEPATHY, Abilities.SYMBIOSIS, 490, 90, 60, 80, 90, 110, 60, 45, 50, 172, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.PASSIMIAN, "Passimian", 7, false, false, false, "Teamwork Pokémon", Type.FIGHTING, null, 2, 82.8, Abilities.RECEIVER, Abilities.NONE, Abilities.DEFIANT, 490, 100, 120, 90, 40, 60, 80, 45, 50, 172, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.WIMPOD, "Wimpod", 7, false, false, false, "Turn Tail Pokémon", Type.BUG, Type.WATER, 0.5, 12, Abilities.WIMP_OUT, Abilities.NONE, Abilities.NONE, 230, 25, 35, 40, 20, 30, 80, 90, 50, 46, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GOLISOPOD, "Golisopod", 7, false, false, false, "Hard Scale Pokémon", Type.BUG, Type.WATER, 2, 108, Abilities.EMERGENCY_EXIT, Abilities.NONE, Abilities.NONE, 530, 75, 125, 140, 60, 90, 40, 45, 50, 186, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SANDYGAST, "Sandygast", 7, false, false, false, "Sand Heap Pokémon", Type.GHOST, Type.GROUND, 0.5, 70, Abilities.WATER_COMPACTION, Abilities.NONE, Abilities.SAND_VEIL, 320, 55, 55, 80, 70, 45, 15, 140, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PALOSSAND, "Palossand", 7, false, false, false, "Sand Castle Pokémon", Type.GHOST, Type.GROUND, 1.3, 250, Abilities.WATER_COMPACTION, Abilities.NONE, Abilities.SAND_VEIL, 480, 85, 75, 110, 100, 75, 35, 60, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PYUKUMUKU, "Pyukumuku", 7, false, false, false, "Sea Cucumber Pokémon", Type.WATER, null, 0.3, 1.2, Abilities.INNARDS_OUT, Abilities.NONE, Abilities.UNAWARE, 410, 55, 60, 130, 30, 130, 5, 60, 50, 144, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.TYPE_NULL, "Type: Null", 7, true, false, false, "Synthetic Pokémon", Type.NORMAL, null, 1.9, 120.5, Abilities.BATTLE_ARMOR, Abilities.NONE, Abilities.NONE, 534, 95, 95, 95, 95, 95, 59, 3, 0, 107, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.SILVALLY, "Silvally", 7, true, false, false, "Synthetic Pokémon", Type.NORMAL, null, 2.3, 100.5, Abilities.RKS_SYSTEM, Abilities.NONE, Abilities.NONE, 570, 95, 95, 95, 95, 95, 95, 3, 0, 285, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.MAREANIE, 7, false, false, false, "Brutal Star Pokémon", Type.POISON, Type.WATER, 0.4, 8, Abilities.MERCILESS, Abilities.LIMBER, Abilities.REGENERATOR, 305, 50, 53, 62, 43, 52, 45, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.TOXAPEX, 7, false, false, false, "Brutal Star Pokémon", Type.POISON, Type.WATER, 0.7, 14.5, Abilities.MERCILESS, Abilities.LIMBER, Abilities.REGENERATOR, 495, 50, 63, 152, 53, 142, 35, 75, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MUDBRAY, 7, false, false, false, "Donkey Pokémon", Type.GROUND, null, 1, 110, Abilities.OWN_TEMPO, Abilities.STAMINA, Abilities.INNER_FOCUS, 385, 70, 100, 70, 45, 55, 45, 190, 50, 77, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MUDSDALE, 7, false, false, false, "Draft Horse Pokémon", Type.GROUND, null, 2.5, 920, Abilities.OWN_TEMPO, Abilities.STAMINA, Abilities.INNER_FOCUS, 500, 100, 125, 100, 55, 85, 35, 60, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DEWPIDER, 7, false, false, false, "Water Bubble Pokémon", Type.WATER, Type.BUG, 0.3, 4, Abilities.WATER_BUBBLE, Abilities.NONE, Abilities.WATER_ABSORB, 269, 38, 40, 52, 40, 72, 27, 200, 50, 54, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ARAQUANID, 7, false, false, false, "Water Bubble Pokémon", Type.WATER, Type.BUG, 1.8, 82, Abilities.WATER_BUBBLE, Abilities.NONE, Abilities.WATER_ABSORB, 454, 68, 70, 92, 50, 132, 42, 100, 50, 159, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FOMANTIS, 7, false, false, false, "Sickle Grass Pokémon", Type.GRASS, null, 0.3, 1.5, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.CONTRARY, 250, 40, 55, 35, 50, 35, 35, 190, 50, 50, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.LURANTIS, 7, false, false, false, "Bloom Sickle Pokémon", Type.GRASS, null, 0.9, 18.5, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.CONTRARY, 480, 70, 105, 90, 80, 90, 45, 75, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MORELULL, 7, false, false, false, "Illuminating Pokémon", Type.GRASS, Type.FAIRY, 0.2, 1.5, Abilities.ILLUMINATE, Abilities.EFFECT_SPORE, Abilities.RAIN_DISH, 285, 40, 35, 55, 65, 75, 15, 190, 50, 57, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SHIINOTIC, 7, false, false, false, "Illuminating Pokémon", Type.GRASS, Type.FAIRY, 1, 11.5, Abilities.ILLUMINATE, Abilities.EFFECT_SPORE, Abilities.RAIN_DISH, 405, 60, 45, 80, 90, 100, 30, 75, 50, 142, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SALANDIT, 7, false, false, false, "Toxic Lizard Pokémon", Type.POISON, Type.FIRE, 0.6, 4.8, Abilities.CORROSION, Abilities.NONE, Abilities.OBLIVIOUS, 320, 48, 44, 40, 71, 40, 77, 120, 50, 64, GrowthRate.MEDIUM_FAST, 87.5, false),
+ new PokemonSpecies(Species.SALAZZLE, 7, false, false, false, "Toxic Lizard Pokémon", Type.POISON, Type.FIRE, 1.2, 22.2, Abilities.CORROSION, Abilities.NONE, Abilities.OBLIVIOUS, 480, 68, 64, 60, 111, 60, 117, 45, 50, 168, GrowthRate.MEDIUM_FAST, 0, false),
+ new PokemonSpecies(Species.STUFFUL, 7, false, false, false, "Flailing Pokémon", Type.NORMAL, Type.FIGHTING, 0.5, 6.8, Abilities.FLUFFY, Abilities.KLUTZ, Abilities.CUTE_CHARM, 340, 70, 75, 50, 45, 50, 50, 140, 50, 68, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BEWEAR, 7, false, false, false, "Strong Arm Pokémon", Type.NORMAL, Type.FIGHTING, 2.1, 135, Abilities.FLUFFY, Abilities.KLUTZ, Abilities.UNNERVE, 500, 120, 125, 80, 55, 60, 60, 70, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BOUNSWEET, 7, false, false, false, "Fruit Pokémon", Type.GRASS, null, 0.3, 3.2, Abilities.LEAF_GUARD, Abilities.OBLIVIOUS, Abilities.SWEET_VEIL, 210, 42, 30, 38, 30, 38, 32, 235, 50, 42, GrowthRate.MEDIUM_SLOW, 0, false),
+ new PokemonSpecies(Species.STEENEE, 7, false, false, false, "Fruit Pokémon", Type.GRASS, null, 0.7, 8.2, Abilities.LEAF_GUARD, Abilities.OBLIVIOUS, Abilities.SWEET_VEIL, 290, 52, 40, 48, 40, 48, 62, 120, 50, 102, GrowthRate.MEDIUM_SLOW, 0, false),
+ new PokemonSpecies(Species.TSAREENA, 7, false, false, false, "Fruit Pokémon", Type.GRASS, null, 1.2, 21.4, Abilities.LEAF_GUARD, Abilities.QUEENLY_MAJESTY, Abilities.SWEET_VEIL, 510, 72, 120, 98, 50, 98, 72, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 0, false),
+ new PokemonSpecies(Species.COMFEY, 7, false, false, false, "Posy Picker Pokémon", Type.FAIRY, null, 0.1, 0.3, Abilities.FLOWER_VEIL, Abilities.TRIAGE, Abilities.NATURAL_CURE, 485, 51, 52, 90, 82, 110, 100, 60, 50, 170, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.ORANGURU, 7, false, false, false, "Sage Pokémon", Type.NORMAL, Type.PSYCHIC, 1.5, 76, Abilities.INNER_FOCUS, Abilities.TELEPATHY, Abilities.SYMBIOSIS, 490, 90, 60, 80, 90, 110, 60, 45, 50, 172, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.PASSIMIAN, 7, false, false, false, "Teamwork Pokémon", Type.FIGHTING, null, 2, 82.8, Abilities.RECEIVER, Abilities.NONE, Abilities.DEFIANT, 490, 100, 120, 90, 40, 60, 80, 45, 50, 172, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.WIMPOD, 7, false, false, false, "Turn Tail Pokémon", Type.BUG, Type.WATER, 0.5, 12, Abilities.WIMP_OUT, Abilities.NONE, Abilities.NONE, 230, 25, 35, 40, 20, 30, 80, 90, 50, 46, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GOLISOPOD, 7, false, false, false, "Hard Scale Pokémon", Type.BUG, Type.WATER, 2, 108, Abilities.EMERGENCY_EXIT, Abilities.NONE, Abilities.NONE, 530, 75, 125, 140, 60, 90, 40, 45, 50, 186, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SANDYGAST, 7, false, false, false, "Sand Heap Pokémon", Type.GHOST, Type.GROUND, 0.5, 70, Abilities.WATER_COMPACTION, Abilities.NONE, Abilities.SAND_VEIL, 320, 55, 55, 80, 70, 45, 15, 140, 50, 64, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PALOSSAND, 7, false, false, false, "Sand Castle Pokémon", Type.GHOST, Type.GROUND, 1.3, 250, Abilities.WATER_COMPACTION, Abilities.NONE, Abilities.SAND_VEIL, 480, 85, 75, 110, 100, 75, 35, 60, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PYUKUMUKU, 7, false, false, false, "Sea Cucumber Pokémon", Type.WATER, null, 0.3, 1.2, Abilities.INNARDS_OUT, Abilities.NONE, Abilities.UNAWARE, 410, 55, 60, 130, 30, 130, 5, 60, 50, 144, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.TYPE_NULL, 7, true, false, false, "Synthetic Pokémon", Type.NORMAL, null, 1.9, 120.5, Abilities.BATTLE_ARMOR, Abilities.NONE, Abilities.NONE, 534, 95, 95, 95, 95, 95, 59, 3, 0, 107, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.SILVALLY, 7, true, false, false, "Synthetic Pokémon", Type.NORMAL, null, 2.3, 100.5, Abilities.RKS_SYSTEM, Abilities.NONE, Abilities.NONE, 570, 95, 95, 95, 95, 95, 95, 3, 0, 285, GrowthRate.SLOW, null, false, false,
new PokemonForm("Type: Normal", "normal", Type.NORMAL, null, 2.3, 100.5, Abilities.RKS_SYSTEM, Abilities.NONE, Abilities.NONE, 570, 95, 95, 95, 95, 95, 95, 3, 0, 285, false, ""),
new PokemonForm("Type: Fighting", "fighting", Type.FIGHTING, null, 2.3, 100.5, Abilities.RKS_SYSTEM, Abilities.NONE, Abilities.NONE, 570, 95, 95, 95, 95, 95, 95, 3, 0, 285),
new PokemonForm("Type: Flying", "flying", Type.FLYING, null, 2.3, 100.5, Abilities.RKS_SYSTEM, Abilities.NONE, Abilities.NONE, 570, 95, 95, 95, 95, 95, 95, 3, 0, 285),
@@ -1980,7 +2027,7 @@ export function initSpecies() {
new PokemonForm("Type: Dark", "dark", Type.DARK, null, 2.3, 100.5, Abilities.RKS_SYSTEM, Abilities.NONE, Abilities.NONE, 570, 95, 95, 95, 95, 95, 95, 3, 0, 285),
new PokemonForm("Type: Fairy", "fairy", Type.FAIRY, null, 2.3, 100.5, Abilities.RKS_SYSTEM, Abilities.NONE, Abilities.NONE, 570, 95, 95, 95, 95, 95, 95, 3, 0, 285),
),
- new PokemonSpecies(Species.MINIOR, "Minior", 7, false, false, false, "Meteor Pokémon", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, GrowthRate.MEDIUM_SLOW, null, false, false,
+ new PokemonSpecies(Species.MINIOR, 7, false, false, false, "Meteor Pokémon", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, GrowthRate.MEDIUM_SLOW, null, false, false,
new PokemonForm("Red Meteor Form", "red-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, ""),
new PokemonForm("Orange Meteor Form", "orange-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, ""),
new PokemonForm("Yellow Meteor Form", "yellow-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, ""),
@@ -1996,171 +2043,171 @@ export function initSpecies() {
new PokemonForm("Indigo Core Form", "indigo", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154),
new PokemonForm("Violet Core Form", "violet", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154),
),
- new PokemonSpecies(Species.KOMALA, "Komala", 7, false, false, false, "Drowsing Pokémon", Type.NORMAL, null, 0.4, 19.9, Abilities.COMATOSE, Abilities.NONE, Abilities.NONE, 480, 65, 115, 65, 75, 95, 65, 45, 70, 168, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.TURTONATOR, "Turtonator", 7, false, false, false, "Blast Turtle Pokémon", Type.FIRE, Type.DRAGON, 2, 212, Abilities.SHELL_ARMOR, Abilities.NONE, Abilities.NONE, 485, 60, 78, 135, 91, 85, 36, 70, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.TOGEDEMARU, "Togedemaru", 7, false, false, false, "Roly-Poly Pokémon", Type.ELECTRIC, Type.STEEL, 0.3, 3.3, Abilities.IRON_BARBS, Abilities.LIGHTNING_ROD, Abilities.STURDY, 435, 65, 98, 63, 40, 73, 96, 180, 50, 152, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MIMIKYU, "Mimikyu", 7, false, false, false, "Disguise Pokémon", Type.GHOST, Type.FAIRY, 0.2, 0.7, Abilities.DISGUISE, Abilities.NONE, Abilities.NONE, 476, 55, 90, 80, 50, 105, 96, 45, 50, 167, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.KOMALA, 7, false, false, false, "Drowsing Pokémon", Type.NORMAL, null, 0.4, 19.9, Abilities.COMATOSE, Abilities.NONE, Abilities.NONE, 480, 65, 115, 65, 75, 95, 65, 45, 70, 168, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.TURTONATOR, 7, false, false, false, "Blast Turtle Pokémon", Type.FIRE, Type.DRAGON, 2, 212, Abilities.SHELL_ARMOR, Abilities.NONE, Abilities.NONE, 485, 60, 78, 135, 91, 85, 36, 70, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.TOGEDEMARU, 7, false, false, false, "Roly-Poly Pokémon", Type.ELECTRIC, Type.STEEL, 0.3, 3.3, Abilities.IRON_BARBS, Abilities.LIGHTNING_ROD, Abilities.STURDY, 435, 65, 98, 63, 40, 73, 96, 180, 50, 152, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MIMIKYU, 7, false, false, false, "Disguise Pokémon", Type.GHOST, Type.FAIRY, 0.2, 0.7, Abilities.DISGUISE, Abilities.NONE, Abilities.NONE, 476, 55, 90, 80, 50, 105, 96, 45, 50, 167, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Disguised Form", "disguised", Type.GHOST, Type.FAIRY, 0.2, 0.7, Abilities.DISGUISE, Abilities.NONE, Abilities.NONE, 476, 55, 90, 80, 50, 105, 96, 45, 50, 167, false, ""),
new PokemonForm("Busted Form", "busted", Type.GHOST, Type.FAIRY, 0.2, 0.7, Abilities.DISGUISE, Abilities.NONE, Abilities.NONE, 476, 55, 90, 80, 50, 105, 96, 45, 50, 167),
),
- new PokemonSpecies(Species.BRUXISH, "Bruxish", 7, false, false, false, "Gnash Teeth Pokémon", Type.WATER, Type.PSYCHIC, 0.9, 19, Abilities.DAZZLING, Abilities.STRONG_JAW, Abilities.WONDER_SKIN, 475, 68, 105, 70, 70, 70, 92, 80, 70, 166, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DRAMPA, "Drampa", 7, false, false, false, "Placid Pokémon", Type.NORMAL, Type.DRAGON, 3, 185, Abilities.BERSERK, Abilities.SAP_SIPPER, Abilities.CLOUD_NINE, 485, 78, 60, 85, 135, 91, 36, 70, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DHELMISE, "Dhelmise", 7, false, false, false, "Sea Creeper Pokémon", Type.GHOST, Type.GRASS, 3.9, 210, Abilities.STEELWORKER, Abilities.NONE, Abilities.NONE, 517, 70, 131, 100, 86, 90, 40, 25, 50, 181, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.JANGMO_O, "Jangmo-o", 7, false, false, false, "Scaly Pokémon", Type.DRAGON, null, 0.6, 29.7, Abilities.BULLETPROOF, Abilities.SOUNDPROOF, Abilities.OVERCOAT, 300, 45, 55, 65, 45, 45, 45, 45, 50, 60, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.HAKAMO_O, "Hakamo-o", 7, false, false, false, "Scaly Pokémon", Type.DRAGON, Type.FIGHTING, 1.2, 47, Abilities.BULLETPROOF, Abilities.SOUNDPROOF, Abilities.OVERCOAT, 420, 55, 75, 90, 65, 70, 65, 45, 50, 147, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.KOMMO_O, "Kommo-o", 7, false, false, false, "Scaly Pokémon", Type.DRAGON, Type.FIGHTING, 1.6, 78.2, Abilities.BULLETPROOF, Abilities.SOUNDPROOF, Abilities.OVERCOAT, 600, 75, 110, 125, 100, 105, 85, 45, 50, 300, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.TAPU_KOKO, "Tapu Koko", 7, true, false, false, "Land Spirit Pokémon", Type.ELECTRIC, Type.FAIRY, 1.8, 20.5, Abilities.ELECTRIC_SURGE, Abilities.NONE, Abilities.TELEPATHY, 570, 70, 115, 85, 95, 75, 130, 3, 50, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.TAPU_LELE, "Tapu Lele", 7, true, false, false, "Land Spirit Pokémon", Type.PSYCHIC, Type.FAIRY, 1.2, 18.6, Abilities.PSYCHIC_SURGE, Abilities.NONE, Abilities.TELEPATHY, 570, 70, 85, 75, 130, 115, 95, 3, 50, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.TAPU_BULU, "Tapu Bulu", 7, true, false, false, "Land Spirit Pokémon", Type.GRASS, Type.FAIRY, 1.9, 45.5, Abilities.GRASSY_SURGE, Abilities.NONE, Abilities.TELEPATHY, 570, 70, 130, 115, 85, 95, 75, 3, 50, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.TAPU_FINI, "Tapu Fini", 7, true, false, false, "Land Spirit Pokémon", Type.WATER, Type.FAIRY, 1.3, 21.2, Abilities.MISTY_SURGE, Abilities.NONE, Abilities.TELEPATHY, 570, 70, 75, 115, 95, 130, 85, 3, 50, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.COSMOG, "Cosmog", 7, true, false, false, "Nebula Pokémon", Type.PSYCHIC, null, 0.2, 0.1, Abilities.UNAWARE, Abilities.NONE, Abilities.NONE, 200, 43, 29, 31, 29, 31, 37, 45, 0, 40, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.COSMOEM, "Cosmoem", 7, true, false, false, "Protostar Pokémon", Type.PSYCHIC, null, 0.1, 999.9, Abilities.STURDY, Abilities.NONE, Abilities.NONE, 400, 43, 29, 131, 29, 131, 37, 45, 0, 140, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.SOLGALEO, "Solgaleo", 7, false, true, false, "Sunne Pokémon", Type.PSYCHIC, Type.STEEL, 3.4, 230, Abilities.FULL_METAL_BODY, Abilities.NONE, Abilities.NONE, 680, 137, 137, 107, 113, 89, 97, 45, 0, 340, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.LUNALA, "Lunala", 7, false, true, false, "Moone Pokémon", Type.PSYCHIC, Type.GHOST, 4, 120, Abilities.SHADOW_SHIELD, Abilities.NONE, Abilities.NONE, 680, 137, 113, 89, 137, 107, 97, 45, 0, 340, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.NIHILEGO, "Nihilego", 7, true, false, false, "Parasite Pokémon", Type.ROCK, Type.POISON, 1.2, 55.5, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 109, 53, 47, 127, 131, 103, 45, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.BUZZWOLE, "Buzzwole", 7, true, false, false, "Swollen Pokémon", Type.BUG, Type.FIGHTING, 2.4, 333.6, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 107, 139, 139, 53, 53, 79, 45, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.PHEROMOSA, "Pheromosa", 7, true, false, false, "Lissome Pokémon", Type.BUG, Type.FIGHTING, 1.8, 25, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 71, 137, 37, 137, 37, 151, 45, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.XURKITREE, "Xurkitree", 7, true, false, false, "Glowing Pokémon", Type.ELECTRIC, null, 3.8, 100, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 83, 89, 71, 173, 71, 83, 45, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.CELESTEELA, "Celesteela", 7, true, false, false, "Launch Pokémon", Type.STEEL, Type.FLYING, 9.2, 999.9, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 97, 101, 103, 107, 101, 61, 45, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.KARTANA, "Kartana", 7, true, false, false, "Drawn Sword Pokémon", Type.GRASS, Type.STEEL, 0.3, 0.1, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 59, 181, 131, 59, 31, 109, 45, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.GUZZLORD, "Guzzlord", 7, true, false, false, "Junkivore Pokémon", Type.DARK, Type.DRAGON, 5.5, 888, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 223, 101, 53, 97, 53, 43, 45, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.NECROZMA, "Necrozma", 7, false, true, false, "Prism Pokémon", Type.PSYCHIC, null, 2.4, 230, Abilities.PRISM_ARMOR, Abilities.NONE, Abilities.NONE, 600, 97, 107, 101, 127, 89, 79, 255, 0, 300, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.BRUXISH, 7, false, false, false, "Gnash Teeth Pokémon", Type.WATER, Type.PSYCHIC, 0.9, 19, Abilities.DAZZLING, Abilities.STRONG_JAW, Abilities.WONDER_SKIN, 475, 68, 105, 70, 70, 70, 92, 80, 70, 166, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DRAMPA, 7, false, false, false, "Placid Pokémon", Type.NORMAL, Type.DRAGON, 3, 185, Abilities.BERSERK, Abilities.SAP_SIPPER, Abilities.CLOUD_NINE, 485, 78, 60, 85, 135, 91, 36, 70, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DHELMISE, 7, false, false, false, "Sea Creeper Pokémon", Type.GHOST, Type.GRASS, 3.9, 210, Abilities.STEELWORKER, Abilities.NONE, Abilities.NONE, 517, 70, 131, 100, 86, 90, 40, 25, 50, 181, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.JANGMO_O, 7, false, false, false, "Scaly Pokémon", Type.DRAGON, null, 0.6, 29.7, Abilities.BULLETPROOF, Abilities.SOUNDPROOF, Abilities.OVERCOAT, 300, 45, 55, 65, 45, 45, 45, 45, 50, 60, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.HAKAMO_O, 7, false, false, false, "Scaly Pokémon", Type.DRAGON, Type.FIGHTING, 1.2, 47, Abilities.BULLETPROOF, Abilities.SOUNDPROOF, Abilities.OVERCOAT, 420, 55, 75, 90, 65, 70, 65, 45, 50, 147, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.KOMMO_O, 7, false, false, false, "Scaly Pokémon", Type.DRAGON, Type.FIGHTING, 1.6, 78.2, Abilities.BULLETPROOF, Abilities.SOUNDPROOF, Abilities.OVERCOAT, 600, 75, 110, 125, 100, 105, 85, 45, 50, 300, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.TAPU_KOKO, 7, true, false, false, "Land Spirit Pokémon", Type.ELECTRIC, Type.FAIRY, 1.8, 20.5, Abilities.ELECTRIC_SURGE, Abilities.NONE, Abilities.TELEPATHY, 570, 70, 115, 85, 95, 75, 130, 3, 50, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.TAPU_LELE, 7, true, false, false, "Land Spirit Pokémon", Type.PSYCHIC, Type.FAIRY, 1.2, 18.6, Abilities.PSYCHIC_SURGE, Abilities.NONE, Abilities.TELEPATHY, 570, 70, 85, 75, 130, 115, 95, 3, 50, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.TAPU_BULU, 7, true, false, false, "Land Spirit Pokémon", Type.GRASS, Type.FAIRY, 1.9, 45.5, Abilities.GRASSY_SURGE, Abilities.NONE, Abilities.TELEPATHY, 570, 70, 130, 115, 85, 95, 75, 3, 50, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.TAPU_FINI, 7, true, false, false, "Land Spirit Pokémon", Type.WATER, Type.FAIRY, 1.3, 21.2, Abilities.MISTY_SURGE, Abilities.NONE, Abilities.TELEPATHY, 570, 70, 75, 115, 95, 130, 85, 3, 50, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.COSMOG, 7, true, false, false, "Nebula Pokémon", Type.PSYCHIC, null, 0.2, 0.1, Abilities.UNAWARE, Abilities.NONE, Abilities.NONE, 200, 43, 29, 31, 29, 31, 37, 45, 0, 40, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.COSMOEM, 7, true, false, false, "Protostar Pokémon", Type.PSYCHIC, null, 0.1, 999.9, Abilities.STURDY, Abilities.NONE, Abilities.NONE, 400, 43, 29, 131, 29, 131, 37, 45, 0, 140, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.SOLGALEO, 7, false, true, false, "Sunne Pokémon", Type.PSYCHIC, Type.STEEL, 3.4, 230, Abilities.FULL_METAL_BODY, Abilities.NONE, Abilities.NONE, 680, 137, 137, 107, 113, 89, 97, 45, 0, 340, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.LUNALA, 7, false, true, false, "Moone Pokémon", Type.PSYCHIC, Type.GHOST, 4, 120, Abilities.SHADOW_SHIELD, Abilities.NONE, Abilities.NONE, 680, 137, 113, 89, 137, 107, 97, 45, 0, 340, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.NIHILEGO, 7, true, false, false, "Parasite Pokémon", Type.ROCK, Type.POISON, 1.2, 55.5, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 109, 53, 47, 127, 131, 103, 45, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.BUZZWOLE, 7, true, false, false, "Swollen Pokémon", Type.BUG, Type.FIGHTING, 2.4, 333.6, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 107, 139, 139, 53, 53, 79, 45, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.PHEROMOSA, 7, true, false, false, "Lissome Pokémon", Type.BUG, Type.FIGHTING, 1.8, 25, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 71, 137, 37, 137, 37, 151, 45, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.XURKITREE, 7, true, false, false, "Glowing Pokémon", Type.ELECTRIC, null, 3.8, 100, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 83, 89, 71, 173, 71, 83, 45, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.CELESTEELA, 7, true, false, false, "Launch Pokémon", Type.STEEL, Type.FLYING, 9.2, 999.9, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 97, 101, 103, 107, 101, 61, 45, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.KARTANA, 7, true, false, false, "Drawn Sword Pokémon", Type.GRASS, Type.STEEL, 0.3, 0.1, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 59, 181, 131, 59, 31, 109, 45, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.GUZZLORD, 7, true, false, false, "Junkivore Pokémon", Type.DARK, Type.DRAGON, 5.5, 888, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 223, 101, 53, 97, 53, 43, 45, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.NECROZMA, 7, false, true, false, "Prism Pokémon", Type.PSYCHIC, null, 2.4, 230, Abilities.PRISM_ARMOR, Abilities.NONE, Abilities.NONE, 600, 97, 107, 101, 127, 89, 79, 255, 0, 300, GrowthRate.SLOW, null, false, false,
new PokemonForm("Normal", "", Type.PSYCHIC, null, 2.4, 230, Abilities.PRISM_ARMOR, Abilities.NONE, Abilities.NONE, 600, 97, 107, 101, 127, 89, 79, 255, 0, 300),
new PokemonForm("Dusk Mane", "dusk-mane", Type.PSYCHIC, Type.STEEL, 3.8, 460, Abilities.PRISM_ARMOR, Abilities.NONE, Abilities.NONE, 680, 97, 157, 127, 113, 109, 77, 255, 0, 300),
new PokemonForm("Dawn Wings", "dawn-wings", Type.PSYCHIC, Type.GHOST, 4.2, 350, Abilities.PRISM_ARMOR, Abilities.NONE, Abilities.NONE, 680, 97, 113, 109, 157, 127, 77, 255, 0, 300),
new PokemonForm("Ultra", "ultra", Type.PSYCHIC, Type.DRAGON, 7.5, 230, Abilities.NEUROFORCE, Abilities.NONE, Abilities.NONE, 754, 97, 167, 97, 167, 97, 129, 255, 0, 300),
),
- new PokemonSpecies(Species.MAGEARNA, "Magearna", 7, false, false, true, "Artificial Pokémon", Type.STEEL, Type.FAIRY, 1, 80.5, Abilities.SOUL_HEART, Abilities.NONE, Abilities.NONE, 600, 80, 95, 115, 130, 115, 65, 3, 0, 300, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.MAGEARNA, 7, false, false, true, "Artificial Pokémon", Type.STEEL, Type.FAIRY, 1, 80.5, Abilities.SOUL_HEART, Abilities.NONE, Abilities.NONE, 600, 80, 95, 115, 130, 115, 65, 3, 0, 300, GrowthRate.SLOW, null, false, false,
new PokemonForm("Normal", "", Type.STEEL, Type.FAIRY, 1, 80.5, Abilities.SOUL_HEART, Abilities.NONE, Abilities.NONE, 600, 80, 95, 115, 130, 115, 65, 3, 0, 300),
new PokemonForm("Original", "original", Type.STEEL, Type.FAIRY, 1, 80.5, Abilities.SOUL_HEART, Abilities.NONE, Abilities.NONE, 600, 80, 95, 115, 130, 115, 65, 3, 0, 300),
),
- new PokemonSpecies(Species.MARSHADOW, "Marshadow", 7, false, false, true, "Gloomdweller Pokémon", Type.FIGHTING, Type.GHOST, 0.7, 22.2, Abilities.TECHNICIAN, Abilities.NONE, Abilities.NONE, 600, 90, 125, 80, 90, 90, 125, 3, 0, 300, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.MARSHADOW, 7, false, false, true, "Gloomdweller Pokémon", Type.FIGHTING, Type.GHOST, 0.7, 22.2, Abilities.TECHNICIAN, Abilities.NONE, Abilities.NONE, 600, 90, 125, 80, 90, 90, 125, 3, 0, 300, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.FIGHTING, Type.GHOST, 0.7, 22.2, Abilities.TECHNICIAN, Abilities.NONE, Abilities.NONE, 600, 90, 125, 80, 90, 90, 125, 3, 0, 300),
new PokemonForm("Zenith", "zenith", Type.FIGHTING, Type.GHOST, 0.7, 22.2, Abilities.TECHNICIAN, Abilities.NONE, Abilities.NONE, 600, 90, 125, 80, 90, 90, 125, 3, 0, 300)
),
- new PokemonSpecies(Species.POIPOLE, "Poipole", 7, true, false, false, "Poison Pin Pokémon", Type.POISON, null, 0.6, 1.8, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 420, 67, 73, 67, 73, 67, 73, 45, 0, 210, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.NAGANADEL, "Naganadel", 7, true, false, false, "Poison Pin Pokémon", Type.POISON, Type.DRAGON, 3.6, 150, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 540, 73, 73, 73, 127, 73, 121, 45, 0, 270, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.STAKATAKA, "Stakataka", 7, true, false, false, "Rampart Pokémon", Type.ROCK, Type.STEEL, 5.5, 820, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 61, 131, 211, 53, 101, 13, 30, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.BLACEPHALON, "Blacephalon", 7, true, false, false, "Fireworks Pokémon", Type.FIRE, Type.GHOST, 1.8, 13, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 53, 127, 53, 151, 79, 107, 30, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.ZERAORA, "Zeraora", 7, false, false, true, "Thunderclap Pokémon", Type.ELECTRIC, null, 1.5, 44.5, Abilities.VOLT_ABSORB, Abilities.NONE, Abilities.NONE, 600, 88, 112, 75, 102, 80, 143, 3, 0, 300, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.MELTAN, "Meltan", 7, false, false, true, "Hex Nut Pokémon", Type.STEEL, null, 0.2, 8, Abilities.MAGNET_PULL, Abilities.NONE, Abilities.NONE, 300, 46, 65, 65, 55, 35, 34, 3, 0, 150, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.MELMETAL, "Melmetal", 7, false, false, true, "Hex Nut Pokémon", Type.STEEL, null, 2.5, 800, Abilities.IRON_FIST, Abilities.NONE, Abilities.NONE, 600, 135, 143, 143, 80, 65, 34, 3, 0, 300, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.POIPOLE, 7, true, false, false, "Poison Pin Pokémon", Type.POISON, null, 0.6, 1.8, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 420, 67, 73, 67, 73, 67, 73, 45, 0, 210, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.NAGANADEL, 7, true, false, false, "Poison Pin Pokémon", Type.POISON, Type.DRAGON, 3.6, 150, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 540, 73, 73, 73, 127, 73, 121, 45, 0, 270, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.STAKATAKA, 7, true, false, false, "Rampart Pokémon", Type.ROCK, Type.STEEL, 5.5, 820, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 61, 131, 211, 53, 101, 13, 30, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.BLACEPHALON, 7, true, false, false, "Fireworks Pokémon", Type.FIRE, Type.GHOST, 1.8, 13, Abilities.BEAST_BOOST, Abilities.NONE, Abilities.NONE, 570, 53, 127, 53, 151, 79, 107, 30, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.ZERAORA, 7, false, false, true, "Thunderclap Pokémon", Type.ELECTRIC, null, 1.5, 44.5, Abilities.VOLT_ABSORB, Abilities.NONE, Abilities.NONE, 600, 88, 112, 75, 102, 80, 143, 3, 0, 300, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.MELTAN, 7, false, false, true, "Hex Nut Pokémon", Type.STEEL, null, 0.2, 8, Abilities.MAGNET_PULL, Abilities.NONE, Abilities.NONE, 300, 46, 65, 65, 55, 35, 34, 3, 0, 150, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.MELMETAL, 7, false, false, true, "Hex Nut Pokémon", Type.STEEL, null, 2.5, 800, Abilities.IRON_FIST, Abilities.NONE, Abilities.NONE, 600, 135, 143, 143, 80, 65, 34, 3, 0, 300, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.STEEL, null, 2.5, 800, Abilities.IRON_FIST, Abilities.NONE, Abilities.NONE, 600, 135, 143, 143, 80, 65, 34, 3, 0, 300),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.STEEL, null, 25, 800, Abilities.IRON_FIST, Abilities.NONE, Abilities.NONE, 700, 170, 165, 165, 95, 75, 30, 3, 0, 300),
),
- new PokemonSpecies(Species.GROOKEY, "Grookey", 8, false, false, false, "Chimp Pokémon", Type.GRASS, null, 0.3, 5, Abilities.OVERGROW, Abilities.NONE, Abilities.GRASSY_SURGE, 310, 50, 65, 50, 40, 40, 65, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.THWACKEY, "Thwackey", 8, false, false, false, "Beat Pokémon", Type.GRASS, null, 0.7, 14, Abilities.OVERGROW, Abilities.NONE, Abilities.GRASSY_SURGE, 420, 70, 85, 70, 55, 60, 80, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.RILLABOOM, "Rillaboom", 8, false, false, false, "Drummer Pokémon", Type.GRASS, null, 2.1, 90, Abilities.OVERGROW, Abilities.NONE, Abilities.GRASSY_SURGE, 530, 100, 125, 90, 60, 70, 85, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.GROOKEY, 8, false, false, false, "Chimp Pokémon", Type.GRASS, null, 0.3, 5, Abilities.OVERGROW, Abilities.NONE, Abilities.GRASSY_SURGE, 310, 50, 65, 50, 40, 40, 65, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.THWACKEY, 8, false, false, false, "Beat Pokémon", Type.GRASS, null, 0.7, 14, Abilities.OVERGROW, Abilities.NONE, Abilities.GRASSY_SURGE, 420, 70, 85, 70, 55, 60, 80, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.RILLABOOM, 8, false, false, false, "Drummer Pokémon", Type.GRASS, null, 2.1, 90, Abilities.OVERGROW, Abilities.NONE, Abilities.GRASSY_SURGE, 530, 100, 125, 90, 60, 70, 85, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
new PokemonForm("Normal", "", Type.GRASS, null, 2.1, 90, Abilities.OVERGROW, Abilities.NONE, Abilities.GRASSY_SURGE, 530, 100, 125, 90, 60, 70, 85, 45, 50, 265),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.GRASS, null, 28, 90, Abilities.OVERGROW, Abilities.NONE, Abilities.GRASSY_SURGE, 630, 125, 150, 115, 75, 90, 75, 45, 50, 265),
),
- new PokemonSpecies(Species.SCORBUNNY, "Scorbunny", 8, false, false, false, "Rabbit Pokémon", Type.FIRE, null, 0.3, 4.5, Abilities.BLAZE, Abilities.NONE, Abilities.LIBERO, 310, 50, 71, 40, 40, 40, 69, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.RABOOT, "Raboot", 8, false, false, false, "Rabbit Pokémon", Type.FIRE, null, 0.6, 9, Abilities.BLAZE, Abilities.NONE, Abilities.LIBERO, 420, 65, 86, 60, 55, 60, 94, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.CINDERACE, "Cinderace", 8, false, false, false, "Striker Pokémon", Type.FIRE, null, 1.4, 33, Abilities.BLAZE, Abilities.NONE, Abilities.LIBERO, 530, 80, 116, 75, 65, 75, 119, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.SCORBUNNY, 8, false, false, false, "Rabbit Pokémon", Type.FIRE, null, 0.3, 4.5, Abilities.BLAZE, Abilities.NONE, Abilities.LIBERO, 310, 50, 71, 40, 40, 40, 69, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.RABOOT, 8, false, false, false, "Rabbit Pokémon", Type.FIRE, null, 0.6, 9, Abilities.BLAZE, Abilities.NONE, Abilities.LIBERO, 420, 65, 86, 60, 55, 60, 94, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.CINDERACE, 8, false, false, false, "Striker Pokémon", Type.FIRE, null, 1.4, 33, Abilities.BLAZE, Abilities.NONE, Abilities.LIBERO, 530, 80, 116, 75, 65, 75, 119, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
new PokemonForm("Normal", "", Type.FIRE, null, 1.4, 33, Abilities.BLAZE, Abilities.NONE, Abilities.LIBERO, 530, 80, 116, 75, 65, 75, 119, 45, 50, 265),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.FIRE, null, 27, 33, Abilities.BLAZE, Abilities.NONE, Abilities.LIBERO, 630, 100, 145, 90, 75, 90, 130, 45, 50, 265),
),
- new PokemonSpecies(Species.SOBBLE, "Sobble", 8, false, false, false, "Water Lizard Pokémon", Type.WATER, null, 0.3, 4, Abilities.TORRENT, Abilities.NONE, Abilities.SNIPER, 310, 50, 40, 40, 70, 40, 70, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.DRIZZILE, "Drizzile", 8, false, false, false, "Water Lizard Pokémon", Type.WATER, null, 0.7, 11.5, Abilities.TORRENT, Abilities.NONE, Abilities.SNIPER, 420, 65, 60, 55, 95, 55, 90, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.INTELEON, "Inteleon", 8, false, false, false, "Secret Agent Pokémon", Type.WATER, null, 1.9, 45.2, Abilities.TORRENT, Abilities.NONE, Abilities.SNIPER, 530, 70, 85, 65, 125, 65, 120, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.SOBBLE, 8, false, false, false, "Water Lizard Pokémon", Type.WATER, null, 0.3, 4, Abilities.TORRENT, Abilities.NONE, Abilities.SNIPER, 310, 50, 40, 40, 70, 40, 70, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.DRIZZILE, 8, false, false, false, "Water Lizard Pokémon", Type.WATER, null, 0.7, 11.5, Abilities.TORRENT, Abilities.NONE, Abilities.SNIPER, 420, 65, 60, 55, 95, 55, 90, 45, 50, 147, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.INTELEON, 8, false, false, false, "Secret Agent Pokémon", Type.WATER, null, 1.9, 45.2, Abilities.TORRENT, Abilities.NONE, Abilities.SNIPER, 530, 70, 85, 65, 125, 65, 120, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false, true,
new PokemonForm("Normal", "", Type.WATER, null, 1.9, 45.2, Abilities.TORRENT, Abilities.NONE, Abilities.SNIPER, 530, 70, 85, 65, 125, 65, 120, 45, 50, 265),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.WATER, null, 40, 45.2, Abilities.TORRENT, Abilities.NONE, Abilities.SNIPER, 630, 90, 100, 90, 150, 90, 110, 45, 50, 265),
),
- new PokemonSpecies(Species.SKWOVET, "Skwovet", 8, false, false, false, "Cheeky Pokémon", Type.NORMAL, null, 0.3, 2.5, Abilities.CHEEK_POUCH, Abilities.NONE, Abilities.GLUTTONY, 275, 70, 55, 55, 35, 35, 25, 255, 50, 55, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GREEDENT, "Greedent", 8, false, false, false, "Greedy Pokémon", Type.NORMAL, null, 0.6, 6, Abilities.CHEEK_POUCH, Abilities.NONE, Abilities.GLUTTONY, 460, 120, 95, 95, 55, 75, 20, 90, 50, 161, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ROOKIDEE, "Rookidee", 8, false, false, false, "Tiny Bird Pokémon", Type.FLYING, null, 0.2, 1.8, Abilities.KEEN_EYE, Abilities.UNNERVE, Abilities.BIG_PECKS, 245, 38, 47, 35, 33, 35, 57, 255, 50, 49, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.CORVISQUIRE, "Corvisquire", 8, false, false, false, "Raven Pokémon", Type.FLYING, null, 0.8, 16, Abilities.KEEN_EYE, Abilities.UNNERVE, Abilities.BIG_PECKS, 365, 68, 67, 55, 43, 55, 77, 120, 50, 128, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.CORVIKNIGHT, "Corviknight", 8, false, false, false, "Raven Pokémon", Type.FLYING, Type.STEEL, 2.2, 75, Abilities.PRESSURE, Abilities.UNNERVE, Abilities.MIRROR_ARMOR, 495, 98, 87, 105, 53, 85, 67, 45, 50, 248, GrowthRate.MEDIUM_SLOW, 50, false, true,
+ new PokemonSpecies(Species.SKWOVET, 8, false, false, false, "Cheeky Pokémon", Type.NORMAL, null, 0.3, 2.5, Abilities.CHEEK_POUCH, Abilities.NONE, Abilities.GLUTTONY, 275, 70, 55, 55, 35, 35, 25, 255, 50, 55, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GREEDENT, 8, false, false, false, "Greedy Pokémon", Type.NORMAL, null, 0.6, 6, Abilities.CHEEK_POUCH, Abilities.NONE, Abilities.GLUTTONY, 460, 120, 95, 95, 55, 75, 20, 90, 50, 161, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ROOKIDEE, 8, false, false, false, "Tiny Bird Pokémon", Type.FLYING, null, 0.2, 1.8, Abilities.KEEN_EYE, Abilities.UNNERVE, Abilities.BIG_PECKS, 245, 38, 47, 35, 33, 35, 57, 255, 50, 49, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.CORVISQUIRE, 8, false, false, false, "Raven Pokémon", Type.FLYING, null, 0.8, 16, Abilities.KEEN_EYE, Abilities.UNNERVE, Abilities.BIG_PECKS, 365, 68, 67, 55, 43, 55, 77, 120, 50, 128, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.CORVIKNIGHT, 8, false, false, false, "Raven Pokémon", Type.FLYING, Type.STEEL, 2.2, 75, Abilities.PRESSURE, Abilities.UNNERVE, Abilities.MIRROR_ARMOR, 495, 98, 87, 105, 53, 85, 67, 45, 50, 248, GrowthRate.MEDIUM_SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.FLYING, Type.STEEL, 2.2, 75, Abilities.PRESSURE, Abilities.UNNERVE, Abilities.MIRROR_ARMOR, 495, 98, 87, 105, 53, 85, 67, 45, 50, 248),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.FLYING, Type.STEEL, 14, 75, Abilities.PRESSURE, Abilities.UNNERVE, Abilities.MIRROR_ARMOR, 595, 125, 100, 135, 60, 95, 80, 45, 50, 248),
),
- new PokemonSpecies(Species.BLIPBUG, "Blipbug", 8, false, false, false, "Larva Pokémon", Type.BUG, null, 0.4, 8, Abilities.SWARM, Abilities.COMPOUND_EYES, Abilities.TELEPATHY, 180, 25, 20, 20, 25, 45, 45, 255, 50, 36, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DOTTLER, "Dottler", 8, false, false, false, "Radome Pokémon", Type.BUG, Type.PSYCHIC, 0.4, 19.5, Abilities.SWARM, Abilities.COMPOUND_EYES, Abilities.TELEPATHY, 335, 50, 35, 80, 50, 90, 30, 120, 50, 117, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ORBEETLE, "Orbeetle", 8, false, false, false, "Seven Spot Pokémon", Type.BUG, Type.PSYCHIC, 0.4, 40.8, Abilities.SWARM, Abilities.FRISK, Abilities.TELEPATHY, 505, 60, 45, 110, 80, 120, 90, 45, 50, 253, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.BLIPBUG, 8, false, false, false, "Larva Pokémon", Type.BUG, null, 0.4, 8, Abilities.SWARM, Abilities.COMPOUND_EYES, Abilities.TELEPATHY, 180, 25, 20, 20, 25, 45, 45, 255, 50, 36, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DOTTLER, 8, false, false, false, "Radome Pokémon", Type.BUG, Type.PSYCHIC, 0.4, 19.5, Abilities.SWARM, Abilities.COMPOUND_EYES, Abilities.TELEPATHY, 335, 50, 35, 80, 50, 90, 30, 120, 50, 117, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ORBEETLE, 8, false, false, false, "Seven Spot Pokémon", Type.BUG, Type.PSYCHIC, 0.4, 40.8, Abilities.SWARM, Abilities.FRISK, Abilities.TELEPATHY, 505, 60, 45, 110, 80, 120, 90, 45, 50, 253, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.BUG, Type.PSYCHIC, 0.4, 40.8, Abilities.SWARM, Abilities.FRISK, Abilities.TELEPATHY, 505, 60, 45, 110, 80, 120, 90, 45, 50, 253),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.BUG, Type.PSYCHIC, 14, 40.8, Abilities.SWARM, Abilities.FRISK, Abilities.TELEPATHY, 605, 75, 50, 140, 90, 150, 100, 45, 50, 253),
),
- new PokemonSpecies(Species.NICKIT, "Nickit", 8, false, false, false, "Fox Pokémon", Type.DARK, null, 0.6, 8.9, Abilities.RUN_AWAY, Abilities.UNBURDEN, Abilities.STAKEOUT, 245, 40, 28, 28, 47, 52, 50, 255, 50, 49, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.THIEVUL, "Thievul", 8, false, false, false, "Fox Pokémon", Type.DARK, null, 1.2, 19.9, Abilities.RUN_AWAY, Abilities.UNBURDEN, Abilities.STAKEOUT, 455, 70, 58, 58, 87, 92, 90, 127, 50, 159, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.GOSSIFLEUR, "Gossifleur", 8, false, false, false, "Flowering Pokémon", Type.GRASS, null, 0.4, 2.2, Abilities.COTTON_DOWN, Abilities.REGENERATOR, Abilities.EFFECT_SPORE, 250, 40, 40, 60, 40, 60, 10, 190, 50, 50, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ELDEGOSS, "Eldegoss", 8, false, false, false, "Cotton Bloom Pokémon", Type.GRASS, null, 0.5, 2.5, Abilities.COTTON_DOWN, Abilities.REGENERATOR, Abilities.EFFECT_SPORE, 460, 60, 50, 90, 80, 120, 60, 75, 50, 161, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.WOOLOO, "Wooloo", 8, false, false, false, "Sheep Pokémon", Type.NORMAL, null, 0.6, 6, Abilities.FLUFFY, Abilities.RUN_AWAY, Abilities.BULLETPROOF, 270, 42, 40, 55, 40, 45, 48, 255, 50, 122, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DUBWOOL, "Dubwool", 8, false, false, false, "Sheep Pokémon", Type.NORMAL, null, 1.3, 43, Abilities.FLUFFY, Abilities.STEADFAST, Abilities.BULLETPROOF, 490, 72, 80, 100, 60, 90, 88, 127, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CHEWTLE, "Chewtle", 8, false, false, false, "Snapping Pokémon", Type.WATER, null, 0.3, 8.5, Abilities.STRONG_JAW, Abilities.SHELL_ARMOR, Abilities.SWIFT_SWIM, 284, 50, 64, 50, 38, 38, 44, 255, 50, 57, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DREDNAW, "Drednaw", 8, false, false, false, "Bite Pokémon", Type.WATER, Type.ROCK, 1, 115.5, Abilities.STRONG_JAW, Abilities.SHELL_ARMOR, Abilities.SWIFT_SWIM, 485, 90, 115, 90, 48, 68, 74, 75, 50, 170, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.NICKIT, 8, false, false, false, "Fox Pokémon", Type.DARK, null, 0.6, 8.9, Abilities.RUN_AWAY, Abilities.UNBURDEN, Abilities.STAKEOUT, 245, 40, 28, 28, 47, 52, 50, 255, 50, 49, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.THIEVUL, 8, false, false, false, "Fox Pokémon", Type.DARK, null, 1.2, 19.9, Abilities.RUN_AWAY, Abilities.UNBURDEN, Abilities.STAKEOUT, 455, 70, 58, 58, 87, 92, 90, 127, 50, 159, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.GOSSIFLEUR, 8, false, false, false, "Flowering Pokémon", Type.GRASS, null, 0.4, 2.2, Abilities.COTTON_DOWN, Abilities.REGENERATOR, Abilities.EFFECT_SPORE, 250, 40, 40, 60, 40, 60, 10, 190, 50, 50, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ELDEGOSS, 8, false, false, false, "Cotton Bloom Pokémon", Type.GRASS, null, 0.5, 2.5, Abilities.COTTON_DOWN, Abilities.REGENERATOR, Abilities.EFFECT_SPORE, 460, 60, 50, 90, 80, 120, 60, 75, 50, 161, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.WOOLOO, 8, false, false, false, "Sheep Pokémon", Type.NORMAL, null, 0.6, 6, Abilities.FLUFFY, Abilities.RUN_AWAY, Abilities.BULLETPROOF, 270, 42, 40, 55, 40, 45, 48, 255, 50, 122, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DUBWOOL, 8, false, false, false, "Sheep Pokémon", Type.NORMAL, null, 1.3, 43, Abilities.FLUFFY, Abilities.STEADFAST, Abilities.BULLETPROOF, 490, 72, 80, 100, 60, 90, 88, 127, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CHEWTLE, 8, false, false, false, "Snapping Pokémon", Type.WATER, null, 0.3, 8.5, Abilities.STRONG_JAW, Abilities.SHELL_ARMOR, Abilities.SWIFT_SWIM, 284, 50, 64, 50, 38, 38, 44, 255, 50, 57, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DREDNAW, 8, false, false, false, "Bite Pokémon", Type.WATER, Type.ROCK, 1, 115.5, Abilities.STRONG_JAW, Abilities.SHELL_ARMOR, Abilities.SWIFT_SWIM, 485, 90, 115, 90, 48, 68, 74, 75, 50, 170, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.WATER, Type.ROCK, 1, 115.5, Abilities.STRONG_JAW, Abilities.SHELL_ARMOR, Abilities.SWIFT_SWIM, 485, 90, 115, 90, 48, 68, 74, 75, 50, 170),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.WATER, Type.ROCK, 24, 115.5, Abilities.STRONG_JAW, Abilities.SHELL_ARMOR, Abilities.SWIFT_SWIM, 585, 115, 150, 110, 55, 85, 70, 75, 50, 170),
),
- new PokemonSpecies(Species.YAMPER, "Yamper", 8, false, false, false, "Puppy Pokémon", Type.ELECTRIC, null, 0.3, 13.5, Abilities.BALL_FETCH, Abilities.NONE, Abilities.RATTLED, 270, 59, 45, 50, 40, 50, 26, 255, 50, 54, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.BOLTUND, "Boltund", 8, false, false, false, "Dog Pokémon", Type.ELECTRIC, null, 1, 34, Abilities.STRONG_JAW, Abilities.NONE, Abilities.COMPETITIVE, 490, 69, 90, 60, 90, 60, 121, 45, 50, 172, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.ROLYCOLY, "Rolycoly", 8, false, false, false, "Coal Pokémon", Type.ROCK, null, 0.3, 12, Abilities.STEAM_ENGINE, Abilities.HEATPROOF, Abilities.FLASH_FIRE, 240, 30, 40, 50, 40, 50, 30, 255, 50, 48, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.CARKOL, "Carkol", 8, false, false, false, "Coal Pokémon", Type.ROCK, Type.FIRE, 1.1, 78, Abilities.STEAM_ENGINE, Abilities.FLAME_BODY, Abilities.FLASH_FIRE, 410, 80, 60, 90, 60, 70, 50, 120, 50, 144, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.COALOSSAL, "Coalossal", 8, false, false, false, "Coal Pokémon", Type.ROCK, Type.FIRE, 2.8, 310.5, Abilities.STEAM_ENGINE, Abilities.FLAME_BODY, Abilities.FLASH_FIRE, 510, 110, 80, 120, 80, 90, 30, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 50, false, true,
+ new PokemonSpecies(Species.YAMPER, 8, false, false, false, "Puppy Pokémon", Type.ELECTRIC, null, 0.3, 13.5, Abilities.BALL_FETCH, Abilities.NONE, Abilities.RATTLED, 270, 59, 45, 50, 40, 50, 26, 255, 50, 54, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.BOLTUND, 8, false, false, false, "Dog Pokémon", Type.ELECTRIC, null, 1, 34, Abilities.STRONG_JAW, Abilities.NONE, Abilities.COMPETITIVE, 490, 69, 90, 60, 90, 60, 121, 45, 50, 172, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.ROLYCOLY, 8, false, false, false, "Coal Pokémon", Type.ROCK, null, 0.3, 12, Abilities.STEAM_ENGINE, Abilities.HEATPROOF, Abilities.FLASH_FIRE, 240, 30, 40, 50, 40, 50, 30, 255, 50, 48, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.CARKOL, 8, false, false, false, "Coal Pokémon", Type.ROCK, Type.FIRE, 1.1, 78, Abilities.STEAM_ENGINE, Abilities.FLAME_BODY, Abilities.FLASH_FIRE, 410, 80, 60, 90, 60, 70, 50, 120, 50, 144, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.COALOSSAL, 8, false, false, false, "Coal Pokémon", Type.ROCK, Type.FIRE, 2.8, 310.5, Abilities.STEAM_ENGINE, Abilities.FLAME_BODY, Abilities.FLASH_FIRE, 510, 110, 80, 120, 80, 90, 30, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 50, false, true,
new PokemonForm("Normal", "", Type.ROCK, Type.FIRE, 2.8, 310.5, Abilities.STEAM_ENGINE, Abilities.FLAME_BODY, Abilities.FLASH_FIRE, 510, 110, 80, 120, 80, 90, 30, 45, 50, 255),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.ROCK, Type.FIRE, 42, 310.5, Abilities.STEAM_ENGINE, Abilities.FLAME_BODY, Abilities.FLASH_FIRE, 610, 140, 95, 150, 95, 105, 25, 45, 50, 255),
),
- new PokemonSpecies(Species.APPLIN, "Applin", 8, false, false, false, "Apple Core Pokémon", Type.GRASS, Type.DRAGON, 0.2, 0.5, Abilities.RIPEN, Abilities.GLUTTONY, Abilities.BULLETPROOF, 260, 40, 40, 80, 40, 40, 20, 255, 50, 52, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.FLAPPLE, "Flapple", 8, false, false, false, "Apple Wing Pokémon", Type.GRASS, Type.DRAGON, 0.3, 1, Abilities.RIPEN, Abilities.GLUTTONY, Abilities.HUSTLE, 485, 70, 110, 80, 95, 60, 70, 45, 50, 170, GrowthRate.ERRATIC, 50, false, true,
+ new PokemonSpecies(Species.APPLIN, 8, false, false, false, "Apple Core Pokémon", Type.GRASS, Type.DRAGON, 0.2, 0.5, Abilities.RIPEN, Abilities.GLUTTONY, Abilities.BULLETPROOF, 260, 40, 40, 80, 40, 40, 20, 255, 50, 52, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.FLAPPLE, 8, false, false, false, "Apple Wing Pokémon", Type.GRASS, Type.DRAGON, 0.3, 1, Abilities.RIPEN, Abilities.GLUTTONY, Abilities.HUSTLE, 485, 70, 110, 80, 95, 60, 70, 45, 50, 170, GrowthRate.ERRATIC, 50, false, true,
new PokemonForm("Normal", "", Type.GRASS, Type.DRAGON, 0.3, 1, Abilities.RIPEN, Abilities.GLUTTONY, Abilities.HUSTLE, 485, 70, 110, 80, 95, 60, 70, 45, 50, 170),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.GRASS, Type.DRAGON, 24, 1, Abilities.RIPEN, Abilities.GLUTTONY, Abilities.HUSTLE, 585, 90, 140, 90, 120, 75, 70, 45, 50, 170),
),
- new PokemonSpecies(Species.APPLETUN, "Appletun", 8, false, false, false, "Apple Nectar Pokémon", Type.GRASS, Type.DRAGON, 0.4, 13, Abilities.RIPEN, Abilities.GLUTTONY, Abilities.THICK_FAT, 485, 110, 85, 80, 100, 80, 30, 45, 50, 170, GrowthRate.ERRATIC, 50, false, true,
+ new PokemonSpecies(Species.APPLETUN, 8, false, false, false, "Apple Nectar Pokémon", Type.GRASS, Type.DRAGON, 0.4, 13, Abilities.RIPEN, Abilities.GLUTTONY, Abilities.THICK_FAT, 485, 110, 85, 80, 100, 80, 30, 45, 50, 170, GrowthRate.ERRATIC, 50, false, true,
new PokemonForm("Normal", "", Type.GRASS, Type.DRAGON, 0.4, 13, Abilities.RIPEN, Abilities.GLUTTONY, Abilities.THICK_FAT, 485, 110, 85, 80, 100, 80, 30, 45, 50, 170),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.GRASS, Type.DRAGON, 24, 13, Abilities.RIPEN, Abilities.GLUTTONY, Abilities.THICK_FAT, 585, 140, 95, 95, 135, 95, 25, 45, 50, 170),
),
- new PokemonSpecies(Species.SILICOBRA, "Silicobra", 8, false, false, false, "Sand Snake Pokémon", Type.GROUND, null, 2.2, 7.6, Abilities.SAND_SPIT, Abilities.SHED_SKIN, Abilities.SAND_VEIL, 315, 52, 57, 75, 35, 50, 46, 255, 50, 63, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SANDACONDA, "Sandaconda", 8, false, false, false, "Sand Snake Pokémon", Type.GROUND, null, 3.8, 65.5, Abilities.SAND_SPIT, Abilities.SHED_SKIN, Abilities.SAND_VEIL, 510, 72, 107, 125, 65, 70, 71, 120, 50, 179, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.SILICOBRA, 8, false, false, false, "Sand Snake Pokémon", Type.GROUND, null, 2.2, 7.6, Abilities.SAND_SPIT, Abilities.SHED_SKIN, Abilities.SAND_VEIL, 315, 52, 57, 75, 35, 50, 46, 255, 50, 63, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SANDACONDA, 8, false, false, false, "Sand Snake Pokémon", Type.GROUND, null, 3.8, 65.5, Abilities.SAND_SPIT, Abilities.SHED_SKIN, Abilities.SAND_VEIL, 510, 72, 107, 125, 65, 70, 71, 120, 50, 179, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.GROUND, null, 3.8, 65.5, Abilities.SAND_SPIT, Abilities.SHED_SKIN, Abilities.SAND_VEIL, 510, 72, 107, 125, 65, 70, 71, 120, 50, 179),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.GROUND, null, 22, 65.5, Abilities.SAND_SPIT, Abilities.SHED_SKIN, Abilities.SAND_VEIL, 610, 90, 135, 150, 75, 80, 80, 120, 50, 179),
),
- new PokemonSpecies(Species.CRAMORANT, "Cramorant", 8, false, false, false, "Gulp Pokémon", Type.FLYING, Type.WATER, 0.8, 18, Abilities.GULP_MISSILE, Abilities.NONE, Abilities.NONE, 475, 70, 85, 55, 85, 95, 85, 45, 50, 166, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.CRAMORANT, 8, false, false, false, "Gulp Pokémon", Type.FLYING, Type.WATER, 0.8, 18, Abilities.GULP_MISSILE, Abilities.NONE, Abilities.NONE, 475, 70, 85, 55, 85, 95, 85, 45, 50, 166, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Normal", "", Type.FLYING, Type.WATER, 0.8, 18, Abilities.GULP_MISSILE, Abilities.NONE, Abilities.NONE, 475, 70, 85, 55, 85, 95, 85, 45, 50, 166),
new PokemonForm("Gulping Form", "gulping", Type.FLYING, Type.WATER, 0.8, 18, Abilities.GULP_MISSILE, Abilities.NONE, Abilities.NONE, 475, 70, 85, 55, 85, 95, 85, 45, 50, 166),
new PokemonForm("Gorging Form", "gorging", Type.FLYING, Type.WATER, 0.8, 18, Abilities.GULP_MISSILE, Abilities.NONE, Abilities.NONE, 475, 70, 85, 55, 85, 95, 85, 45, 50, 166),
),
- new PokemonSpecies(Species.ARROKUDA, "Arrokuda", 8, false, false, false, "Rush Pokémon", Type.WATER, null, 0.5, 1, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.PROPELLER_TAIL, 280, 41, 63, 40, 40, 30, 66, 255, 50, 56, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.BARRASKEWDA, "Barraskewda", 8, false, false, false, "Skewer Pokémon", Type.WATER, null, 1.3, 30, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.PROPELLER_TAIL, 490, 61, 123, 60, 60, 50, 136, 60, 50, 172, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.TOXEL, "Toxel", 8, false, false, false, "Baby Pokémon", Type.ELECTRIC, Type.POISON, 0.4, 11, Abilities.RATTLED, Abilities.STATIC, Abilities.KLUTZ, 242, 40, 38, 35, 54, 35, 40, 75, 50, 48, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.TOXTRICITY, "Toxtricity", 8, false, false, false, "Punk Pokémon", Type.ELECTRIC, Type.POISON, 1.6, 40, Abilities.PUNK_ROCK, Abilities.PLUS, Abilities.TECHNICIAN, 502, 75, 98, 70, 114, 70, 75, 45, 50, 176, GrowthRate.MEDIUM_SLOW, 50, false, true,
+ new PokemonSpecies(Species.ARROKUDA, 8, false, false, false, "Rush Pokémon", Type.WATER, null, 0.5, 1, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.PROPELLER_TAIL, 280, 41, 63, 40, 40, 30, 66, 255, 50, 56, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.BARRASKEWDA, 8, false, false, false, "Skewer Pokémon", Type.WATER, null, 1.3, 30, Abilities.SWIFT_SWIM, Abilities.NONE, Abilities.PROPELLER_TAIL, 490, 61, 123, 60, 60, 50, 136, 60, 50, 172, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.TOXEL, 8, false, false, false, "Baby Pokémon", Type.ELECTRIC, Type.POISON, 0.4, 11, Abilities.RATTLED, Abilities.STATIC, Abilities.KLUTZ, 242, 40, 38, 35, 54, 35, 40, 75, 50, 48, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.TOXTRICITY, 8, false, false, false, "Punk Pokémon", Type.ELECTRIC, Type.POISON, 1.6, 40, Abilities.PUNK_ROCK, Abilities.PLUS, Abilities.TECHNICIAN, 502, 75, 98, 70, 114, 70, 75, 45, 50, 176, GrowthRate.MEDIUM_SLOW, 50, false, true,
new PokemonForm("Amped Form", "amped", Type.ELECTRIC, Type.POISON, 1.6, 40, Abilities.PUNK_ROCK, Abilities.PLUS, Abilities.TECHNICIAN, 502, 75, 98, 70, 114, 70, 75, 45, 50, 176, false, ""),
new PokemonForm("Low-Key Form", "lowkey", Type.ELECTRIC, Type.POISON, 1.6, 40, Abilities.PUNK_ROCK, Abilities.MINUS, Abilities.TECHNICIAN, 502, 75, 98, 70, 114, 70, 75, 45, 50, 176),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.ELECTRIC, Type.POISON, 24, 40, Abilities.PUNK_ROCK, Abilities.MINUS, Abilities.TECHNICIAN, 602, 95, 118, 80, 144, 80, 85, 45, 50, 176),
),
- new PokemonSpecies(Species.SIZZLIPEDE, "Sizzlipede", 8, false, false, false, "Radiator Pokémon", Type.FIRE, Type.BUG, 0.7, 1, Abilities.FLASH_FIRE, Abilities.WHITE_SMOKE, Abilities.FLAME_BODY, 305, 50, 65, 45, 50, 50, 45, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CENTISKORCH, "Centiskorch", 8, false, false, false, "Radiator Pokémon", Type.FIRE, Type.BUG, 3, 120, Abilities.FLASH_FIRE, Abilities.WHITE_SMOKE, Abilities.FLAME_BODY, 525, 100, 115, 65, 90, 90, 65, 75, 50, 184, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.SIZZLIPEDE, 8, false, false, false, "Radiator Pokémon", Type.FIRE, Type.BUG, 0.7, 1, Abilities.FLASH_FIRE, Abilities.WHITE_SMOKE, Abilities.FLAME_BODY, 305, 50, 65, 45, 50, 50, 45, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CENTISKORCH, 8, false, false, false, "Radiator Pokémon", Type.FIRE, Type.BUG, 3, 120, Abilities.FLASH_FIRE, Abilities.WHITE_SMOKE, Abilities.FLAME_BODY, 525, 100, 115, 65, 90, 90, 65, 75, 50, 184, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.FIRE, Type.BUG, 3, 120, Abilities.FLASH_FIRE, Abilities.WHITE_SMOKE, Abilities.FLAME_BODY, 525, 100, 115, 65, 90, 90, 65, 75, 50, 184),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.FIRE, Type.BUG, 75, 120, Abilities.FLASH_FIRE, Abilities.WHITE_SMOKE, Abilities.FLAME_BODY, 625, 125, 145, 75, 105, 105, 70, 75, 50, 184),
),
- new PokemonSpecies(Species.CLOBBOPUS, "Clobbopus", 8, false, false, false, "Tantrum Pokémon", Type.FIGHTING, null, 0.6, 4, Abilities.LIMBER, Abilities.NONE, Abilities.TECHNICIAN, 310, 50, 68, 60, 50, 50, 32, 180, 50, 62, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GRAPPLOCT, "Grapploct", 8, false, false, false, "Jujitsu Pokémon", Type.FIGHTING, null, 1.6, 39, Abilities.LIMBER, Abilities.NONE, Abilities.TECHNICIAN, 480, 80, 118, 90, 70, 80, 42, 45, 50, 168, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SINISTEA, "Sinistea", 8, false, false, false, "Black Tea Pokémon", Type.GHOST, null, 0.1, 0.2, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, GrowthRate.MEDIUM_FAST, null, false, false,
+ new PokemonSpecies(Species.CLOBBOPUS, 8, false, false, false, "Tantrum Pokémon", Type.FIGHTING, null, 0.6, 4, Abilities.LIMBER, Abilities.NONE, Abilities.TECHNICIAN, 310, 50, 68, 60, 50, 50, 32, 180, 50, 62, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GRAPPLOCT, 8, false, false, false, "Jujitsu Pokémon", Type.FIGHTING, null, 1.6, 39, Abilities.LIMBER, Abilities.NONE, Abilities.TECHNICIAN, 480, 80, 118, 90, 70, 80, 42, 45, 50, 168, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SINISTEA, 8, false, false, false, "Black Tea Pokémon", Type.GHOST, null, 0.1, 0.2, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, GrowthRate.MEDIUM_FAST, null, false, false,
new PokemonForm("Phony Form", "phony", Type.GHOST, null, 0.1, 0.2, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, false, ""),
new PokemonForm("Antique Form", "antique", Type.GHOST, null, 0.1, 0.2, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, false, ""),
),
- new PokemonSpecies(Species.POLTEAGEIST, "Polteageist", 8, false, false, false, "Black Tea Pokémon", Type.GHOST, null, 0.2, 0.4, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 508, 60, 65, 65, 134, 114, 70, 60, 50, 178, GrowthRate.MEDIUM_FAST, null, false, false,
+ new PokemonSpecies(Species.POLTEAGEIST, 8, false, false, false, "Black Tea Pokémon", Type.GHOST, null, 0.2, 0.4, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 508, 60, 65, 65, 134, 114, 70, 60, 50, 178, GrowthRate.MEDIUM_FAST, null, false, false,
new PokemonForm("Phony Form", "phony", Type.GHOST, null, 0.2, 0.4, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 508, 60, 65, 65, 134, 114, 70, 60, 50, 178, false, ""),
new PokemonForm("Antique Form", "antique", Type.GHOST, null, 0.2, 0.4, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 508, 60, 65, 65, 134, 114, 70, 60, 50, 178, false, ""),
),
- new PokemonSpecies(Species.HATENNA, "Hatenna", 8, false, false, false, "Calm Pokémon", Type.PSYCHIC, null, 0.4, 3.4, Abilities.HEALER, Abilities.ANTICIPATION, Abilities.MAGIC_BOUNCE, 265, 42, 30, 45, 56, 53, 39, 235, 50, 53, GrowthRate.SLOW, 0, false),
- new PokemonSpecies(Species.HATTREM, "Hattrem", 8, false, false, false, "Serene Pokémon", Type.PSYCHIC, null, 0.6, 4.8, Abilities.HEALER, Abilities.ANTICIPATION, Abilities.MAGIC_BOUNCE, 370, 57, 40, 65, 86, 73, 49, 120, 50, 130, GrowthRate.SLOW, 0, false),
- new PokemonSpecies(Species.HATTERENE, "Hatterene", 8, false, false, false, "Silent Pokémon", Type.PSYCHIC, Type.FAIRY, 2.1, 5.1, Abilities.HEALER, Abilities.ANTICIPATION, Abilities.MAGIC_BOUNCE, 510, 57, 90, 95, 136, 103, 29, 45, 50, 255, GrowthRate.SLOW, 0, false, true,
+ new PokemonSpecies(Species.HATENNA, 8, false, false, false, "Calm Pokémon", Type.PSYCHIC, null, 0.4, 3.4, Abilities.HEALER, Abilities.ANTICIPATION, Abilities.MAGIC_BOUNCE, 265, 42, 30, 45, 56, 53, 39, 235, 50, 53, GrowthRate.SLOW, 0, false),
+ new PokemonSpecies(Species.HATTREM, 8, false, false, false, "Serene Pokémon", Type.PSYCHIC, null, 0.6, 4.8, Abilities.HEALER, Abilities.ANTICIPATION, Abilities.MAGIC_BOUNCE, 370, 57, 40, 65, 86, 73, 49, 120, 50, 130, GrowthRate.SLOW, 0, false),
+ new PokemonSpecies(Species.HATTERENE, 8, false, false, false, "Silent Pokémon", Type.PSYCHIC, Type.FAIRY, 2.1, 5.1, Abilities.HEALER, Abilities.ANTICIPATION, Abilities.MAGIC_BOUNCE, 510, 57, 90, 95, 136, 103, 29, 45, 50, 255, GrowthRate.SLOW, 0, false, true,
new PokemonForm("Normal", "", Type.PSYCHIC, Type.FAIRY, 2.1, 5.1, Abilities.HEALER, Abilities.ANTICIPATION, Abilities.MAGIC_BOUNCE, 510, 57, 90, 95, 136, 103, 29, 45, 50, 255),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.PSYCHIC, Type.FAIRY, 26, 5.1, Abilities.HEALER, Abilities.ANTICIPATION, Abilities.MAGIC_BOUNCE, 610, 70, 105, 110, 160, 125, 40, 45, 50, 255),
),
- new PokemonSpecies(Species.IMPIDIMP, "Impidimp", 8, false, false, false, "Wily Pokémon", Type.DARK, Type.FAIRY, 0.4, 5.5, Abilities.PRANKSTER, Abilities.FRISK, Abilities.PICKPOCKET, 265, 45, 45, 30, 55, 40, 50, 255, 50, 53, GrowthRate.MEDIUM_FAST, 100, false),
- new PokemonSpecies(Species.MORGREM, "Morgrem", 8, false, false, false, "Devious Pokémon", Type.DARK, Type.FAIRY, 0.8, 12.5, Abilities.PRANKSTER, Abilities.FRISK, Abilities.PICKPOCKET, 370, 65, 60, 45, 75, 55, 70, 120, 50, 130, GrowthRate.MEDIUM_FAST, 100, false),
- new PokemonSpecies(Species.GRIMMSNARL, "Grimmsnarl", 8, false, false, false, "Bulk Up Pokémon", Type.DARK, Type.FAIRY, 1.5, 61, Abilities.PRANKSTER, Abilities.FRISK, Abilities.PICKPOCKET, 510, 95, 120, 65, 95, 75, 60, 45, 50, 255, GrowthRate.MEDIUM_FAST, 100, false, true,
+ new PokemonSpecies(Species.IMPIDIMP, 8, false, false, false, "Wily Pokémon", Type.DARK, Type.FAIRY, 0.4, 5.5, Abilities.PRANKSTER, Abilities.FRISK, Abilities.PICKPOCKET, 265, 45, 45, 30, 55, 40, 50, 255, 50, 53, GrowthRate.MEDIUM_FAST, 100, false),
+ new PokemonSpecies(Species.MORGREM, 8, false, false, false, "Devious Pokémon", Type.DARK, Type.FAIRY, 0.8, 12.5, Abilities.PRANKSTER, Abilities.FRISK, Abilities.PICKPOCKET, 370, 65, 60, 45, 75, 55, 70, 120, 50, 130, GrowthRate.MEDIUM_FAST, 100, false),
+ new PokemonSpecies(Species.GRIMMSNARL, 8, false, false, false, "Bulk Up Pokémon", Type.DARK, Type.FAIRY, 1.5, 61, Abilities.PRANKSTER, Abilities.FRISK, Abilities.PICKPOCKET, 510, 95, 120, 65, 95, 75, 60, 45, 50, 255, GrowthRate.MEDIUM_FAST, 100, false, true,
new PokemonForm("Normal", "", Type.DARK, Type.FAIRY, 1.5, 61, Abilities.PRANKSTER, Abilities.FRISK, Abilities.PICKPOCKET, 510, 95, 120, 65, 95, 75, 60, 45, 50, 255),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.DARK, Type.FAIRY, 32, 61, Abilities.PRANKSTER, Abilities.FRISK, Abilities.PICKPOCKET, 610, 120, 155, 75, 110, 85, 65, 45, 50, 255),
),
- new PokemonSpecies(Species.OBSTAGOON, "Obstagoon", 8, false, false, false, "Blocking Pokémon", Type.DARK, Type.NORMAL, 1.6, 46, Abilities.RECKLESS, Abilities.GUTS, Abilities.DEFIANT, 520, 93, 90, 101, 60, 81, 95, 45, 50, 260, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PERRSERKER, "Perrserker", 8, false, false, false, "Viking Pokémon", Type.STEEL, null, 0.8, 28, Abilities.BATTLE_ARMOR, Abilities.TOUGH_CLAWS, Abilities.STEELY_SPIRIT, 440, 70, 110, 100, 50, 60, 50, 90, 50, 154, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CURSOLA, "Cursola", 8, false, false, false, "Coral Pokémon", Type.GHOST, null, 1, 0.4, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.PERISH_BODY, 510, 60, 95, 50, 145, 130, 30, 30, 50, 179, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.SIRFETCHD, "Sirfetch'd", 8, false, false, false, "Wild Duck Pokémon", Type.FIGHTING, null, 0.8, 117, Abilities.STEADFAST, Abilities.NONE, Abilities.SCRAPPY, 507, 62, 135, 95, 68, 82, 65, 45, 50, 177, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MR_RIME, "Mr. Rime", 8, false, false, false, "Comedian Pokémon", Type.ICE, Type.PSYCHIC, 1.5, 58.2, Abilities.TANGLED_FEET, Abilities.SCREEN_CLEANER, Abilities.ICE_BODY, 520, 80, 85, 75, 110, 100, 70, 45, 50, 182, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.RUNERIGUS, "Runerigus", 8, false, false, false, "Grudge Pokémon", Type.GROUND, Type.GHOST, 1.6, 66.6, Abilities.WANDERING_SPIRIT, Abilities.NONE, Abilities.NONE, 483, 58, 95, 145, 50, 105, 30, 90, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.MILCERY, "Milcery", 8, false, false, false, "Cream Pokémon", Type.FAIRY, null, 0.2, 0.3, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 270, 45, 40, 40, 50, 61, 34, 200, 50, 54, GrowthRate.MEDIUM_FAST, 0, false),
- new PokemonSpecies(Species.ALCREMIE, "Alcremie", 8, false, false, false, "Cream Pokémon", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, GrowthRate.MEDIUM_FAST, 0, false, true,
+ new PokemonSpecies(Species.OBSTAGOON, 8, false, false, false, "Blocking Pokémon", Type.DARK, Type.NORMAL, 1.6, 46, Abilities.RECKLESS, Abilities.GUTS, Abilities.DEFIANT, 520, 93, 90, 101, 60, 81, 95, 45, 50, 260, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PERRSERKER, 8, false, false, false, "Viking Pokémon", Type.STEEL, null, 0.8, 28, Abilities.BATTLE_ARMOR, Abilities.TOUGH_CLAWS, Abilities.STEELY_SPIRIT, 440, 70, 110, 100, 50, 60, 50, 90, 50, 154, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CURSOLA, 8, false, false, false, "Coral Pokémon", Type.GHOST, null, 1, 0.4, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.PERISH_BODY, 510, 60, 95, 50, 145, 130, 30, 30, 50, 179, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.SIRFETCHD, 8, false, false, false, "Wild Duck Pokémon", Type.FIGHTING, null, 0.8, 117, Abilities.STEADFAST, Abilities.NONE, Abilities.SCRAPPY, 507, 62, 135, 95, 68, 82, 65, 45, 50, 177, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MR_RIME, 8, false, false, false, "Comedian Pokémon", Type.ICE, Type.PSYCHIC, 1.5, 58.2, Abilities.TANGLED_FEET, Abilities.SCREEN_CLEANER, Abilities.ICE_BODY, 520, 80, 85, 75, 110, 100, 70, 45, 50, 182, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.RUNERIGUS, 8, false, false, false, "Grudge Pokémon", Type.GROUND, Type.GHOST, 1.6, 66.6, Abilities.WANDERING_SPIRIT, Abilities.NONE, Abilities.NONE, 483, 58, 95, 145, 50, 105, 30, 90, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.MILCERY, 8, false, false, false, "Cream Pokémon", Type.FAIRY, null, 0.2, 0.3, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 270, 45, 40, 40, 50, 61, 34, 200, 50, 54, GrowthRate.MEDIUM_FAST, 0, false),
+ new PokemonSpecies(Species.ALCREMIE, 8, false, false, false, "Cream Pokémon", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, GrowthRate.MEDIUM_FAST, 0, false, true,
new PokemonForm("Vanilla Cream", "vanilla-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, ""),
new PokemonForm("Ruby Cream", "ruby-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, ""),
new PokemonForm("Matcha Cream", "matcha-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, ""),
@@ -2172,238 +2219,238 @@ export function initSpecies() {
new PokemonForm("Rainbow Swirl", "rainbow-swirl", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, ""),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.FAIRY, null, 30, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 595, 80, 70, 85, 140, 150, 65, 100, 50, 173),
),
- new PokemonSpecies(Species.FALINKS, "Falinks", 8, false, false, false, "Formation Pokémon", Type.FIGHTING, null, 3, 62, Abilities.BATTLE_ARMOR, Abilities.NONE, Abilities.DEFIANT, 470, 65, 100, 100, 70, 60, 75, 45, 50, 165, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.PINCURCHIN, "Pincurchin", 8, false, false, false, "Sea Urchin Pokémon", Type.ELECTRIC, null, 0.3, 1, Abilities.LIGHTNING_ROD, Abilities.NONE, Abilities.ELECTRIC_SURGE, 435, 48, 101, 95, 91, 85, 15, 75, 50, 152, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SNOM, "Snom", 8, false, false, false, "Worm Pokémon", Type.ICE, Type.BUG, 0.3, 3.8, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.ICE_SCALES, 185, 30, 25, 35, 45, 30, 20, 190, 50, 37, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FROSMOTH, "Frosmoth", 8, false, false, false, "Frost Moth Pokémon", Type.ICE, Type.BUG, 1.3, 42, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.ICE_SCALES, 475, 70, 65, 60, 125, 90, 65, 75, 50, 166, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.STONJOURNER, "Stonjourner", 8, false, false, false, "Big Rock Pokémon", Type.ROCK, null, 2.5, 520, Abilities.POWER_SPOT, Abilities.NONE, Abilities.NONE, 470, 100, 125, 135, 20, 20, 70, 60, 50, 165, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.EISCUE, "Eiscue", 8, false, false, false, "Penguin Pokémon", Type.ICE, null, 1.4, 89, Abilities.ICE_FACE, Abilities.NONE, Abilities.NONE, 470, 75, 80, 110, 65, 90, 50, 60, 50, 165, GrowthRate.SLOW, 50, false, false,
+ new PokemonSpecies(Species.FALINKS, 8, false, false, false, "Formation Pokémon", Type.FIGHTING, null, 3, 62, Abilities.BATTLE_ARMOR, Abilities.NONE, Abilities.DEFIANT, 470, 65, 100, 100, 70, 60, 75, 45, 50, 165, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.PINCURCHIN, 8, false, false, false, "Sea Urchin Pokémon", Type.ELECTRIC, null, 0.3, 1, Abilities.LIGHTNING_ROD, Abilities.NONE, Abilities.ELECTRIC_SURGE, 435, 48, 101, 95, 91, 85, 15, 75, 50, 152, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SNOM, 8, false, false, false, "Worm Pokémon", Type.ICE, Type.BUG, 0.3, 3.8, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.ICE_SCALES, 185, 30, 25, 35, 45, 30, 20, 190, 50, 37, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FROSMOTH, 8, false, false, false, "Frost Moth Pokémon", Type.ICE, Type.BUG, 1.3, 42, Abilities.SHIELD_DUST, Abilities.NONE, Abilities.ICE_SCALES, 475, 70, 65, 60, 125, 90, 65, 75, 50, 166, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.STONJOURNER, 8, false, false, false, "Big Rock Pokémon", Type.ROCK, null, 2.5, 520, Abilities.POWER_SPOT, Abilities.NONE, Abilities.NONE, 470, 100, 125, 135, 20, 20, 70, 60, 50, 165, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.EISCUE, 8, false, false, false, "Penguin Pokémon", Type.ICE, null, 1.4, 89, Abilities.ICE_FACE, Abilities.NONE, Abilities.NONE, 470, 75, 80, 110, 65, 90, 50, 60, 50, 165, GrowthRate.SLOW, 50, false, false,
new PokemonForm("Ice Face", "", Type.ICE, null, 1.4, 89, Abilities.ICE_FACE, Abilities.NONE, Abilities.NONE, 470, 75, 80, 110, 65, 90, 50, 60, 50, 165),
new PokemonForm("No Ice", "no-ice", Type.ICE, null, 1.4, 89, Abilities.ICE_FACE, Abilities.NONE, Abilities.NONE, 470, 75, 80, 70, 65, 50, 130, 60, 50, 165),
),
- new PokemonSpecies(Species.INDEEDEE, "Indeedee", 8, false, false, false, "Emotion Pokémon", Type.PSYCHIC, Type.NORMAL, 0.9, 28, Abilities.INNER_FOCUS, Abilities.SYNCHRONIZE, Abilities.PSYCHIC_SURGE, 475, 60, 65, 55, 105, 95, 95, 30, 140, 166, GrowthRate.FAST, 50, false, false,
+ new PokemonSpecies(Species.INDEEDEE, 8, false, false, false, "Emotion Pokémon", Type.PSYCHIC, Type.NORMAL, 0.9, 28, Abilities.INNER_FOCUS, Abilities.SYNCHRONIZE, Abilities.PSYCHIC_SURGE, 475, 60, 65, 55, 105, 95, 95, 30, 140, 166, GrowthRate.FAST, 50, false, false,
new PokemonForm("Male", "male", Type.PSYCHIC, Type.NORMAL, 0.9, 28, Abilities.INNER_FOCUS, Abilities.SYNCHRONIZE, Abilities.PSYCHIC_SURGE, 475, 60, 65, 55, 105, 95, 95, 30, 140, 166, false, ""),
new PokemonForm("Female", "female", Type.PSYCHIC, Type.NORMAL, 0.9, 28, Abilities.OWN_TEMPO, Abilities.SYNCHRONIZE, Abilities.PSYCHIC_SURGE, 475, 70, 55, 65, 95, 105, 85, 30, 140, 166),
),
- new PokemonSpecies(Species.MORPEKO, "Morpeko", 8, false, false, false, "Two-Sided Pokémon", Type.ELECTRIC, Type.DARK, 0.3, 3, Abilities.HUNGER_SWITCH, Abilities.NONE, Abilities.NONE, 436, 58, 95, 58, 70, 58, 97, 180, 50, 153, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.MORPEKO, 8, false, false, false, "Two-Sided Pokémon", Type.ELECTRIC, Type.DARK, 0.3, 3, Abilities.HUNGER_SWITCH, Abilities.NONE, Abilities.NONE, 436, 58, 95, 58, 70, 58, 97, 180, 50, 153, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Full Belly Mode", "full-belly", Type.ELECTRIC, Type.DARK, 0.3, 3, Abilities.HUNGER_SWITCH, Abilities.NONE, Abilities.NONE, 436, 58, 95, 58, 70, 58, 97, 180, 50, 153, false, ""),
new PokemonForm("Hangry Mode", "hangry", Type.ELECTRIC, Type.DARK, 0.3, 3, Abilities.HUNGER_SWITCH, Abilities.NONE, Abilities.NONE, 436, 58, 95, 58, 70, 58, 97, 180, 50, 153),
),
- new PokemonSpecies(Species.CUFANT, "Cufant", 8, false, false, false, "Copperderm Pokémon", Type.STEEL, null, 1.2, 100, Abilities.SHEER_FORCE, Abilities.NONE, Abilities.HEAVY_METAL, 330, 72, 80, 49, 40, 49, 40, 190, 50, 66, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.COPPERAJAH, "Copperajah", 8, false, false, false, "Copperderm Pokémon", Type.STEEL, null, 3, 650, Abilities.SHEER_FORCE, Abilities.NONE, Abilities.HEAVY_METAL, 500, 122, 130, 69, 80, 69, 30, 90, 50, 175, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.CUFANT, 8, false, false, false, "Copperderm Pokémon", Type.STEEL, null, 1.2, 100, Abilities.SHEER_FORCE, Abilities.NONE, Abilities.HEAVY_METAL, 330, 72, 80, 49, 40, 49, 40, 190, 50, 66, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.COPPERAJAH, 8, false, false, false, "Copperderm Pokémon", Type.STEEL, null, 3, 650, Abilities.SHEER_FORCE, Abilities.NONE, Abilities.HEAVY_METAL, 500, 122, 130, 69, 80, 69, 30, 90, 50, 175, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.STEEL, null, 3, 650, Abilities.SHEER_FORCE, Abilities.NONE, Abilities.HEAVY_METAL, 500, 122, 130, 69, 80, 69, 30, 90, 50, 175),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.STEEL, null, 23, 650, Abilities.SHEER_FORCE, Abilities.NONE, Abilities.HEAVY_METAL, 600, 150, 160, 80, 90, 80, 40, 90, 50, 175),
),
- new PokemonSpecies(Species.DRACOZOLT, "Dracozolt", 8, false, false, false, "Fossil Pokémon", Type.ELECTRIC, Type.DRAGON, 1.8, 190, Abilities.VOLT_ABSORB, Abilities.HUSTLE, Abilities.SAND_RUSH, 505, 90, 100, 90, 80, 70, 75, 45, 50, 177, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.ARCTOZOLT, "Arctozolt", 8, false, false, false, "Fossil Pokémon", Type.ELECTRIC, Type.ICE, 2.3, 150, Abilities.VOLT_ABSORB, Abilities.STATIC, Abilities.SLUSH_RUSH, 505, 90, 100, 90, 90, 80, 55, 45, 50, 177, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.DRACOVISH, "Dracovish", 8, false, false, false, "Fossil Pokémon", Type.WATER, Type.DRAGON, 2.3, 215, Abilities.WATER_ABSORB, Abilities.STRONG_JAW, Abilities.SAND_RUSH, 505, 90, 90, 100, 70, 80, 75, 45, 50, 177, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.ARCTOVISH, "Arctovish", 8, false, false, false, "Fossil Pokémon", Type.WATER, Type.ICE, 2, 175, Abilities.WATER_ABSORB, Abilities.ICE_BODY, Abilities.SLUSH_RUSH, 505, 90, 90, 100, 80, 90, 55, 45, 50, 177, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.DURALUDON, "Duraludon", 8, false, false, false, "Alloy Pokémon", Type.STEEL, Type.DRAGON, 1.8, 40, Abilities.LIGHT_METAL, Abilities.HEAVY_METAL, Abilities.STALWART, 535, 70, 95, 115, 120, 50, 85, 45, 50, 187, GrowthRate.MEDIUM_FAST, 50, false, true,
+ new PokemonSpecies(Species.DRACOZOLT, 8, false, false, false, "Fossil Pokémon", Type.ELECTRIC, Type.DRAGON, 1.8, 190, Abilities.VOLT_ABSORB, Abilities.HUSTLE, Abilities.SAND_RUSH, 505, 90, 100, 90, 80, 70, 75, 45, 50, 177, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.ARCTOZOLT, 8, false, false, false, "Fossil Pokémon", Type.ELECTRIC, Type.ICE, 2.3, 150, Abilities.VOLT_ABSORB, Abilities.STATIC, Abilities.SLUSH_RUSH, 505, 90, 100, 90, 90, 80, 55, 45, 50, 177, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.DRACOVISH, 8, false, false, false, "Fossil Pokémon", Type.WATER, Type.DRAGON, 2.3, 215, Abilities.WATER_ABSORB, Abilities.STRONG_JAW, Abilities.SAND_RUSH, 505, 90, 90, 100, 70, 80, 75, 45, 50, 177, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.ARCTOVISH, 8, false, false, false, "Fossil Pokémon", Type.WATER, Type.ICE, 2, 175, Abilities.WATER_ABSORB, Abilities.ICE_BODY, Abilities.SLUSH_RUSH, 505, 90, 90, 100, 80, 90, 55, 45, 50, 177, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.DURALUDON, 8, false, false, false, "Alloy Pokémon", Type.STEEL, Type.DRAGON, 1.8, 40, Abilities.LIGHT_METAL, Abilities.HEAVY_METAL, Abilities.STALWART, 535, 70, 95, 115, 120, 50, 85, 45, 50, 187, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Normal", "", Type.STEEL, Type.DRAGON, 1.8, 40, Abilities.LIGHT_METAL, Abilities.HEAVY_METAL, Abilities.STALWART, 535, 70, 95, 115, 120, 50, 85, 45, 50, 187),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.STEEL, Type.DRAGON, 43, 40, Abilities.LIGHT_METAL, Abilities.HEAVY_METAL, Abilities.STALWART, 635, 90, 110, 145, 140, 60, 90, 45, 50, 187),
),
- new PokemonSpecies(Species.DREEPY, "Dreepy", 8, false, false, false, "Lingering Pokémon", Type.DRAGON, Type.GHOST, 0.5, 2, Abilities.CLEAR_BODY, Abilities.INFILTRATOR, Abilities.CURSED_BODY, 270, 28, 60, 30, 40, 30, 82, 45, 50, 54, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.DRAKLOAK, "Drakloak", 8, false, false, false, "Caretaker Pokémon", Type.DRAGON, Type.GHOST, 1.4, 11, Abilities.CLEAR_BODY, Abilities.INFILTRATOR, Abilities.CURSED_BODY, 410, 68, 80, 50, 60, 50, 102, 45, 50, 144, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.DRAGAPULT, "Dragapult", 8, false, false, false, "Stealth Pokémon", Type.DRAGON, Type.GHOST, 3, 50, Abilities.CLEAR_BODY, Abilities.INFILTRATOR, Abilities.CURSED_BODY, 600, 88, 120, 75, 100, 75, 142, 45, 50, 300, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.ZACIAN, "Zacian", 8, false, true, false, "Warrior Pokémon", Type.FAIRY, null, 2.8, 110, Abilities.INTREPID_SWORD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.DREEPY, 8, false, false, false, "Lingering Pokémon", Type.DRAGON, Type.GHOST, 0.5, 2, Abilities.CLEAR_BODY, Abilities.INFILTRATOR, Abilities.CURSED_BODY, 270, 28, 60, 30, 40, 30, 82, 45, 50, 54, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.DRAKLOAK, 8, false, false, false, "Caretaker Pokémon", Type.DRAGON, Type.GHOST, 1.4, 11, Abilities.CLEAR_BODY, Abilities.INFILTRATOR, Abilities.CURSED_BODY, 410, 68, 80, 50, 60, 50, 102, 45, 50, 144, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.DRAGAPULT, 8, false, false, false, "Stealth Pokémon", Type.DRAGON, Type.GHOST, 3, 50, Abilities.CLEAR_BODY, Abilities.INFILTRATOR, Abilities.CURSED_BODY, 600, 88, 120, 75, 100, 75, 142, 45, 50, 300, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.ZACIAN, 8, false, true, false, "Warrior Pokémon", Type.FAIRY, null, 2.8, 110, Abilities.INTREPID_SWORD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, GrowthRate.SLOW, null, false, false,
new PokemonForm("Hero of Many Battles", "hero", Type.FAIRY, null, 2.8, 110, Abilities.INTREPID_SWORD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, false, ""),
new PokemonForm("Crowned", "crowned", Type.FAIRY, Type.STEEL, 2.8, 355, Abilities.INTREPID_SWORD, Abilities.NONE, Abilities.NONE, 700, 92, 150, 115, 80, 115, 148, 10, 0, 335),
),
- new PokemonSpecies(Species.ZAMAZENTA, "Zamazenta", 8, false, true, false, "Warrior Pokémon", Type.FIGHTING, null, 2.9, 210, Abilities.DAUNTLESS_SHIELD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.ZAMAZENTA, 8, false, true, false, "Warrior Pokémon", Type.FIGHTING, null, 2.9, 210, Abilities.DAUNTLESS_SHIELD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, GrowthRate.SLOW, null, false, false,
new PokemonForm("Hero of Many Battles", "hero", Type.FIGHTING, null, 2.9, 210, Abilities.DAUNTLESS_SHIELD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, false, ""),
new PokemonForm("Crowned", "crowned", Type.FIGHTING, Type.STEEL, 2.9, 785, Abilities.DAUNTLESS_SHIELD, Abilities.NONE, Abilities.NONE, 700, 92, 120, 140, 80, 140, 128, 10, 0, 335),
),
- new PokemonSpecies(Species.ETERNATUS, "Eternatus", 8, false, true, false, "Gigantic Pokémon", Type.POISON, Type.DRAGON, 20, 950, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 690, 140, 85, 95, 145, 95, 130, 255, 0, 345, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.ETERNATUS, 8, false, true, false, "Gigantic Pokémon", Type.POISON, Type.DRAGON, 20, 950, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 690, 140, 85, 95, 145, 95, 130, 255, 0, 345, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.POISON, Type.DRAGON, 20, 950, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 690, 140, 85, 95, 145, 95, 130, 255, 0, 345),
new PokemonForm("E-Max", "eternamax", Type.POISON, Type.DRAGON, 100, 0, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 1125, 255, 115, 250, 125, 250, 130, 255, 0, 345),
),
- new PokemonSpecies(Species.KUBFU, "Kubfu", 8, true, false, false, "Wushu Pokémon", Type.FIGHTING, null, 0.6, 12, Abilities.INNER_FOCUS, Abilities.NONE, Abilities.NONE, 385, 60, 90, 60, 53, 50, 72, 3, 50, 77, GrowthRate.SLOW, 87.5, false),
- new PokemonSpecies(Species.URSHIFU, "Urshifu", 8, true, false, false, "Wushu Pokémon", Type.FIGHTING, Type.DARK, 1.9, 105, Abilities.UNSEEN_FIST, Abilities.NONE, Abilities.NONE, 550, 100, 130, 100, 63, 60, 97, 3, 50, 275, GrowthRate.SLOW, 87.5, false, true,
+ new PokemonSpecies(Species.KUBFU, 8, true, false, false, "Wushu Pokémon", Type.FIGHTING, null, 0.6, 12, Abilities.INNER_FOCUS, Abilities.NONE, Abilities.NONE, 385, 60, 90, 60, 53, 50, 72, 3, 50, 77, GrowthRate.SLOW, 87.5, false),
+ new PokemonSpecies(Species.URSHIFU, 8, true, false, false, "Wushu Pokémon", Type.FIGHTING, Type.DARK, 1.9, 105, Abilities.UNSEEN_FIST, Abilities.NONE, Abilities.NONE, 550, 100, 130, 100, 63, 60, 97, 3, 50, 275, GrowthRate.SLOW, 87.5, false, true,
new PokemonForm("Single Strike Style", "single-strike", Type.FIGHTING, Type.DARK, 1.9, 105, Abilities.UNSEEN_FIST, Abilities.NONE, Abilities.NONE, 550, 100, 130, 100, 63, 60, 97, 3, 50, 275, false, ""),
new PokemonForm("Rapid Strike Style", "rapid-strike", Type.FIGHTING, Type.WATER, 1.9, 105, Abilities.UNSEEN_FIST, Abilities.NONE, Abilities.NONE, 550, 100, 130, 100, 63, 60, 97, 3, 50, 275),
new PokemonForm("G-Max Single Strike Style", SpeciesFormKey.GIGANTAMAX_SINGLE, Type.FIGHTING, Type.DARK, 29, 105, Abilities.UNSEEN_FIST, Abilities.NONE, Abilities.NONE, 650, 125, 160, 120, 75, 70, 100, 3, 50, 275),
new PokemonForm("G-Max Rapid Strike Style", SpeciesFormKey.GIGANTAMAX_RAPID, Type.FIGHTING, Type.WATER, 26, 105, Abilities.UNSEEN_FIST, Abilities.NONE, Abilities.NONE, 650, 125, 160, 120, 75, 70, 100, 3, 50, 275),
),
- new PokemonSpecies(Species.ZARUDE, "Zarude", 8, false, false, true, "Rogue Monkey Pokémon", Type.DARK, Type.GRASS, 1.8, 70, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.NONE, 600, 105, 120, 105, 70, 95, 105, 3, 0, 300, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.ZARUDE, 8, false, false, true, "Rogue Monkey Pokémon", Type.DARK, Type.GRASS, 1.8, 70, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.NONE, 600, 105, 120, 105, 70, 95, 105, 3, 0, 300, GrowthRate.SLOW, null, false, false,
new PokemonForm("Normal", "", Type.DARK, Type.GRASS, 1.8, 70, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.NONE, 600, 105, 120, 105, 70, 95, 105, 3, 0, 300),
new PokemonForm("Dada", "dada", Type.DARK, Type.GRASS, 1.8, 70, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.NONE, 600, 105, 120, 105, 70, 95, 105, 3, 0, 300),
),
- new PokemonSpecies(Species.REGIELEKI, "Regieleki", 8, true, false, false, "Electron Pokémon", Type.ELECTRIC, null, 1.2, 145, Abilities.TRANSISTOR, Abilities.NONE, Abilities.NONE, 580, 80, 100, 50, 100, 50, 200, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.REGIDRAGO, "Regidrago", 8, true, false, false, "Dragon Orb Pokémon", Type.DRAGON, null, 2.1, 200, Abilities.DRAGONS_MAW, Abilities.NONE, Abilities.NONE, 580, 200, 100, 50, 100, 50, 80, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.GLASTRIER, "Glastrier", 8, true, false, false, "Wild Horse Pokémon", Type.ICE, null, 2.2, 800, Abilities.CHILLING_NEIGH, Abilities.NONE, Abilities.NONE, 580, 100, 145, 130, 65, 110, 30, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.SPECTRIER, "Spectrier", 8, true, false, false, "Swift Horse Pokémon", Type.GHOST, null, 2, 44.5, Abilities.GRIM_NEIGH, Abilities.NONE, Abilities.NONE, 580, 100, 65, 60, 145, 80, 130, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.CALYREX, "Calyrex", 8, true, false, false, "King Pokémon", Type.PSYCHIC, Type.GRASS, 1.1, 7.7, Abilities.UNNERVE, Abilities.NONE, Abilities.NONE, 500, 100, 80, 80, 80, 80, 80, 3, 100, 250, GrowthRate.SLOW, null, false, true,
+ new PokemonSpecies(Species.REGIELEKI, 8, true, false, false, "Electron Pokémon", Type.ELECTRIC, null, 1.2, 145, Abilities.TRANSISTOR, Abilities.NONE, Abilities.NONE, 580, 80, 100, 50, 100, 50, 200, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.REGIDRAGO, 8, true, false, false, "Dragon Orb Pokémon", Type.DRAGON, null, 2.1, 200, Abilities.DRAGONS_MAW, Abilities.NONE, Abilities.NONE, 580, 200, 100, 50, 100, 50, 80, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.GLASTRIER, 8, true, false, false, "Wild Horse Pokémon", Type.ICE, null, 2.2, 800, Abilities.CHILLING_NEIGH, Abilities.NONE, Abilities.NONE, 580, 100, 145, 130, 65, 110, 30, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.SPECTRIER, 8, true, false, false, "Swift Horse Pokémon", Type.GHOST, null, 2, 44.5, Abilities.GRIM_NEIGH, Abilities.NONE, Abilities.NONE, 580, 100, 65, 60, 145, 80, 130, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.CALYREX, 8, true, false, false, "King Pokémon", Type.PSYCHIC, Type.GRASS, 1.1, 7.7, Abilities.UNNERVE, Abilities.NONE, Abilities.NONE, 500, 100, 80, 80, 80, 80, 80, 3, 100, 250, GrowthRate.SLOW, null, false, true,
new PokemonForm("Normal", "", Type.PSYCHIC, Type.GRASS, 1.1, 7.7, Abilities.UNNERVE, Abilities.NONE, Abilities.NONE, 500, 100, 80, 80, 80, 80, 80, 3, 100, 250),
new PokemonForm("Ice", "ice", Type.PSYCHIC, Type.ICE, 2.4, 809.1, Abilities.AS_ONE_GLASTRIER, Abilities.NONE, Abilities.NONE, 680, 100, 165, 150, 85, 130, 50, 3, 100, 250),
new PokemonForm("Shadow", "shadow", Type.PSYCHIC, Type.GHOST, 2.4, 53.6, Abilities.AS_ONE_SPECTRIER, Abilities.NONE, Abilities.NONE, 680, 100, 85, 80, 165, 100, 150, 3, 100, 250),
),
- new PokemonSpecies(Species.WYRDEER, "Wyrdeer", 8, false, false, false, "Big Horn Pokémon", Type.NORMAL, Type.PSYCHIC, 1.8, 95.1, Abilities.INTIMIDATE, Abilities.FRISK, Abilities.SAP_SIPPER, 525, 103, 105, 72, 105, 75, 65, 135, 50, 263, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.KLEAVOR, "Kleavor", 8, false, false, false, "Axe Pokémon", Type.BUG, Type.ROCK, 1.8, 89, Abilities.SWARM, Abilities.SHEER_FORCE, Abilities.SHARPNESS, 500, 70, 135, 95, 45, 70, 85, 115, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.URSALUNA, "Ursaluna", 8, false, false, false, "Peat Pokémon", Type.GROUND, Type.NORMAL, 2.4, 290, Abilities.GUTS, Abilities.BULLETPROOF, Abilities.UNNERVE, 550, 130, 140, 105, 45, 80, 50, 75, 50, 275, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BASCULEGION, "Basculegion", 8, false, false, false, "Big Fish Pokémon", Type.WATER, Type.GHOST, 3, 110, Abilities.SWIFT_SWIM, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 530, 120, 112, 65, 80, 75, 78, 135, 50, 265, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.WYRDEER, 8, false, false, false, "Big Horn Pokémon", Type.NORMAL, Type.PSYCHIC, 1.8, 95.1, Abilities.INTIMIDATE, Abilities.FRISK, Abilities.SAP_SIPPER, 525, 103, 105, 72, 105, 75, 65, 135, 50, 263, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.KLEAVOR, 8, false, false, false, "Axe Pokémon", Type.BUG, Type.ROCK, 1.8, 89, Abilities.SWARM, Abilities.SHEER_FORCE, Abilities.SHARPNESS, 500, 70, 135, 95, 45, 70, 85, 115, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.URSALUNA, 8, false, false, false, "Peat Pokémon", Type.GROUND, Type.NORMAL, 2.4, 290, Abilities.GUTS, Abilities.BULLETPROOF, Abilities.UNNERVE, 550, 130, 140, 105, 45, 80, 50, 75, 50, 275, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BASCULEGION, 8, false, false, false, "Big Fish Pokémon", Type.WATER, Type.GHOST, 3, 110, Abilities.SWIFT_SWIM, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 530, 120, 112, 65, 80, 75, 78, 135, 50, 265, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Male", "male", Type.WATER, Type.GHOST, 3, 110, Abilities.SWIFT_SWIM, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 530, 120, 112, 65, 80, 75, 78, 135, 50, 265, false, ""),
new PokemonForm("Female", "female", Type.WATER, Type.GHOST, 3, 110, Abilities.SWIFT_SWIM, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 530, 120, 92, 65, 100, 75, 78, 135, 50, 265),
),
- new PokemonSpecies(Species.SNEASLER, "Sneasler", 8, false, false, false, "Free Climb Pokémon", Type.FIGHTING, Type.POISON, 1.3, 43, Abilities.PRESSURE, Abilities.UNBURDEN, Abilities.POISON_TOUCH, 510, 80, 130, 60, 40, 80, 120, 135, 50, 102, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.OVERQWIL, "Overqwil", 8, false, false, false, "Pin Cluster Pokémon", Type.DARK, Type.POISON, 2.5, 60.5, Abilities.POISON_POINT, Abilities.SWIFT_SWIM, Abilities.INTIMIDATE, 510, 85, 115, 95, 65, 65, 85, 135, 50, 179, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ENAMORUS, "Enamorus", 8, true, false, false, "Love-Hate Pokémon", Type.FAIRY, Type.FLYING, 1.6, 48, Abilities.CUTE_CHARM, Abilities.NONE, Abilities.CONTRARY, 580, 74, 115, 70, 135, 80, 106, 3, 50, 116, GrowthRate.SLOW, 0, false, true,
+ new PokemonSpecies(Species.SNEASLER, 8, false, false, false, "Free Climb Pokémon", Type.FIGHTING, Type.POISON, 1.3, 43, Abilities.PRESSURE, Abilities.UNBURDEN, Abilities.POISON_TOUCH, 510, 80, 130, 60, 40, 80, 120, 135, 50, 102, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.OVERQWIL, 8, false, false, false, "Pin Cluster Pokémon", Type.DARK, Type.POISON, 2.5, 60.5, Abilities.POISON_POINT, Abilities.SWIFT_SWIM, Abilities.INTIMIDATE, 510, 85, 115, 95, 65, 65, 85, 135, 50, 179, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ENAMORUS, 8, true, false, false, "Love-Hate Pokémon", Type.FAIRY, Type.FLYING, 1.6, 48, Abilities.CUTE_CHARM, Abilities.NONE, Abilities.CONTRARY, 580, 74, 115, 70, 135, 80, 106, 3, 50, 116, GrowthRate.SLOW, 0, false, true,
new PokemonForm("Incarnate Forme", "incarnate", Type.FAIRY, Type.FLYING, 1.6, 48, Abilities.CUTE_CHARM, Abilities.NONE, Abilities.CONTRARY, 580, 74, 115, 70, 135, 80, 106, 3, 50, 116),
new PokemonForm("Therian Forme", "therian", Type.FAIRY, Type.FLYING, 1.6, 48, Abilities.OVERCOAT, Abilities.NONE, Abilities.NONE, 580, 74, 115, 110, 135, 100, 46, 3, 50, 116),
),
- new PokemonSpecies(Species.SPRIGATITO, "Sprigatito", 9, false, false, false, "Grass Cat Pokémon", Type.GRASS, null, 0.4, 4.1, Abilities.OVERGROW, Abilities.NONE, Abilities.PROTEAN, 310, 40, 61, 54, 45, 45, 65, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.FLORAGATO, "Floragato", 9, false, false, false, "Grass Cat Pokémon", Type.GRASS, null, 0.9, 12.2, Abilities.OVERGROW, Abilities.NONE, Abilities.PROTEAN, 410, 61, 80, 63, 60, 63, 83, 45, 50, 144, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.MEOWSCARADA, "Meowscarada", 9, false, false, false, "Magician Pokémon", Type.GRASS, Type.DARK, 1.5, 31.2, Abilities.OVERGROW, Abilities.NONE, Abilities.PROTEAN, 530, 76, 110, 70, 81, 70, 123, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.FUECOCO, "Fuecoco", 9, false, false, false, "Fire Croc Pokémon", Type.FIRE, null, 0.4, 9.8, Abilities.BLAZE, Abilities.NONE, Abilities.UNAWARE, 310, 67, 45, 59, 63, 40, 36, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.CROCALOR, "Crocalor", 9, false, false, false, "Fire Croc Pokémon", Type.FIRE, null, 1, 30.7, Abilities.BLAZE, Abilities.NONE, Abilities.UNAWARE, 411, 81, 55, 78, 90, 58, 49, 45, 50, 144, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.SKELEDIRGE, "Skeledirge", 9, false, false, false, "Singer Pokémon", Type.FIRE, Type.GHOST, 1.6, 326.5, Abilities.BLAZE, Abilities.NONE, Abilities.UNAWARE, 530, 104, 75, 100, 110, 75, 66, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.QUAXLY, "Quaxly", 9, false, false, false, "Duckling Pokémon", Type.WATER, null, 0.5, 6.1, Abilities.TORRENT, Abilities.NONE, Abilities.MOXIE, 310, 55, 65, 45, 50, 45, 50, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.QUAXWELL, "Quaxwell", 9, false, false, false, "Practicing Pokémon", Type.WATER, null, 1.2, 21.5, Abilities.TORRENT, Abilities.NONE, Abilities.MOXIE, 410, 70, 85, 65, 65, 60, 65, 45, 50, 144, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.QUAQUAVAL, "Quaquaval", 9, false, false, false, "Dancer Pokémon", Type.WATER, Type.FIGHTING, 1.8, 61.9, Abilities.TORRENT, Abilities.NONE, Abilities.MOXIE, 530, 85, 120, 80, 85, 75, 85, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.LECHONK, "Lechonk", 9, false, false, false, "Hog Pokémon", Type.NORMAL, null, 0.5, 10.2, Abilities.AROMA_VEIL, Abilities.GLUTTONY, Abilities.THICK_FAT, 254, 54, 45, 40, 35, 45, 35, 255, 50, 51, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.OINKOLOGNE, "Oinkologne", 9, false, false, false, "Hog Pokémon", Type.NORMAL, null, 1, 120, Abilities.LINGERING_AROMA, Abilities.GLUTTONY, Abilities.THICK_FAT, 489, 110, 100, 75, 59, 80, 65, 100, 50, 171, GrowthRate.MEDIUM_FAST, 100, false, false,
+ new PokemonSpecies(Species.SPRIGATITO, 9, false, false, false, "Grass Cat Pokémon", Type.GRASS, null, 0.4, 4.1, Abilities.OVERGROW, Abilities.NONE, Abilities.PROTEAN, 310, 40, 61, 54, 45, 45, 65, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.FLORAGATO, 9, false, false, false, "Grass Cat Pokémon", Type.GRASS, null, 0.9, 12.2, Abilities.OVERGROW, Abilities.NONE, Abilities.PROTEAN, 410, 61, 80, 63, 60, 63, 83, 45, 50, 144, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.MEOWSCARADA, 9, false, false, false, "Magician Pokémon", Type.GRASS, Type.DARK, 1.5, 31.2, Abilities.OVERGROW, Abilities.NONE, Abilities.PROTEAN, 530, 76, 110, 70, 81, 70, 123, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.FUECOCO, 9, false, false, false, "Fire Croc Pokémon", Type.FIRE, null, 0.4, 9.8, Abilities.BLAZE, Abilities.NONE, Abilities.UNAWARE, 310, 67, 45, 59, 63, 40, 36, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.CROCALOR, 9, false, false, false, "Fire Croc Pokémon", Type.FIRE, null, 1, 30.7, Abilities.BLAZE, Abilities.NONE, Abilities.UNAWARE, 411, 81, 55, 78, 90, 58, 49, 45, 50, 144, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.SKELEDIRGE, 9, false, false, false, "Singer Pokémon", Type.FIRE, Type.GHOST, 1.6, 326.5, Abilities.BLAZE, Abilities.NONE, Abilities.UNAWARE, 530, 104, 75, 100, 110, 75, 66, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.QUAXLY, 9, false, false, false, "Duckling Pokémon", Type.WATER, null, 0.5, 6.1, Abilities.TORRENT, Abilities.NONE, Abilities.MOXIE, 310, 55, 65, 45, 50, 45, 50, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.QUAXWELL, 9, false, false, false, "Practicing Pokémon", Type.WATER, null, 1.2, 21.5, Abilities.TORRENT, Abilities.NONE, Abilities.MOXIE, 410, 70, 85, 65, 65, 60, 65, 45, 50, 144, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.QUAQUAVAL, 9, false, false, false, "Dancer Pokémon", Type.WATER, Type.FIGHTING, 1.8, 61.9, Abilities.TORRENT, Abilities.NONE, Abilities.MOXIE, 530, 85, 120, 80, 85, 75, 85, 45, 50, 265, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.LECHONK, 9, false, false, false, "Hog Pokémon", Type.NORMAL, null, 0.5, 10.2, Abilities.AROMA_VEIL, Abilities.GLUTTONY, Abilities.THICK_FAT, 254, 54, 45, 40, 35, 45, 35, 255, 50, 51, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.OINKOLOGNE, 9, false, false, false, "Hog Pokémon", Type.NORMAL, null, 1, 120, Abilities.LINGERING_AROMA, Abilities.GLUTTONY, Abilities.THICK_FAT, 489, 110, 100, 75, 59, 80, 65, 100, 50, 171, GrowthRate.MEDIUM_FAST, 100, false, false,
new PokemonForm("Male", "male", Type.NORMAL, null, 1, 120, Abilities.LINGERING_AROMA, Abilities.GLUTTONY, Abilities.THICK_FAT, 489, 110, 100, 75, 59, 80, 65, 100, 50, 171, false, ""),
new PokemonForm("Female", "female", Type.NORMAL, null, 1, 120, Abilities.AROMA_VEIL, Abilities.GLUTTONY, Abilities.THICK_FAT, 489, 115, 90, 70, 59, 90, 65, 100, 50, 171),
),
- new PokemonSpecies(Species.TAROUNTULA, "Tarountula", 9, false, false, false, "String Ball Pokémon", Type.BUG, null, 0.3, 4, Abilities.INSOMNIA, Abilities.NONE, Abilities.STAKEOUT, 210, 35, 41, 45, 29, 40, 20, 255, 50, 42, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.SPIDOPS, "Spidops", 9, false, false, false, "Trap Pokémon", Type.BUG, null, 1, 16.5, Abilities.INSOMNIA, Abilities.NONE, Abilities.STAKEOUT, 404, 60, 79, 92, 52, 86, 35, 120, 50, 141, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.NYMBLE, "Nymble", 9, false, false, false, "Grasshopper Pokémon", Type.BUG, null, 0.2, 1, Abilities.SWARM, Abilities.NONE, Abilities.TINTED_LENS, 210, 33, 46, 40, 21, 25, 45, 190, 20, 42, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.LOKIX, "Lokix", 9, false, false, false, "Grasshopper Pokémon", Type.BUG, Type.DARK, 1, 17.5, Abilities.SWARM, Abilities.NONE, Abilities.TINTED_LENS, 450, 71, 102, 78, 52, 55, 92, 30, 0, 158, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PAWMI, "Pawmi", 9, false, false, false, "Mouse Pokémon", Type.ELECTRIC, null, 0.3, 2.5, Abilities.STATIC, Abilities.NATURAL_CURE, Abilities.IRON_FIST, 240, 45, 50, 20, 40, 25, 60, 190, 50, 48, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PAWMO, "Pawmo", 9, false, false, false, "Mouse Pokémon", Type.ELECTRIC, Type.FIGHTING, 0.4, 6.5, Abilities.VOLT_ABSORB, Abilities.NATURAL_CURE, Abilities.IRON_FIST, 350, 60, 75, 40, 50, 40, 85, 80, 50, 123, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.PAWMOT, "Pawmot", 9, false, false, false, "Hands-On Pokémon", Type.ELECTRIC, Type.FIGHTING, 0.9, 41, Abilities.VOLT_ABSORB, Abilities.NATURAL_CURE, Abilities.IRON_FIST, 490, 70, 115, 70, 70, 60, 105, 45, 50, 245, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.TANDEMAUS, "Tandemaus", 9, false, false, false, "Couple Pokémon", Type.NORMAL, null, 0.3, 1.8, Abilities.RUN_AWAY, Abilities.PICKUP, Abilities.OWN_TEMPO, 305, 50, 50, 45, 40, 45, 75, 150, 50, 61, GrowthRate.FAST, null, false),
- new PokemonSpecies(Species.MAUSHOLD, "Maushold", 9, false, false, false, "Family Pokémon", Type.NORMAL, null, 0.3, 2.3, Abilities.FRIEND_GUARD, Abilities.CHEEK_POUCH, Abilities.TECHNICIAN, 470, 74, 75, 70, 65, 75, 111, 75, 50, 165, GrowthRate.FAST, null, false, false,
+ new PokemonSpecies(Species.TAROUNTULA, 9, false, false, false, "String Ball Pokémon", Type.BUG, null, 0.3, 4, Abilities.INSOMNIA, Abilities.NONE, Abilities.STAKEOUT, 210, 35, 41, 45, 29, 40, 20, 255, 50, 42, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.SPIDOPS, 9, false, false, false, "Trap Pokémon", Type.BUG, null, 1, 16.5, Abilities.INSOMNIA, Abilities.NONE, Abilities.STAKEOUT, 404, 60, 79, 92, 52, 86, 35, 120, 50, 141, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.NYMBLE, 9, false, false, false, "Grasshopper Pokémon", Type.BUG, null, 0.2, 1, Abilities.SWARM, Abilities.NONE, Abilities.TINTED_LENS, 210, 33, 46, 40, 21, 25, 45, 190, 20, 42, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.LOKIX, 9, false, false, false, "Grasshopper Pokémon", Type.BUG, Type.DARK, 1, 17.5, Abilities.SWARM, Abilities.NONE, Abilities.TINTED_LENS, 450, 71, 102, 78, 52, 55, 92, 30, 0, 158, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PAWMI, 9, false, false, false, "Mouse Pokémon", Type.ELECTRIC, null, 0.3, 2.5, Abilities.STATIC, Abilities.NATURAL_CURE, Abilities.IRON_FIST, 240, 45, 50, 20, 40, 25, 60, 190, 50, 48, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PAWMO, 9, false, false, false, "Mouse Pokémon", Type.ELECTRIC, Type.FIGHTING, 0.4, 6.5, Abilities.VOLT_ABSORB, Abilities.NATURAL_CURE, Abilities.IRON_FIST, 350, 60, 75, 40, 50, 40, 85, 80, 50, 123, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PAWMOT, 9, false, false, false, "Hands-On Pokémon", Type.ELECTRIC, Type.FIGHTING, 0.9, 41, Abilities.VOLT_ABSORB, Abilities.NATURAL_CURE, Abilities.IRON_FIST, 490, 70, 115, 70, 70, 60, 105, 45, 50, 245, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.TANDEMAUS, 9, false, false, false, "Couple Pokémon", Type.NORMAL, null, 0.3, 1.8, Abilities.RUN_AWAY, Abilities.PICKUP, Abilities.OWN_TEMPO, 305, 50, 50, 45, 40, 45, 75, 150, 50, 61, GrowthRate.FAST, null, false),
+ new PokemonSpecies(Species.MAUSHOLD, 9, false, false, false, "Family Pokémon", Type.NORMAL, null, 0.3, 2.3, Abilities.FRIEND_GUARD, Abilities.CHEEK_POUCH, Abilities.TECHNICIAN, 470, 74, 75, 70, 65, 75, 111, 75, 50, 165, GrowthRate.FAST, null, false, false,
new PokemonForm("Family of Four", "four", Type.NORMAL, null, 0.3, 2.3, Abilities.FRIEND_GUARD, Abilities.CHEEK_POUCH, Abilities.TECHNICIAN, 470, 74, 75, 70, 65, 75, 111, 75, 50, 165),
new PokemonForm("Family of Three", "three", Type.NORMAL, null, 0.3, 2.8, Abilities.FRIEND_GUARD, Abilities.CHEEK_POUCH, Abilities.TECHNICIAN, 470, 74, 75, 70, 65, 75, 111, 75, 50, 165),
),
- new PokemonSpecies(Species.FIDOUGH, "Fidough", 9, false, false, false, "Puppy Pokémon", Type.FAIRY, null, 0.3, 10.9, Abilities.OWN_TEMPO, Abilities.NONE, Abilities.KLUTZ, 312, 37, 55, 70, 30, 55, 65, 190, 50, 62, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.DACHSBUN, "Dachsbun", 9, false, false, false, "Dog Pokémon", Type.FAIRY, null, 0.5, 14.9, Abilities.WELL_BAKED_BODY, Abilities.NONE, Abilities.AROMA_VEIL, 477, 57, 80, 115, 50, 80, 95, 90, 50, 167, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SMOLIV, "Smoliv", 9, false, false, false, "Olive Pokémon", Type.GRASS, Type.NORMAL, 0.3, 6.5, Abilities.EARLY_BIRD, Abilities.NONE, Abilities.HARVEST, 260, 41, 35, 45, 58, 51, 30, 255, 50, 52, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.DOLLIV, "Dolliv", 9, false, false, false, "Olive Pokémon", Type.GRASS, Type.NORMAL, 0.6, 11.9, Abilities.EARLY_BIRD, Abilities.NONE, Abilities.HARVEST, 354, 52, 53, 60, 78, 78, 33, 120, 50, 124, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.ARBOLIVA, "Arboliva", 9, false, false, false, "Olive Pokémon", Type.GRASS, Type.NORMAL, 1.4, 48.2, Abilities.SEED_SOWER, Abilities.NONE, Abilities.HARVEST, 510, 78, 69, 90, 125, 109, 39, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SQUAWKABILLY, "Squawkabilly", 9, false, false, false, "Parrot Pokémon", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.GUTS, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146, GrowthRate.ERRATIC, 50, false, false,
+ new PokemonSpecies(Species.FIDOUGH, 9, false, false, false, "Puppy Pokémon", Type.FAIRY, null, 0.3, 10.9, Abilities.OWN_TEMPO, Abilities.NONE, Abilities.KLUTZ, 312, 37, 55, 70, 30, 55, 65, 190, 50, 62, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.DACHSBUN, 9, false, false, false, "Dog Pokémon", Type.FAIRY, null, 0.5, 14.9, Abilities.WELL_BAKED_BODY, Abilities.NONE, Abilities.AROMA_VEIL, 477, 57, 80, 115, 50, 80, 95, 90, 50, 167, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SMOLIV, 9, false, false, false, "Olive Pokémon", Type.GRASS, Type.NORMAL, 0.3, 6.5, Abilities.EARLY_BIRD, Abilities.NONE, Abilities.HARVEST, 260, 41, 35, 45, 58, 51, 30, 255, 50, 52, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.DOLLIV, 9, false, false, false, "Olive Pokémon", Type.GRASS, Type.NORMAL, 0.6, 11.9, Abilities.EARLY_BIRD, Abilities.NONE, Abilities.HARVEST, 354, 52, 53, 60, 78, 78, 33, 120, 50, 124, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.ARBOLIVA, 9, false, false, false, "Olive Pokémon", Type.GRASS, Type.NORMAL, 1.4, 48.2, Abilities.SEED_SOWER, Abilities.NONE, Abilities.HARVEST, 510, 78, 69, 90, 125, 109, 39, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SQUAWKABILLY, 9, false, false, false, "Parrot Pokémon", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.GUTS, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146, GrowthRate.ERRATIC, 50, false, false,
new PokemonForm("Green Plumage", "green-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.GUTS, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146),
new PokemonForm("Blue Plumage", "blue-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.GUTS, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146),
new PokemonForm("Yellow Plumage", "yellow-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.SHEER_FORCE, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146),
new PokemonForm("White Plumage", "white-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.SHEER_FORCE, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146),
),
- new PokemonSpecies(Species.NACLI, "Nacli", 9, false, false, false, "Rock Salt Pokémon", Type.ROCK, null, 0.4, 16, Abilities.PURIFYING_SALT, Abilities.STURDY, Abilities.CLEAR_BODY, 280, 55, 55, 75, 35, 35, 25, 255, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.NACLSTACK, "Naclstack", 9, false, false, false, "Rock Salt Pokémon", Type.ROCK, null, 0.6, 105, Abilities.PURIFYING_SALT, Abilities.STURDY, Abilities.CLEAR_BODY, 355, 60, 60, 100, 35, 65, 35, 120, 50, 124, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GARGANACL, "Garganacl", 9, false, false, false, "Rock Salt Pokémon", Type.ROCK, null, 2.3, 240, Abilities.PURIFYING_SALT, Abilities.STURDY, Abilities.CLEAR_BODY, 500, 100, 100, 130, 45, 90, 35, 45, 50, 250, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.CHARCADET, "Charcadet", 9, false, false, false, "Fire Child Pokémon", Type.FIRE, null, 0.6, 10.5, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.FLAME_BODY, 255, 40, 50, 40, 50, 40, 35, 90, 50, 51, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.ARMAROUGE, "Armarouge", 9, false, false, false, "Fire Warrior Pokémon", Type.FIRE, Type.PSYCHIC, 1.5, 85, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.WEAK_ARMOR, 525, 85, 60, 100, 125, 80, 75, 25, 20, 263, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.CERULEDGE, "Ceruledge", 9, false, false, false, "Fire Blades Pokémon", Type.FIRE, Type.GHOST, 1.6, 62, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.WEAK_ARMOR, 525, 75, 125, 80, 60, 100, 85, 25, 20, 263, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.TADBULB, "Tadbulb", 9, false, false, false, "EleTadpole Pokémon", Type.ELECTRIC, null, 0.3, 0.4, Abilities.OWN_TEMPO, Abilities.STATIC, Abilities.DAMP, 272, 61, 31, 41, 59, 35, 45, 190, 50, 54, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BELLIBOLT, "Bellibolt", 9, false, false, false, "EleFrog Pokémon", Type.ELECTRIC, null, 1.2, 113, Abilities.ELECTROMORPHOSIS, Abilities.STATIC, Abilities.DAMP, 495, 109, 64, 91, 103, 83, 45, 50, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.WATTREL, "Wattrel", 9, false, false, false, "Storm Petrel Pokémon", Type.ELECTRIC, Type.FLYING, 0.4, 3.6, Abilities.WIND_POWER, Abilities.VOLT_ABSORB, Abilities.COMPETITIVE, 280, 40, 40, 35, 55, 40, 70, 180, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.KILOWATTREL, "Kilowattrel", 9, false, false, false, "Frigatebird Pokémon", Type.ELECTRIC, Type.FLYING, 1.4, 38.6, Abilities.WIND_POWER, Abilities.VOLT_ABSORB, Abilities.COMPETITIVE, 490, 70, 70, 60, 105, 60, 125, 90, 50, 172, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.MASCHIFF, "Maschiff", 9, false, false, false, "Rascal Pokémon", Type.DARK, null, 0.5, 16, Abilities.INTIMIDATE, Abilities.RUN_AWAY, Abilities.STAKEOUT, 340, 60, 78, 60, 40, 51, 51, 150, 50, 68, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.MABOSSTIFF, "Mabosstiff", 9, false, false, false, "Boss Pokémon", Type.DARK, null, 1.1, 61, Abilities.INTIMIDATE, Abilities.GUARD_DOG, Abilities.STAKEOUT, 505, 80, 120, 90, 60, 70, 85, 75, 50, 177, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.SHROODLE, "Shroodle", 9, false, false, false, "Toxic Mouse Pokémon", Type.POISON, Type.NORMAL, 0.2, 0.7, Abilities.UNBURDEN, Abilities.PICKPOCKET, Abilities.PRANKSTER, 290, 40, 65, 35, 40, 35, 75, 190, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GRAFAIAI, "Grafaiai", 9, false, false, false, "Toxic Monkey Pokémon", Type.POISON, Type.NORMAL, 0.7, 27.2, Abilities.UNBURDEN, Abilities.POISON_TOUCH, Abilities.PRANKSTER, 485, 63, 95, 65, 80, 72, 110, 90, 50, 170, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.BRAMBLIN, "Bramblin", 9, false, false, false, "Tumbleweed Pokémon", Type.GRASS, Type.GHOST, 0.6, 0.6, Abilities.WIND_RIDER, Abilities.NONE, Abilities.INFILTRATOR, 275, 40, 65, 30, 45, 35, 60, 190, 50, 55, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BRAMBLEGHAST, "Brambleghast", 9, false, false, false, "Tumbleweed Pokémon", Type.GRASS, Type.GHOST, 1.2, 6, Abilities.WIND_RIDER, Abilities.NONE, Abilities.INFILTRATOR, 480, 55, 115, 70, 80, 70, 90, 45, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.TOEDSCOOL, "Toedscool", 9, false, false, false, "Woodear Pokémon", Type.GROUND, Type.GRASS, 0.9, 33, Abilities.MYCELIUM_MIGHT, Abilities.NONE, Abilities.NONE, 335, 40, 40, 35, 50, 100, 70, 190, 50, 67, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.TOEDSCRUEL, "Toedscruel", 9, false, false, false, "Woodear Pokémon", Type.GROUND, Type.GRASS, 1.9, 58, Abilities.MYCELIUM_MIGHT, Abilities.NONE, Abilities.NONE, 515, 80, 70, 65, 80, 120, 100, 90, 50, 180, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.KLAWF, "Klawf", 9, false, false, false, "Ambush Pokémon", Type.ROCK, null, 1.3, 79, Abilities.ANGER_SHELL, Abilities.SHELL_ARMOR, Abilities.REGENERATOR, 450, 70, 100, 115, 35, 55, 75, 120, 50, 158, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CAPSAKID, "Capsakid", 9, false, false, false, "Spicy Pepper Pokémon", Type.GRASS, null, 0.3, 3, Abilities.CHLOROPHYLL, Abilities.INSOMNIA, Abilities.KLUTZ, 304, 50, 62, 40, 62, 40, 50, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.SCOVILLAIN, "Scovillain", 9, false, false, false, "Spicy Pepper Pokémon", Type.GRASS, Type.FIRE, 0.9, 15, Abilities.CHLOROPHYLL, Abilities.INSOMNIA, Abilities.MOODY, 486, 65, 108, 65, 108, 65, 75, 75, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.RELLOR, "Rellor", 9, false, false, false, "Rolling Pokémon", Type.BUG, null, 0.2, 1, Abilities.COMPOUND_EYES, Abilities.NONE, Abilities.SHED_SKIN, 270, 41, 50, 60, 31, 58, 30, 190, 50, 54, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.RABSCA, "Rabsca", 9, false, false, false, "Rolling Pokémon", Type.BUG, Type.PSYCHIC, 0.3, 3.5, Abilities.SYNCHRONIZE, Abilities.NONE, Abilities.TELEPATHY, 470, 75, 50, 85, 115, 100, 45, 45, 50, 165, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.FLITTLE, "Flittle", 9, false, false, false, "Frill Pokémon", Type.PSYCHIC, null, 0.2, 1.5, Abilities.ANTICIPATION, Abilities.FRISK, Abilities.SPEED_BOOST, 255, 30, 35, 30, 55, 30, 75, 120, 50, 51, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.ESPATHRA, "Espathra", 9, false, false, false, "Ostrich Pokémon", Type.PSYCHIC, null, 1.9, 90, Abilities.OPPORTUNIST, Abilities.FRISK, Abilities.SPEED_BOOST, 481, 95, 60, 60, 101, 60, 105, 60, 50, 168, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.TINKATINK, "Tinkatink", 9, false, false, false, "Metalsmith Pokémon", Type.FAIRY, Type.STEEL, 0.4, 8.9, Abilities.MOLD_BREAKER, Abilities.OWN_TEMPO, Abilities.PICKPOCKET, 297, 50, 45, 45, 35, 64, 58, 190, 50, 59, GrowthRate.MEDIUM_SLOW, 0, false),
- new PokemonSpecies(Species.TINKATUFF, "Tinkatuff", 9, false, false, false, "Hammer Pokémon", Type.FAIRY, Type.STEEL, 0.7, 59.1, Abilities.MOLD_BREAKER, Abilities.OWN_TEMPO, Abilities.PICKPOCKET, 380, 65, 55, 55, 45, 82, 78, 90, 50, 133, GrowthRate.MEDIUM_SLOW, 0, false),
- new PokemonSpecies(Species.TINKATON, "Tinkaton", 9, false, false, false, "Hammer Pokémon", Type.FAIRY, Type.STEEL, 0.7, 112.8, Abilities.MOLD_BREAKER, Abilities.OWN_TEMPO, Abilities.PICKPOCKET, 506, 85, 75, 77, 70, 105, 94, 45, 50, 253, GrowthRate.MEDIUM_SLOW, 0, false),
- new PokemonSpecies(Species.WIGLETT, "Wiglett", 9, false, false, false, "Garden Eel Pokémon", Type.WATER, null, 1.2, 1.8, Abilities.GOOEY, Abilities.RATTLED, Abilities.SAND_VEIL, 245, 10, 55, 25, 35, 25, 95, 255, 50, 49, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.WUGTRIO, "Wugtrio", 9, false, false, false, "Garden Eel Pokémon", Type.WATER, null, 1.2, 5.4, Abilities.GOOEY, Abilities.RATTLED, Abilities.SAND_VEIL, 425, 35, 100, 50, 50, 70, 120, 50, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BOMBIRDIER, "Bombirdier", 9, false, false, false, "Item Drop Pokémon", Type.FLYING, Type.DARK, 1.5, 42.9, Abilities.BIG_PECKS, Abilities.KEEN_EYE, Abilities.ROCKY_PAYLOAD, 485, 70, 103, 85, 60, 85, 82, 25, 50, 243, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.FINIZEN, "Finizen", 9, false, false, false, "Dolphin Pokémon", Type.WATER, null, 1.3, 60.2, Abilities.WATER_VEIL, Abilities.NONE, Abilities.NONE, 315, 70, 45, 40, 45, 40, 75, 200, 50, 63, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.PALAFIN, "Palafin", 9, false, false, false, "Dolphin Pokémon", Type.WATER, null, 1.3, 60.2, Abilities.ZERO_TO_HERO, Abilities.NONE, Abilities.NONE, 457, 100, 70, 72, 53, 62, 100, 45, 50, 160, GrowthRate.SLOW, 50, false, false,
+ new PokemonSpecies(Species.NACLI, 9, false, false, false, "Rock Salt Pokémon", Type.ROCK, null, 0.4, 16, Abilities.PURIFYING_SALT, Abilities.STURDY, Abilities.CLEAR_BODY, 280, 55, 55, 75, 35, 35, 25, 255, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.NACLSTACK, 9, false, false, false, "Rock Salt Pokémon", Type.ROCK, null, 0.6, 105, Abilities.PURIFYING_SALT, Abilities.STURDY, Abilities.CLEAR_BODY, 355, 60, 60, 100, 35, 65, 35, 120, 50, 124, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GARGANACL, 9, false, false, false, "Rock Salt Pokémon", Type.ROCK, null, 2.3, 240, Abilities.PURIFYING_SALT, Abilities.STURDY, Abilities.CLEAR_BODY, 500, 100, 100, 130, 45, 90, 35, 45, 50, 250, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.CHARCADET, 9, false, false, false, "Fire Child Pokémon", Type.FIRE, null, 0.6, 10.5, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.FLAME_BODY, 255, 40, 50, 40, 50, 40, 35, 90, 50, 51, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.ARMAROUGE, 9, false, false, false, "Fire Warrior Pokémon", Type.FIRE, Type.PSYCHIC, 1.5, 85, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.WEAK_ARMOR, 525, 85, 60, 100, 125, 80, 75, 25, 20, 263, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.CERULEDGE, 9, false, false, false, "Fire Blades Pokémon", Type.FIRE, Type.GHOST, 1.6, 62, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.WEAK_ARMOR, 525, 75, 125, 80, 60, 100, 85, 25, 20, 263, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.TADBULB, 9, false, false, false, "EleTadpole Pokémon", Type.ELECTRIC, null, 0.3, 0.4, Abilities.OWN_TEMPO, Abilities.STATIC, Abilities.DAMP, 272, 61, 31, 41, 59, 35, 45, 190, 50, 54, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BELLIBOLT, 9, false, false, false, "EleFrog Pokémon", Type.ELECTRIC, null, 1.2, 113, Abilities.ELECTROMORPHOSIS, Abilities.STATIC, Abilities.DAMP, 495, 109, 64, 91, 103, 83, 45, 50, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.WATTREL, 9, false, false, false, "Storm Petrel Pokémon", Type.ELECTRIC, Type.FLYING, 0.4, 3.6, Abilities.WIND_POWER, Abilities.VOLT_ABSORB, Abilities.COMPETITIVE, 280, 40, 40, 35, 55, 40, 70, 180, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.KILOWATTREL, 9, false, false, false, "Frigatebird Pokémon", Type.ELECTRIC, Type.FLYING, 1.4, 38.6, Abilities.WIND_POWER, Abilities.VOLT_ABSORB, Abilities.COMPETITIVE, 490, 70, 70, 60, 105, 60, 125, 90, 50, 172, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.MASCHIFF, 9, false, false, false, "Rascal Pokémon", Type.DARK, null, 0.5, 16, Abilities.INTIMIDATE, Abilities.RUN_AWAY, Abilities.STAKEOUT, 340, 60, 78, 60, 40, 51, 51, 150, 50, 68, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.MABOSSTIFF, 9, false, false, false, "Boss Pokémon", Type.DARK, null, 1.1, 61, Abilities.INTIMIDATE, Abilities.GUARD_DOG, Abilities.STAKEOUT, 505, 80, 120, 90, 60, 70, 85, 75, 50, 177, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.SHROODLE, 9, false, false, false, "Toxic Mouse Pokémon", Type.POISON, Type.NORMAL, 0.2, 0.7, Abilities.UNBURDEN, Abilities.PICKPOCKET, Abilities.PRANKSTER, 290, 40, 65, 35, 40, 35, 75, 190, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GRAFAIAI, 9, false, false, false, "Toxic Monkey Pokémon", Type.POISON, Type.NORMAL, 0.7, 27.2, Abilities.UNBURDEN, Abilities.POISON_TOUCH, Abilities.PRANKSTER, 485, 63, 95, 65, 80, 72, 110, 90, 50, 170, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.BRAMBLIN, 9, false, false, false, "Tumbleweed Pokémon", Type.GRASS, Type.GHOST, 0.6, 0.6, Abilities.WIND_RIDER, Abilities.NONE, Abilities.INFILTRATOR, 275, 40, 65, 30, 45, 35, 60, 190, 50, 55, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BRAMBLEGHAST, 9, false, false, false, "Tumbleweed Pokémon", Type.GRASS, Type.GHOST, 1.2, 6, Abilities.WIND_RIDER, Abilities.NONE, Abilities.INFILTRATOR, 480, 55, 115, 70, 80, 70, 90, 45, 50, 168, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.TOEDSCOOL, 9, false, false, false, "Woodear Pokémon", Type.GROUND, Type.GRASS, 0.9, 33, Abilities.MYCELIUM_MIGHT, Abilities.NONE, Abilities.NONE, 335, 40, 40, 35, 50, 100, 70, 190, 50, 67, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.TOEDSCRUEL, 9, false, false, false, "Woodear Pokémon", Type.GROUND, Type.GRASS, 1.9, 58, Abilities.MYCELIUM_MIGHT, Abilities.NONE, Abilities.NONE, 515, 80, 70, 65, 80, 120, 100, 90, 50, 180, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.KLAWF, 9, false, false, false, "Ambush Pokémon", Type.ROCK, null, 1.3, 79, Abilities.ANGER_SHELL, Abilities.SHELL_ARMOR, Abilities.REGENERATOR, 450, 70, 100, 115, 35, 55, 75, 120, 50, 158, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CAPSAKID, 9, false, false, false, "Spicy Pepper Pokémon", Type.GRASS, null, 0.3, 3, Abilities.CHLOROPHYLL, Abilities.INSOMNIA, Abilities.KLUTZ, 304, 50, 62, 40, 62, 40, 50, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.SCOVILLAIN, 9, false, false, false, "Spicy Pepper Pokémon", Type.GRASS, Type.FIRE, 0.9, 15, Abilities.CHLOROPHYLL, Abilities.INSOMNIA, Abilities.MOODY, 486, 65, 108, 65, 108, 65, 75, 75, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.RELLOR, 9, false, false, false, "Rolling Pokémon", Type.BUG, null, 0.2, 1, Abilities.COMPOUND_EYES, Abilities.NONE, Abilities.SHED_SKIN, 270, 41, 50, 60, 31, 58, 30, 190, 50, 54, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.RABSCA, 9, false, false, false, "Rolling Pokémon", Type.BUG, Type.PSYCHIC, 0.3, 3.5, Abilities.SYNCHRONIZE, Abilities.NONE, Abilities.TELEPATHY, 470, 75, 50, 85, 115, 100, 45, 45, 50, 165, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.FLITTLE, 9, false, false, false, "Frill Pokémon", Type.PSYCHIC, null, 0.2, 1.5, Abilities.ANTICIPATION, Abilities.FRISK, Abilities.SPEED_BOOST, 255, 30, 35, 30, 55, 30, 75, 120, 50, 51, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.ESPATHRA, 9, false, false, false, "Ostrich Pokémon", Type.PSYCHIC, null, 1.9, 90, Abilities.OPPORTUNIST, Abilities.FRISK, Abilities.SPEED_BOOST, 481, 95, 60, 60, 101, 60, 105, 60, 50, 168, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.TINKATINK, 9, false, false, false, "Metalsmith Pokémon", Type.FAIRY, Type.STEEL, 0.4, 8.9, Abilities.MOLD_BREAKER, Abilities.OWN_TEMPO, Abilities.PICKPOCKET, 297, 50, 45, 45, 35, 64, 58, 190, 50, 59, GrowthRate.MEDIUM_SLOW, 0, false),
+ new PokemonSpecies(Species.TINKATUFF, 9, false, false, false, "Hammer Pokémon", Type.FAIRY, Type.STEEL, 0.7, 59.1, Abilities.MOLD_BREAKER, Abilities.OWN_TEMPO, Abilities.PICKPOCKET, 380, 65, 55, 55, 45, 82, 78, 90, 50, 133, GrowthRate.MEDIUM_SLOW, 0, false),
+ new PokemonSpecies(Species.TINKATON, 9, false, false, false, "Hammer Pokémon", Type.FAIRY, Type.STEEL, 0.7, 112.8, Abilities.MOLD_BREAKER, Abilities.OWN_TEMPO, Abilities.PICKPOCKET, 506, 85, 75, 77, 70, 105, 94, 45, 50, 253, GrowthRate.MEDIUM_SLOW, 0, false),
+ new PokemonSpecies(Species.WIGLETT, 9, false, false, false, "Garden Eel Pokémon", Type.WATER, null, 1.2, 1.8, Abilities.GOOEY, Abilities.RATTLED, Abilities.SAND_VEIL, 245, 10, 55, 25, 35, 25, 95, 255, 50, 49, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.WUGTRIO, 9, false, false, false, "Garden Eel Pokémon", Type.WATER, null, 1.2, 5.4, Abilities.GOOEY, Abilities.RATTLED, Abilities.SAND_VEIL, 425, 35, 100, 50, 50, 70, 120, 50, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BOMBIRDIER, 9, false, false, false, "Item Drop Pokémon", Type.FLYING, Type.DARK, 1.5, 42.9, Abilities.BIG_PECKS, Abilities.KEEN_EYE, Abilities.ROCKY_PAYLOAD, 485, 70, 103, 85, 60, 85, 82, 25, 50, 243, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.FINIZEN, 9, false, false, false, "Dolphin Pokémon", Type.WATER, null, 1.3, 60.2, Abilities.WATER_VEIL, Abilities.NONE, Abilities.NONE, 315, 70, 45, 40, 45, 40, 75, 200, 50, 63, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.PALAFIN, 9, false, false, false, "Dolphin Pokémon", Type.WATER, null, 1.3, 60.2, Abilities.ZERO_TO_HERO, Abilities.NONE, Abilities.NONE, 457, 100, 70, 72, 53, 62, 100, 45, 50, 160, GrowthRate.SLOW, 50, false, false,
new PokemonForm("Zero Form", "zero", Type.WATER, null, 1.3, 60.2, Abilities.ZERO_TO_HERO, Abilities.NONE, Abilities.ZERO_TO_HERO, 457, 100, 70, 72, 53, 62, 100, 45, 50, 160),
new PokemonForm("Hero Form", "hero", Type.WATER, null, 1.8, 97.4, Abilities.ZERO_TO_HERO, Abilities.NONE, Abilities.ZERO_TO_HERO, 650, 100, 160, 97, 106, 87, 100, 45, 50, 160),
),
- new PokemonSpecies(Species.VAROOM, "Varoom", 9, false, false, false, "Single-Cyl Pokémon", Type.STEEL, Type.POISON, 1, 35, Abilities.OVERCOAT, Abilities.NONE, Abilities.SLOW_START, 300, 45, 70, 63, 30, 45, 47, 190, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.REVAVROOM, "Revavroom", 9, false, false, false, "Multi-Cyl Pokémon", Type.STEEL, Type.POISON, 1.8, 120, Abilities.OVERCOAT, Abilities.NONE, Abilities.FILTER, 500, 80, 119, 90, 54, 67, 90, 75, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CYCLIZAR, "Cyclizar", 9, false, false, false, "Mount Pokémon", Type.DRAGON, Type.NORMAL, 1.6, 63, Abilities.SHED_SKIN, Abilities.NONE, Abilities.REGENERATOR, 501, 70, 95, 65, 85, 65, 121, 190, 50, 175, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.ORTHWORM, "Orthworm", 9, false, false, false, "Earthworm Pokémon", Type.STEEL, null, 2.5, 310, Abilities.EARTH_EATER, Abilities.NONE, Abilities.SAND_VEIL, 480, 70, 85, 145, 60, 55, 65, 25, 50, 240, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.GLIMMET, "Glimmet", 9, false, false, false, "Ore Pokémon", Type.ROCK, Type.POISON, 0.7, 8, Abilities.TOXIC_DEBRIS, Abilities.NONE, Abilities.CORROSION, 350, 48, 35, 42, 105, 60, 60, 70, 50, 70, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GLIMMORA, "Glimmora", 9, false, false, false, "Ore Pokémon", Type.ROCK, Type.POISON, 1.5, 45, Abilities.TOXIC_DEBRIS, Abilities.NONE, Abilities.CORROSION, 525, 83, 55, 90, 130, 81, 86, 25, 50, 184, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GREAVARD, "Greavard", 9, false, false, false, "Ghost Dog Pokémon", Type.GHOST, null, 0.6, 35, Abilities.PICKUP, Abilities.NONE, Abilities.FLUFFY, 290, 50, 61, 60, 30, 55, 34, 120, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.HOUNDSTONE, "Houndstone", 9, false, false, false, "Ghost Dog Pokémon", Type.GHOST, null, 2, 15, Abilities.SAND_RUSH, Abilities.NONE, Abilities.FLUFFY, 488, 72, 101, 100, 50, 97, 68, 60, 50, 171, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.FLAMIGO, "Flamigo", 9, false, false, false, "Synchronize Pokémon", Type.FLYING, Type.FIGHTING, 1.6, 37, Abilities.SCRAPPY, Abilities.TANGLED_FEET, Abilities.COSTAR, 500, 82, 115, 74, 75, 64, 90, 100, 50, 175, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.CETODDLE, "Cetoddle", 9, false, false, false, "Terra Whale Pokémon", Type.ICE, null, 1.2, 45, Abilities.THICK_FAT, Abilities.SNOW_CLOAK, Abilities.SHEER_FORCE, 334, 108, 68, 45, 30, 40, 43, 150, 50, 67, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.CETITAN, "Cetitan", 9, false, false, false, "Terra Whale Pokémon", Type.ICE, null, 4.5, 700, Abilities.THICK_FAT, Abilities.SLUSH_RUSH, Abilities.SHEER_FORCE, 521, 170, 113, 65, 45, 55, 73, 50, 50, 182, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.VELUZA, "Veluza", 9, false, false, false, "Jettison Pokémon", Type.WATER, Type.PSYCHIC, 2.5, 90, Abilities.MOLD_BREAKER, Abilities.NONE, Abilities.SHARPNESS, 478, 90, 102, 73, 78, 65, 70, 100, 50, 167, GrowthRate.FAST, 50, false),
- new PokemonSpecies(Species.DONDOZO, "Dondozo", 9, false, false, false, "Big Catfish Pokémon", Type.WATER, null, 12, 220, Abilities.UNAWARE, Abilities.OBLIVIOUS, Abilities.WATER_VEIL, 530, 150, 100, 115, 65, 65, 35, 25, 50, 265, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.TATSUGIRI, "Tatsugiri", 9, false, false, false, "Mimicry Pokémon", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166, GrowthRate.MEDIUM_SLOW, 50, false, false,
+ new PokemonSpecies(Species.VAROOM, 9, false, false, false, "Single-Cyl Pokémon", Type.STEEL, Type.POISON, 1, 35, Abilities.OVERCOAT, Abilities.NONE, Abilities.SLOW_START, 300, 45, 70, 63, 30, 45, 47, 190, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.REVAVROOM, 9, false, false, false, "Multi-Cyl Pokémon", Type.STEEL, Type.POISON, 1.8, 120, Abilities.OVERCOAT, Abilities.NONE, Abilities.FILTER, 500, 80, 119, 90, 54, 67, 90, 75, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CYCLIZAR, 9, false, false, false, "Mount Pokémon", Type.DRAGON, Type.NORMAL, 1.6, 63, Abilities.SHED_SKIN, Abilities.NONE, Abilities.REGENERATOR, 501, 70, 95, 65, 85, 65, 121, 190, 50, 175, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.ORTHWORM, 9, false, false, false, "Earthworm Pokémon", Type.STEEL, null, 2.5, 310, Abilities.EARTH_EATER, Abilities.NONE, Abilities.SAND_VEIL, 480, 70, 85, 145, 60, 55, 65, 25, 50, 240, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.GLIMMET, 9, false, false, false, "Ore Pokémon", Type.ROCK, Type.POISON, 0.7, 8, Abilities.TOXIC_DEBRIS, Abilities.NONE, Abilities.CORROSION, 350, 48, 35, 42, 105, 60, 60, 70, 50, 70, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GLIMMORA, 9, false, false, false, "Ore Pokémon", Type.ROCK, Type.POISON, 1.5, 45, Abilities.TOXIC_DEBRIS, Abilities.NONE, Abilities.CORROSION, 525, 83, 55, 90, 130, 81, 86, 25, 50, 184, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GREAVARD, 9, false, false, false, "Ghost Dog Pokémon", Type.GHOST, null, 0.6, 35, Abilities.PICKUP, Abilities.NONE, Abilities.FLUFFY, 290, 50, 61, 60, 30, 55, 34, 120, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.HOUNDSTONE, 9, false, false, false, "Ghost Dog Pokémon", Type.GHOST, null, 2, 15, Abilities.SAND_RUSH, Abilities.NONE, Abilities.FLUFFY, 488, 72, 101, 100, 50, 97, 68, 60, 50, 171, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.FLAMIGO, 9, false, false, false, "Synchronize Pokémon", Type.FLYING, Type.FIGHTING, 1.6, 37, Abilities.SCRAPPY, Abilities.TANGLED_FEET, Abilities.COSTAR, 500, 82, 115, 74, 75, 64, 90, 100, 50, 175, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.CETODDLE, 9, false, false, false, "Terra Whale Pokémon", Type.ICE, null, 1.2, 45, Abilities.THICK_FAT, Abilities.SNOW_CLOAK, Abilities.SHEER_FORCE, 334, 108, 68, 45, 30, 40, 43, 150, 50, 67, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.CETITAN, 9, false, false, false, "Terra Whale Pokémon", Type.ICE, null, 4.5, 700, Abilities.THICK_FAT, Abilities.SLUSH_RUSH, Abilities.SHEER_FORCE, 521, 170, 113, 65, 45, 55, 73, 50, 50, 182, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.VELUZA, 9, false, false, false, "Jettison Pokémon", Type.WATER, Type.PSYCHIC, 2.5, 90, Abilities.MOLD_BREAKER, Abilities.NONE, Abilities.SHARPNESS, 478, 90, 102, 73, 78, 65, 70, 100, 50, 167, GrowthRate.FAST, 50, false),
+ new PokemonSpecies(Species.DONDOZO, 9, false, false, false, "Big Catfish Pokémon", Type.WATER, null, 12, 220, Abilities.UNAWARE, Abilities.OBLIVIOUS, Abilities.WATER_VEIL, 530, 150, 100, 115, 65, 65, 35, 25, 50, 265, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.TATSUGIRI, 9, false, false, false, "Mimicry Pokémon", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166, GrowthRate.MEDIUM_SLOW, 50, false, false,
new PokemonForm("Curly Form", "curly", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166),
new PokemonForm("Droopy Form", "droopy", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166),
new PokemonForm("Stretchy Form", "stretchy", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166),
),
- new PokemonSpecies(Species.ANNIHILAPE, "Annihilape", 9, false, false, false, "Rage Monkey Pokémon", Type.FIGHTING, Type.GHOST, 1.2, 56, Abilities.VITAL_SPIRIT, Abilities.INNER_FOCUS, Abilities.DEFIANT, 535, 110, 115, 80, 50, 90, 90, 45, 50, 268, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.CLODSIRE, "Clodsire", 9, false, false, false, "Spiny Fish Pokémon", Type.POISON, Type.GROUND, 1.8, 223, Abilities.POISON_POINT, Abilities.WATER_ABSORB, Abilities.UNAWARE, 430, 130, 75, 60, 45, 100, 20, 90, 50, 151, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.FARIGIRAF, "Farigiraf", 9, false, false, false, "Long Neck Pokémon", Type.NORMAL, Type.PSYCHIC, 3.2, 160, Abilities.CUD_CHEW, Abilities.ARMOR_TAIL, Abilities.SAP_SIPPER, 520, 120, 90, 70, 110, 70, 60, 45, 50, 260, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.DUDUNSPARCE, "Dudunsparce", 9, false, false, false, "Land Snake Pokémon", Type.NORMAL, null, 3.6, 39.2, Abilities.SERENE_GRACE, Abilities.RUN_AWAY, Abilities.RATTLED, 520, 125, 100, 80, 85, 75, 55, 45, 50, 182, GrowthRate.MEDIUM_FAST, 50, false, false,
+ new PokemonSpecies(Species.ANNIHILAPE, 9, false, false, false, "Rage Monkey Pokémon", Type.FIGHTING, Type.GHOST, 1.2, 56, Abilities.VITAL_SPIRIT, Abilities.INNER_FOCUS, Abilities.DEFIANT, 535, 110, 115, 80, 50, 90, 90, 45, 50, 268, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.CLODSIRE, 9, false, false, false, "Spiny Fish Pokémon", Type.POISON, Type.GROUND, 1.8, 223, Abilities.POISON_POINT, Abilities.WATER_ABSORB, Abilities.UNAWARE, 430, 130, 75, 60, 45, 100, 20, 90, 50, 151, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.FARIGIRAF, 9, false, false, false, "Long Neck Pokémon", Type.NORMAL, Type.PSYCHIC, 3.2, 160, Abilities.CUD_CHEW, Abilities.ARMOR_TAIL, Abilities.SAP_SIPPER, 520, 120, 90, 70, 110, 70, 60, 45, 50, 260, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.DUDUNSPARCE, 9, false, false, false, "Land Snake Pokémon", Type.NORMAL, null, 3.6, 39.2, Abilities.SERENE_GRACE, Abilities.RUN_AWAY, Abilities.RATTLED, 520, 125, 100, 80, 85, 75, 55, 45, 50, 182, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Two-Segment Form", "two-segment", Type.NORMAL, null, 3.6, 39.2, Abilities.SERENE_GRACE, Abilities.RUN_AWAY, Abilities.RATTLED, 520, 125, 100, 80, 85, 75, 55, 45, 50, 182, false, ""),
new PokemonForm("Three-Segment Form", "three-segment", Type.NORMAL, null, 4.5, 47.4, Abilities.SERENE_GRACE, Abilities.RUN_AWAY, Abilities.RATTLED, 520, 125, 100, 80, 85, 75, 55, 45, 50, 182),
),
- new PokemonSpecies(Species.KINGAMBIT, "Kingambit", 9, false, false, false, "Big Blade Pokémon", Type.DARK, Type.STEEL, 2, 120, Abilities.DEFIANT, Abilities.SUPREME_OVERLORD, Abilities.PRESSURE, 550, 100, 135, 120, 60, 85, 50, 25, 50, 275, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GREAT_TUSK, "Great Tusk", 9, false, false, false, "Paradox Pokémon", Type.GROUND, Type.FIGHTING, 2.2, 320, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 115, 131, 131, 53, 53, 87, 30, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.SCREAM_TAIL, "Scream Tail", 9, false, false, false, "Paradox Pokémon", Type.FAIRY, Type.PSYCHIC, 1.2, 8, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 115, 65, 99, 65, 115, 111, 50, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.BRUTE_BONNET, "Brute Bonnet", 9, false, false, false, "Paradox Pokémon", Type.GRASS, Type.DARK, 1.2, 21, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 111, 127, 99, 79, 99, 55, 50, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.FLUTTER_MANE, "Flutter Mane", 9, false, false, false, "Paradox Pokémon", Type.GHOST, Type.FAIRY, 1.4, 4, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 55, 55, 55, 135, 135, 135, 30, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.SLITHER_WING, "Slither Wing", 9, false, false, false, "Paradox Pokémon", Type.BUG, Type.FIGHTING, 3.2, 92, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 85, 135, 79, 85, 105, 81, 30, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.SANDY_SHOCKS, "Sandy Shocks", 9, false, false, false, "Paradox Pokémon", Type.ELECTRIC, Type.GROUND, 2.3, 60, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 85, 81, 97, 121, 85, 101, 30, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.IRON_TREADS, "Iron Treads", 9, false, false, false, "Paradox Pokémon", Type.GROUND, Type.STEEL, 0.9, 240, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 90, 112, 120, 72, 70, 106, 30, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.IRON_BUNDLE, "Iron Bundle", 9, false, false, false, "Paradox Pokémon", Type.ICE, Type.WATER, 0.6, 11, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 56, 80, 114, 124, 60, 136, 50, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.IRON_HANDS, "Iron Hands", 9, false, false, false, "Paradox Pokémon", Type.FIGHTING, Type.ELECTRIC, 1.8, 380.7, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 154, 140, 108, 50, 68, 50, 50, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.IRON_JUGULIS, "Iron Jugulis", 9, false, false, false, "Paradox Pokémon", Type.DARK, Type.FLYING, 1.3, 111, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 94, 80, 86, 122, 80, 108, 30, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.IRON_MOTH, "Iron Moth", 9, false, false, false, "Paradox Pokémon", Type.FIRE, Type.POISON, 1.2, 36, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 80, 70, 60, 140, 110, 110, 30, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.IRON_THORNS, "Iron Thorns", 9, false, false, false, "Paradox Pokémon", Type.ROCK, Type.ELECTRIC, 1.6, 303, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 100, 134, 110, 70, 84, 72, 30, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.FRIGIBAX, "Frigibax", 9, false, false, false, "Ice Fin Pokémon", Type.DRAGON, Type.ICE, 0.5, 17, Abilities.THERMAL_EXCHANGE, Abilities.NONE, Abilities.ICE_BODY, 320, 65, 75, 45, 35, 45, 55, 45, 50, 64, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.ARCTIBAX, "Arctibax", 9, false, false, false, "Ice Fin Pokémon", Type.DRAGON, Type.ICE, 0.8, 30, Abilities.THERMAL_EXCHANGE, Abilities.NONE, Abilities.ICE_BODY, 423, 90, 95, 66, 45, 65, 62, 25, 50, 148, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.BAXCALIBUR, "Baxcalibur", 9, false, false, false, "Ice Dragon Pokémon", Type.DRAGON, Type.ICE, 2.1, 210, Abilities.THERMAL_EXCHANGE, Abilities.NONE, Abilities.ICE_BODY, 600, 115, 145, 92, 75, 86, 87, 10, 50, 300, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.GIMMIGHOUL, "Gimmighoul", 9, false, false, false, "Coin Chest Pokémon", Type.GHOST, null, 0.3, 5, Abilities.RATTLED, Abilities.NONE, Abilities.NONE, 300, 45, 30, 70, 75, 70, 10, 45, 50, 60, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.KINGAMBIT, 9, false, false, false, "Big Blade Pokémon", Type.DARK, Type.STEEL, 2, 120, Abilities.DEFIANT, Abilities.SUPREME_OVERLORD, Abilities.PRESSURE, 550, 100, 135, 120, 60, 85, 50, 25, 50, 275, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GREAT_TUSK, 9, false, false, false, "Paradox Pokémon", Type.GROUND, Type.FIGHTING, 2.2, 320, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 115, 131, 131, 53, 53, 87, 30, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.SCREAM_TAIL, 9, false, false, false, "Paradox Pokémon", Type.FAIRY, Type.PSYCHIC, 1.2, 8, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 115, 65, 99, 65, 115, 111, 50, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.BRUTE_BONNET, 9, false, false, false, "Paradox Pokémon", Type.GRASS, Type.DARK, 1.2, 21, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 111, 127, 99, 79, 99, 55, 50, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.FLUTTER_MANE, 9, false, false, false, "Paradox Pokémon", Type.GHOST, Type.FAIRY, 1.4, 4, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 55, 55, 55, 135, 135, 135, 30, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.SLITHER_WING, 9, false, false, false, "Paradox Pokémon", Type.BUG, Type.FIGHTING, 3.2, 92, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 85, 135, 79, 85, 105, 81, 30, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.SANDY_SHOCKS, 9, false, false, false, "Paradox Pokémon", Type.ELECTRIC, Type.GROUND, 2.3, 60, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 570, 85, 81, 97, 121, 85, 101, 30, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.IRON_TREADS, 9, false, false, false, "Paradox Pokémon", Type.GROUND, Type.STEEL, 0.9, 240, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 90, 112, 120, 72, 70, 106, 30, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.IRON_BUNDLE, 9, false, false, false, "Paradox Pokémon", Type.ICE, Type.WATER, 0.6, 11, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 56, 80, 114, 124, 60, 136, 50, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.IRON_HANDS, 9, false, false, false, "Paradox Pokémon", Type.FIGHTING, Type.ELECTRIC, 1.8, 380.7, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 154, 140, 108, 50, 68, 50, 50, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.IRON_JUGULIS, 9, false, false, false, "Paradox Pokémon", Type.DARK, Type.FLYING, 1.3, 111, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 94, 80, 86, 122, 80, 108, 30, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.IRON_MOTH, 9, false, false, false, "Paradox Pokémon", Type.FIRE, Type.POISON, 1.2, 36, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 80, 70, 60, 140, 110, 110, 30, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.IRON_THORNS, 9, false, false, false, "Paradox Pokémon", Type.ROCK, Type.ELECTRIC, 1.6, 303, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 570, 100, 134, 110, 70, 84, 72, 30, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.FRIGIBAX, 9, false, false, false, "Ice Fin Pokémon", Type.DRAGON, Type.ICE, 0.5, 17, Abilities.THERMAL_EXCHANGE, Abilities.NONE, Abilities.ICE_BODY, 320, 65, 75, 45, 35, 45, 55, 45, 50, 64, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.ARCTIBAX, 9, false, false, false, "Ice Fin Pokémon", Type.DRAGON, Type.ICE, 0.8, 30, Abilities.THERMAL_EXCHANGE, Abilities.NONE, Abilities.ICE_BODY, 423, 90, 95, 66, 45, 65, 62, 25, 50, 148, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.BAXCALIBUR, 9, false, false, false, "Ice Dragon Pokémon", Type.DRAGON, Type.ICE, 2.1, 210, Abilities.THERMAL_EXCHANGE, Abilities.NONE, Abilities.ICE_BODY, 600, 115, 145, 92, 75, 86, 87, 10, 50, 300, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.GIMMIGHOUL, 9, false, false, false, "Coin Chest Pokémon", Type.GHOST, null, 0.3, 5, Abilities.RATTLED, Abilities.NONE, Abilities.NONE, 300, 45, 30, 70, 75, 70, 10, 45, 50, 60, GrowthRate.SLOW, null, false, false,
new PokemonForm("Chest Form", "chest", Type.GHOST, null, 0.3, 5, Abilities.RATTLED, Abilities.NONE, Abilities.NONE, 300, 45, 30, 70, 75, 70, 10, 45, 50, 60, false, ""),
new PokemonForm("Roaming Form", "roaming", Type.GHOST, null, 0.1, 1, Abilities.RUN_AWAY, Abilities.NONE, Abilities.NONE, 300, 45, 30, 25, 75, 45, 80, 45, 50, 60),
),
- new PokemonSpecies(Species.GHOLDENGO, "Gholdengo", 9, false, false, false, "Coin Entity Pokémon", Type.STEEL, Type.GHOST, 1.2, 30, Abilities.GOOD_AS_GOLD, Abilities.NONE, Abilities.NONE, 550, 87, 60, 95, 133, 91, 84, 45, 50, 275, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.WO_CHIEN, "Wo-Chien", 9, true, false, false, "Ruinous Pokémon", Type.DARK, Type.GRASS, 1.5, 74.2, Abilities.TABLETS_OF_RUIN, Abilities.NONE, Abilities.NONE, 570, 85, 85, 100, 95, 135, 70, 6, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.CHIEN_PAO, "Chien-Pao", 9, true, false, false, "Ruinous Pokémon", Type.DARK, Type.ICE, 1.9, 152.2, Abilities.SWORD_OF_RUIN, Abilities.NONE, Abilities.NONE, 570, 80, 120, 80, 90, 65, 135, 6, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.TING_LU, "Ting-Lu", 9, true, false, false, "Ruinous Pokémon", Type.DARK, Type.GROUND, 2.7, 699.7, Abilities.VESSEL_OF_RUIN, Abilities.NONE, Abilities.NONE, 570, 155, 110, 125, 55, 80, 45, 6, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.CHI_YU, "Chi-Yu", 9, true, false, false, "Ruinous Pokémon", Type.DARK, Type.FIRE, 0.4, 4.9, Abilities.BEADS_OF_RUIN, Abilities.NONE, Abilities.NONE, 570, 55, 80, 80, 135, 120, 100, 6, 0, 285, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.ROARING_MOON, "Roaring Moon", 9, false, false, false, "Paradox Pokémon", Type.DRAGON, Type.DARK, 2, 380, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 105, 139, 71, 55, 101, 119, 10, 0, 295, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.IRON_VALIANT, "Iron Valiant", 9, false, false, false, "Paradox Pokémon", Type.FAIRY, Type.FIGHTING, 1.4, 35, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 590, 74, 130, 90, 120, 60, 116, 10, 0, 295, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.KORAIDON, "Koraidon", 9, false, true, false, "Paradox Pokémon", Type.FIGHTING, Type.DRAGON, 2.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.GHOLDENGO, 9, false, false, false, "Coin Entity Pokémon", Type.STEEL, Type.GHOST, 1.2, 30, Abilities.GOOD_AS_GOLD, Abilities.NONE, Abilities.NONE, 550, 87, 60, 95, 133, 91, 84, 45, 50, 275, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.WO_CHIEN, 9, true, false, false, "Ruinous Pokémon", Type.DARK, Type.GRASS, 1.5, 74.2, Abilities.TABLETS_OF_RUIN, Abilities.NONE, Abilities.NONE, 570, 85, 85, 100, 95, 135, 70, 6, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.CHIEN_PAO, 9, true, false, false, "Ruinous Pokémon", Type.DARK, Type.ICE, 1.9, 152.2, Abilities.SWORD_OF_RUIN, Abilities.NONE, Abilities.NONE, 570, 80, 120, 80, 90, 65, 135, 6, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.TING_LU, 9, true, false, false, "Ruinous Pokémon", Type.DARK, Type.GROUND, 2.7, 699.7, Abilities.VESSEL_OF_RUIN, Abilities.NONE, Abilities.NONE, 570, 155, 110, 125, 55, 80, 45, 6, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.CHI_YU, 9, true, false, false, "Ruinous Pokémon", Type.DARK, Type.FIRE, 0.4, 4.9, Abilities.BEADS_OF_RUIN, Abilities.NONE, Abilities.NONE, 570, 55, 80, 80, 135, 120, 100, 6, 0, 285, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.ROARING_MOON, 9, false, false, false, "Paradox Pokémon", Type.DRAGON, Type.DARK, 2, 380, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 105, 139, 71, 55, 101, 119, 10, 0, 295, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.IRON_VALIANT, 9, false, false, false, "Paradox Pokémon", Type.FAIRY, Type.FIGHTING, 1.4, 35, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 590, 74, 130, 90, 120, 60, 116, 10, 0, 295, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.KORAIDON, 9, false, true, false, "Paradox Pokémon", Type.FIGHTING, Type.DRAGON, 2.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335, GrowthRate.SLOW, null, false, false,
new PokemonForm("Apex Build", "apex-build", Type.FIGHTING, Type.DRAGON, 2.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335),
new PokemonForm("Limited Build", "limited-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335),
new PokemonForm("Sprinting Build", "sprinting-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335),
new PokemonForm("Swimming Build", "swimming-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335),
new PokemonForm("Gliding Build", "gliding-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335),
),
- new PokemonSpecies(Species.MIRAIDON, "Miraidon", 9, false, true, false, "Paradox Pokémon", Type.ELECTRIC, Type.DRAGON, 3.5, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.MIRAIDON, 9, false, true, false, "Paradox Pokémon", Type.ELECTRIC, Type.DRAGON, 3.5, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335, GrowthRate.SLOW, null, false, false,
new PokemonForm("Ultimate Mode", "ultimate-mode", Type.ELECTRIC, Type.DRAGON, 3.5, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335),
new PokemonForm("Low-Power Mode", "low-power-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335),
new PokemonForm("Drive Mode", "drive-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335),
new PokemonForm("Aquatic Mode", "aquatic-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335),
new PokemonForm("Glide Mode", "glide-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335),
),
- new PokemonSpecies(Species.WALKING_WAKE, "Walking Wake", 9, false, false, false, "Paradox Pokémon", Type.WATER, Type.DRAGON, 3.5, 280, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 99, 83, 91, 125, 83, 109, 5, 0, 295, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.IRON_LEAVES, "Iron Leaves", 9, false, false, false, "Paradox Pokémon", Type.GRASS, Type.PSYCHIC, 1.5, 125, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 590, 90, 130, 88, 70, 108, 104, 5, 0, 295, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.DIPPLIN, "Dipplin", 9, false, false, false, "Candy Apple Pokémon", Type.GRASS, Type.DRAGON, 0.4, 9.7, Abilities.SUPERSWEET_SYRUP, Abilities.GLUTTONY, Abilities.STICKY_HOLD, 485, 80, 80, 110, 95, 80, 40, 45, 50, 170, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.POLTCHAGEIST, "Poltchageist", 9, false, false, false, "Matcha Pokémon", Type.GRASS, Type.GHOST, 0.1, 1.1, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.WALKING_WAKE, 9, false, false, false, "Paradox Pokémon", Type.WATER, Type.DRAGON, 3.5, 280, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 99, 83, 91, 125, 83, 109, 5, 0, 295, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.IRON_LEAVES, 9, false, false, false, "Paradox Pokémon", Type.GRASS, Type.PSYCHIC, 1.5, 125, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 590, 90, 130, 88, 70, 108, 104, 5, 0, 295, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.DIPPLIN, 9, false, false, false, "Candy Apple Pokémon", Type.GRASS, Type.DRAGON, 0.4, 9.7, Abilities.SUPERSWEET_SYRUP, Abilities.GLUTTONY, Abilities.STICKY_HOLD, 485, 80, 80, 110, 95, 80, 40, 45, 50, 170, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.POLTCHAGEIST, 9, false, false, false, "Matcha Pokémon", Type.GRASS, Type.GHOST, 0.1, 1.1, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, GrowthRate.SLOW, null, false, false,
new PokemonForm("Counterfeit Form", "counterfeit", Type.GRASS, Type.GHOST, 0.1, 1.1, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62),
new PokemonForm("Artisan Form", "artisan", Type.GRASS, Type.GHOST, 0.1, 1.1, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62),
),
- new PokemonSpecies(Species.SINISTCHA, "Sinistcha", 9, false, false, false, "Matcha Pokémon", Type.GRASS, Type.GHOST, 0.2, 2.2, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 508, 71, 60, 106, 121, 80, 70, 60, 50, 178, GrowthRate.SLOW, null, false, false,
+ new PokemonSpecies(Species.SINISTCHA, 9, false, false, false, "Matcha Pokémon", Type.GRASS, Type.GHOST, 0.2, 2.2, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 508, 71, 60, 106, 121, 80, 70, 60, 50, 178, GrowthRate.SLOW, null, false, false,
new PokemonForm("Unremarkable Form", "unremarkable", Type.GRASS, Type.GHOST, 0.2, 2.2, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 508, 71, 60, 106, 121, 80, 70, 60, 50, 178),
new PokemonForm("Masterpiece Form", "masterpiece", Type.GRASS, Type.GHOST, 0.2, 2.2, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 508, 71, 60, 106, 121, 80, 70, 60, 50, 178),
),
- new PokemonSpecies(Species.OKIDOGI, "Okidogi", 9, false, true, false, "Retainer Pokémon", Type.POISON, Type.FIGHTING, 1.8, 92.2, Abilities.TOXIC_CHAIN, Abilities.NONE, Abilities.GUARD_DOG, 555, 88, 128, 115, 58, 86, 80, 3, 0, 276, GrowthRate.SLOW, 100, false),
- new PokemonSpecies(Species.MUNKIDORI, "Munkidori", 9, false, true, false, "Retainer Pokémon", Type.POISON, Type.PSYCHIC, 1, 12.2, Abilities.TOXIC_CHAIN, Abilities.NONE, Abilities.FRISK, 555, 88, 75, 66, 130, 90, 106, 3, 0, 276, GrowthRate.SLOW, 100, false),
- new PokemonSpecies(Species.FEZANDIPITI, "Fezandipiti", 9, false, true, false, "Retainer Pokémon", Type.POISON, Type.FAIRY, 1.4, 30.1, Abilities.TOXIC_CHAIN, Abilities.NONE, Abilities.TECHNICIAN, 555, 88, 91, 82, 70, 125, 99, 3, 0, 276, GrowthRate.SLOW, 100, false),
- new PokemonSpecies(Species.OGERPON, "Ogerpon", 9, false, true, false, "Mask Pokémon", Type.GRASS, null, 1.2, 39.8, Abilities.DEFIANT, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275, GrowthRate.SLOW, 0, false, false,
+ new PokemonSpecies(Species.OKIDOGI, 9, false, true, false, "Retainer Pokémon", Type.POISON, Type.FIGHTING, 1.8, 92.2, Abilities.TOXIC_CHAIN, Abilities.NONE, Abilities.GUARD_DOG, 555, 88, 128, 115, 58, 86, 80, 3, 0, 276, GrowthRate.SLOW, 100, false),
+ new PokemonSpecies(Species.MUNKIDORI, 9, false, true, false, "Retainer Pokémon", Type.POISON, Type.PSYCHIC, 1, 12.2, Abilities.TOXIC_CHAIN, Abilities.NONE, Abilities.FRISK, 555, 88, 75, 66, 130, 90, 106, 3, 0, 276, GrowthRate.SLOW, 100, false),
+ new PokemonSpecies(Species.FEZANDIPITI, 9, false, true, false, "Retainer Pokémon", Type.POISON, Type.FAIRY, 1.4, 30.1, Abilities.TOXIC_CHAIN, Abilities.NONE, Abilities.TECHNICIAN, 555, 88, 91, 82, 70, 125, 99, 3, 0, 276, GrowthRate.SLOW, 100, false),
+ new PokemonSpecies(Species.OGERPON, 9, false, true, false, "Mask Pokémon", Type.GRASS, null, 1.2, 39.8, Abilities.DEFIANT, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275, GrowthRate.SLOW, 0, false, false,
new PokemonForm("Teal Mask", "teal-mask", Type.GRASS, null, 1.2, 39.8, Abilities.DEFIANT, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
new PokemonForm("Wellspring Mask", "wellspring-mask", Type.GRASS, Type.WATER, 1.2, 39.8, Abilities.WATER_ABSORB, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
new PokemonForm("Hearthflame Mask", "hearthflame-mask", Type.GRASS, Type.FIRE, 1.2, 39.8, Abilities.MOLD_BREAKER, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
@@ -2413,82 +2460,82 @@ export function initSpecies() {
new PokemonForm("Hearthflame Mask Terastallized", "hearthflame-mask-tera", Type.GRASS, Type.FIRE, 1.2, 39.8, Abilities.EMBODY_ASPECT_HEARTHFLAME, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
new PokemonForm("Cornerstone Mask Terastallized", "cornerstone-mask-tera", Type.GRASS, Type.ROCK, 1.2, 39.8, Abilities.EMBODY_ASPECT_CORNERSTONE, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
),
- new PokemonSpecies(Species.ARCHALUDON, "Archaludon", 9, false, false, false, "Alloy Pokémon", Type.STEEL, Type.DRAGON, 2, 60, Abilities.STAMINA, Abilities.STURDY, Abilities.STALWART, 600, 90, 105, 130, 125, 65, 85, 10, 50, 300, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.HYDRAPPLE, "Hydrapple", 9, false, false, false, "Apple Hydra Pokémon", Type.GRASS, Type.DRAGON, 1.8, 93, Abilities.SUPERSWEET_SYRUP, Abilities.REGENERATOR, Abilities.STICKY_HOLD, 540, 106, 80, 110, 120, 80, 44, 10, 50, 270, GrowthRate.ERRATIC, 50, false),
- new PokemonSpecies(Species.GOUGING_FIRE, "Gouging Fire", 9, false, false, false, "Paradox Pokémon", Type.FIRE, Type.DRAGON, 3.5, 590, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 105, 115, 121, 65, 93, 91, 10, 0, 295, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.RAGING_BOLT, "Raging Bolt", 9, false, false, false, "Paradox Pokémon", Type.ELECTRIC, Type.DRAGON, 5.2, 480, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 125, 73, 91, 137, 89, 75, 10, 0, 295, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.IRON_BOULDER, "Iron Boulder", 9, false, false, false, "Paradox Pokémon", Type.ROCK, Type.PSYCHIC, 1.5, 162.5, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 590, 90, 120, 80, 68, 108, 124, 10, 0, 295, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.IRON_CROWN, "Iron Crown", 9, false, false, false, "Paradox Pokémon", Type.STEEL, Type.PSYCHIC, 1.6, 156, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 590, 90, 72, 100, 122, 108, 98, 10, 0, 295, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.TERAPAGOS, "Terapagos", 9, false, true, false, "Tera Pokémon", Type.NORMAL, null, 0.2, 6.5, Abilities.TERA_SHIFT, Abilities.NONE, Abilities.NONE, 450, 90, 65, 85, 65, 85, 60, 5, 50, 90, GrowthRate.SLOW, 50, false, false,
+ new PokemonSpecies(Species.ARCHALUDON, 9, false, false, false, "Alloy Pokémon", Type.STEEL, Type.DRAGON, 2, 60, Abilities.STAMINA, Abilities.STURDY, Abilities.STALWART, 600, 90, 105, 130, 125, 65, 85, 10, 50, 300, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.HYDRAPPLE, 9, false, false, false, "Apple Hydra Pokémon", Type.GRASS, Type.DRAGON, 1.8, 93, Abilities.SUPERSWEET_SYRUP, Abilities.REGENERATOR, Abilities.STICKY_HOLD, 540, 106, 80, 110, 120, 80, 44, 10, 50, 270, GrowthRate.ERRATIC, 50, false),
+ new PokemonSpecies(Species.GOUGING_FIRE, 9, false, false, false, "Paradox Pokémon", Type.FIRE, Type.DRAGON, 3.5, 590, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 105, 115, 121, 65, 93, 91, 10, 0, 295, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.RAGING_BOLT, 9, false, false, false, "Paradox Pokémon", Type.ELECTRIC, Type.DRAGON, 5.2, 480, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 125, 73, 91, 137, 89, 75, 10, 0, 295, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.IRON_BOULDER, 9, false, false, false, "Paradox Pokémon", Type.ROCK, Type.PSYCHIC, 1.5, 162.5, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 590, 90, 120, 80, 68, 108, 124, 10, 0, 295, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.IRON_CROWN, 9, false, false, false, "Paradox Pokémon", Type.STEEL, Type.PSYCHIC, 1.6, 156, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 590, 90, 72, 100, 122, 108, 98, 10, 0, 295, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.TERAPAGOS, 9, false, true, false, "Tera Pokémon", Type.NORMAL, null, 0.2, 6.5, Abilities.TERA_SHIFT, Abilities.NONE, Abilities.NONE, 450, 90, 65, 85, 65, 85, 60, 5, 50, 90, GrowthRate.SLOW, 50, false, false,
new PokemonForm("Normal Form", "", Type.NORMAL, null, 0.2, 6.5, Abilities.TERA_SHIFT, Abilities.NONE, Abilities.NONE, 450, 90, 65, 85, 65, 85, 60, 5, 50, 90),
new PokemonForm("Terastal Form", "terastal", Type.NORMAL, null, 0.3, 16, Abilities.TERA_SHELL, Abilities.NONE, Abilities.NONE, 600, 95, 95, 110, 105, 110, 85, 5, 50, 90),
new PokemonForm("Stellar Form", "stellar", Type.NORMAL, null, 1.7, 77, Abilities.TERAFORM_ZERO, Abilities.NONE, Abilities.NONE, 700, 160, 105, 110, 130, 110, 85, 5, 50, 90),
),
- new PokemonSpecies(Species.PECHARUNT, "Pecharunt", 9, false, false, true, "Subjugation Pokémon", Type.POISON, Type.GHOST, 0.3, 0.3, Abilities.POISON_PUPPETEER, Abilities.NONE, Abilities.NONE, 600, 88, 88, 160, 88, 88, 88, 3, 0, 300, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.ALOLA_RATTATA, "Rattata", 7, false, false, false, "Mouse Pokémon", Type.DARK, Type.NORMAL, 0.3, 3.8, Abilities.GLUTTONY, Abilities.HUSTLE, Abilities.THICK_FAT, 253, 30, 56, 35, 25, 35, 72, 255, 70, 51, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_RATICATE, "Raticate", 7, false, false, false, "Mouse Pokémon", Type.DARK, Type.NORMAL, 0.7, 25.5, Abilities.GLUTTONY, Abilities.HUSTLE, Abilities.THICK_FAT, 413, 75, 71, 70, 40, 80, 77, 127, 70, 145, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_RAICHU, "Raichu", 7, false, false, false, "Mouse Pokémon", Type.ELECTRIC, Type.PSYCHIC, 0.7, 21, Abilities.SURGE_SURFER, Abilities.NONE, Abilities.NONE, 485, 60, 85, 50, 95, 85, 110, 75, 50, 243, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_SANDSHREW, "Sandshrew", 7, false, false, false, "Mouse Pokémon", Type.ICE, Type.STEEL, 0.7, 40, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.SLUSH_RUSH, 300, 50, 75, 90, 10, 35, 40, 255, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_SANDSLASH, "Sandslash", 7, false, false, false, "Mouse Pokémon", Type.ICE, Type.STEEL, 1.2, 55, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.SLUSH_RUSH, 450, 75, 100, 120, 25, 65, 65, 90, 50, 158, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_VULPIX, "Vulpix", 7, false, false, false, "Fox Pokémon", Type.ICE, null, 0.6, 9.9, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.SNOW_WARNING, 299, 38, 41, 40, 50, 65, 65, 190, 50, 60, GrowthRate.MEDIUM_FAST, 25, false),
- new PokemonSpecies(Species.ALOLA_NINETALES, "Ninetales", 7, false, false, false, "Fox Pokémon", Type.ICE, Type.FAIRY, 1.1, 19.9, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.SNOW_WARNING, 505, 73, 67, 75, 81, 100, 109, 75, 50, 177, GrowthRate.MEDIUM_FAST, 25, false),
- new PokemonSpecies(Species.ALOLA_DIGLETT, "Diglett", 7, false, false, false, "Mole Pokémon", Type.GROUND, Type.STEEL, 0.2, 1, Abilities.SAND_VEIL, Abilities.TANGLING_HAIR, Abilities.SAND_FORCE, 265, 10, 55, 30, 35, 45, 90, 255, 50, 53, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_DUGTRIO, "Dugtrio", 7, false, false, false, "Mole Pokémon", Type.GROUND, Type.STEEL, 0.7, 66.6, Abilities.SAND_VEIL, Abilities.TANGLING_HAIR, Abilities.SAND_FORCE, 425, 35, 100, 60, 50, 70, 110, 50, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_MEOWTH, "Meowth", 7, false, false, false, "Scratch Cat Pokémon", Type.DARK, null, 0.4, 4.2, Abilities.PICKUP, Abilities.TECHNICIAN, Abilities.RATTLED, 290, 40, 35, 35, 50, 40, 90, 255, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_PERSIAN, "Persian", 7, false, false, false, "Classy Cat Pokémon", Type.DARK, null, 1.1, 33, Abilities.FUR_COAT, Abilities.TECHNICIAN, Abilities.RATTLED, 440, 65, 60, 60, 75, 65, 115, 90, 50, 154, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_GEODUDE, "Geodude", 7, false, false, false, "Rock Pokémon", Type.ROCK, Type.ELECTRIC, 0.4, 20.3, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.GALVANIZE, 300, 40, 80, 100, 30, 30, 20, 255, 70, 60, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.ALOLA_GRAVELER, "Graveler", 7, false, false, false, "Rock Pokémon", Type.ROCK, Type.ELECTRIC, 1, 110, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.GALVANIZE, 390, 55, 95, 115, 45, 45, 35, 120, 70, 137, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.ALOLA_GOLEM, "Golem", 7, false, false, false, "Megaton Pokémon", Type.ROCK, Type.ELECTRIC, 1.7, 316, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.GALVANIZE, 495, 80, 120, 130, 55, 65, 45, 45, 70, 223, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.ALOLA_GRIMER, "Grimer", 7, false, false, false, "Sludge Pokémon", Type.POISON, Type.DARK, 0.7, 42, Abilities.POISON_TOUCH, Abilities.GLUTTONY, Abilities.POWER_OF_ALCHEMY, 325, 80, 80, 50, 40, 50, 25, 190, 70, 65, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_MUK, "Muk", 7, false, false, false, "Sludge Pokémon", Type.POISON, Type.DARK, 1, 52, Abilities.POISON_TOUCH, Abilities.GLUTTONY, Abilities.POWER_OF_ALCHEMY, 500, 105, 105, 75, 65, 100, 50, 75, 70, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ALOLA_EXEGGUTOR, "Exeggutor", 7, false, false, false, "Coconut Pokémon", Type.GRASS, Type.DRAGON, 10.9, 415.6, Abilities.FRISK, Abilities.NONE, Abilities.HARVEST, 530, 95, 105, 85, 125, 75, 45, 45, 50, 186, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.ALOLA_MAROWAK, "Marowak", 7, false, false, false, "Bone Keeper Pokémon", Type.FIRE, Type.GHOST, 1, 34, Abilities.CURSED_BODY, Abilities.LIGHTNING_ROD, Abilities.ROCK_HEAD, 425, 60, 80, 110, 50, 80, 45, 75, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.ETERNAL_FLOETTE, "Floette", 6, false, false, false, "Single Bloom Pokémon", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 551, 74, 65, 67, 125, 128, 92, 120, 70, 130, GrowthRate.MEDIUM_FAST, 0, false),
- new PokemonSpecies(Species.GALAR_MEOWTH, "Meowth", 8, false, false, false, "Scratch Cat Pokémon", Type.STEEL, null, 0.4, 7.5, Abilities.PICKUP, Abilities.TOUGH_CLAWS, Abilities.UNNERVE, 290, 50, 65, 55, 40, 40, 40, 255, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_PONYTA, "Ponyta", 8, false, false, false, "Fire Horse Pokémon", Type.PSYCHIC, null, 0.8, 24, Abilities.RUN_AWAY, Abilities.PASTEL_VEIL, Abilities.ANTICIPATION, 410, 50, 85, 55, 65, 65, 90, 190, 50, 82, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_RAPIDASH, "Rapidash", 8, false, false, false, "Fire Horse Pokémon", Type.PSYCHIC, Type.FAIRY, 1.7, 80, Abilities.RUN_AWAY, Abilities.PASTEL_VEIL, Abilities.ANTICIPATION, 500, 65, 100, 70, 80, 80, 105, 60, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_SLOWPOKE, "Slowpoke", 8, false, false, false, "Dopey Pokémon", Type.PSYCHIC, null, 1.2, 36, Abilities.GLUTTONY, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 315, 90, 65, 65, 40, 40, 15, 190, 50, 63, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_SLOWBRO, "Slowbro", 8, false, false, false, "Hermit Crab Pokémon", Type.POISON, Type.PSYCHIC, 1.6, 70.5, Abilities.QUICK_DRAW, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 490, 95, 100, 95, 100, 70, 30, 75, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_FARFETCHD, "Farfetch'd", 8, false, false, false, "Wild Duck Pokémon", Type.FIGHTING, null, 0.8, 42, Abilities.STEADFAST, Abilities.NONE, Abilities.SCRAPPY, 377, 52, 95, 55, 58, 62, 55, 45, 50, 132, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_WEEZING, "Weezing", 8, false, false, false, "Poison Gas Pokémon", Type.POISON, Type.FAIRY, 3, 16, Abilities.LEVITATE, Abilities.NEUTRALIZING_GAS, Abilities.MISTY_SURGE, 490, 65, 90, 120, 85, 70, 60, 60, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_MR_MIME, "Mr. Mime", 8, false, false, false, "Barrier Pokémon", Type.ICE, Type.PSYCHIC, 1.4, 56.8, Abilities.VITAL_SPIRIT, Abilities.SCREEN_CLEANER, Abilities.ICE_BODY, 460, 50, 65, 65, 90, 90, 100, 45, 50, 161, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_ARTICUNO, "Articuno", 8, true, false, false, "Freeze Pokémon", Type.PSYCHIC, Type.FLYING, 1.7, 50.9, Abilities.COMPETITIVE, Abilities.NONE, Abilities.NONE, 580, 90, 85, 85, 125, 100, 95, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.GALAR_ZAPDOS, "Zapdos", 8, true, false, false, "Electric Pokémon", Type.FIGHTING, Type.FLYING, 1.6, 58.2, Abilities.DEFIANT, Abilities.NONE, Abilities.NONE, 580, 90, 125, 90, 85, 90, 100, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.GALAR_MOLTRES, "Moltres", 8, true, false, false, "Flame Pokémon", Type.DARK, Type.FLYING, 2, 66, Abilities.BERSERK, Abilities.NONE, Abilities.NONE, 580, 90, 85, 90, 100, 125, 90, 3, 35, 290, GrowthRate.SLOW, null, false),
- new PokemonSpecies(Species.GALAR_SLOWKING, "Slowking", 8, false, false, false, "Royal Pokémon", Type.POISON, Type.PSYCHIC, 1.8, 79.5, Abilities.CURIOUS_MEDICINE, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 490, 95, 65, 80, 110, 110, 30, 70, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_CORSOLA, "Corsola", 8, false, false, false, "Coral Pokémon", Type.GHOST, null, 0.6, 0.5, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 410, 60, 55, 100, 65, 100, 30, 60, 50, 144, GrowthRate.FAST, 25, false),
- new PokemonSpecies(Species.GALAR_ZIGZAGOON, "Zigzagoon", 8, false, false, false, "Tiny Raccoon Pokémon", Type.DARK, Type.NORMAL, 0.4, 17.5, Abilities.PICKUP, Abilities.GLUTTONY, Abilities.QUICK_FEET, 240, 38, 30, 41, 30, 41, 60, 255, 50, 56, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_LINOONE, "Linoone", 8, false, false, false, "Rushing Pokémon", Type.DARK, Type.NORMAL, 0.5, 32.5, Abilities.PICKUP, Abilities.GLUTTONY, Abilities.QUICK_FEET, 420, 78, 70, 61, 50, 61, 100, 90, 50, 147, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_DARUMAKA, "Darumaka", 8, false, false, false, "Zen Charm Pokémon", Type.ICE, null, 0.7, 40, Abilities.HUSTLE, Abilities.NONE, Abilities.INNER_FOCUS, 315, 70, 90, 45, 15, 45, 50, 120, 50, 63, GrowthRate.MEDIUM_SLOW, 50, false),
- new PokemonSpecies(Species.GALAR_DARMANITAN, "Darmanitan", 8, false, false, false, "Blazing Pokémon", Type.ICE, null, 1.7, 120, Abilities.GORILLA_TACTICS, Abilities.NONE, Abilities.ZEN_MODE, 480, 105, 140, 55, 30, 55, 95, 60, 50, 168, GrowthRate.MEDIUM_SLOW, 50, false, true,
+ new PokemonSpecies(Species.PECHARUNT, 9, false, false, true, "Subjugation Pokémon", Type.POISON, Type.GHOST, 0.3, 0.3, Abilities.POISON_PUPPETEER, Abilities.NONE, Abilities.NONE, 600, 88, 88, 160, 88, 88, 88, 3, 0, 300, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.ALOLA_RATTATA, 7, false, false, false, "Mouse Pokémon", Type.DARK, Type.NORMAL, 0.3, 3.8, Abilities.GLUTTONY, Abilities.HUSTLE, Abilities.THICK_FAT, 253, 30, 56, 35, 25, 35, 72, 255, 70, 51, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_RATICATE, 7, false, false, false, "Mouse Pokémon", Type.DARK, Type.NORMAL, 0.7, 25.5, Abilities.GLUTTONY, Abilities.HUSTLE, Abilities.THICK_FAT, 413, 75, 71, 70, 40, 80, 77, 127, 70, 145, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_RAICHU, 7, false, false, false, "Mouse Pokémon", Type.ELECTRIC, Type.PSYCHIC, 0.7, 21, Abilities.SURGE_SURFER, Abilities.NONE, Abilities.NONE, 485, 60, 85, 50, 95, 85, 110, 75, 50, 243, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_SANDSHREW, 7, false, false, false, "Mouse Pokémon", Type.ICE, Type.STEEL, 0.7, 40, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.SLUSH_RUSH, 300, 50, 75, 90, 10, 35, 40, 255, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_SANDSLASH, 7, false, false, false, "Mouse Pokémon", Type.ICE, Type.STEEL, 1.2, 55, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.SLUSH_RUSH, 450, 75, 100, 120, 25, 65, 65, 90, 50, 158, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_VULPIX, 7, false, false, false, "Fox Pokémon", Type.ICE, null, 0.6, 9.9, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.SNOW_WARNING, 299, 38, 41, 40, 50, 65, 65, 190, 50, 60, GrowthRate.MEDIUM_FAST, 25, false),
+ new PokemonSpecies(Species.ALOLA_NINETALES, 7, false, false, false, "Fox Pokémon", Type.ICE, Type.FAIRY, 1.1, 19.9, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.SNOW_WARNING, 505, 73, 67, 75, 81, 100, 109, 75, 50, 177, GrowthRate.MEDIUM_FAST, 25, false),
+ new PokemonSpecies(Species.ALOLA_DIGLETT, 7, false, false, false, "Mole Pokémon", Type.GROUND, Type.STEEL, 0.2, 1, Abilities.SAND_VEIL, Abilities.TANGLING_HAIR, Abilities.SAND_FORCE, 265, 10, 55, 30, 35, 45, 90, 255, 50, 53, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_DUGTRIO, 7, false, false, false, "Mole Pokémon", Type.GROUND, Type.STEEL, 0.7, 66.6, Abilities.SAND_VEIL, Abilities.TANGLING_HAIR, Abilities.SAND_FORCE, 425, 35, 100, 60, 50, 70, 110, 50, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_MEOWTH, 7, false, false, false, "Scratch Cat Pokémon", Type.DARK, null, 0.4, 4.2, Abilities.PICKUP, Abilities.TECHNICIAN, Abilities.RATTLED, 290, 40, 35, 35, 50, 40, 90, 255, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_PERSIAN, 7, false, false, false, "Classy Cat Pokémon", Type.DARK, null, 1.1, 33, Abilities.FUR_COAT, Abilities.TECHNICIAN, Abilities.RATTLED, 440, 65, 60, 60, 75, 65, 115, 90, 50, 154, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_GEODUDE, 7, false, false, false, "Rock Pokémon", Type.ROCK, Type.ELECTRIC, 0.4, 20.3, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.GALVANIZE, 300, 40, 80, 100, 30, 30, 20, 255, 70, 60, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.ALOLA_GRAVELER, 7, false, false, false, "Rock Pokémon", Type.ROCK, Type.ELECTRIC, 1, 110, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.GALVANIZE, 390, 55, 95, 115, 45, 45, 35, 120, 70, 137, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.ALOLA_GOLEM, 7, false, false, false, "Megaton Pokémon", Type.ROCK, Type.ELECTRIC, 1.7, 316, Abilities.MAGNET_PULL, Abilities.STURDY, Abilities.GALVANIZE, 495, 80, 120, 130, 55, 65, 45, 45, 70, 223, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.ALOLA_GRIMER, 7, false, false, false, "Sludge Pokémon", Type.POISON, Type.DARK, 0.7, 42, Abilities.POISON_TOUCH, Abilities.GLUTTONY, Abilities.POWER_OF_ALCHEMY, 325, 80, 80, 50, 40, 50, 25, 190, 70, 65, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_MUK, 7, false, false, false, "Sludge Pokémon", Type.POISON, Type.DARK, 1, 52, Abilities.POISON_TOUCH, Abilities.GLUTTONY, Abilities.POWER_OF_ALCHEMY, 500, 105, 105, 75, 65, 100, 50, 75, 70, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ALOLA_EXEGGUTOR, 7, false, false, false, "Coconut Pokémon", Type.GRASS, Type.DRAGON, 10.9, 415.6, Abilities.FRISK, Abilities.NONE, Abilities.HARVEST, 530, 95, 105, 85, 125, 75, 45, 45, 50, 186, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.ALOLA_MAROWAK, 7, false, false, false, "Bone Keeper Pokémon", Type.FIRE, Type.GHOST, 1, 34, Abilities.CURSED_BODY, Abilities.LIGHTNING_ROD, Abilities.ROCK_HEAD, 425, 60, 80, 110, 50, 80, 45, 75, 50, 149, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.ETERNAL_FLOETTE, 6, false, false, false, "Single Bloom Pokémon", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 551, 74, 65, 67, 125, 128, 92, 120, 70, 130, GrowthRate.MEDIUM_FAST, 0, false),
+ new PokemonSpecies(Species.GALAR_MEOWTH, 8, false, false, false, "Scratch Cat Pokémon", Type.STEEL, null, 0.4, 7.5, Abilities.PICKUP, Abilities.TOUGH_CLAWS, Abilities.UNNERVE, 290, 50, 65, 55, 40, 40, 40, 255, 50, 58, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_PONYTA, 8, false, false, false, "Fire Horse Pokémon", Type.PSYCHIC, null, 0.8, 24, Abilities.RUN_AWAY, Abilities.PASTEL_VEIL, Abilities.ANTICIPATION, 410, 50, 85, 55, 65, 65, 90, 190, 50, 82, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_RAPIDASH, 8, false, false, false, "Fire Horse Pokémon", Type.PSYCHIC, Type.FAIRY, 1.7, 80, Abilities.RUN_AWAY, Abilities.PASTEL_VEIL, Abilities.ANTICIPATION, 500, 65, 100, 70, 80, 80, 105, 60, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_SLOWPOKE, 8, false, false, false, "Dopey Pokémon", Type.PSYCHIC, null, 1.2, 36, Abilities.GLUTTONY, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 315, 90, 65, 65, 40, 40, 15, 190, 50, 63, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_SLOWBRO, 8, false, false, false, "Hermit Crab Pokémon", Type.POISON, Type.PSYCHIC, 1.6, 70.5, Abilities.QUICK_DRAW, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 490, 95, 100, 95, 100, 70, 30, 75, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_FARFETCHD, 8, false, false, false, "Wild Duck Pokémon", Type.FIGHTING, null, 0.8, 42, Abilities.STEADFAST, Abilities.NONE, Abilities.SCRAPPY, 377, 52, 95, 55, 58, 62, 55, 45, 50, 132, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_WEEZING, 8, false, false, false, "Poison Gas Pokémon", Type.POISON, Type.FAIRY, 3, 16, Abilities.LEVITATE, Abilities.NEUTRALIZING_GAS, Abilities.MISTY_SURGE, 490, 65, 90, 120, 85, 70, 60, 60, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_MR_MIME, 8, false, false, false, "Barrier Pokémon", Type.ICE, Type.PSYCHIC, 1.4, 56.8, Abilities.VITAL_SPIRIT, Abilities.SCREEN_CLEANER, Abilities.ICE_BODY, 460, 50, 65, 65, 90, 90, 100, 45, 50, 161, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_ARTICUNO, 8, true, false, false, "Freeze Pokémon", Type.PSYCHIC, Type.FLYING, 1.7, 50.9, Abilities.COMPETITIVE, Abilities.NONE, Abilities.NONE, 580, 90, 85, 85, 125, 100, 95, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.GALAR_ZAPDOS, 8, true, false, false, "Electric Pokémon", Type.FIGHTING, Type.FLYING, 1.6, 58.2, Abilities.DEFIANT, Abilities.NONE, Abilities.NONE, 580, 90, 125, 90, 85, 90, 100, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.GALAR_MOLTRES, 8, true, false, false, "Flame Pokémon", Type.DARK, Type.FLYING, 2, 66, Abilities.BERSERK, Abilities.NONE, Abilities.NONE, 580, 90, 85, 90, 100, 125, 90, 3, 35, 290, GrowthRate.SLOW, null, false),
+ new PokemonSpecies(Species.GALAR_SLOWKING, 8, false, false, false, "Royal Pokémon", Type.POISON, Type.PSYCHIC, 1.8, 79.5, Abilities.CURIOUS_MEDICINE, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 490, 95, 65, 80, 110, 110, 30, 70, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_CORSOLA, 8, false, false, false, "Coral Pokémon", Type.GHOST, null, 0.6, 0.5, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 410, 60, 55, 100, 65, 100, 30, 60, 50, 144, GrowthRate.FAST, 25, false),
+ new PokemonSpecies(Species.GALAR_ZIGZAGOON, 8, false, false, false, "Tiny Raccoon Pokémon", Type.DARK, Type.NORMAL, 0.4, 17.5, Abilities.PICKUP, Abilities.GLUTTONY, Abilities.QUICK_FEET, 240, 38, 30, 41, 30, 41, 60, 255, 50, 56, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_LINOONE, 8, false, false, false, "Rushing Pokémon", Type.DARK, Type.NORMAL, 0.5, 32.5, Abilities.PICKUP, Abilities.GLUTTONY, Abilities.QUICK_FEET, 420, 78, 70, 61, 50, 61, 100, 90, 50, 147, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_DARUMAKA, 8, false, false, false, "Zen Charm Pokémon", Type.ICE, null, 0.7, 40, Abilities.HUSTLE, Abilities.NONE, Abilities.INNER_FOCUS, 315, 70, 90, 45, 15, 45, 50, 120, 50, 63, GrowthRate.MEDIUM_SLOW, 50, false),
+ new PokemonSpecies(Species.GALAR_DARMANITAN, 8, false, false, false, "Blazing Pokémon", Type.ICE, null, 1.7, 120, Abilities.GORILLA_TACTICS, Abilities.NONE, Abilities.ZEN_MODE, 480, 105, 140, 55, 30, 55, 95, 60, 50, 168, GrowthRate.MEDIUM_SLOW, 50, false, true,
new PokemonForm("Standard Mode", "", Type.ICE, null, 1.7, 120, Abilities.GORILLA_TACTICS, Abilities.NONE, Abilities.ZEN_MODE, 480, 105, 140, 55, 30, 55, 95, 60, 50, 168),
new PokemonForm("Zen Mode", "zen", Type.ICE, Type.FIRE, 1.7, 120, Abilities.GORILLA_TACTICS, Abilities.NONE, Abilities.ZEN_MODE, 540, 105, 160, 55, 30, 55, 135, 60, 50, 189),
),
- new PokemonSpecies(Species.GALAR_YAMASK, "Yamask", 8, false, false, false, "Spirit Pokémon", Type.GROUND, Type.GHOST, 0.5, 1.5, Abilities.WANDERING_SPIRIT, Abilities.NONE, Abilities.NONE, 303, 38, 55, 85, 30, 65, 30, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.GALAR_STUNFISK, "Stunfisk", 8, false, false, false, "Trap Pokémon", Type.GROUND, Type.STEEL, 0.7, 20.5, Abilities.MIMICRY, Abilities.NONE, Abilities.NONE, 471, 109, 81, 99, 66, 84, 32, 75, 70, 165, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.HISUI_GROWLITHE, "Growlithe", 8, false, false, false, "Puppy Pokémon", Type.FIRE, Type.ROCK, 0.8, 22.7, Abilities.INTIMIDATE, Abilities.FLASH_FIRE, Abilities.ROCK_HEAD, 350, 60, 85, 45, 65, 50, 55, 190, 50, 70, GrowthRate.SLOW, 75, false),
- new PokemonSpecies(Species.HISUI_ARCANINE, "Arcanine", 8, false, false, false, "Legendary Pokémon", Type.FIRE, Type.ROCK, 2, 168, Abilities.INTIMIDATE, Abilities.FLASH_FIRE, Abilities.ROCK_HEAD, 555, 95, 115, 80, 95, 80, 90, 85, 50, 194, GrowthRate.SLOW, 75, false),
- new PokemonSpecies(Species.HISUI_VOLTORB, "Voltorb", 8, false, false, false, "Ball Pokémon", Type.ELECTRIC, Type.GRASS, 0.5, 13, Abilities.SOUNDPROOF, Abilities.STATIC, Abilities.AFTERMATH, 330, 40, 30, 50, 55, 55, 100, 190, 80, 66, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.HISUI_ELECTRODE, "Electrode", 8, false, false, false, "Ball Pokémon", Type.ELECTRIC, Type.GRASS, 1.2, 81, Abilities.SOUNDPROOF, Abilities.STATIC, Abilities.AFTERMATH, 490, 60, 50, 70, 80, 80, 150, 60, 70, 172, GrowthRate.MEDIUM_FAST, null, false),
- new PokemonSpecies(Species.HISUI_TYPHLOSION, "Typhlosion", 8, false, false, false, "Volcano Pokémon", Type.FIRE, Type.GHOST, 1.6, 69.8, Abilities.BLAZE, Abilities.NONE, Abilities.FRISK, 534, 83, 84, 78, 119, 85, 95, 45, 70, 240, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.HISUI_QWILFISH, "Qwilfish", 8, false, false, false, "Balloon Pokémon", Type.DARK, Type.POISON, 0.5, 3.9, Abilities.POISON_POINT, Abilities.SWIFT_SWIM, Abilities.INTIMIDATE, 440, 65, 95, 85, 55, 55, 85, 45, 50, 88, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.HISUI_SNEASEL, "Sneasel", 8, false, false, false, "Sharp Claw Pokémon", Type.FIGHTING, Type.POISON, 0.9, 27, Abilities.INNER_FOCUS, Abilities.KEEN_EYE, Abilities.PICKPOCKET, 430, 55, 95, 55, 35, 85, 115, 60, 35, 86, GrowthRate.MEDIUM_SLOW, 50, true),
- new PokemonSpecies(Species.HISUI_SAMUROTT, "Samurott", 8, false, false, false, "Formidable Pokémon", Type.WATER, Type.DARK, 1.5, 58.2, Abilities.TORRENT, Abilities.NONE, Abilities.SHARPNESS, 528, 90, 108, 80, 100, 65, 85, 45, 80, 238, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.HISUI_LILLIGANT, "Lilligant", 8, false, false, false, "Flowering Pokémon", Type.GRASS, Type.FIGHTING, 1.2, 19.2, Abilities.CHLOROPHYLL, Abilities.HUSTLE, Abilities.LEAF_GUARD, 480, 80, 105, 75, 50, 75, 105, 75, 50, 168, GrowthRate.MEDIUM_FAST, 0, false),
- new PokemonSpecies(Species.HISUI_ZORUA, "Zorua", 8, false, false, false, "Tricky Fox Pokémon", Type.NORMAL, Type.GHOST, 0.7, 12.5, Abilities.ILLUSION, Abilities.NONE, Abilities.NONE, 330, 35, 60, 40, 85, 40, 80, 75, 50, 66, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.HISUI_ZOROARK, "Zoroark", 8, false, false, false, "Illusion Fox Pokémon", Type.NORMAL, Type.GHOST, 1.6, 83, Abilities.ILLUSION, Abilities.NONE, Abilities.NONE, 510, 55, 100, 60, 125, 60, 110, 45, 50, 179, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.HISUI_BRAVIARY, "Braviary", 8, false, false, false, "Valiant Pokémon", Type.PSYCHIC, Type.FLYING, 1.7, 43.4, Abilities.KEEN_EYE, Abilities.SHEER_FORCE, Abilities.TINTED_LENS, 510, 110, 83, 80, 112, 70, 65, 60, 50, 179, GrowthRate.SLOW, 100, false),
- new PokemonSpecies(Species.HISUI_SLIGGOO, "Sliggoo", 8, false, false, false, "Soft Tissue Pokémon", Type.STEEL, Type.DRAGON, 0.7, 68.5, Abilities.SAP_SIPPER, Abilities.SHELL_ARMOR, Abilities.GOOEY, 452, 58, 85, 83, 83, 113, 40, 45, 35, 158, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.HISUI_GOODRA, "Goodra", 8, false, false, false, "Dragon Pokémon", Type.STEEL, Type.DRAGON, 1.7, 334.1, Abilities.SAP_SIPPER, Abilities.SHELL_ARMOR, Abilities.GOOEY, 600, 80, 100, 100, 110, 150, 60, 45, 35, 270, GrowthRate.SLOW, 50, false),
- new PokemonSpecies(Species.HISUI_AVALUGG, "Avalugg", 8, false, false, false, "Iceberg Pokémon", Type.ICE, Type.ROCK, 1.4, 262.4, Abilities.STRONG_JAW, Abilities.ICE_BODY, Abilities.STURDY, 514, 95, 127, 184, 34, 36, 38, 55, 50, 180, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.HISUI_DECIDUEYE, "Decidueye", 8, false, false, false, "Arrow Quill Pokémon", Type.GRASS, Type.FIGHTING, 1.6, 37, Abilities.OVERGROW, Abilities.NONE, Abilities.SCRAPPY, 530, 88, 112, 80, 95, 95, 60, 45, 50, 239, GrowthRate.MEDIUM_SLOW, 87.5, false),
- new PokemonSpecies(Species.PALDEA_TAUROS, "Tauros", 9, false, false, false, "Wild Bull Pokémon", Type.FIGHTING, null, 1.4, 115, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172, GrowthRate.SLOW, 100, false, false,
+ new PokemonSpecies(Species.GALAR_YAMASK, 8, false, false, false, "Spirit Pokémon", Type.GROUND, Type.GHOST, 0.5, 1.5, Abilities.WANDERING_SPIRIT, Abilities.NONE, Abilities.NONE, 303, 38, 55, 85, 30, 65, 30, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.GALAR_STUNFISK, 8, false, false, false, "Trap Pokémon", Type.GROUND, Type.STEEL, 0.7, 20.5, Abilities.MIMICRY, Abilities.NONE, Abilities.NONE, 471, 109, 81, 99, 66, 84, 32, 75, 70, 165, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.HISUI_GROWLITHE, 8, false, false, false, "Puppy Pokémon", Type.FIRE, Type.ROCK, 0.8, 22.7, Abilities.INTIMIDATE, Abilities.FLASH_FIRE, Abilities.ROCK_HEAD, 350, 60, 85, 45, 65, 50, 55, 190, 50, 70, GrowthRate.SLOW, 75, false),
+ new PokemonSpecies(Species.HISUI_ARCANINE, 8, false, false, false, "Legendary Pokémon", Type.FIRE, Type.ROCK, 2, 168, Abilities.INTIMIDATE, Abilities.FLASH_FIRE, Abilities.ROCK_HEAD, 555, 95, 115, 80, 95, 80, 90, 85, 50, 194, GrowthRate.SLOW, 75, false),
+ new PokemonSpecies(Species.HISUI_VOLTORB, 8, false, false, false, "Ball Pokémon", Type.ELECTRIC, Type.GRASS, 0.5, 13, Abilities.SOUNDPROOF, Abilities.STATIC, Abilities.AFTERMATH, 330, 40, 30, 50, 55, 55, 100, 190, 80, 66, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.HISUI_ELECTRODE, 8, false, false, false, "Ball Pokémon", Type.ELECTRIC, Type.GRASS, 1.2, 81, Abilities.SOUNDPROOF, Abilities.STATIC, Abilities.AFTERMATH, 490, 60, 50, 70, 80, 80, 150, 60, 70, 172, GrowthRate.MEDIUM_FAST, null, false),
+ new PokemonSpecies(Species.HISUI_TYPHLOSION, 8, false, false, false, "Volcano Pokémon", Type.FIRE, Type.GHOST, 1.6, 69.8, Abilities.BLAZE, Abilities.NONE, Abilities.FRISK, 534, 83, 84, 78, 119, 85, 95, 45, 70, 240, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.HISUI_QWILFISH, 8, false, false, false, "Balloon Pokémon", Type.DARK, Type.POISON, 0.5, 3.9, Abilities.POISON_POINT, Abilities.SWIFT_SWIM, Abilities.INTIMIDATE, 440, 65, 95, 85, 55, 55, 85, 45, 50, 88, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.HISUI_SNEASEL, 8, false, false, false, "Sharp Claw Pokémon", Type.FIGHTING, Type.POISON, 0.9, 27, Abilities.INNER_FOCUS, Abilities.KEEN_EYE, Abilities.PICKPOCKET, 430, 55, 95, 55, 35, 85, 115, 60, 35, 86, GrowthRate.MEDIUM_SLOW, 50, true),
+ new PokemonSpecies(Species.HISUI_SAMUROTT, 8, false, false, false, "Formidable Pokémon", Type.WATER, Type.DARK, 1.5, 58.2, Abilities.TORRENT, Abilities.NONE, Abilities.SHARPNESS, 528, 90, 108, 80, 100, 65, 85, 45, 80, 238, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.HISUI_LILLIGANT, 8, false, false, false, "Flowering Pokémon", Type.GRASS, Type.FIGHTING, 1.2, 19.2, Abilities.CHLOROPHYLL, Abilities.HUSTLE, Abilities.LEAF_GUARD, 480, 80, 105, 75, 50, 75, 105, 75, 50, 168, GrowthRate.MEDIUM_FAST, 0, false),
+ new PokemonSpecies(Species.HISUI_ZORUA, 8, false, false, false, "Tricky Fox Pokémon", Type.NORMAL, Type.GHOST, 0.7, 12.5, Abilities.ILLUSION, Abilities.NONE, Abilities.NONE, 330, 35, 60, 40, 85, 40, 80, 75, 50, 66, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.HISUI_ZOROARK, 8, false, false, false, "Illusion Fox Pokémon", Type.NORMAL, Type.GHOST, 1.6, 83, Abilities.ILLUSION, Abilities.NONE, Abilities.NONE, 510, 55, 100, 60, 125, 60, 110, 45, 50, 179, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.HISUI_BRAVIARY, 8, false, false, false, "Valiant Pokémon", Type.PSYCHIC, Type.FLYING, 1.7, 43.4, Abilities.KEEN_EYE, Abilities.SHEER_FORCE, Abilities.TINTED_LENS, 510, 110, 83, 80, 112, 70, 65, 60, 50, 179, GrowthRate.SLOW, 100, false),
+ new PokemonSpecies(Species.HISUI_SLIGGOO, 8, false, false, false, "Soft Tissue Pokémon", Type.STEEL, Type.DRAGON, 0.7, 68.5, Abilities.SAP_SIPPER, Abilities.SHELL_ARMOR, Abilities.GOOEY, 452, 58, 85, 83, 83, 113, 40, 45, 35, 158, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.HISUI_GOODRA, 8, false, false, false, "Dragon Pokémon", Type.STEEL, Type.DRAGON, 1.7, 334.1, Abilities.SAP_SIPPER, Abilities.SHELL_ARMOR, Abilities.GOOEY, 600, 80, 100, 100, 110, 150, 60, 45, 35, 270, GrowthRate.SLOW, 50, false),
+ new PokemonSpecies(Species.HISUI_AVALUGG, 8, false, false, false, "Iceberg Pokémon", Type.ICE, Type.ROCK, 1.4, 262.4, Abilities.STRONG_JAW, Abilities.ICE_BODY, Abilities.STURDY, 514, 95, 127, 184, 34, 36, 38, 55, 50, 180, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.HISUI_DECIDUEYE, 8, false, false, false, "Arrow Quill Pokémon", Type.GRASS, Type.FIGHTING, 1.6, 37, Abilities.OVERGROW, Abilities.NONE, Abilities.SCRAPPY, 530, 88, 112, 80, 95, 95, 60, 45, 50, 239, GrowthRate.MEDIUM_SLOW, 87.5, false),
+ new PokemonSpecies(Species.PALDEA_TAUROS, 9, false, false, false, "Wild Bull Pokémon", Type.FIGHTING, null, 1.4, 115, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172, GrowthRate.SLOW, 100, false, false,
new PokemonForm("Combat Breed", "combat", Type.FIGHTING, null, 1.4, 115, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172, false, ""),
new PokemonForm("Blaze Breed", "blaze", Type.FIGHTING, Type.FIRE, 1.4, 85, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172),
new PokemonForm("Aqua Breed", "aqua", Type.FIGHTING, Type.WATER, 1.4, 110, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172),
),
- new PokemonSpecies(Species.PALDEA_WOOPER, "Wooper", 9, false, false, false, "Water Fish Pokémon", Type.POISON, Type.GROUND, 0.4, 11, Abilities.POISON_POINT, Abilities.WATER_ABSORB, Abilities.UNAWARE, 210, 55, 45, 45, 25, 25, 15, 255, 50, 42, GrowthRate.MEDIUM_FAST, 50, false),
- new PokemonSpecies(Species.BLOODMOON_URSALUNA, "Ursaluna", 9, false, false, false, "Peat Pokémon", Type.GROUND, Type.NORMAL, 2.7, 333, Abilities.MINDS_EYE, Abilities.NONE, Abilities.NONE, 555, 113, 70, 120, 135, 65, 52, 75, 50, 275, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.PALDEA_WOOPER, 9, false, false, false, "Water Fish Pokémon", Type.POISON, Type.GROUND, 0.4, 11, Abilities.POISON_POINT, Abilities.WATER_ABSORB, Abilities.UNAWARE, 210, 55, 45, 45, 25, 25, 15, 255, 50, 42, GrowthRate.MEDIUM_FAST, 50, false),
+ new PokemonSpecies(Species.BLOODMOON_URSALUNA, 9, false, false, false, "Peat Pokémon", Type.GROUND, Type.NORMAL, 2.7, 333, Abilities.MINDS_EYE, Abilities.NONE, Abilities.NONE, 555, 113, 70, 120, 135, 65, 52, 75, 50, 275, GrowthRate.MEDIUM_FAST, 50, false),
);
}
@@ -3017,7 +3064,7 @@ export const speciesStarters = {
[Species.FUECOCO]: 3,
[Species.QUAXLY]: 3,
[Species.LECHONK]: 2,
- [Species.TAROUNTULA]: 2,
+ [Species.TAROUNTULA]: 1,
[Species.NYMBLE]: 3,
[Species.PAWMI]: 3,
[Species.TANDEMAUS]: 4,
@@ -3170,18 +3217,18 @@ export const starterPassiveAbilities = {
[Species.ZAPDOS]: Abilities.DRIZZLE,
[Species.MOLTRES]: Abilities.DROUGHT,
[Species.DRATINI]: Abilities.DELTA_STREAM,
- [Species.MEWTWO]: Abilities.BERSERK,
+ [Species.MEWTWO]: Abilities.NEUROFORCE,
[Species.MEW]: Abilities.PROTEAN,
- [Species.CHIKORITA]: Abilities.TRIAGE,
+ [Species.CHIKORITA]: Abilities.RIPEN,
[Species.CYNDAQUIL]: Abilities.TURBOBLAZE,
- [Species.TOTODILE]: Abilities.STRONG_JAW,
+ [Species.TOTODILE]: Abilities.TOUGH_CLAWS,
[Species.SENTRET]: Abilities.FLUFFY,
[Species.HOOTHOOT]: Abilities.CURSED_BODY,
[Species.LEDYBA]: Abilities.SCREEN_CLEANER,
[Species.SPINARAK]: Abilities.PRANKSTER,
[Species.CHINCHOU]: Abilities.REGENERATOR,
[Species.PICHU]: Abilities.TRANSISTOR,
- [Species.CLEFFA]: Abilities.TRIAGE,
+ [Species.CLEFFA]: Abilities.MISTY_SURGE,
[Species.IGGLYBUFF]: Abilities.SERENE_GRACE,
[Species.TOGEPI]: Abilities.OPPORTUNIST,
[Species.NATU]: Abilities.TINTED_LENS,
@@ -3213,19 +3260,19 @@ export const starterPassiveAbilities = {
[Species.HOUNDOUR]: Abilities.INTIMIDATE,
[Species.PHANPY]: Abilities.ROCK_HEAD,
[Species.STANTLER]: Abilities.MAGIC_GUARD,
- [Species.SMEARGLE]: Abilities.TRACE,
+ [Species.SMEARGLE]: Abilities.QUICK_DRAW,
[Species.TYROGUE]: Abilities.STAMINA,
[Species.SMOOCHUM]: Abilities.CUTE_CHARM,
[Species.ELEKID]: Abilities.IRON_FIST,
[Species.MAGBY]: Abilities.CONTRARY,
[Species.MILTANK]: Abilities.GLUTTONY,
- [Species.RAIKOU]: Abilities.FLARE_BOOST,
- [Species.ENTEI]: Abilities.TOXIC_BOOST,
- [Species.SUICUNE]: Abilities.SPEED_BOOST,
+ [Species.RAIKOU]: Abilities.TRANSISTOR,
+ [Species.ENTEI]: Abilities.MOXIE,
+ [Species.SUICUNE]: Abilities.UNAWARE,
[Species.LARVITAR]: Abilities.SAND_FORCE,
[Species.LUGIA]: Abilities.STORM_DRAIN,
- [Species.HO_OH]: Abilities.FLASH_FIRE,
- [Species.CELEBI]: Abilities.TRIAGE,
+ [Species.HO_OH]: Abilities.MAGIC_GUARD,
+ [Species.CELEBI]: Abilities.GRASSY_SURGE,
[Species.TREECKO]: Abilities.GRASSY_SURGE,
[Species.TORCHIC]: Abilities.RECKLESS,
[Species.MUDKIP]: Abilities.REGENERATOR,
@@ -3233,9 +3280,9 @@ export const starterPassiveAbilities = {
[Species.ZIGZAGOON]: Abilities.PICKPOCKET,
[Species.WURMPLE]: Abilities.TINTED_LENS,
[Species.LOTAD]: Abilities.DRIZZLE,
- [Species.SEEDOT]: Abilities.DISGUISE,
+ [Species.SEEDOT]: Abilities.LEAF_GUARD,
[Species.TAILLOW]: Abilities.KEEN_EYE,
- [Species.WINGULL]: Abilities.HYDRATION,
+ [Species.WINGULL]: Abilities.STORM_DRAIN,
[Species.RALTS]: Abilities.PSYCHIC_SURGE,
[Species.SURSKIT]: Abilities.WATER_ABSORB,
[Species.SHROOMISH]: Abilities.GUTS,
@@ -3250,7 +3297,7 @@ export const starterPassiveAbilities = {
[Species.MAWILE]: Abilities.MOLD_BREAKER,
[Species.ARON]: Abilities.SOLID_ROCK,
[Species.MEDITITE]: Abilities.OWN_TEMPO,
- [Species.ELECTRIKE]: Abilities.SPEED_BOOST,
+ [Species.ELECTRIKE]: Abilities.ELECTRIC_SURGE,
[Species.PLUSLE]: Abilities.MINUS,
[Species.MINUN]: Abilities.PLUS,
[Species.VOLBEAT]: Abilities.TINTED_LENS,
@@ -3265,7 +3312,7 @@ export const starterPassiveAbilities = {
[Species.TRAPINCH]: Abilities.ADAPTABILITY,
[Species.CACNEA]: Abilities.SAND_RUSH,
[Species.SWABLU]: Abilities.WHITE_SMOKE,
- [Species.ZANGOOSE]: Abilities.SUPER_LUCK,
+ [Species.ZANGOOSE]: Abilities.TOUGH_CLAWS,
[Species.SEVIPER]: Abilities.MOLD_BREAKER,
[Species.LUNATONE]: Abilities.FAIRY_AURA,
[Species.SOLROCK]: Abilities.DROUGHT,
@@ -3287,7 +3334,7 @@ export const starterPassiveAbilities = {
[Species.CLAMPERL]: Abilities.SIMPLE,
[Species.RELICANTH]: Abilities.SOLID_ROCK,
[Species.LUVDISC]: Abilities.PICKUP,
- [Species.BAGON]: Abilities.BERSERK,
+ [Species.BAGON]: Abilities.GALE_WINGS,
[Species.BELDUM]: Abilities.IRON_FIST,
[Species.REGIROCK]: Abilities.REGENERATOR,
[Species.REGICE]: Abilities.ICE_SCALES,
@@ -3295,10 +3342,10 @@ export const starterPassiveAbilities = {
[Species.LATIAS]: Abilities.SERENE_GRACE,
[Species.LATIOS]: Abilities.SERENE_GRACE,
[Species.KYOGRE]: Abilities.HYDRATION,
- [Species.GROUDON]: Abilities.LEAF_GUARD,
- [Species.RAYQUAZA]: Abilities.STEADFAST,
+ [Species.GROUDON]: Abilities.EARTH_EATER,
+ [Species.RAYQUAZA]: Abilities.UNNERVE,
[Species.JIRACHI]: Abilities.COMATOSE,
- [Species.DEOXYS]: Abilities.STICKY_HOLD,
+ [Species.DEOXYS]: Abilities.PROTEAN,
[Species.TURTWIG]: Abilities.HARVEST,
[Species.CHIMCHAR]: Abilities.DEFIANT,
[Species.PIPLUP]: Abilities.SLUSH_RUSH,
@@ -3328,7 +3375,7 @@ export const starterPassiveAbilities = {
[Species.SPIRITOMB]: Abilities.REGENERATOR,
[Species.GIBLE]: Abilities.SAND_STREAM,
[Species.MUNCHLAX]: Abilities.CUD_CHEW,
- [Species.RIOLU]: Abilities.MEGA_LAUNCHER,
+ [Species.RIOLU]: Abilities.MINDS_EYE,
[Species.HIPPOPOTAS]: Abilities.SAND_VEIL,
[Species.SKORUPI]: Abilities.SUPER_LUCK,
[Species.CROAGUNK]: Abilities.PICKPOCKET,
@@ -3336,14 +3383,14 @@ export const starterPassiveAbilities = {
[Species.FINNEON]: Abilities.DRIZZLE,
[Species.MANTYKE]: Abilities.STORM_DRAIN,
[Species.SNOVER]: Abilities.SNOW_CLOAK,
- [Species.ROTOM]: Abilities.MOTOR_DRIVE,
+ [Species.ROTOM]: Abilities.HADRON_ENGINE,
[Species.UXIE]: Abilities.ILLUSION,
[Species.MESPRIT]: Abilities.MOODY,
[Species.AZELF]: Abilities.NEUROFORCE,
[Species.DIALGA]: Abilities.SPEED_BOOST,
[Species.PALKIA]: Abilities.MAGIC_BOUNCE,
[Species.HEATRAN]: Abilities.ROUGH_SKIN,
- [Species.REGIGIGAS]: Abilities.IRON_FIST,
+ [Species.REGIGIGAS]: Abilities.MINDS_EYE,
[Species.GIRATINA]: Abilities.SHADOW_TAG,
[Species.CRESSELIA]: Abilities.MAGIC_BOUNCE,
[Species.PHIONE]: Abilities.SWIFT_SWIM,
@@ -3353,7 +3400,7 @@ export const starterPassiveAbilities = {
[Species.ARCEUS]: Abilities.ADAPTABILITY,
[Species.VICTINI]: Abilities.SUPER_LUCK,
[Species.SNIVY]: Abilities.MULTISCALE,
- [Species.TEPIG]: Abilities.SAND_RUSH,
+ [Species.TEPIG]: Abilities.ROCK_HEAD,
[Species.OSHAWOTT]: Abilities.MOLD_BREAKER,
[Species.PATRAT]: Abilities.STAKEOUT,
[Species.LILLIPUP]: Abilities.BALL_FETCH,
@@ -3375,7 +3422,7 @@ export const starterPassiveAbilities = {
[Species.SEWADDLE]: Abilities.SHARPNESS,
[Species.VENIPEDE]: Abilities.INTIMIDATE,
[Species.COTTONEE]: Abilities.MISTY_SURGE,
- [Species.PETILIL]: Abilities.DROUGHT,
+ [Species.PETILIL]: Abilities.DANCER,
[Species.BASCULIN]: Abilities.OPPORTUNIST,
[Species.SANDILE]: Abilities.STRONG_JAW,
[Species.DARUMAKA]: Abilities.IRON_FIST,
@@ -3387,7 +3434,7 @@ export const starterPassiveAbilities = {
[Species.TIRTOUGA]: Abilities.SHELL_ARMOR,
[Species.ARCHEN]: Abilities.ROCKY_PAYLOAD,
[Species.TRUBBISH]: Abilities.GOOEY,
- [Species.ZORUA]: Abilities.ADAPTABILITY,
+ [Species.ZORUA]: Abilities.DARK_AURA,
[Species.MINCCINO]: Abilities.SCRAPPY,
[Species.GOTHITA]: Abilities.PRESSURE,
[Species.SOLOSIS]: Abilities.GOOEY,
@@ -3395,20 +3442,20 @@ export const starterPassiveAbilities = {
[Species.VANILLITE]: Abilities.REFRIGERATE,
[Species.DEERLING]: Abilities.JUSTIFIED,
[Species.EMOLGA]: Abilities.WIND_POWER,
- [Species.KARRABLAST]: Abilities.NO_GUARD,
- [Species.FOONGUS]: Abilities.MIMICRY,
+ [Species.KARRABLAST]: Abilities.MIRROR_ARMOR,
+ [Species.FOONGUS]: Abilities.MYCELIUM_MIGHT,
[Species.FRILLISH]: Abilities.MUMMY,
[Species.ALOMOMOLA]: Abilities.MULTISCALE,
[Species.JOLTIK]: Abilities.VOLT_ABSORB,
- [Species.FERROSEED]: Abilities.SKILL_LINK,
+ [Species.FERROSEED]: Abilities.ROUGH_SKIN,
[Species.KLINK]: Abilities.STEELWORKER,
[Species.TYNAMO]: Abilities.SWIFT_SWIM,
[Species.ELGYEM]: Abilities.SHADOW_TAG,
[Species.LITWICK]: Abilities.SOUL_HEART,
- [Species.AXEW]: Abilities.SHEER_FORCE,
+ [Species.AXEW]: Abilities.DRAGONS_MAW,
[Species.CUBCHOO]: Abilities.INTIMIDATE,
[Species.CRYOGONAL]: Abilities.DAZZLING,
- [Species.SHELMET]: Abilities.DISGUISE,
+ [Species.SHELMET]: Abilities.SHED_SKIN,
[Species.STUNFISK]: Abilities.STORM_DRAIN,
[Species.MIENFOO]: Abilities.NO_GUARD,
[Species.DRUDDIGON]: Abilities.INTIMIDATE,
@@ -3434,34 +3481,34 @@ export const starterPassiveAbilities = {
[Species.MELOETTA]: Abilities.PUNK_ROCK,
[Species.GENESECT]: Abilities.MEGA_LAUNCHER,
[Species.CHESPIN]: Abilities.IRON_BARBS,
- [Species.FENNEKIN]: Abilities.MAGIC_GUARD,
- [Species.FROAKIE]: Abilities.MERCILESS,
+ [Species.FENNEKIN]: Abilities.MAGIC_BOUNCE,
+ [Species.FROAKIE]: Abilities.ADAPTABILITY,
[Species.BUNNELBY]: Abilities.GUTS,
[Species.FLETCHLING]: Abilities.RECKLESS,
[Species.SCATTERBUG]: Abilities.PRANKSTER,
[Species.LITLEO]: Abilities.INTIMIDATE,
[Species.FLABEBE]: Abilities.GRASSY_SURGE,
- [Species.SKIDDO]: Abilities.FUR_COAT,
+ [Species.SKIDDO]: Abilities.GRASSY_SURGE,
[Species.PANCHAM]: Abilities.FLUFFY,
[Species.FURFROU]: Abilities.BALL_FETCH,
[Species.ESPURR]: Abilities.PSYCHIC_SURGE,
[Species.HONEDGE]: Abilities.SHARPNESS,
- [Species.SPRITZEE]: Abilities.UNAWARE,
- [Species.SWIRLIX]: Abilities.PIXILATE,
+ [Species.SPRITZEE]: Abilities.MISTY_SURGE,
+ [Species.SWIRLIX]: Abilities.WELL_BAKED_BODY,
[Species.INKAY]: Abilities.SUPREME_OVERLORD,
[Species.BINACLE]: Abilities.SOLID_ROCK,
- [Species.SKRELP]: Abilities.CORROSION,
+ [Species.SKRELP]: Abilities.DRAGONS_MAW,
[Species.CLAUNCHER]: Abilities.SWIFT_SWIM,
[Species.HELIOPTILE]: Abilities.NO_GUARD,
- [Species.TYRUNT]: Abilities.SHEER_FORCE,
+ [Species.TYRUNT]: Abilities.RECKLESS,
[Species.AMAURA]: Abilities.SERENE_GRACE,
[Species.HAWLUCHA]: Abilities.RECKLESS,
[Species.DEDENNE]: Abilities.SIMPLE,
[Species.CARBINK]: Abilities.SOLID_ROCK,
- [Species.GOOMY]: Abilities.POISON_HEAL,
+ [Species.GOOMY]: Abilities.DRIZZLE,
[Species.KLEFKI]: Abilities.TRIAGE,
[Species.PHANTUMP]: Abilities.UNNERVE,
- [Species.PUMPKABOO]: Abilities.FLARE_BOOST,
+ [Species.PUMPKABOO]: Abilities.FLASH_FIRE,
[Species.BERGMITE]: Abilities.MIRROR_ARMOR,
[Species.NOIBAT]: Abilities.PUNK_ROCK,
[Species.XERNEAS]: Abilities.COMPETITIVE,
@@ -3483,8 +3530,8 @@ export const starterPassiveAbilities = {
[Species.WISHIWASHI]: Abilities.PARENTAL_BOND,
[Species.MAREANIE]: Abilities.TOXIC_DEBRIS,
[Species.MUDBRAY]: Abilities.CUD_CHEW,
- [Species.DEWPIDER]: Abilities.STRONG_JAW,
- [Species.FOMANTIS]: Abilities.MIMICRY,
+ [Species.DEWPIDER]: Abilities.UNNERVE,
+ [Species.FOMANTIS]: Abilities.SHARPNESS,
[Species.MORELULL]: Abilities.PERISH_BODY,
[Species.SALANDIT]: Abilities.DAZZLING,
[Species.STUFFUL]: Abilities.HOSPITALITY,
@@ -3493,14 +3540,14 @@ export const starterPassiveAbilities = {
[Species.ORANGURU]: Abilities.HOSPITALITY,
[Species.PASSIMIAN]: Abilities.COSTAR,
[Species.WIMPOD]: Abilities.TINTED_LENS,
- [Species.SANDYGAST]: Abilities.DAUNTLESS_SHIELD,
+ [Species.SANDYGAST]: Abilities.SAND_STREAM,
[Species.PYUKUMUKU]: Abilities.IRON_BARBS,
[Species.TYPE_NULL]: Abilities.ADAPTABILITY,
[Species.MINIOR]: Abilities.ANGER_SHELL,
[Species.KOMALA]: Abilities.GUTS,
[Species.TURTONATOR]: Abilities.ANGER_SHELL,
[Species.TOGEDEMARU]: Abilities.STATIC,
- [Species.MIMIKYU]: Abilities.MIMICRY,
+ [Species.MIMIKYU]: Abilities.CURSED_BODY,
[Species.BRUXISH]: Abilities.MULTISCALE,
[Species.DRAMPA]: Abilities.FLASH_FIRE,
[Species.DHELMISE]: Abilities.INFILTRATOR,
@@ -3522,12 +3569,12 @@ export const starterPassiveAbilities = {
[Species.MARSHADOW]: Abilities.IRON_FIST,
[Species.POIPOLE]: Abilities.MERCILESS,
[Species.STAKATAKA]: Abilities.DAUNTLESS_SHIELD,
- [Species.BLACEPHALON]: Abilities.REGENERATOR,
+ [Species.BLACEPHALON]: Abilities.MAGIC_GUARD,
[Species.ZERAORA]: Abilities.MOTOR_DRIVE,
[Species.MELTAN]: Abilities.FULL_METAL_BODY,
- [Species.GROOKEY]: Abilities.SOLID_ROCK,
+ [Species.GROOKEY]: Abilities.GRASS_PELT,
[Species.SCORBUNNY]: Abilities.RECKLESS,
- [Species.SOBBLE]: Abilities.MIMICRY,
+ [Species.SOBBLE]: Abilities.SUPER_LUCK,
[Species.SKWOVET]: Abilities.HONEY_GATHER,
[Species.ROOKIDEE]: Abilities.IRON_BARBS,
[Species.BLIPBUG]: Abilities.TINTED_LENS,
@@ -3535,7 +3582,7 @@ export const starterPassiveAbilities = {
[Species.GOSSIFLEUR]: Abilities.STORM_DRAIN,
[Species.WOOLOO]: Abilities.ROCK_HEAD,
[Species.CHEWTLE]: Abilities.ROCK_HEAD,
- [Species.YAMPER]: Abilities.SPEED_BOOST,
+ [Species.YAMPER]: Abilities.STAKEOUT,
[Species.ROLYCOLY]: Abilities.EARTH_EATER,
[Species.APPLIN]: Abilities.DRAGONS_MAW,
[Species.SILICOBRA]: Abilities.SAND_RUSH,
@@ -3572,7 +3619,7 @@ export const starterPassiveAbilities = {
[Species.GLASTRIER]: Abilities.FILTER,
[Species.SPECTRIER]: Abilities.PERISH_BODY,
[Species.CALYREX]: Abilities.HARVEST,
- [Species.ENAMORUS]: Abilities.MISTY_SURGE,
+ [Species.ENAMORUS]: Abilities.PRANKSTER,
[Species.SPRIGATITO]: Abilities.MAGICIAN,
[Species.FUECOCO]: Abilities.EARTH_EATER,
[Species.QUAXLY]: Abilities.DANCER,
@@ -3638,7 +3685,7 @@ export const starterPassiveAbilities = {
[Species.OKIDOGI]: Abilities.INTIMIDATE,
[Species.MUNKIDORI]: Abilities.PRANKSTER,
[Species.FEZANDIPITI]: Abilities.DAZZLING,
- [Species.OGERPON]: Abilities.DISGUISE,
+ [Species.OGERPON]: Abilities.OPPORTUNIST,
[Species.GOUGING_FIRE]: Abilities.BEAST_BOOST,
[Species.RAGING_BOLT]: Abilities.BEAST_BOOST,
[Species.IRON_BOULDER]: Abilities.SHARPNESS,
@@ -3669,7 +3716,7 @@ export const starterPassiveAbilities = {
[Species.HISUI_VOLTORB]: Abilities.HADRON_ENGINE,
[Species.HISUI_QWILFISH]: Abilities.MERCILESS,
[Species.HISUI_SNEASEL]: Abilities.SCRAPPY,
- [Species.HISUI_ZORUA]: Abilities.DARK_AURA,
+ [Species.HISUI_ZORUA]: Abilities.ADAPTABILITY,
[Species.PALDEA_TAUROS]: Abilities.RATTLED,
[Species.PALDEA_WOOPER]: Abilities.THICK_FAT,
[Species.BLOODMOON_URSALUNA]: Abilities.BERSERK
diff --git a/src/data/splash-messages.ts b/src/data/splash-messages.ts
index 32a48d03063..198ff07cec9 100644
--- a/src/data/splash-messages.ts
+++ b/src/data/splash-messages.ts
@@ -15,6 +15,7 @@ splashMessages.push(...[
'Now with 33% More Salt!',
'Infinite Fusion at Home!',
'Broken Egg Moves!',
+ 'Magnificent!',
'Mubstitute!',
'That\'s Crazy!',
'Orance Juice!',
diff --git a/src/data/trainer-config.ts b/src/data/trainer-config.ts
index c13ea820e03..044bd4ec858 100644
--- a/src/data/trainer-config.ts
+++ b/src/data/trainer-config.ts
@@ -697,9 +697,9 @@ export const trainerConfigs: TrainerConfigs = {
[TrainerType.GIOVANNI]: new TrainerConfig(++t).initForGymLeader([ Species.SANDILE, Species.MURKROW, Species.NIDORAN_M, Species.NIDORAN_F ], Type.DARK).setBattleBgm('battle_kanto_gym'),
[TrainerType.FALKNER]: new TrainerConfig(++t).initForGymLeader([ Species.PIDGEY, Species.HOOTHOOT, Species.DODUO ], Type.FLYING).setBattleBgm('battle_johto_gym'),
[TrainerType.BUGSY]: new TrainerConfig(++t).initForGymLeader([ Species.SCYTHER, Species.HERACROSS, Species.SHUCKLE, Species.PINSIR ], Type.BUG).setBattleBgm('battle_johto_gym'),
- [TrainerType.WHITNEY]: new TrainerConfig(++t).initForGymLeader([ Species.CLEFAIRY, Species.MILTANK ], Type.NORMAL).setBattleBgm('battle_johto_gym'),
+ [TrainerType.WHITNEY]: new TrainerConfig(++t).initForGymLeader([ Species.GIRAFARIG, Species.MILTANK ], Type.NORMAL).setBattleBgm('battle_johto_gym'),
[TrainerType.MORTY]: new TrainerConfig(++t).initForGymLeader([ Species.GASTLY, Species.MISDREAVUS, Species.SABLEYE ], Type.GHOST).setBattleBgm('battle_johto_gym'),
- [TrainerType.CHUCK]: new TrainerConfig(++t).initForGymLeader([ Species.POLIWRATH, ], Type.FIGHTING).setBattleBgm('battle_johto_gym'),
+ [TrainerType.CHUCK]: new TrainerConfig(++t).initForGymLeader([ Species.POLIWRATH, Species.MANKEY ], Type.FIGHTING).setBattleBgm('battle_johto_gym'),
[TrainerType.JASMINE]: new TrainerConfig(++t).initForGymLeader([ Species.MAGNEMITE, Species.STEELIX ], Type.STEEL).setBattleBgm('battle_johto_gym'),
[TrainerType.PRYCE]: new TrainerConfig(++t).initForGymLeader([ Species.SEEL, Species.SWINUB ], Type.ICE).setBattleBgm('battle_johto_gym'),
[TrainerType.CLAIR]: new TrainerConfig(++t).initForGymLeader([ Species.DRATINI, Species.HORSEA, Species.GYARADOS ], Type.DRAGON).setBattleBgm('battle_johto_gym'),
@@ -846,6 +846,8 @@ export const trainerConfigs: TrainerConfigs = {
.setPartyMemberFunc(5, getRandomPartyMemberFunc([ Species.RAYQUAZA ], TrainerSlot.TRAINER, true, p => {
p.setBoss(true, 3);
p.pokeball = PokeballType.MASTER_BALL;
+ p.shiny = true;
+ p.variant = 1;
}))
.setGenModifiersFunc(party => {
const starter = party[0];
@@ -862,6 +864,8 @@ export const trainerConfigs: TrainerConfigs = {
.setPartyMemberFunc(5, getRandomPartyMemberFunc([ Species.RAYQUAZA ], TrainerSlot.TRAINER, true, p => {
p.setBoss();
p.pokeball = PokeballType.MASTER_BALL;
+ p.shiny = true;
+ p.variant = 1;
p.formIndex = 1;
}))
.setGenModifiersFunc(party => {
diff --git a/src/data/trainer-names.ts b/src/data/trainer-names.ts
index 8d7f2e4fdce..a1c83af0779 100644
--- a/src/data/trainer-names.ts
+++ b/src/data/trainer-names.ts
@@ -79,7 +79,7 @@ export const trainerNamePools = {
[TrainerType.BEAUTY]: ["Cassie","Julia","Olivia","Samantha","Valerie","Victoria","Bridget","Connie","Jessica","Johanna","Melissa","Sheila","Shirley","Tiffany","Namiko","Thalia","Grace","Lola","Lori","Maura","Tamia","Cyndy","Devon","Gabriella","Harley","Lindsay","Nicola","Callie","Charlotte","Kassandra","December","Fleming","Nikola","Aimee","Anais","Brigitte","Cassandra","Andrea","Brittney","Carolyn","Krystal","Alexis","Alice","Aina","Anya","Arianna","Aubrey","Beverly","Camille","Beauty","Evette","Hansol","Haruka","Jill","Jo","Lana","Lois","Lucy","Mai","Nickie","Nicole","Prita","Rose","Shelly","Suzy","Tessa","Anita","Alissa","Rita","Cudsy","Eloff","Miru","Minot","Nevah","Niven","Ogoin"],
[TrainerType.BIKER]: ["Charles","Dwayne","Glenn","Harris","Joel","Riley","Zeke","Alex","Billy","Ernest","Gerald","Hideo","Isaac","Jared","Jaren","Jaxon","Jordy","Lao","Lukas","Malik","Nikolas","Ricardo","Ruben","Virgil","William","Aiden","Dale","Dan","Jacob","Markey","Reese","Teddy","Theron","Jeremy","Morgann","Phillip","Philip","Stanley","Dillon"],
[TrainerType.BLACK_BELT]: [["Kenji","Lao","Lung","Nob","Wai","Yoshi","Atsushi","Daisuke","Hideki","Hitoshi","Kiyo","Koichi","Koji","Yuji","Cristian","Rhett","Takao","Theodore","Zander","Aaron","Hugh","Mike","Nicolas","Shea","Takashi","Adam","Carl","Colby","Darren","David","Davon","Derek","Eddie","Gregory","Griffin","Jarrett","Jeffery","Kendal","Kyle","Luke","Miles","Nathaniel","Philip","Rafael","Ray","Ricky","Sean","Willie","Ander","Manford","Benjamin","Corey","Edward","Grant","Jay","Kendrew","Kentaro","Ryder","Teppei","Thomas","Tyrone","Andrey","Donny","Drago","Gordon","Grigor","Jeriel","Kenneth","Martell","Mathis","Rich","Rocky","Rodrigo","Wesley","Zachery","Alonzo","Cadoc","Gunnar","Igor","Killian","Markus","Ricardo","Yanis","Banting","Clayton","Duane","Earl","Greg","Roy","Terry","Tracy","Walter","Alvaro","Curtis","Francis","Ross","Brice","Cheng","Dudley","Eric","Kano","Masahiro","Randy","Ryuji","Steve","Tadashi","Wong","Yuen","Brian","Carter","Reece","Nick","Yang"],["Cora","Cyndy","Jill","Laura","Sadie","Tessa","Vivian","Aisha","Callie","Danielle","Helene","Jocelyn","Lilith","Paula","Reyna","Helen","Kelsey","Tyler","Amy","Chandra","Hillary","Janie","Lee","Maggie","Mikiko","Miriam","Sharon","Susie","Xiao","Alize","Azra","Brenda","Chalina","Chan","Glinda","Maki","Tia","Tiffany","Wendy","Andrea","Gabrielle","Gerardine","Hailey","Hedvig","Justine","Kinsey","Sigrid","Veronique","Tess"]],
- [TrainerType.BREEDER]: [["Isaac","Myles","Salvadore","Allison","Alize","Bethany","Lily","Albert","Kahlil","Eustace","Galen","Owen","Addison","Marcus","Foster","Cory","Glenn","Jay","Wesley","William","Adrian","Bradley","Jaime"],["Lydia","Gabrielle","Jayden","Pat","Veronica","Amber","Jennifer","Kaylee","Adelaide","Brooke","Ethel","April","Irene","Magnolia","Amala","Mercy","Amanda","Ikue","Savannah","Yuka","Chloe","Debra","Denise","Elena"]],
+ [TrainerType.BREEDER]: [["Isaac","Myles","Salvadore","Albert","Kahlil","Eustace","Galen","Owen","Addison","Marcus","Foster","Cory","Glenn","Jay","Wesley","William","Adrian","Bradley","Jaime"],["Allison","Alize","Bethany","Lily","Lydia","Gabrielle","Jayden","Pat","Veronica","Amber","Jennifer","Kaylee","Adelaide","Brooke","Ethel","April","Irene","Magnolia","Amala","Mercy","Amanda","Ikue","Savannah","Yuka","Chloe","Debra","Denise","Elena"]],
[TrainerType.CLERK]: [["Chaz","Clemens","Doug","Fredric","Ivan","Isaac","Nelson","Wade","Warren","Augustin","Gilligan","Cody","Jeremy","Shane","Dugal","Royce","Ronald"],["Alberta","Ingrid","Katie","Piper","Trisha","Wren","Britney","Lana","Jessica","Kristen","Michelle","Gabrielle"]],
[TrainerType.CYCLIST]: [["Axel","James","John","Ryan","Hector","Jeremiah"],["Kayla","Megan","Nicole","Rachel","Krissa","Adelaide"]],
[TrainerType.DANCER]: ["Brian","Davey","Dirk","Edmond","Mickey","Raymond","Cara","Julia","Maika","Mireille","Ronda","Zoe"],
diff --git a/src/data/type.ts b/src/data/type.ts
index fa2b41673cd..14f9f932a2a 100644
--- a/src/data/type.ts
+++ b/src/data/type.ts
@@ -21,9 +21,12 @@ export enum Type {
STELLAR
};
-export type TypeDamageMultiplier = 0 | 0.25 | 0.5 | 1 | 2 | 4;
+export type TypeDamageMultiplier = 0 | 0.125 | 0.25 | 0.5 | 1 | 2 | 4 | 8;
export function getTypeDamageMultiplier(attackType: integer, defType: integer): TypeDamageMultiplier {
+ if (attackType === Type.UNKNOWN || defType === Type.UNKNOWN)
+ return 1;
+
switch (defType) {
case Type.NORMAL:
switch (attackType) {
diff --git a/src/data/variant.ts b/src/data/variant.ts
new file mode 100644
index 00000000000..4e167e43291
--- /dev/null
+++ b/src/data/variant.ts
@@ -0,0 +1,18 @@
+export type Variant = 0 | 1 | 2;
+
+export type VariantSet = [Variant, Variant, Variant];
+
+export const variantData: any = {};
+
+export const variantColorCache = {};
+
+export function getVariantTint(variant: Variant): integer {
+ switch (variant) {
+ case 0:
+ return 0xf8c020;
+ case 1:
+ return 0x20f8f0;
+ case 2:
+ return 0xe81048;
+ }
+}
\ No newline at end of file
diff --git a/src/data/weather.ts b/src/data/weather.ts
index b3a59f34b98..1409920a1bc 100644
--- a/src/data/weather.ts
+++ b/src/data/weather.ts
@@ -14,6 +14,7 @@ export enum WeatherType {
RAIN,
SANDSTORM,
HAIL,
+ SNOW,
FOG,
HEAVY_RAIN,
HARSH_SUN,
@@ -108,7 +109,7 @@ export class Weather {
for (let pokemon of field) {
let suppressWeatherEffectAbAttr = pokemon.getAbility().getAttrs(SuppressWeatherEffectAbAttr).find(() => true) as SuppressWeatherEffectAbAttr;
if (!suppressWeatherEffectAbAttr)
- suppressWeatherEffectAbAttr = pokemon.canApplyPassive() ? pokemon.getPassiveAbility().getAttrs(SuppressWeatherEffectAbAttr).find(() => true) as SuppressWeatherEffectAbAttr : null;
+ suppressWeatherEffectAbAttr = pokemon.hasPassive() ? pokemon.getPassiveAbility().getAttrs(SuppressWeatherEffectAbAttr).find(() => true) as SuppressWeatherEffectAbAttr : null;
if (suppressWeatherEffectAbAttr && (!this.isImmutable() || suppressWeatherEffectAbAttr.affectsImmutable))
return true;
}
@@ -127,6 +128,8 @@ export function getWeatherStartMessage(weatherType: WeatherType): string {
return 'A sandstorm brewed!';
case WeatherType.HAIL:
return 'It started to hail!';
+ case WeatherType.SNOW:
+ return 'It started to snow!';
case WeatherType.FOG:
return 'A thick fog emerged!'
case WeatherType.HEAVY_RAIN:
@@ -150,6 +153,8 @@ export function getWeatherLapseMessage(weatherType: WeatherType): string {
return 'The sandstorm rages.';
case WeatherType.HAIL:
return 'Hail continues to fall.';
+ case WeatherType.SNOW:
+ return 'The snow is falling down.';
case WeatherType.FOG:
return 'The fog continues.';
case WeatherType.HEAVY_RAIN:
@@ -184,6 +189,8 @@ export function getWeatherClearMessage(weatherType: WeatherType): string {
return 'The sandstorm subsided.';
case WeatherType.HAIL:
return 'The hail stopped.';
+ case WeatherType.SNOW:
+ return 'The snow stopped.';
case WeatherType.FOG:
return 'The fog disappeared.'
case WeatherType.HEAVY_RAIN:
@@ -292,11 +299,6 @@ export function getRandomWeatherType(arena: any /* Importing from arena causes a
{ weatherType: WeatherType.RAIN, weight: 1 }
];
break;
- case Biome.MOUNTAIN:
- weatherPool = [
- { weatherType: WeatherType.NONE, weight: 1 }
- ];
- break;
case Biome.BADLANDS:
weatherPool = [
{ weatherType: WeatherType.NONE, weight: 8 },
@@ -314,6 +316,8 @@ export function getRandomWeatherType(arena: any /* Importing from arena causes a
break;
case Biome.ICE_CAVE:
weatherPool = [
+ { weatherType: WeatherType.NONE, weight: 3 },
+ { weatherType: WeatherType.SNOW, weight: 4 },
{ weatherType: WeatherType.HAIL, weight: 1 }
];
break;
@@ -334,20 +338,25 @@ export function getRandomWeatherType(arena: any /* Importing from arena causes a
{ weatherType: WeatherType.FOG, weight: 1 }
];
break;
- case Biome.RUINS:
+ case Biome.JUNGLE:
weatherPool = [
- { weatherType: WeatherType.NONE, weight: 4 }
+ { weatherType: WeatherType.NONE, weight: 8 },
+ { weatherType: WeatherType.RAIN, weight: 2 }
];
break;
- case Biome.WASTELAND:
+ case Biome.SNOWY_FOREST:
weatherPool = [
- { weatherType: WeatherType.NONE, weight: 4 }
+ { weatherType: WeatherType.SNOW, weight: 7 },
+ { weatherType: WeatherType.HAIL, weight: 1 }
];
break;
- case Biome.ABYSS:
+ case Biome.ISLAND:
weatherPool = [
- { weatherType: WeatherType.NONE, weight: 4 }
+ { weatherType: WeatherType.NONE, weight: 5 },
+ { weatherType: WeatherType.RAIN, weight: 1 },
];
+ if (hasSun)
+ weatherPool.push({ weatherType: WeatherType.SUNNY, weight: 2 });
break;
}
diff --git a/src/debug.js b/src/debug.js
index 68f95c41140..b627dba65b1 100644
--- a/src/debug.js
+++ b/src/debug.js
@@ -2,7 +2,7 @@ export function getData() {
const dataStr = localStorage.getItem('data');
if (!dataStr)
return null;
- return JSON.parse(atob(dataStr), (k, v) => k.endsWith('Attr') && ![ 'natureAttr', 'passiveAttr', 'variantAttr' ].includes(k) ? BigInt(v) : v);
+ return JSON.parse(atob(dataStr), (k, v) => k.endsWith('Attr') && ![ 'natureAttr', 'abilityAttr', 'passiveAttr' ].includes(k) ? BigInt(v) : v);
}
export function getSession() {
diff --git a/src/egg-hatch-phase.ts b/src/egg-hatch-phase.ts
index f485d5b75f5..a28d8e2983c 100644
--- a/src/egg-hatch-phase.ts
+++ b/src/egg-hatch-phase.ts
@@ -82,7 +82,11 @@ export class EggHatchPhase extends Phase {
this.eggContainer.add(this.eggLightraysOverlay);
this.eggHatchContainer.add(this.eggContainer);
- const getPokemonSprite = () => this.scene.add.sprite(this.eggHatchBg.displayWidth / 2, this.eggHatchBg.displayHeight / 2, `pkmn__sub`);
+ const getPokemonSprite = () => {
+ const ret = this.scene.add.sprite(this.eggHatchBg.displayWidth / 2, this.eggHatchBg.displayHeight / 2, `pkmn__sub`);
+ ret.setPipeline(this.scene.spritePipeline, { tone: [ 0.0, 0.0, 0.0, 0.0 ], ignoreTimeTint: true });
+ return ret;
+ };
this.eggHatchContainer.add((this.pokemonSprite = getPokemonSprite()));
@@ -245,13 +249,16 @@ export class EggHatchPhase extends Phase {
this.scene.validateAchv(achvs.HATCH_SHINY);
this.eggContainer.setVisible(false);
this.pokemonSprite.play(this.pokemon.getSpriteKey(true));
- this.pokemonSprite.pipelineData['ignoreTimeTint'] = true;
+ this.pokemonSprite.setPipelineData('ignoreTimeTint', true);
+ this.pokemonSprite.setPipelineData('spriteKey', this.pokemon.getSpriteKey());
+ this.pokemonSprite.setPipelineData('shiny', this.pokemon.shiny);
+ this.pokemonSprite.setPipelineData('variant', this.pokemon.variant);
this.pokemonSprite.setVisible(true);
this.scene.time.delayedCall(Utils.fixedInt(250), () => {
this.pokemon.cry();
if (isShiny) {
this.scene.time.delayedCall(Utils.fixedInt(500), () => {
- this.pokemonShinySparkle.play('sparkle');
+ this.pokemonShinySparkle.play(`sparkle${this.pokemon.variant ? `_${this.pokemon.variant + 1}` : ''}`);
this.scene.playSound('sparkle');
});
}
diff --git a/src/evolution-phase.ts b/src/evolution-phase.ts
index c71ae5da368..fb3803a1e75 100644
--- a/src/evolution-phase.ts
+++ b/src/evolution-phase.ts
@@ -71,7 +71,11 @@ export class EvolutionPhase extends Phase {
this.evolutionBgOverlay.setAlpha(0);
this.evolutionContainer.add(this.evolutionBgOverlay);
- const getPokemonSprite = () => this.scene.addPokemonSprite(this.pokemon, this.evolutionBaseBg.displayWidth / 2, this.evolutionBaseBg.displayHeight / 2, `pkmn__sub`);
+ const getPokemonSprite = () => {
+ const ret = this.scene.addPokemonSprite(this.pokemon, this.evolutionBaseBg.displayWidth / 2, this.evolutionBaseBg.displayHeight / 2, `pkmn__sub`);
+ ret.setPipeline(this.scene.spritePipeline, { tone: [ 0.0, 0.0, 0.0, 0.0 ], ignoreTimeTint: true });
+ return ret;
+ };
this.evolutionContainer.add((this.pokemonSprite = getPokemonSprite()));
this.evolutionContainer.add((this.pokemonTintSprite = getPokemonSprite()));
@@ -92,7 +96,10 @@ export class EvolutionPhase extends Phase {
[ this.pokemonSprite, this.pokemonTintSprite, this.pokemonEvoSprite, this.pokemonEvoTintSprite ].map(sprite => {
sprite.play(this.pokemon.getSpriteKey(true));
sprite.setPipeline(this.scene.spritePipeline, { tone: [ 0.0, 0.0, 0.0, 0.0 ], hasShadow: false, teraColor: getTypeRgb(this.pokemon.getTeraType()) });
- sprite.pipelineData['ignoreTimeTint'] = true;
+ sprite.setPipelineData('ignoreTimeTint', true);
+ sprite.setPipelineData('spriteKey', this.pokemon.getSpriteKey());
+ sprite.setPipelineData('shiny', this.pokemon.shiny);
+ sprite.setPipelineData('variant', this.pokemon.variant);
[ 'spriteColors', 'fusionSpriteColors' ].map(k => {
if (this.pokemon.summonData?.speciesForm)
k += 'Base';
@@ -115,7 +122,10 @@ export class EvolutionPhase extends Phase {
[ this.pokemonEvoSprite, this.pokemonEvoTintSprite ].map(sprite => {
sprite.play(evolvedPokemon.getSpriteKey(true));
- sprite.pipelineData['ignoreTimeTint'] = true;
+ sprite.setPipelineData('ignoreTimeTint', true);
+ sprite.setPipelineData('spriteKey', evolvedPokemon.getSpriteKey());
+ sprite.setPipelineData('shiny', evolvedPokemon.shiny);
+ sprite.setPipelineData('variant', evolvedPokemon.variant);
[ 'spriteColors', 'fusionSpriteColors' ].map(k => {
if (evolvedPokemon.summonData?.speciesForm)
k += 'Base';
diff --git a/src/field/arena.ts b/src/field/arena.ts
index 11677dc490e..910d998d68e 100644
--- a/src/field/arena.ts
+++ b/src/field/arena.ts
@@ -166,6 +166,20 @@ export class Arena {
return 2;
}
break;
+ case Species.ROTOM:
+ switch (this.biomeType) {
+ case Biome.VOLCANO:
+ return 1;
+ case Biome.SEA:
+ return 2;
+ case Biome.ICE_CAVE:
+ return 3;
+ case Biome.MOUNTAIN:
+ return 4;
+ case Biome.TALL_GRASS:
+ return 5;
+ }
+ break;
case Species.SCATTERBUG:
case Species.SPEWPA:
case Species.VIVILLON:
@@ -527,6 +541,16 @@ export class Arena {
return !!tag;
}
+ removeTagOnSide(tagType: ArenaTagType, side: ArenaTagSide): boolean {
+ const tag = this.getTagOnSide(tagType, side);
+ if (tag) {
+ tag.onRemove(this);
+ this.tags.splice(this.tags.indexOf(tag), 1);
+ }
+ return !!tag;
+ }
+
+
removeAllTags(): void {
while (this.tags.length) {
this.tags[0].onRemove(this);
diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts
index c396ca37bcc..ffde68f8d9e 100644
--- a/src/field/pokemon.ts
+++ b/src/field/pokemon.ts
@@ -1,5 +1,7 @@
import Phaser from 'phaser';
import BattleScene, { ABILITY_OVERRIDE, AnySound, MOVE_OVERRIDE, OPP_ABILITY_OVERRIDE, OPP_MOVE_OVERRIDE } from '../battle-scene';
+import { Variant, VariantSet, variantColorCache } from '#app/data/variant';
+import { variantData } from '#app/data/variant';
import BattleInfo, { PlayerBattleInfo, EnemyBattleInfo } from '../ui/battle-info';
import { Moves } from "../data/enums/moves";
import Move, { HighCritAttr, HitsTagAttr, applyMoveAttrs, FixedDamageAttr, VariableAtkAttr, VariablePowerAttr, allMoves, MoveCategory, TypelessAttr, CritOnlyAttr, getMoveTargets, OneHitKOAttr, MultiHitAttr, StatusMoveTypeImmunityAttr, MoveTarget, VariableDefAttr, AttackMove, ModifiedDamageAttr, VariableMoveTypeMultiplierAttr, IgnoreOpponentStatChangesAttr, SacrificialAttr, VariableMoveTypeAttr, VariableMoveCategoryAttr } from "../data/move";
@@ -25,10 +27,10 @@ import { TempBattleStat } from '../data/temp-battle-stat';
import { ArenaTagSide, WeakenMoveScreenTag, WeakenMoveTypeTag } from '../data/arena-tag';
import { ArenaTagType } from "../data/enums/arena-tag-type";
import { Biome } from "../data/enums/biome";
-import { Ability, BattleStatMultiplierAbAttr, BlockCritAbAttr, BonusCritAbAttr, BypassBurnDamageReductionAbAttr, FieldVariableMovePowerAbAttr, IgnoreOpponentStatChangesAbAttr, MoveImmunityAbAttr, MoveTypeChangeAttr, NonSuperEffectiveImmunityAbAttr, PreApplyBattlerTagAbAttr, PreDefendFullHpEndureAbAttr, ReceivedMoveDamageMultiplierAbAttr, ReduceStatusEffectDurationAbAttr, StabBoostAbAttr, StatusEffectImmunityAbAttr, TypeImmunityAbAttr, VariableMovePowerAbAttr, VariableMoveTypeAbAttr, WeightMultiplierAbAttr, allAbilities, applyAbAttrs, applyBattleStatMultiplierAbAttrs, applyPostDefendAbAttrs, applyPreApplyBattlerTagAbAttrs, applyPreAttackAbAttrs, applyPreDefendAbAttrs, applyPreSetStatusAbAttrs } from '../data/ability';
+import { Ability, AbAttr, BattleStatMultiplierAbAttr, BlockCritAbAttr, BonusCritAbAttr, BypassBurnDamageReductionAbAttr, FieldPriorityMoveImmunityAbAttr, FieldVariableMovePowerAbAttr, IgnoreOpponentStatChangesAbAttr, MoveImmunityAbAttr, MoveTypeChangeAttr, NonSuperEffectiveImmunityAbAttr, PreApplyBattlerTagAbAttr, PreDefendFullHpEndureAbAttr, ReceivedMoveDamageMultiplierAbAttr, ReduceStatusEffectDurationAbAttr, StabBoostAbAttr, StatusEffectImmunityAbAttr, TypeImmunityAbAttr, VariableMovePowerAbAttr, VariableMoveTypeAbAttr, WeightMultiplierAbAttr, allAbilities, applyAbAttrs, applyBattleStatMultiplierAbAttrs, applyPostDefendAbAttrs, applyPreApplyBattlerTagAbAttrs, applyPreAttackAbAttrs, applyPreDefendAbAttrs, applyPreSetStatusAbAttrs, UnsuppressableAbilityAbAttr, SuppressFieldAbilitiesAbAttr, NoFusionAbilityAbAttr } from '../data/ability';
import { Abilities } from "#app/data/enums/abilities";
import PokemonData from '../system/pokemon-data';
-import { BattlerIndex } from '../battle';
+import Battle, { BattlerIndex } from '../battle';
import { BattleSpec } from "../enums/battle-spec";
import { Mode } from '../ui/ui';
import PartyUiHandler, { PartyOption, PartyUiMode } from '../ui/party-ui-handler';
@@ -42,7 +44,6 @@ import { SpeciesFormChange, SpeciesFormChangeActiveTrigger, SpeciesFormChangeMov
import { TerrainType } from '../data/terrain';
import { TrainerSlot } from '../data/trainer-config';
-
export enum FieldPosition {
CENTER,
LEFT,
@@ -57,7 +58,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
public abilityIndex: integer;
public passive: boolean;
public shiny: boolean;
- public variant: integer;
+ public variant: Variant;
public pokeball: PokeballType;
protected battleInfo: BattleInfo;
public level: integer;
@@ -81,6 +82,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
public fusionFormIndex: integer;
public fusionAbilityIndex: integer;
public fusionShiny: boolean;
+ public fusionVariant: Variant;
public fusionGender: Gender;
private summonDataPrimer: PokemonSummonData;
@@ -97,7 +99,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
private shinySparkle: Phaser.GameObjects.Sprite;
- constructor(scene: BattleScene, x: number, y: number, species: PokemonSpecies, level: integer, abilityIndex?: integer, formIndex?: integer, gender?: Gender, shiny?: boolean, ivs?: integer[], nature?: Nature, dataSource?: Pokemon | PokemonData) {
+ constructor(scene: BattleScene, x: number, y: number, species: PokemonSpecies, level: integer, abilityIndex?: integer, formIndex?: integer, gender?: Gender, shiny?: boolean, variant?: Variant, ivs?: integer[], nature?: Nature, dataSource?: Pokemon | PokemonData) {
super(scene, x, y);
if (!species.isObtainable() && this.isPlayer())
@@ -122,6 +124,8 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
this.gender = gender;
if (shiny !== undefined)
this.shiny = shiny;
+ if (variant !== undefined)
+ this.variant = variant;
this.exp = dataSource?.exp || getLevelTotalExp(this.level, species.growthRate);
this.levelExp = dataSource?.levelExp || 0;
if (dataSource) {
@@ -130,7 +134,8 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
this.stats = dataSource.stats;
this.ivs = dataSource.ivs;
this.passive = !!dataSource.passive;
- this.variant = dataSource.variant || 0;
+ if (this.variant === undefined)
+ this.variant = 0;
this.nature = dataSource.nature || 0 as Nature;
this.natureOverride = dataSource.natureOverride !== undefined ? dataSource.natureOverride : -1;
this.moveset = dataSource.moveset;
@@ -144,6 +149,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
this.fusionFormIndex = dataSource.fusionFormIndex;
this.fusionAbilityIndex = dataSource.fusionAbilityIndex;
this.fusionShiny = dataSource.fusionShiny;
+ this.fusionVariant = dataSource.fusionVariant || 0;
this.fusionGender = dataSource.fusionGender;
} else {
this.id = Utils.randSeedInt(4294967296);
@@ -158,6 +164,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
if (this.shiny === undefined)
this.trySetShiny();
+ if (this.variant === undefined)
+ this.variant = this.shiny ? this.generateVariant() : 0;
+
if (nature !== undefined)
this.setNature(nature);
else
@@ -240,7 +249,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
let ret = 0n;
ret |= this.gender !== Gender.FEMALE ? DexAttr.MALE : DexAttr.FEMALE;
ret |= !this.shiny ? DexAttr.NON_SHINY : DexAttr.SHINY;
- ret |= !this.abilityIndex ? DexAttr.ABILITY_1 : this.species.ability2 && this.abilityIndex === 1 ? DexAttr.ABILITY_2 : DexAttr.ABILITY_HIDDEN;
+ ret |= this.variant >= 2 ? DexAttr.VARIANT_3 : this.variant === 1 ? DexAttr.VARIANT_2 : DexAttr.DEFAULT_VARIANT;
ret |= this.scene.gameData.getFormAttr(this.formIndex);
return ret;
}
@@ -269,11 +278,11 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
Promise.allSettled(moveIds.map(m => initMoveAnim(m)))
.then(() => {
loadMoveAnimAssets(this.scene, moveIds);
- this.getSpeciesForm().loadAssets(this.scene, this.getGender() === Gender.FEMALE, this.formIndex, this.shiny);
+ this.getSpeciesForm().loadAssets(this.scene, this.getGender() === Gender.FEMALE, this.formIndex, this.shiny, this.variant);
if (this.isPlayer() || this.getFusionSpeciesForm())
this.scene.loadPokemonAtlas(this.getBattleSpriteKey(true, ignoreOverride), this.getBattleSpriteAtlasPath(true, ignoreOverride));
if (this.getFusionSpeciesForm()) {
- this.getFusionSpeciesForm().loadAssets(this.scene, this.getFusionGender() === Gender.FEMALE, this.fusionFormIndex, this.fusionShiny);
+ this.getFusionSpeciesForm().loadAssets(this.scene, this.getFusionGender() === Gender.FEMALE, this.fusionFormIndex, this.fusionShiny, this.fusionVariant);
this.scene.loadPokemonAtlas(this.getFusionBattleSpriteKey(true, ignoreOverride), this.getFusionBattleSpriteAtlasPath(true, ignoreOverride));
}
this.scene.load.once(Phaser.Loader.Events.COMPLETE, () => {
@@ -291,10 +300,37 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
});
}
this.playAnim();
- this.updateFusionPalette();
- if (this.summonData?.speciesForm)
- this.updateFusionPalette(true);
- resolve();
+ const updateFusionPaletteAndResolve = () => {
+ this.updateFusionPalette();
+ if (this.summonData?.speciesForm)
+ this.updateFusionPalette(true);
+ resolve();
+ };
+ if (this.shiny) {
+ const populateVariantColors = (key: string, back: boolean = false): Promise => {
+ return new Promise(resolve => {
+ const battleSpritePath = this.getBattleSpriteAtlasPath(back, ignoreOverride).replace('variant/', '').replace(/_[1-3]$/, '');
+ let variantSet: VariantSet;
+ let config = variantData;
+ battleSpritePath.split('/').map(p => config ? config = config[p] : null);
+ variantSet = config as VariantSet;
+ if (variantSet && variantSet[this.variant] === 1) {
+ if (variantColorCache.hasOwnProperty(key))
+ return resolve();
+ fetch(`./images/pokemon/variant/${battleSpritePath}.json`).then(res => res.json()).then(c => {
+ variantColorCache[key] = c;
+ resolve();
+ });
+ } else
+ resolve();
+ });
+ };
+ if (this.isPlayer())
+ Promise.all([ populateVariantColors(this.getBattleSpriteKey(false)), populateVariantColors(this.getBattleSpriteKey(true), true) ]).then(() => updateFusionPaletteAndResolve());
+ else
+ populateVariantColors(this.getBattleSpriteKey(false)).then(() => updateFusionPaletteAndResolve());
+ } else
+ updateFusionPaletteAndResolve();
});
if (!this.scene.load.isLoading())
this.scene.load.start();
@@ -317,25 +353,27 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
}
getSpriteAtlasPath(ignoreOverride?: boolean): string {
- return this.getSpriteId(ignoreOverride).replace(/\_{2}/g, '/');
+ const spriteId = this.getSpriteId(ignoreOverride).replace(/\_{2}/g, '/');
+ return `${/_[1-3]$/.test(spriteId) ? 'variant/' : ''}${spriteId}`;
}
getBattleSpriteAtlasPath(back?: boolean, ignoreOverride?: boolean): string {
- return this.getBattleSpriteId(back, ignoreOverride).replace(/\_{2}/g, '/');
+ const spriteId = this.getBattleSpriteId(back, ignoreOverride).replace(/\_{2}/g, '/');
+ return `${/_[1-3]$/.test(spriteId) ? 'variant/' : ''}${spriteId}`;
}
getSpriteId(ignoreOverride?: boolean): string {
- return this.getSpeciesForm(ignoreOverride).getSpriteId(this.getGender(ignoreOverride) === Gender.FEMALE, this.formIndex, this.shiny);
+ return this.getSpeciesForm(ignoreOverride).getSpriteId(this.getGender(ignoreOverride) === Gender.FEMALE, this.formIndex, this.shiny, this.variant);
}
getBattleSpriteId(back?: boolean, ignoreOverride?: boolean): string {
if (back === undefined)
back = this.isPlayer();
- return `${back ? 'back__' : ''}${this.getSpriteId(ignoreOverride)}`;
+ return this.getSpeciesForm(ignoreOverride).getSpriteId(this.getGender(ignoreOverride) === Gender.FEMALE, this.formIndex, this.shiny, this.variant, back);
}
getSpriteKey(ignoreOverride?: boolean): string {
- return this.getSpeciesForm(ignoreOverride).getSpriteKey(this.getGender(ignoreOverride) === Gender.FEMALE, this.formIndex, this.shiny);
+ return this.getSpeciesForm(ignoreOverride).getSpriteKey(this.getGender(ignoreOverride) === Gender.FEMALE, this.formIndex, this.shiny, this.variant);
}
getBattleSpriteKey(back?: boolean, ignoreOverride?: boolean): string {
@@ -343,13 +381,13 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
}
getFusionSpriteId(ignoreOverride?: boolean): string {
- return this.getFusionSpeciesForm(ignoreOverride).getSpriteId(this.getFusionGender(ignoreOverride) === Gender.FEMALE, this.fusionFormIndex, this.fusionShiny);
+ return this.getFusionSpeciesForm(ignoreOverride).getSpriteId(this.getFusionGender(ignoreOverride) === Gender.FEMALE, this.fusionFormIndex, this.fusionShiny, this.fusionVariant);
}
getFusionBattleSpriteId(back?: boolean, ignoreOverride?: boolean): string {
if (back === undefined)
back = this.isPlayer();
- return `${back ? 'back__' : ''}${this.getFusionSpriteId(ignoreOverride)}`;
+ return this.getFusionSpeciesForm(ignoreOverride).getSpriteId(this.getFusionGender(ignoreOverride) === Gender.FEMALE, this.fusionFormIndex, this.fusionShiny, this.fusionVariant, back);
}
getFusionBattleSpriteKey(back?: boolean, ignoreOverride?: boolean): string {
@@ -361,19 +399,19 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
}
getIconAtlasKey(ignoreOverride?: boolean): string {
- return this.getSpeciesForm(ignoreOverride).getIconAtlasKey(this.formIndex);
+ return this.getSpeciesForm(ignoreOverride).getIconAtlasKey(this.formIndex, this.shiny, this.variant);
}
getFusionIconAtlasKey(ignoreOverride?: boolean): string {
- return this.getFusionSpeciesForm(ignoreOverride).getIconAtlasKey(this.fusionFormIndex);
+ return this.getFusionSpeciesForm(ignoreOverride).getIconAtlasKey(this.fusionFormIndex, this.fusionShiny, this.fusionVariant);
}
getIconId(ignoreOverride?: boolean): string {
- return this.getSpeciesForm(ignoreOverride).getIconId(this.getGender(ignoreOverride) === Gender.FEMALE, this.formIndex, this.isShiny());
+ return this.getSpeciesForm(ignoreOverride).getIconId(this.getGender(ignoreOverride) === Gender.FEMALE, this.formIndex, this.shiny, this.variant);
}
getFusionIconId(ignoreOverride?: boolean): string {
- return this.getFusionSpeciesForm(ignoreOverride).getIconId(this.getFusionGender(ignoreOverride) === Gender.FEMALE, this.fusionFormIndex, this.isShiny());
+ return this.getFusionSpeciesForm(ignoreOverride).getIconId(this.getFusionGender(ignoreOverride) === Gender.FEMALE, this.fusionFormIndex, this.fusionShiny, this.variant);
}
getSpeciesForm(ignoreOverride?: boolean): PokemonSpeciesForm {
@@ -419,12 +457,14 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
}
initShinySparkle(): void {
- const shinySparkle = this.scene.addFieldSprite(0, 0, 'shiny');
+ const keySuffix = this.variant ? `_${this.variant + 1}` : '';
+ const key = `shiny${keySuffix}`;
+ const shinySparkle = this.scene.addFieldSprite(0, 0, key);
shinySparkle.setVisible(false);
shinySparkle.setOrigin(0.5, 1);
- const frameNames = this.scene.anims.generateFrameNames('shiny', { suffix: '.png', end: 34 });
+ const frameNames = this.scene.anims.generateFrameNames(key, { suffix: '.png', end: 34 });
this.scene.anims.create({
- key: 'sparkle',
+ key: `sparkle${keySuffix}`,
frames: frameNames,
frameRate: 32,
showOnStart: true,
@@ -523,6 +563,8 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
ret >>= 1;
break;
case Stat.DEF:
+ if (this.isOfType(Type.ICE) && this.scene.arena.weather?.weatherType === WeatherType.SNOW)
+ ret *= 1.5;
break;
case Stat.SPATK:
break;
@@ -534,7 +576,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
if (this.getTag(BattlerTagType.SLOW_START))
ret >>= 1;
if (this.status && this.status.effect === StatusEffect.PARALYSIS)
- ret >>= 2;
+ ret >>= 1;
break;
}
@@ -561,7 +603,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
let value = Math.floor(((2 * baseStat + this.ivs[s]) * this.level) * 0.01);
if (isHp) {
value = value + this.level + 10;
- if ((this.canApplyAbility() && this.getAbility().hasAttr(NonSuperEffectiveImmunityAbAttr)) || (this.canApplyAbility(true) && this.getPassiveAbility().hasAttr(NonSuperEffectiveImmunityAbAttr)))
+ if (this.hasAbility(Abilities.WONDER_GUARD, false, true))
value = 1;
if (this.hp > value || this.hp === undefined)
this.hp = value;
@@ -636,7 +678,11 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
}
isShiny(): boolean {
- return this.shiny || (this.fusionSpecies && this.fusionShiny);
+ return this.shiny || (this.isFusion() && this.fusionShiny);
+ }
+
+ getVariant(): Variant {
+ return !this.isFusion() ? this.variant : Math.max(this.variant, this.fusionVariant) as Variant;
}
isFusion(): boolean {
@@ -692,14 +738,14 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
}
}
- if (forDefend && (this.getTag(BattlerTagType.IGNORE_FLYING) || this.scene.arena.getTag(ArenaTagType.GRAVITY))) {
+ if (forDefend && (this.getTag(BattlerTagType.IGNORE_FLYING) || this.scene.arena.getTag(ArenaTagType.GRAVITY) || this.getTag(BattlerTagType.GROUNDED))) {
const flyingIndex = types.indexOf(Type.FLYING);
if (flyingIndex > -1)
types.splice(flyingIndex, 1);
}
if (!types.length)
- types.push(Type.NORMAL);
+ types.push(Type.UNKNOWN);
return types;
}
@@ -728,21 +774,52 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
while (pokemonPrevolutions.hasOwnProperty(starterSpeciesId))
starterSpeciesId = pokemonPrevolutions[starterSpeciesId];
return allAbilities[starterPassiveAbilities[starterSpeciesId]];
- }
+ }
- canApplyPassive(): boolean {
+ hasPassive(): boolean {
return this.passive || this.isBoss();
}
canApplyAbility(passive: boolean = false): boolean {
- if (passive && !this.canApplyPassive())
+ if (passive && !this.hasPassive())
return false;
const ability = (!passive ? this.getAbility() : this.getPassiveAbility());
- if (ability.isIgnorable && this.scene.arena.ignoreAbilities)
+ if (this.isFusion() && ability.hasAttr(NoFusionAbilityAbAttr))
+ return false;
+ if (this.scene?.arena.ignoreAbilities && ability.isIgnorable)
+ return false;
+ if (this.summonData?.abilitySuppressed && !ability.hasAttr(UnsuppressableAbilityAbAttr))
+ return false;
+ if (this.isOnField() && !ability.hasAttr(SuppressFieldAbilitiesAbAttr)) {
+ const suppressed = new Utils.BooleanHolder(false);
+ this.scene.getField(true).map(p => {
+ if (p.getAbility().hasAttr(SuppressFieldAbilitiesAbAttr) && p.canApplyAbility())
+ p.getAbility().getAttrs(SuppressFieldAbilitiesAbAttr).map(a => a.apply(this, false, suppressed, [ability]));
+ if (p.getPassiveAbility().hasAttr(SuppressFieldAbilitiesAbAttr) && p.canApplyAbility(true))
+ p.getPassiveAbility().getAttrs(SuppressFieldAbilitiesAbAttr).map(a => a.apply(this, true, suppressed, [ability]));
+ });
+ if (suppressed.value)
return false;
+ }
return (this.hp || ability.isBypassFaint) && !ability.conditions.find(condition => !condition(this));
}
+ hasAbility(ability: Abilities, canApply: boolean = true, ignoreOverride?: boolean): boolean {
+ if ((!canApply || this.canApplyAbility()) && this.getAbility(ignoreOverride).id === ability)
+ return true;
+ if (this.hasPassive() && (!canApply || this.canApplyAbility(true)) && this.getPassiveAbility().id === ability)
+ return true;
+ return false;
+ }
+
+ hasAbilityWithAttr(attrType: { new(...args: any[]): AbAttr }, canApply: boolean = true, ignoreOverride?: boolean): boolean {
+ if ((!canApply || this.canApplyAbility()) && this.getAbility(ignoreOverride).hasAttr(attrType))
+ return true;
+ if (this.hasPassive() && (!canApply || this.canApplyAbility(true)) && this.getPassiveAbility().hasAttr(attrType))
+ return true;
+ return false;
+ }
+
getWeight(): number {
const weight = new Utils.NumberHolder(this.species.weight);
// This will trigger the ability overlay so only call this function when necessary
@@ -782,7 +859,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
if (moveType === Type.STELLAR)
return this.isTerastallized() ? 2 : 1;
const types = this.getTypes(true, true);
- let multiplier = getTypeDamageMultiplier(moveType, types[0]) * (types.length > 1 ? getTypeDamageMultiplier(moveType, types[1]) : 1) as TypeDamageMultiplier;
+ let multiplier = getTypeDamageMultiplier(moveType, types[0]) * (types.length > 1 ? getTypeDamageMultiplier(moveType, types[1]) : 1) * (types.length > 2 ? getTypeDamageMultiplier(moveType, types[2]) : 1) as TypeDamageMultiplier;
// Handle strong winds lowering effectiveness of types super effective against pure flying
if (this.scene.arena.weather?.weatherType === WeatherType.STRONG_WINDS && !this.scene.arena.weather.isEffectSuppressed(this.scene) && multiplier >= 2 && this.isOfType(Type.FLYING) && getTypeDamageMultiplier(moveType, Type.FLYING) === 2)
multiplier /= 2;
@@ -850,10 +927,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
return true;
});
} else
- levelMoves = this.getSpeciesForm().getLevelMoves();
+ levelMoves = this.getSpeciesForm(true).getLevelMoves();
if (this.fusionSpecies) {
const evolutionLevelMoves = levelMoves.slice(0, Math.max(levelMoves.findIndex(lm => !!lm[0]), 0));
- const fusionLevelMoves = this.getFusionSpeciesForm().getLevelMoves();
+ const fusionLevelMoves = this.getFusionSpeciesForm(true).getLevelMoves();
const newLevelMoves: LevelMoves = [];
while (levelMoves.length && levelMoves[0][0] < startingLevel)
levelMoves.shift();
@@ -924,6 +1001,17 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
return this.shiny;
}
+ generateVariant(): Variant {
+ if (!this.shiny || !variantData.hasOwnProperty(this.species.speciesId))
+ return 0;
+ const rand = Utils.randSeedInt(10);
+ if (rand > 3)
+ return 0;
+ if (rand)
+ return 1;
+ return 2;
+ }
+
generateFusionSpecies(forStarter?: boolean): void {
const hiddenAbilityChance = new Utils.IntegerHolder(256);
if (!this.hasTrainer())
@@ -946,6 +1034,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
this.fusionSpecies = this.scene.randomSpecies(this.scene.currentBattle?.waveIndex || 0, this.level, false, filter, true);
this.fusionAbilityIndex = (this.fusionSpecies.abilityHidden && hasHiddenAbility ? this.fusionSpecies.ability2 ? 2 : 1 : this.fusionSpecies.ability2 ? randAbilityIndex : 0);
this.fusionShiny = this.shiny;
+ this.fusionVariant = this.variant;
if (this.fusionSpecies.malePercent === null)
this.fusionGender = Gender.GENDERLESS;
@@ -1114,7 +1203,8 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
let result: HitResult;
const move = battlerMove.getMove();
let damage = new Utils.NumberHolder(0);
-
+ const defendingSidePlayField = this.isPlayer() ? this.scene.getPlayerField() : this.scene.getEnemyField();
+
const variableCategory = new Utils.IntegerHolder(move.category);
applyMoveAttrs(VariableMoveCategoryAttr, source, this, move, variableCategory);
const moveCategory = variableCategory.value as MoveCategory;
@@ -1131,7 +1221,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
const cancelled = new Utils.BooleanHolder(false);
const typeless = !!move.getAttrs(TypelessAttr).length;
const typeMultiplier = new Utils.NumberHolder(!typeless && (moveCategory !== MoveCategory.STATUS || move.getAttrs(StatusMoveTypeImmunityAttr).find(attr => types.includes((attr as StatusMoveTypeImmunityAttr).immuneType)))
- ? getTypeDamageMultiplier(type, types[0]) * (types.length > 1 ? getTypeDamageMultiplier(type, types[1]) : 1)
+ ? this.getAttackTypeEffectiveness(type)
: 1);
applyMoveAttrs(VariableMoveTypeMultiplierAttr, source, this, move, typeMultiplier);
if (typeless)
@@ -1156,14 +1246,21 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
if (!typeless)
applyPreDefendAbAttrs(TypeImmunityAbAttr, this, source, battlerMove, cancelled, typeMultiplier);
- if (!cancelled.value)
+ if (!cancelled.value) {
applyPreDefendAbAttrs(MoveImmunityAbAttr, this, source, battlerMove, cancelled, typeMultiplier);
+ defendingSidePlayField.forEach((p) => applyPreDefendAbAttrs(FieldPriorityMoveImmunityAbAttr, p, source, battlerMove, cancelled, typeMultiplier));
+ }
if (cancelled.value)
result = HitResult.NO_EFFECT;
else {
- if (source.findTag(t => t instanceof TypeBoostTag && (t as TypeBoostTag).boostedType === type))
- power.value *= 1.5;
+ let typeBoost = source.findTag(t => t instanceof TypeBoostTag && (t as TypeBoostTag).boostedType === type) as TypeBoostTag;
+ if (typeBoost) {
+ power.value *= typeBoost.boostValue;
+ if (typeBoost.oneUse) {
+ this.removeTag(typeBoost.tagType);
+ }
+ }
const arenaAttackTypeMultiplier = this.scene.arena.getAttackTypeMultiplier(type, source.isGrounded());
if (this.scene.arena.getTerrainType() === TerrainType.GRASSY && this.isGrounded() && type === Type.GROUND && move.moveTarget === MoveTarget.ALL_NEAR_OTHERS)
power.value /= 2;
@@ -1186,13 +1283,13 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
applyMoveAttrs(HighCritAttr, source, this, move, critLevel);
this.scene.applyModifiers(TempBattleStatBoosterModifier, source.isPlayer(), TempBattleStat.CRIT, critLevel);
const bonusCrit = new Utils.BooleanHolder(false);
- if (applyAbAttrs(BonusCritAbAttr, this, null, bonusCrit)) {
+ if (applyAbAttrs(BonusCritAbAttr, source, null, bonusCrit)) {
if (bonusCrit.value)
critLevel.value += 1;
}
if (source.getTag(BattlerTagType.CRIT_BOOST))
critLevel.value += 2;
- const critChance = Math.ceil(16 / Math.pow(2, critLevel.value));
+ const critChance = [24, 8, 2, 1][Math.max(0, Math.min(critLevel.value, 3))];
isCritical = !source.getTag(BattlerTagType.NO_CRIT) && (critChance === 1 || !this.scene.randBattleSeedInt(critChance));
if (isCritical) {
const blockCrit = new Utils.BooleanHolder(false);
@@ -1278,6 +1375,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
applyMoveAttrs(ModifiedDamageAttr, source, this, move, damage);
+ if (power.value === 0) {
+ damage.value = 0;
+ }
+
console.log('damage', damage.value, move.name, power.value, sourceAtk, targetDef);
if (damage.value) {
@@ -1328,8 +1429,10 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
case MoveCategory.STATUS:
if (!typeless)
applyPreDefendAbAttrs(TypeImmunityAbAttr, this, source, battlerMove, cancelled, typeMultiplier);
- if (!cancelled.value)
+ if (!cancelled.value) {
applyPreDefendAbAttrs(MoveImmunityAbAttr, this, source, battlerMove, cancelled, typeMultiplier);
+ defendingSidePlayField.forEach((p) => applyPreDefendAbAttrs(FieldPriorityMoveImmunityAbAttr, p, source, battlerMove, cancelled, typeMultiplier));
+ }
if (!typeMultiplier.value)
this.scene.queueMessage(`It doesn\'t affect ${this.name}!`);
result = cancelled.value || !typeMultiplier.value ? HitResult.NO_EFFECT : HitResult.STATUS;
@@ -1722,7 +1825,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
return false;
break;
case StatusEffect.FREEZE:
- if (this.isOfType(Type.ICE))
+ if (this.isOfType(Type.ICE) || [WeatherType.SUNNY, WeatherType.HARSH_SUN].includes(this.scene?.arena.weather?.weatherType))
return false;
break;
case StatusEffect.BURN:
@@ -1886,7 +1989,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
sparkle(): void {
if (this.shinySparkle) {
- this.shinySparkle.play('sparkle');
+ this.shinySparkle.play(`sparkle${this.variant ? `_${this.variant + 1}` : ''}`);
this.scene.playSound('sparkle');
}
}
@@ -1903,10 +2006,15 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
const speciesForm = this.getSpeciesForm(ignoreOveride);
const fusionSpeciesForm = this.getFusionSpeciesForm(ignoreOveride);
- const sourceTexture = this.scene.textures.get(speciesForm.getSpriteKey(this.getGender(ignoreOveride) === Gender.FEMALE, speciesForm.formIndex, this.shiny));
- const sourceBackTexture = this.scene.textures.get(speciesForm.getSpriteKey(this.getGender(ignoreOveride) === Gender.FEMALE, speciesForm.formIndex, this.shiny).replace('pkmn__', 'pkmn__back__'));
- const fusionTexture = this.scene.textures.get(fusionSpeciesForm.getSpriteKey(this.getFusionGender(ignoreOveride) === Gender.FEMALE, fusionSpeciesForm.formIndex, this.fusionShiny));
- const fusionBackTexture = this.scene.textures.get(fusionSpeciesForm.getSpriteKey(this.getFusionGender(ignoreOveride) === Gender.FEMALE, fusionSpeciesForm.formIndex, this.fusionShiny).replace('pkmn__', 'pkmn__back__'));
+ const spriteKey = speciesForm.getSpriteKey(this.getGender(ignoreOveride) === Gender.FEMALE, speciesForm.formIndex, this.shiny, this.variant);
+ const backSpriteKey = speciesForm.getSpriteKey(this.getGender(ignoreOveride) === Gender.FEMALE, speciesForm.formIndex, this.shiny, this.variant).replace('pkmn__', 'pkmn__back__');
+ const fusionSpriteKey = fusionSpeciesForm.getSpriteKey(this.getFusionGender(ignoreOveride) === Gender.FEMALE, fusionSpeciesForm.formIndex, this.fusionShiny, this.fusionVariant);
+ const fusionBackSpriteKey = fusionSpeciesForm.getSpriteKey(this.getFusionGender(ignoreOveride) === Gender.FEMALE, fusionSpeciesForm.formIndex, this.fusionShiny, this.fusionVariant).replace('pkmn__', 'pkmn__back__');
+
+ const sourceTexture = this.scene.textures.get(spriteKey);
+ const sourceBackTexture = this.scene.textures.get(backSpriteKey);
+ const fusionTexture = this.scene.textures.get(fusionSpriteKey);
+ const fusionBackTexture = this.scene.textures.get(fusionBackSpriteKey);
const [ sourceFrame, sourceBackFrame, fusionFrame, fusionBackFrame ] = [ sourceTexture, sourceBackTexture, fusionTexture, fusionBackTexture ].map(texture => texture.frames[texture.firstFrame]);
const [ sourceImage, sourceBackImage, fusionImage, fusionBackImage ] = [ sourceTexture, sourceBackTexture, fusionTexture, fusionBackTexture ].map(i => i.getSourceImage() as HTMLImageElement);
@@ -1930,10 +2038,25 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
});
for (let f = 0; f < 2; f++) {
+ const variantColors = variantColorCache[!f ? spriteKey : backSpriteKey];
+ let variantColorSet = new Map();
+ if (this.shiny && variantColors && variantColors[this.variant]) {
+ Object.keys(variantColors[this.variant]).forEach(k => {
+ variantColorSet.set(Utils.rgbaToInt(Array.from(Object.values(Utils.rgbHexToRgba(k)))), Array.from(Object.values(Utils.rgbHexToRgba(variantColors[this.variant][k]))));
+ });
+ }
+
for (let i = 0; i < pixelData[f].length; i += 4) {
if (pixelData[f][i + 3]) {
const pixel = pixelData[f].slice(i, i + 4);
- const [ r, g, b, a ] = pixel;
+ let [ r, g, b, a ] = pixel;
+ if (variantColors) {
+ const color = Utils.rgbaToInt([r, g, b, a]);
+ if (variantColorSet.has(color)) {
+ const mappedPixel = variantColorSet.get(color);
+ [ r, g, b, a ] = mappedPixel;
+ }
+ }
if (!spriteColors.find(c => c[0] === r && c[1] === g && c[2] === b))
spriteColors.push([ r, g, b, a ]);
}
@@ -1954,11 +2077,27 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container {
const fusionPixelColors = [];
for (let f = 0; f < 2; f++) {
+ const variantColors = variantColorCache[!f ? fusionSpriteKey : fusionBackSpriteKey];
+ let variantColorSet = new Map();
+ if (this.fusionShiny && variantColors && variantColors[this.fusionVariant]) {
+ Object.keys(variantColors[this.fusionVariant]).forEach(k => {
+ variantColorSet.set(Utils.rgbaToInt(Array.from(Object.values(Utils.rgbHexToRgba(k)))), Array.from(Object.values(Utils.rgbHexToRgba(variantColors[this.fusionVariant][k]))));
+ });
+ }
for (let i = 0; i < pixelData[2 + f].length; i += 4) {
const total = pixelData[2 + f].slice(i, i + 3).reduce((total: integer, value: integer) => total + value, 0);
if (!total)
continue;
- fusionPixelColors.push(argbFromRgba({ r: pixelData[2 + f][i], g: pixelData[2 + f][i + 1], b: pixelData[2 + f][i + 2], a: pixelData[2 + f][i + 3] }));
+ let [ r, g, b, a ] = [ pixelData[2 + f][i], pixelData[2 + f][i + 1], pixelData[2 + f][i + 2], pixelData[2 + f][i + 3] ];
+ if (variantColors) {
+ const color = Utils.rgbaToInt([r, g, b, a]);
+ if (variantColorSet.has(color)) {
+ console.log(color);
+ const mappedPixel = variantColorSet.get(color);
+ [ r, g, b, a ] = mappedPixel;
+ }
+ }
+ fusionPixelColors.push(argbFromRgba({ r, g, b, a }));
}
}
@@ -2102,8 +2241,8 @@ export default interface Pokemon {
export class PlayerPokemon extends Pokemon {
public compatibleTms: Moves[];
- constructor(scene: BattleScene, species: PokemonSpecies, level: integer, abilityIndex: integer, formIndex: integer, gender: Gender, shiny: boolean, ivs: integer[], nature: Nature, dataSource: Pokemon | PokemonData) {
- super(scene, 106, 148, species, level, abilityIndex, formIndex, gender, shiny, ivs, nature, dataSource);
+ constructor(scene: BattleScene, species: PokemonSpecies, level: integer, abilityIndex: integer, formIndex: integer, gender: Gender, shiny: boolean, variant: Variant, ivs: integer[], nature: Nature, dataSource: Pokemon | PokemonData) {
+ super(scene, 106, 148, species, level, abilityIndex, formIndex, gender, shiny, variant, ivs, nature, dataSource);
if (!dataSource)
this.generateAndPopulateMoveset();
@@ -2199,12 +2338,12 @@ export class PlayerPokemon extends Pokemon {
const originalFusionFormIndex = this.fusionFormIndex;
this.fusionSpecies = evolutionSpecies;
this.fusionFormIndex = evolution.evoFormKey !== null ? Math.max(evolutionSpecies.forms.findIndex(f => f.formKey === evolution.evoFormKey), 0) : this.fusionFormIndex;
- ret = this.scene.addPlayerPokemon(this.species, this.level, this.abilityIndex, this.formIndex, this.gender, this.shiny, this.ivs, this.nature, this);
+ ret = this.scene.addPlayerPokemon(this.species, this.level, this.abilityIndex, this.formIndex, this.gender, this.shiny, this.variant, this.ivs, this.nature, this);
this.fusionSpecies = originalFusionSpecies;
this.fusionFormIndex = originalFusionFormIndex;
} else {
const formIndex = evolution.evoFormKey !== null && !isFusion ? Math.max(evolutionSpecies.forms.findIndex(f => f.formKey === evolution.evoFormKey), 0) : this.formIndex;
- ret = this.scene.addPlayerPokemon(!isFusion ? evolutionSpecies : this.species, this.level, this.abilityIndex, formIndex, this.gender, this.shiny, this.ivs, this.nature, this);
+ ret = this.scene.addPlayerPokemon(!isFusion ? evolutionSpecies : this.species, this.level, this.abilityIndex, formIndex, this.gender, this.shiny, this.variant, this.ivs, this.nature, this);
}
ret.loadAssets().then(() => resolve(ret));
});
@@ -2258,12 +2397,14 @@ export class PlayerPokemon extends Pokemon {
if ((!isFusion ? this.species : this.fusionSpecies).speciesId === Species.NINCADA && evolution.speciesId === Species.NINJASK) {
const newEvolution = pokemonEvolutions[this.species.speciesId][1];
if (newEvolution.condition.predicate(this)) {
- const newPokemon = this.scene.addPlayerPokemon(this.species, this.level, this.abilityIndex, this.formIndex, this.gender, this.shiny, this.ivs, this.nature);
+ const newPokemon = this.scene.addPlayerPokemon(this.species, this.level, this.abilityIndex, this.formIndex, undefined, this.shiny, this.variant, this.ivs, this.nature);
newPokemon.natureOverride = this.natureOverride;
+ newPokemon.moveset = this.moveset.slice();
newPokemon.fusionSpecies = this.fusionSpecies;
newPokemon.fusionFormIndex = this.fusionFormIndex;
newPokemon.fusionAbilityIndex = this.fusionAbilityIndex;
newPokemon.fusionShiny = this.fusionShiny;
+ newPokemon.fusionVariant = this.fusionVariant;
newPokemon.fusionGender = this.fusionGender;
this.scene.getParty().push(newPokemon);
newPokemon.evolve(newEvolution);
@@ -2282,7 +2423,7 @@ export class PlayerPokemon extends Pokemon {
getPossibleForm(formChange: SpeciesFormChange): Promise {
return new Promise(resolve => {
const formIndex = Math.max(this.species.forms.findIndex(f => f.formKey === formChange.formKey), 0);
- const ret = this.scene.addPlayerPokemon(this.species, this.level, this.abilityIndex, formIndex, this.gender, this.shiny, this.ivs, this.nature, this);
+ const ret = this.scene.addPlayerPokemon(this.species, this.level, this.abilityIndex, formIndex, this.gender, this.shiny, this.variant, this.ivs, this.nature, this);
ret.loadAssets().then(() => resolve(ret));
});
}
@@ -2322,6 +2463,7 @@ export class PlayerPokemon extends Pokemon {
this.fusionFormIndex = pokemon.formIndex;
this.fusionAbilityIndex = pokemon.abilityIndex;
this.fusionShiny = pokemon.shiny;
+ this.fusionVariant = pokemon.fusionVariant;
this.fusionGender = pokemon.gender;
this.scene.validateAchv(achvs.SPLICE);
@@ -2372,7 +2514,7 @@ export class EnemyPokemon extends Pokemon {
constructor(scene: BattleScene, species: PokemonSpecies, level: integer, trainerSlot: TrainerSlot, boss: boolean, dataSource: PokemonData) {
super(scene, 236, 84, species, level, dataSource?.abilityIndex, dataSource?.formIndex,
- dataSource?.gender, dataSource ? dataSource.shiny : false, null, dataSource ? dataSource.nature : undefined, dataSource);
+ dataSource?.gender, dataSource ? dataSource.shiny : false, dataSource ? dataSource.variant : undefined, null, dataSource ? dataSource.nature : undefined, dataSource);
this.trainerSlot = trainerSlot;
if (boss)
@@ -2383,6 +2525,9 @@ export class EnemyPokemon extends Pokemon {
this.trySetShiny();
+ if (this.shiny)
+ this.variant = this.generateVariant();
+
let prevolution: Species;
let speciesId = species.speciesId;
while ((prevolution = pokemonPrevolutions[speciesId])) {
@@ -2758,7 +2903,7 @@ export class EnemyPokemon extends Pokemon {
this.pokeball = pokeballType;
this.metLevel = this.level;
this.metBiome = this.scene.arena.biomeType;
- const newPokemon = this.scene.addPlayerPokemon(this.species, this.level, this.abilityIndex, this.formIndex, this.gender, this.shiny, this.ivs, this.nature, this);
+ const newPokemon = this.scene.addPlayerPokemon(this.species, this.level, this.abilityIndex, this.formIndex, this.gender, this.shiny, this.variant, this.ivs, this.nature, this);
party.push(newPokemon);
ret = newPokemon;
this.scene.triggerPokemonFormChange(newPokemon, SpeciesFormChangeActiveTrigger, true);
@@ -2796,6 +2941,7 @@ export class PokemonSummonData {
public disabledMove: Moves = Moves.NONE;
public disabledTurns: integer = 0;
public tags: BattlerTag[] = [];
+ public abilitySuppressed: boolean = false;
public speciesForm: PokemonSpeciesForm;
public fusionSpeciesForm: PokemonSpeciesForm;
diff --git a/src/form-change-phase.ts b/src/form-change-phase.ts
index 28ef39d4ccb..db325bd3d4f 100644
--- a/src/form-change-phase.ts
+++ b/src/form-change-phase.ts
@@ -39,7 +39,10 @@ export class FormChangePhase extends EvolutionPhase {
[ this.pokemonEvoSprite, this.pokemonEvoTintSprite ].map(sprite => {
sprite.play(transformedPokemon.getSpriteKey(true));
- sprite.pipelineData['ignoreTimeTint'] = true;
+ sprite.setPipelineData('ignoreTimeTint', true);
+ sprite.setPipelineData('spriteKey', transformedPokemon.getSpriteKey());
+ sprite.setPipelineData('shiny', transformedPokemon.shiny);
+ sprite.setPipelineData('variant', transformedPokemon.variant);
[ 'spriteColors', 'fusionSpriteColors' ].map(k => {
if (transformedPokemon.summonData?.speciesForm)
k += 'Base';
diff --git a/src/loading-scene.ts b/src/loading-scene.ts
index 9a3b7fdd5bd..74deaa5fdbd 100644
--- a/src/loading-scene.ts
+++ b/src/loading-scene.ts
@@ -3,13 +3,19 @@ import { Biome } from "./data/enums/biome";
import { TrainerType } from "./data/enums/trainer-type";
import { trainerConfigs } from "./data/trainer-config";
import { getBiomeHasProps } from "./field/arena";
+import CacheBustedLoaderPlugin from "./plugins/cache-busted-loader-plugin";
import { SceneBase } from "./scene-base";
import { WindowVariant, getWindowVariantSuffix } from "./ui/ui-theme";
+import { isMobile } from "./touch-controls";
import * as Utils from "./utils";
+import { initI18n } from "./plugins/i18n";
export class LoadingScene extends SceneBase {
constructor() {
super('loading');
+
+ Phaser.Plugins.PluginCache.register('Loader', CacheBustedLoaderPlugin, 'load');
+ initI18n();
}
preload() {
@@ -20,6 +26,9 @@ export class LoadingScene extends SceneBase {
this.load['cacheBuster'] = buildIdMatch[1];
}
+ if (!isMobile())
+ this.load.video('intro_dark', 'images/intro_dark.mp4', true);
+
this.loadImage('loading_bg', 'arenas');
this.loadImage('logo', '');
@@ -58,6 +67,7 @@ export class LoadingScene extends SceneBase {
this.loadImage('achv_bar_3', 'ui');
this.loadImage('achv_bar_4', 'ui');
this.loadImage('shiny_star', 'ui', 'shiny.png');
+ this.loadImage('shiny_star_small', 'ui', 'shiny_small.png');
this.loadImage('ha_capsule', 'ui', 'ha_capsule.png');
this.loadImage('icon_spliced', 'ui');
this.loadImage('icon_tera', 'ui');
@@ -155,6 +165,8 @@ export class LoadingScene extends SceneBase {
this.loadImage(`pkmn__sub`, 'pokemon', 'sub.png');
this.loadAtlas('battle_stats', 'effects');
this.loadAtlas('shiny', 'effects');
+ this.loadAtlas('shiny_2', 'effects');
+ this.loadAtlas('shiny_3', 'effects');
this.loadImage('tera', 'effects');
this.loadAtlas('pb_particles', 'effects');
this.loadImage('evo_sparkle', 'effects');
@@ -184,8 +196,11 @@ export class LoadingScene extends SceneBase {
this.loadImage('egg_list_bg', 'ui');
- for (let i = 0; i < 10; i++)
+ for (let i = 0; i < 10; i++) {
this.loadAtlas(`pokemon_icons_${i}`, '');
+ if (i)
+ this.loadAtlas(`pokemon_icons_${i}v`, '');
+ }
this.loadSe('select');
this.loadSe('menu_open');
@@ -247,6 +262,10 @@ export class LoadingScene extends SceneBase {
}
loadLoadingScreen() {
+ const mobile = isMobile();
+
+ const loadingGraphics: any[] = [];
+
const bg = this.add.image(0, 0, '');
bg.setOrigin(0, 0);
bg.setScale(6);
@@ -291,6 +310,10 @@ export class LoadingScene extends SceneBase {
});
assetText.setOrigin(0.5, 0.5);
+ const intro = this.add.video(0, 0);
+ intro.setOrigin(0, 0);
+ intro.setScale(3);
+
this.load.on("progress", (value: string) => {
const parsedValue = parseFloat(value);
percentText.setText(`${Math.floor(parsedValue * 100)}%`);
@@ -302,28 +325,51 @@ export class LoadingScene extends SceneBase {
this.load.on("fileprogress", file => {
assetText.setText(`Loading asset: ${file.key}`);
});
+
+ loadingGraphics.push(bg, graphics, progressBar, progressBox, logo, percentText, assetText);
- this.load.on('filecomplete', key => {
- switch (key) {
- case 'loading_bg':
- bg.setVisible(true);
- bg.setTexture('loading_bg');
- break;
- case 'logo':
- logo.setVisible(true);
- logo.setTexture('logo');
- break;
- }
- });
+ if (!mobile)
+ loadingGraphics.map(g => g.setVisible(false));
- this.load.on("complete", () => {
+ const destroyLoadingAssets = () => {
+ intro.destroy();
bg.destroy();
logo.destroy();
progressBar.destroy();
progressBox.destroy();
percentText.destroy();
assetText.destroy();
+ };
+
+ this.load.on('filecomplete', key => {
+ switch (key) {
+ case 'intro_dark':
+ intro.load('intro_dark');
+ intro.on('complete', () => {
+ this.tweens.add({
+ targets: intro,
+ duration: 500,
+ alpha: 0,
+ ease: 'Sine.easeIn'
+ });
+ loadingGraphics.map(g => g.setVisible(true));
+ });
+ intro.play();
+ break;
+ case 'loading_bg':
+ bg.setTexture('loading_bg');
+ if (mobile)
+ bg.setVisible(true);
+ break;
+ case 'logo':
+ logo.setTexture('logo');
+ if (mobile)
+ logo.setVisible(true);
+ break;
+ }
});
+
+ this.load.on("complete", () => destroyLoadingAssets());
}
get gameHeight() {
diff --git a/src/locales/en/menu.ts b/src/locales/en/menu.ts
index f6914080596..bc8e5b95447 100644
--- a/src/locales/en/menu.ts
+++ b/src/locales/en/menu.ts
@@ -1,9 +1,11 @@
+import { SimpleTranslationEntries } from "#app/plugins/i18n";
+
/**
* The menu namespace holds most miscellaneous text that isn't directly part of the game's
* contents or directly related to Pokemon data. This includes menu navigation, settings,
* account interactions, descriptive text, etc.
*/
-export const menu = {
+export const menu: SimpleTranslationEntries = {
"cancel": "Cancel",
"continue": "Continue",
"dailyRun": "Daily Run (Beta)",
diff --git a/src/locales/en/move.ts b/src/locales/en/move.ts
new file mode 100644
index 00000000000..f0c1c623a05
--- /dev/null
+++ b/src/locales/en/move.ts
@@ -0,0 +1,3812 @@
+import { MoveTranslationEntries } from "#app/plugins/i18n";
+
+export const move: MoveTranslationEntries = {
+ "pound": {
+ name: "Pound",
+ effect: "The target is physically pounded with a long tail, a foreleg, or the like."
+ },
+ "karateChop": {
+ name: "Karate Chop",
+ effect: "The target is attacked with a sharp chop. Critical hits land more easily."
+ },
+ "doubleSlap": {
+ name: "Double Slap",
+ effect: "The target is slapped repeatedly, back and forth, two to five times in a row."
+ },
+ "cometPunch": {
+ name: "Comet Punch",
+ effect: "The target is hit with a flurry of punches that strike two to five times in a row."
+ },
+ "megaPunch": {
+ name: "Mega Punch",
+ effect: "The target is slugged by a punch thrown with muscle-packed power."
+ },
+ "payDay": {
+ name: "Pay Day",
+ effect: "Numerous coins are hurled at the target to inflict damage. Money is earned after the battle."
+ },
+ "firePunch": {
+ name: "Fire Punch",
+ effect: "The target is punched with a fiery fist. This may also leave the target with a burn."
+ },
+ "icePunch": {
+ name: "Ice Punch",
+ effect: "The target is punched with an icy fist. This may also leave the target frozen."
+ },
+ "thunderPunch": {
+ name: "Thunder Punch",
+ effect: "The target is punched with an electrified fist. This may also leave the target with paralysis."
+ },
+ "scratch": {
+ name: "Scratch",
+ effect: "Hard, pointed, sharp claws rake the target to inflict damage."
+ },
+ "viseGrip": {
+ name: "Vise Grip",
+ effect: "The target is gripped and squeezed from both sides to inflict damage."
+ },
+ "guillotine": {
+ name: "Guillotine",
+ effect: "A vicious, tearing attack with big pincers. The target faints instantly if this attack hits."
+ },
+ "razorWind": {
+ name: "Razor Wind",
+ effect: "In this two-turn attack, blades of wind hit opposing Pokémon on the second turn. Critical hits land more easily."
+ },
+ "swordsDance": {
+ name: "Swords Dance",
+ effect: "A frenetic dance to uplift the fighting spirit. This sharply raises the user's Attack stat."
+ },
+ "cut": {
+ name: "Cut",
+ effect: "The target is cut with a scythe or claw."
+ },
+ "gust": {
+ name: "Gust",
+ effect: "A gust of wind is whipped up by wings and launched at the target to inflict damage."
+ },
+ "wingAttack": {
+ name: "Wing Attack",
+ effect: "The target is struck with large, imposing wings spread wide to inflict damage."
+ },
+ "whirlwind": {
+ name: "Whirlwind",
+ effect: "The target is blown away, and a different Pokémon is dragged out. In the wild, this ends a battle against a single Pokémon."
+ },
+ "fly": {
+ name: "Fly",
+ effect: "The user flies up into the sky and then strikes its target on the next turn."
+ },
+ "bind": {
+ name: "Bind",
+ effect: "Things such as long bodies or tentacles are used to bind and squeeze the target for four to five turns."
+ },
+ "slam": {
+ name: "Slam",
+ effect: "The target is slammed with a long tail, vines, or the like to inflict damage."
+ },
+ "vineWhip": {
+ name: "Vine Whip",
+ effect: "The target is struck with slender, whiplike vines to inflict damage."
+ },
+ "stomp": {
+ name: "Stomp",
+ effect: "The target is stomped with a big foot. This may also make the target flinch."
+ },
+ "doubleKick": {
+ name: "Double Kick",
+ effect: "The target is quickly kicked twice in succession using both feet."
+ },
+ "megaKick": {
+ name: "Mega Kick",
+ effect: "The target is attacked by a kick launched with muscle-packed power."
+ },
+ "jumpKick": {
+ name: "Jump Kick",
+ effect: "The user jumps up high, then strikes with a kick. If the kick misses, the user hurts itself."
+ },
+ "rollingKick": {
+ name: "Rolling Kick",
+ effect: "The user lashes out with a quick, spinning kick. This may also make the target flinch."
+ },
+ "sandAttack": {
+ name: "Sand Attack",
+ effect: "Sand is hurled in the target's face, reducing the target's accuracy."
+ },
+ "headbutt": {
+ name: "Headbutt",
+ effect: "The user sticks out its head and attacks by charging straight into the target. This may also make the target flinch."
+ },
+ "hornAttack": {
+ name: "Horn Attack",
+ effect: "The target is jabbed with a sharply pointed horn to inflict damage."
+ },
+ "furyAttack": {
+ name: "Fury Attack",
+ effect: "The target is jabbed repeatedly with a horn or beak two to five times in a row."
+ },
+ "hornDrill": {
+ name: "Horn Drill",
+ effect: "The user stabs the target with a horn that rotates like a drill. The target faints instantly if this attack hits."
+ },
+ "tackle": {
+ name: "Tackle",
+ effect: "A physical attack in which the user charges and slams into the target with its whole body."
+ },
+ "bodySlam": {
+ name: "Body Slam",
+ effect: "The user drops onto the target with its full body weight. This may also leave the target with paralysis."
+ },
+ "wrap": {
+ name: "Wrap",
+ effect: "A long body, vines, or the like are used to wrap and squeeze the target for four to five turns."
+ },
+ "takeDown": {
+ name: "Take Down",
+ effect: "A reckless, full-body charge attack for slamming into the target. This also damages the user a little."
+ },
+ "thrash": {
+ name: "Thrash",
+ effect: "The user rampages and attacks for two to three turns. The user then becomes confused."
+ },
+ "doubleEdge": {
+ name: "Double-Edge",
+ effect: "A reckless, life-risking tackle in which the user rushes the target. This also damages the user quite a lot."
+ },
+ "tailWhip": {
+ name: "Tail Whip",
+ effect: "The user wags its tail cutely, making opposing Pokémon less wary and lowering their Defense stats."
+ },
+ "poisonSting": {
+ name: "Poison Sting",
+ effect: "The user stabs the target with a poisonous stinger. This may also poison the target."
+ },
+ "twineedle": {
+ name: "Twineedle",
+ effect: "The user damages the target twice in succession by jabbing it with two spikes. This may also poison the target."
+ },
+ "pinMissile": {
+ name: "Pin Missile",
+ effect: "Sharp spikes are shot at the target in rapid succession. They hit two to five times in a row."
+ },
+ "leer": {
+ name: "Leer",
+ effect: "The user gives opposing Pokémon an intimidating leer that lowers the Defense stat."
+ },
+ "bite": {
+ name: "Bite",
+ effect: "The target is bitten with viciously sharp fangs. This may also make the target flinch."
+ },
+ "growl": {
+ name: "Growl",
+ effect: "The user growls in an endearing way, making opposing Pokémon less wary. This lowers their Attack stats."
+ },
+ "roar": {
+ name: "Roar",
+ effect: "The target is scared off, and a different Pokémon is dragged out. In the wild, this ends a battle against a single Pokémon."
+ },
+ "sing": {
+ name: "Sing",
+ effect: "A soothing lullaby is sung in a calming voice that puts the target into a deep slumber."
+ },
+ "supersonic": {
+ name: "Supersonic",
+ effect: "The user generates odd sound waves from its body that confuse the target."
+ },
+ "sonicBoom": {
+ name: "Sonic Boom",
+ effect: "The target is hit with a destructive shock wave that always inflicts 20 HP damage."
+ },
+ "disable": {
+ name: "Disable",
+ effect: "For four turns, this move prevents the target from using the move it last used."
+ },
+ "acid": {
+ name: "Acid",
+ effect: "Opposing Pokémon are attacked with a spray of harsh acid. This may also lower their Sp. Def stats."
+ },
+ "ember": {
+ name: "Ember",
+ effect: "The target is attacked with small flames. This may also leave the target with a burn."
+ },
+ "flamethrower": {
+ name: "Flamethrower",
+ effect: "The target is scorched with an intense blast of fire. This may also leave the target with a burn."
+ },
+ "mist": {
+ name: "Mist",
+ effect: "The user cloaks itself and its allies in a white mist that prevents any of their stats from being lowered for five turns."
+ },
+ "waterGun": {
+ name: "Water Gun",
+ effect: "The target is blasted with a forceful shot of water."
+ },
+ "hydroPump": {
+ name: "Hydro Pump",
+ effect: "The target is blasted by a huge volume of water launched under great pressure."
+ },
+ "surf": {
+ name: "Surf",
+ effect: "The user attacks everything around it by swamping its surroundings with a giant wave."
+ },
+ "iceBeam": {
+ name: "Ice Beam",
+ effect: "The target is struck with an icy-cold beam of energy. This may also leave the target frozen."
+ },
+ "blizzard": {
+ name: "Blizzard",
+ effect: "A howling blizzard is summoned to strike opposing Pokémon. This may also leave the opposing Pokémon frozen."
+ },
+ "psybeam": {
+ name: "Psybeam",
+ effect: "The target is attacked with a peculiar ray. This may also leave the target confused."
+ },
+ "bubbleBeam": {
+ name: "Bubble Beam",
+ effect: "A spray of bubbles is forcefully ejected at the target. This may also lower the target's Speed stat."
+ },
+ "auroraBeam": {
+ name: "Aurora Beam",
+ effect: "The target is hit with a rainbow-colored beam. This may also lower the target's Attack stat."
+ },
+ "hyperBeam": {
+ name: "Hyper Beam",
+ effect: "The target is attacked with a powerful beam. The user can't move on the next turn."
+ },
+ "peck": {
+ name: "Peck",
+ effect: "The target is jabbed with a sharply pointed beak or horn."
+ },
+ "drillPeck": {
+ name: "Drill Peck",
+ effect: "A corkscrewing attack that strikes the target with a sharp beak acting as a drill."
+ },
+ "submission": {
+ name: "Submission",
+ effect: "The user grabs the target and recklessly dives for the ground. This also damages the user a little."
+ },
+ "lowKick": {
+ name: "Low Kick",
+ effect: "A powerful low kick that makes the target fall over. The heavier the target, the greater the move's power."
+ },
+ "counter": {
+ name: "Counter",
+ effect: "A retaliation move that counters any physical attack, inflicting double the damage taken."
+ },
+ "seismicToss": {
+ name: "Seismic Toss",
+ effect: "The target is thrown using the power of gravity. It inflicts damage equal to the user's level."
+ },
+ "strength": {
+ name: "Strength",
+ effect: "The target is slugged with a punch thrown at maximum power."
+ },
+ "absorb": {
+ name: "Absorb",
+ effect: "A nutrient-draining attack. The user's HP is restored by half the damage taken by the target."
+ },
+ "megaDrain": {
+ name: "Mega Drain",
+ effect: "A nutrient-draining attack. The user's HP is restored by half the damage taken by the target."
+ },
+ "leechSeed": {
+ name: "Leech Seed",
+ effect: "A seed is planted on the target. It steals some HP from the target every turn."
+ },
+ "growth": {
+ name: "Growth",
+ effect: "The user's body grows all at once, raising the Attack and Sp. Atk stats."
+ },
+ "razorLeaf": {
+ name: "Razor Leaf",
+ effect: "Sharp-edged leaves are launched to slash at opposing Pokémon. Critical hits land more easily."
+ },
+ "solarBeam": {
+ name: "Solar Beam",
+ effect: "In this two-turn attack, the user gathers light, then blasts a bundled beam on the next turn."
+ },
+ "poisonPowder": {
+ name: "Poison Powder",
+ effect: "The user scatters a cloud of poisonous dust that poisons the target."
+ },
+ "stunSpore": {
+ name: "Stun Spore",
+ effect: "The user scatters a cloud of numbing powder that paralyzes the target."
+ },
+ "sleepPowder": {
+ name: "Sleep Powder",
+ effect: "The user scatters a big cloud of sleep-inducing dust around the target."
+ },
+ "petalDance": {
+ name: "Petal Dance",
+ effect: "The user attacks the target by scattering petals for two to three turns. The user then becomes confused."
+ },
+ "stringShot": {
+ name: "String Shot",
+ effect: "Opposing Pokémon are bound with silk blown from the user's mouth that harshly lowers the Speed stat."
+ },
+ "dragonRage": {
+ name: "Dragon Rage",
+ effect: "This attack hits the target with a shock wave of pure rage. This attack always inflicts 40 HP damage."
+ },
+ "fireSpin": {
+ name: "Fire Spin",
+ effect: "The target becomes trapped within a fierce vortex of fire that rages for four to five turns."
+ },
+ "thunderShock": {
+ name: "Thunder Shock",
+ effect: "A jolt of electricity crashes down on the target to inflict damage. This may also leave the target with paralysis."
+ },
+ "thunderbolt": {
+ name: "Thunderbolt",
+ effect: "A strong electric blast crashes down on the target. This may also leave the target with paralysis."
+ },
+ "thunderWave": {
+ name: "Thunder Wave",
+ effect: "The user launches a weak jolt of electricity that paralyzes the target."
+ },
+ "thunder": {
+ name: "Thunder",
+ effect: "A wicked thunderbolt is dropped on the target to inflict damage. This may also leave the target with paralysis."
+ },
+ "rockThrow": {
+ name: "Rock Throw",
+ effect: "The user picks up and throws a small rock at the target to attack."
+ },
+ "earthquake": {
+ name: "Earthquake",
+ effect: "The user sets off an earthquake that strikes every Pokémon around it."
+ },
+ "fissure": {
+ name: "Fissure",
+ effect: "The user opens up a fissure in the ground and drops the target in. The target faints instantly if this attack hits."
+ },
+ "dig": {
+ name: "Dig",
+ effect: "The user burrows into the ground, then attacks on the next turn."
+ },
+ "toxic": {
+ name: "Toxic",
+ effect: "A move that leaves the target badly poisoned. Its poison damage worsens every turn."
+ },
+ "confusion": {
+ name: "Confusion",
+ effect: "The target is hit by a weak telekinetic force. This may also confuse the target."
+ },
+ "psychic": {
+ name: "Psychic",
+ effect: "The target is hit by a strong telekinetic force. This may also lower the target's Sp. Def stat."
+ },
+ "hypnosis": {
+ name: "Hypnosis",
+ effect: "The user employs hypnotic suggestion to make the target fall into a deep sleep."
+ },
+ "meditate": {
+ name: "Meditate",
+ effect: "The user meditates to awaken the power deep within its body and raise its Attack stat."
+ },
+ "agility": {
+ name: "Agility",
+ effect: "The user relaxes and lightens its body to move faster. This sharply raises the Speed stat."
+ },
+ "quickAttack": {
+ name: "Quick Attack",
+ effect: "The user lunges at the target at a speed that makes it almost invisible. This move always goes first."
+ },
+ "rage": {
+ name: "Rage",
+ effect: "As long as this move is in use, the power of rage raises the Attack stat each time the user is hit in battle."
+ },
+ "teleport": {
+ name: "Teleport",
+ effect: "The user switches places with a party Pokémon in waiting, if any. If a wild Pokémon uses this move, it flees."
+ },
+ "nightShade": {
+ name: "Night Shade",
+ effect: "The user makes the target see a frightening mirage. It inflicts damage equal to the user's level."
+ },
+ "mimic": {
+ name: "Mimic",
+ effect: "The user copies the target's last move. The move can be used during battle until the Pokémon is switched out."
+ },
+ "screech": {
+ name: "Screech",
+ effect: "An earsplitting screech harshly lowers the target's Defense stat."
+ },
+ "doubleTeam": {
+ name: "Double Team",
+ effect: "By moving rapidly, the user makes illusory copies of itself to raise its evasiveness."
+ },
+ "recover": {
+ name: "Recover",
+ effect: "Restoring its own cells, the user restores its own HP by half of its max HP."
+ },
+ "harden": {
+ name: "Harden",
+ effect: "The user stiffens all the muscles in its body to raise its Defense stat."
+ },
+ "minimize": {
+ name: "Minimize",
+ effect: "The user compresses its body to make itself look smaller, which sharply raises its evasiveness."
+ },
+ "smokescreen": {
+ name: "Smokescreen",
+ effect: "The user releases an obscuring cloud of smoke or ink. This lowers the target's accuracy."
+ },
+ "confuseRay": {
+ name: "Confuse Ray",
+ effect: "The target is exposed to a sinister ray that triggers confusion."
+ },
+ "withdraw": {
+ name: "Withdraw",
+ effect: "The user withdraws its body into its hard shell, raising its Defense stat."
+ },
+ "defenseCurl": {
+ name: "Defense Curl",
+ effect: "The user curls up to conceal weak spots and raise its Defense stat."
+ },
+ "barrier": {
+ name: "Barrier",
+ effect: "The user throws up a sturdy wall that sharply raises its Defense stat."
+ },
+ "lightScreen": {
+ name: "Light Screen",
+ effect: "A wondrous wall of light is put up to reduce damage from special attacks for five turns."
+ },
+ "haze": {
+ name: "Haze",
+ effect: "The user creates a haze that eliminates every stat change among all the Pokémon engaged in battle."
+ },
+ "reflect": {
+ name: "Reflect",
+ effect: "A wondrous wall of light is put up to reduce damage from physical attacks for five turns."
+ },
+ "focusEnergy": {
+ name: "Focus Energy",
+ effect: "The user takes a deep breath and focuses so that critical hits land more easily."
+ },
+ "bide": {
+ name: "Bide",
+ effect: "The user endures attacks for two turns, then strikes back to cause double the damage taken."
+ },
+ "metronome": {
+ name: "Metronome",
+ effect: "The user waggles a finger and stimulates its brain into randomly using nearly any move."
+ },
+ "mirrorMove": {
+ name: "Mirror Move",
+ effect: "The user counters the target by mimicking the target's last move."
+ },
+ "selfDestruct": {
+ name: "Self-Destruct",
+ effect: "The user attacks everything around it by causing an explosion. The user faints upon using this move."
+ },
+ "eggBomb": {
+ name: "Egg Bomb",
+ effect: "A large egg is hurled at the target with maximum force to inflict damage."
+ },
+ "lick": {
+ name: "Lick",
+ effect: "The target is licked with a long tongue, causing damage. This may also leave the target with paralysis."
+ },
+ "smog": {
+ name: "Smog",
+ effect: "The target is attacked with a discharge of filthy gases. This may also poison the target."
+ },
+ "sludge": {
+ name: "Sludge",
+ effect: "Unsanitary sludge is hurled at the target. This may also poison the target."
+ },
+ "boneClub": {
+ name: "Bone Club",
+ effect: "The user clubs the target with a bone. This may also make the target flinch."
+ },
+ "fireBlast": {
+ name: "Fire Blast",
+ effect: "The target is attacked with an intense blast of all-consuming fire. This may also leave the target with a burn."
+ },
+ "waterfall": {
+ name: "Waterfall",
+ effect: "The user charges at the target and may make it flinch."
+ },
+ "clamp": {
+ name: "Clamp",
+ effect: "The target is clamped and squeezed by the user's very thick and sturdy shell for four to five turns."
+ },
+ "swift": {
+ name: "Swift",
+ effect: "Star-shaped rays are shot at opposing Pokémon. This attack never misses."
+ },
+ "skullBash": {
+ name: "Skull Bash",
+ effect: "The user tucks in its head to raise its Defense stat on the first turn, then rams the target on the next turn."
+ },
+ "spikeCannon": {
+ name: "Spike Cannon",
+ effect: "Sharp spikes are shot at the target in rapid succession. They hit two to five times in a row."
+ },
+ "constrict": {
+ name: "Constrict",
+ effect: "The target is attacked with long, creeping tentacles, vines, or the like. This may also lower the target's Speed stat."
+ },
+ "amnesia": {
+ name: "Amnesia",
+ effect: "The user temporarily empties its mind to forget its concerns. This sharply raises the user's Sp. Def stat."
+ },
+ "kinesis": {
+ name: "Kinesis",
+ effect: "The user distracts the target by bending a spoon. This lowers the target's accuracy."
+ },
+ "softBoiled": {
+ name: "Soft-Boiled",
+ effect: "The user restores its own HP by up to half of its max HP."
+ },
+ "highJumpKick": {
+ name: "High Jump Kick",
+ effect: "The target is attacked with a knee kick from a jump. If it misses, the user is hurt instead."
+ },
+ "glare": {
+ name: "Glare",
+ effect: "The user intimidates the target with the pattern on its belly to cause paralysis."
+ },
+ "dreamEater": {
+ name: "Dream Eater",
+ effect: "The user eats the dreams of a sleeping target. The user's HP is restored by half the damage taken by the target."
+ },
+ "poisonGas": {
+ name: "Poison Gas",
+ effect: "A cloud of poison gas is sprayed in the face of opposing Pokémon, poisoning those it hits."
+ },
+ "barrage": {
+ name: "Barrage",
+ effect: "Round objects are hurled at the target to strike two to five times in a row."
+ },
+ "leechLife": {
+ name: "Leech Life",
+ effect: "The user drains the target's blood. The user's HP is restored by half the damage taken by the target."
+ },
+ "lovelyKiss": {
+ name: "Lovely Kiss",
+ effect: "With a scary face, the user tries to force a kiss on the target. If it succeeds, the target falls asleep."
+ },
+ "skyAttack": {
+ name: "Sky Attack",
+ effect: "A second-turn attack move where critical hits land more easily. This may also make the target flinch."
+ },
+ "transform": {
+ name: "Transform",
+ effect: "The user transforms into a copy of the target right down to having the same move set."
+ },
+ "bubble": {
+ name: "Bubble",
+ effect: "A spray of countless bubbles is jetted at the opposing Pokémon. This may also lower their Speed stat."
+ },
+ "dizzyPunch": {
+ name: "Dizzy Punch",
+ effect: "The target is hit with rhythmically launched punches. This may also leave the target confused."
+ },
+ "spore": {
+ name: "Spore",
+ effect: "The user scatters bursts of spores that induce sleep."
+ },
+ "flash": {
+ name: "Flash",
+ effect: "The user flashes a bright light that cuts the target's accuracy."
+ },
+ "psywave": {
+ name: "Psywave",
+ effect: "The target is attacked with an odd psychic wave. The attack varies in intensity."
+ },
+ "splash": {
+ name: "Splash",
+ effect: "The user just flops and splashes around to no effect at all..."
+ },
+ "acidArmor": {
+ name: "Acid Armor",
+ effect: "The user alters its cellular structure to liquefy itself, sharply raising its Defense stat."
+ },
+ "crabhammer": {
+ name: "Crabhammer",
+ effect: "The target is hammered with a large pincer. Critical hits land more easily."
+ },
+ "explosion": {
+ name: "Explosion",
+ effect: "The user attacks everything around it by causing a tremendous explosion. The user faints upon using this move."
+ },
+ "furySwipes": {
+ name: "Fury Swipes",
+ effect: "The target is raked with sharp claws or scythes quickly two to five times in a row."
+ },
+ "bonemerang": {
+ name: "Bonemerang",
+ effect: "The user throws the bone it holds. The bone loops around to hit the target twice—coming and going."
+ },
+ "rest": {
+ name: "Rest",
+ effect: "The user goes to sleep for two turns. This fully restores the user's HP and heals any status conditions."
+ },
+ "rockSlide": {
+ name: "Rock Slide",
+ effect: "Large boulders are hurled at opposing Pokémon to inflict damage. This may also make the opposing Pokémon flinch."
+ },
+ "hyperFang": {
+ name: "Hyper Fang",
+ effect: "The user bites hard on the target with its sharp front fangs. This may also make the target flinch."
+ },
+ "sharpen": {
+ name: "Sharpen",
+ effect: "The user makes its edges more jagged, which raises its Attack stat."
+ },
+ "conversion": {
+ name: "Conversion",
+ effect: "The user changes its type to become the same type as the move at the top of the list of moves it knows."
+ },
+ "triAttack": {
+ name: "Tri Attack",
+ effect: "The user strikes with a simultaneous three-beam attack. This may also burn, freeze, or paralyze the target."
+ },
+ "superFang": {
+ name: "Super Fang",
+ effect: "The user chomps hard on the target with its sharp front fangs. This cuts the target's HP in half."
+ },
+ "slash": {
+ name: "Slash",
+ effect: "The target is attacked with a slash of claws or blades. Critical hits land more easily."
+ },
+ "substitute": {
+ name: "Substitute",
+ effect: "The user creates a substitute for itself using some of its HP. The substitute serves as the user's decoy."
+ },
+ "struggle": {
+ name: "Struggle",
+ effect: "This attack is used in desperation only if the user has no PP. It also damages the user a little."
+ },
+ "sketch": {
+ name: "Sketch",
+ effect: "It enables the user to permanently learn the move last used by the target. Once used, Sketch disappears."
+ },
+ "tripleKick": {
+ name: "Triple Kick",
+ effect: "A consecutive three-kick attack that becomes more powerful with each successful hit."
+ },
+ "thief": {
+ name: "Thief",
+ effect: "The user attacks and has a 30% chance to steal the target's held item simultaneously."
+ },
+ "spiderWeb": {
+ name: "Spider Web",
+ effect: "The user ensnares the target with thin, gooey silk so it can't flee from battle."
+ },
+ "mindReader": {
+ name: "Mind Reader",
+ effect: "The user senses the target's movements with its mind to ensure its next attack does not miss the target."
+ },
+ "nightmare": {
+ name: "Nightmare",
+ effect: "A sleeping target sees a nightmare that inflicts some damage every turn."
+ },
+ "flameWheel": {
+ name: "Flame Wheel",
+ effect: "The user cloaks itself in fire and charges at the target. This may also leave the target with a burn."
+ },
+ "snore": {
+ name: "Snore",
+ effect: "This attack can be used only if the user is asleep. The harsh noise may also make the target flinch."
+ },
+ "curse": {
+ name: "Curse",
+ effect: "A move that works differently for the Ghost type than for all other types."
+ },
+ "flail": {
+ name: "Flail",
+ effect: "The user flails about aimlessly to attack. The less HP the user has, the greater the move's power."
+ },
+ "conversion2": {
+ name: "Conversion 2",
+ effect: "The user changes its type to make itself resistant to the type of the attack the target used last."
+ },
+ "aeroblast": {
+ name: "Aeroblast",
+ effect: "A vortex of air is shot at the target to inflict damage. Critical hits land more easily."
+ },
+ "cottonSpore": {
+ name: "Cotton Spore",
+ effect: "The user releases cotton-like spores that cling to opposing Pokémon, which harshly lowers their Speed stats."
+ },
+ "reversal": {
+ name: "Reversal",
+ effect: "An all-out attack that becomes more powerful the less HP the user has."
+ },
+ "spite": {
+ name: "Spite",
+ effect: "The user unleashes its grudge on the move last used by the target by cutting 4 PP from it."
+ },
+ "powderSnow": {
+ name: "Powder Snow",
+ effect: "The user attacks with a chilling gust of powdery snow. This may also freeze opposing Pokémon."
+ },
+ "protect": {
+ name: "Protect",
+ effect: "This move enables the user to protect itself from all attacks. Its chance of failing rises if it is used in succession."
+ },
+ "machPunch": {
+ name: "Mach Punch",
+ effect: "The user throws a punch at blinding speed. This move always goes first."
+ },
+ "scaryFace": {
+ name: "Scary Face",
+ effect: "The user frightens the target with a scary face to harshly lower its Speed stat."
+ },
+ "feintAttack": {
+ name: "Feint Attack",
+ effect: "The user approaches the target disarmingly, then throws a sucker punch. This attack never misses."
+ },
+ "sweetKiss": {
+ name: "Sweet Kiss",
+ effect: "The user kisses the target with a sweet, angelic cuteness that causes confusion."
+ },
+ "bellyDrum": {
+ name: "Belly Drum",
+ effect: "The user maximizes its Attack stat in exchange for HP equal to half its max HP."
+ },
+ "sludgeBomb": {
+ name: "Sludge Bomb",
+ effect: "Unsanitary sludge is hurled at the target. This may also poison the target."
+ },
+ "mudSlap": {
+ name: "Mud-Slap",
+ effect: "The user hurls mud in the target's face to inflict damage and lower its accuracy."
+ },
+ "octazooka": {
+ name: "Octazooka",
+ effect: "The user attacks by spraying ink in the target's face or eyes. This may also lower the target's accuracy."
+ },
+ "spikes": {
+ name: "Spikes",
+ effect: "The user lays a trap of spikes at the opposing team's feet. The trap hurts Pokémon that switch into battle."
+ },
+ "zapCannon": {
+ name: "Zap Cannon",
+ effect: "The user fires an electric blast like a cannon to inflict damage and cause paralysis."
+ },
+ "foresight": {
+ name: "Foresight",
+ effect: "Enables a Ghost-type target to be hit by Normal- and Fighting-type attacks. This also enables an evasive target to be hit."
+ },
+ "destinyBond": {
+ name: "Destiny Bond",
+ effect: "After using this move, if the user faints, the Pokémon that landed the knockout hit also faints. Its chance of failing rises if it is used in succession."
+ },
+ "perishSong": {
+ name: "Perish Song",
+ effect: "Any Pokémon that hears this song faints in three turns, unless it switches out of battle."
+ },
+ "icyWind": {
+ name: "Icy Wind",
+ effect: "The user attacks with a gust of chilled air. This also lowers opposing Pokémon's Speed stats."
+ },
+ "detect": {
+ name: "Detect",
+ effect: "This move enables the user to protect itself from all attacks. Its chance of failing rises if it is used in succession."
+ },
+ "boneRush": {
+ name: "Bone Rush",
+ effect: "The user strikes the target with a hard bone two to five times in a row."
+ },
+ "lockOn": {
+ name: "Lock-On",
+ effect: "The user takes sure aim at the target. This ensures the next attack does not miss the target."
+ },
+ "outrage": {
+ name: "Outrage",
+ effect: "The user rampages and attacks for two to three turns. The user then becomes confused."
+ },
+ "sandstorm": {
+ name: "Sandstorm",
+ effect: "A five-turn sandstorm is summoned to hurt all combatants except Rock, Ground, and Steel types. It raises the Sp. Def stat of Rock types."
+ },
+ "gigaDrain": {
+ name: "Giga Drain",
+ effect: "A nutrient-draining attack. The user's HP is restored by half the damage taken by the target."
+ },
+ "endure": {
+ name: "Endure",
+ effect: "The user endures any attack with at least 1 HP. Its chance of failing rises if it is used in succession."
+ },
+ "charm": {
+ name: "Charm",
+ effect: "The user gazes at the target rather charmingly, making it less wary. This harshly lowers the target's Attack stat."
+ },
+ "rollout": {
+ name: "Rollout",
+ effect: "The user continually rolls into the target over five turns. It becomes more powerful each time it hits."
+ },
+ "falseSwipe": {
+ name: "False Swipe",
+ effect: "A restrained attack that prevents the target from fainting. The target is left with at least 1 HP."
+ },
+ "swagger": {
+ name: "Swagger",
+ effect: "The user enrages and confuses the target. However, this also sharply raises the target's Attack stat."
+ },
+ "milkDrink": {
+ name: "Milk Drink",
+ effect: "The user restores its own HP by up to half of its max HP."
+ },
+ "spark": {
+ name: "Spark",
+ effect: "The user throws an electrically charged tackle at the target. This may also leave the target with paralysis."
+ },
+ "furyCutter": {
+ name: "Fury Cutter",
+ effect: "The target is slashed with scythes or claws. This attack becomes more powerful if it hits in succession."
+ },
+ "steelWing": {
+ name: "Steel Wing",
+ effect: "The target is hit with wings of steel. This may also raise the user's Defense stat."
+ },
+ "meanLook": {
+ name: "Mean Look",
+ effect: "The user pins the target with a dark, arresting look. The target becomes unable to flee."
+ },
+ "attract": {
+ name: "Attract",
+ effect: "If it is the opposite gender of the user, the target becomes infatuated and less likely to attack."
+ },
+ "sleepTalk": {
+ name: "Sleep Talk",
+ effect: "While it is asleep, the user randomly uses one of the moves it knows."
+ },
+ "healBell": {
+ name: "Heal Bell",
+ effect: "The user makes a soothing bell chime to heal the status conditions of all the party Pokémon."
+ },
+ "return": {
+ name: "Return",
+ effect: "This full-power attack grows more powerful the more the user likes its Trainer."
+ },
+ "present": {
+ name: "Present",
+ effect: "The user attacks by giving the target a gift with a hidden trap. It restores HP sometimes, however."
+ },
+ "frustration": {
+ name: "Frustration",
+ effect: "This full-power attack grows more powerful the less the user likes its Trainer."
+ },
+ "safeguard": {
+ name: "Safeguard",
+ effect: "The user creates a protective field that prevents status conditions for five turns."
+ },
+ "painSplit": {
+ name: "Pain Split",
+ effect: "The user adds its HP to the target's HP, then equally shares the combined HP with the target."
+ },
+ "sacredFire": {
+ name: "Sacred Fire",
+ effect: "The target is razed with a mystical fire of great intensity. This may also leave the target with a burn."
+ },
+ "magnitude": {
+ name: "Magnitude",
+ effect: "The user attacks everything around it with a ground-shaking quake. Its power varies."
+ },
+ "dynamicPunch": {
+ name: "Dynamic Punch",
+ effect: "The user punches the target with full, concentrated power. This confuses the target if it hits."
+ },
+ "megahorn": {
+ name: "Megahorn",
+ effect: "Using its tough and impressive horn, the user rams into the target with no letup."
+ },
+ "dragonBreath": {
+ name: "Dragon Breath",
+ effect: "The user exhales a mighty gust that inflicts damage. This may also leave the target with paralysis."
+ },
+ "batonPass": {
+ name: "Baton Pass",
+ effect: "The user switches places with a party Pokémon in waiting and passes along any stat changes."
+ },
+ "encore": {
+ name: "Encore",
+ effect: "The user compels the target to keep using the move it encored for three turns."
+ },
+ "pursuit": {
+ name: "Pursuit",
+ effect: "The power of this attack move is doubled if it's used on a target that's switching out of battle."
+ },
+ "rapidSpin": {
+ name: "Rapid Spin",
+ effect: "A spin attack that can also eliminate such moves as Bind, Wrap, and Leech Seed. This also raises the user's Speed stat."
+ },
+ "sweetScent": {
+ name: "Sweet Scent",
+ effect: "A sweet scent that harshly lowers opposing Pokémon's evasiveness."
+ },
+ "ironTail": {
+ name: "Iron Tail",
+ effect: "The target is slammed with a steel-hard tail. This may also lower the target's Defense stat."
+ },
+ "metalClaw": {
+ name: "Metal Claw",
+ effect: "The target is raked with steel claws. This may also raise the user's Attack stat."
+ },
+ "vitalThrow": {
+ name: "Vital Throw",
+ effect: "The user attacks last. In return, this throw move never misses."
+ },
+ "morningSun": {
+ name: "Morning Sun",
+ effect: "The user restores its own HP. The amount of HP regained varies with the weather."
+ },
+ "synthesis": {
+ name: "Synthesis",
+ effect: "The user restores its own HP. The amount of HP regained varies with the weather."
+ },
+ "moonlight": {
+ name: "Moonlight",
+ effect: "The user restores its own HP. The amount of HP regained varies with the weather."
+ },
+ "hiddenPower": {
+ name: "Hidden Power",
+ effect: "A unique attack that varies in type depending on the Pokémon using it."
+ },
+ "crossChop": {
+ name: "Cross Chop",
+ effect: "The user delivers a double chop with its forearms crossed. Critical hits land more easily."
+ },
+ "twister": {
+ name: "Twister",
+ effect: "The user whips up a vicious tornado to tear at opposing Pokémon. This may also make them flinch."
+ },
+ "rainDance": {
+ name: "Rain Dance",
+ effect: "The user summons a heavy rain that falls for five turns, powering up Water-type moves. It lowers the power of Fire-type moves."
+ },
+ "sunnyDay": {
+ name: "Sunny Day",
+ effect: "The user intensifies the sun for five turns, powering up Fire-type moves. It lowers the power of Water-type moves."
+ },
+ "crunch": {
+ name: "Crunch",
+ effect: "The user crunches up the target with sharp fangs. This may also lower the target's Defense stat."
+ },
+ "mirrorCoat": {
+ name: "Mirror Coat",
+ effect: "A retaliation move that counters any special attack, inflicting double the damage taken."
+ },
+ "psychUp": {
+ name: "Psych Up",
+ effect: "The user hypnotizes itself into copying any stat change made by the target."
+ },
+ "extremeSpeed": {
+ name: "Extreme Speed",
+ effect: "The user charges the target at blinding speed. This move always goes first."
+ },
+ "ancientPower": {
+ name: "Ancient Power",
+ effect: "The user attacks with a prehistoric power. This may also raise all the user's stats at once."
+ },
+ "shadowBall": {
+ name: "Shadow Ball",
+ effect: "The user hurls a shadowy blob at the target. This may also lower the target's Sp. Def stat."
+ },
+ "futureSight": {
+ name: "Future Sight",
+ effect: "Two turns after this move is used, a hunk of psychic energy attacks the target."
+ },
+ "rockSmash": {
+ name: "Rock Smash",
+ effect: "The user attacks with a punch. This may also lower the target's Defense stat."
+ },
+ "whirlpool": {
+ name: "Whirlpool",
+ effect: "The user traps the target in a violent swirling whirlpool for four to five turns."
+ },
+ "beatUp": {
+ name: "Beat Up",
+ effect: "The user gets all party Pokémon to attack the target. The more party Pokémon, the greater the number of attacks."
+ },
+ "fakeOut": {
+ name: "Fake Out",
+ effect: "This attack hits first and makes the target flinch. It only works the first turn each time the user enters battle."
+ },
+ "uproar": {
+ name: "Uproar",
+ effect: "The user attacks in an uproar for three turns. During that time, no Pokémon can fall asleep."
+ },
+ "stockpile": {
+ name: "Stockpile",
+ effect: "The user charges up power and raises both its Defense and Sp. Def stats. The move can be used three times."
+ },
+ "spitUp": {
+ name: "Spit Up",
+ effect: "The power stored using the move Stockpile is released at once in an attack. The more power is stored, the greater the move's power."
+ },
+ "swallow": {
+ name: "Swallow",
+ effect: "The power stored using the move Stockpile is absorbed by the user to heal its HP. Storing more power heals more HP."
+ },
+ "heatWave": {
+ name: "Heat Wave",
+ effect: "The user attacks by exhaling hot breath on opposing Pokémon. This may also leave those Pokémon with a burn."
+ },
+ "hail": {
+ name: "Hail",
+ effect: "The user summons a hailstorm lasting five turns. It damages all Pokémon except Ice types."
+ },
+ "torment": {
+ name: "Torment",
+ effect: "The user torments and enrages the target, making it incapable of using the same move twice in a row."
+ },
+ "flatter": {
+ name: "Flatter",
+ effect: "Flattery is used to confuse the target. However, this also raises the target's Sp. Atk stat."
+ },
+ "willOWisp": {
+ name: "Will-O-Wisp",
+ effect: "The user shoots a sinister flame at the target to inflict a burn."
+ },
+ "memento": {
+ name: "Memento",
+ effect: "The user faints when using this move. In return, this harshly lowers the target's Attack and Sp. Atk stats."
+ },
+ "facade": {
+ name: "Facade",
+ effect: "This attack move doubles its power if the user is poisoned, burned, or paralyzed."
+ },
+ "focusPunch": {
+ name: "Focus Punch",
+ effect: "The user focuses its mind before launching a punch. This move fails if the user is hit before it is used."
+ },
+ "smellingSalts": {
+ name: "Smelling Salts",
+ effect: "This attack's power is doubled when used on a target with paralysis. This also cures the target's paralysis, however."
+ },
+ "followMe": {
+ name: "Follow Me",
+ effect: "The user draws attention to itself, making all targets take aim only at the user."
+ },
+ "naturePower": {
+ name: "Nature Power",
+ effect: "This attack makes use of nature's power. Its effects vary depending on the user's environment."
+ },
+ "charge": {
+ name: "Charge",
+ effect: "The user boosts the power of the Electric move it uses on the next turn. This also raises the user's Sp. Def stat."
+ },
+ "taunt": {
+ name: "Taunt",
+ effect: "The target is taunted into a rage that allows it to use only attack moves for three turns."
+ },
+ "helpingHand": {
+ name: "Helping Hand",
+ effect: "The user assists an ally by boosting the power of that ally's attack."
+ },
+ "trick": {
+ name: "Trick",
+ effect: "The user catches the target off guard and swaps its held item with its own."
+ },
+ "rolePlay": {
+ name: "Role Play",
+ effect: "The user mimics the target completely, copying the target's Ability."
+ },
+ "wish": {
+ name: "Wish",
+ effect: "One turn after this move is used, the user's or its replacement's HP is restored by half the user's max HP."
+ },
+ "assist": {
+ name: "Assist",
+ effect: "The user hurriedly and randomly uses a move among those known by ally Pokémon."
+ },
+ "ingrain": {
+ name: "Ingrain",
+ effect: "The user lays roots that restore its HP on every turn. Because it's rooted, it can't switch out."
+ },
+ "superpower": {
+ name: "Superpower",
+ effect: "The user attacks the target with great power. However, this also lowers the user's Attack and Defense stats."
+ },
+ "magicCoat": {
+ name: "Magic Coat",
+ effect: "Moves like Leech Seed and moves that inflict status conditions are blocked by a barrier and reflected back to the user of those moves."
+ },
+ "recycle": {
+ name: "Recycle",
+ effect: "The user recycles a held item that has been used in battle so it can be used again."
+ },
+ "revenge": {
+ name: "Revenge",
+ effect: "This attack move's power is doubled if the user has been hurt by the opponent in the same turn."
+ },
+ "brickBreak": {
+ name: "Brick Break",
+ effect: "The user attacks with a swift chop. It can also break barriers, such as Light Screen and Reflect."
+ },
+ "yawn": {
+ name: "Yawn",
+ effect: "The user lets loose a huge yawn that lulls the target into falling asleep on the next turn."
+ },
+ "knockOff": {
+ name: "Knock Off",
+ effect: "The user slaps down the target's held item, and that item can't be used in that battle. The move does more damage if the target has a held item."
+ },
+ "endeavor": {
+ name: "Endeavor",
+ effect: "This attack move cuts down the target's HP to equal the user's HP."
+ },
+ "eruption": {
+ name: "Eruption",
+ effect: "The user attacks opposing Pokémon with explosive fury. The lower the user's HP, the lower the move's power."
+ },
+ "skillSwap": {
+ name: "Skill Swap",
+ effect: "The user employs its psychic power to exchange Abilities with the target."
+ },
+ "imprison": {
+ name: "Imprison",
+ effect: "If opposing Pokémon know any move also known by the user, they are prevented from using it."
+ },
+ "refresh": {
+ name: "Refresh",
+ effect: "The user rests to cure itself of poisoning, a burn, or paralysis."
+ },
+ "grudge": {
+ name: "Grudge",
+ effect: "If the user faints, the user's grudge fully depletes the PP of the opponent's move that knocked it out."
+ },
+ "snatch": {
+ name: "Snatch",
+ effect: "The user steals the effects of any attempts to use a healing or stat-changing move."
+ },
+ "secretPower": {
+ name: "Secret Power",
+ effect: "The additional effects of this attack depend upon where it was used."
+ },
+ "dive": {
+ name: "Dive",
+ effect: "Diving on the first turn, the user floats up and attacks on the next turn."
+ },
+ "armThrust": {
+ name: "Arm Thrust",
+ effect: "The user lets loose a flurry of open-palmed arm thrusts that hit two to five times in a row."
+ },
+ "camouflage": {
+ name: "Camouflage",
+ effect: "The user's type is changed depending on its environment, such as at water's edge, in grass, or in a cave."
+ },
+ "tailGlow": {
+ name: "Tail Glow",
+ effect: "The user stares at flashing lights to focus its mind, drastically raising its Sp. Atk stat."
+ },
+ "lusterPurge": {
+ name: "Luster Purge",
+ effect: "The user lets loose a damaging burst of light. This may also lower the target's Sp. Def stat."
+ },
+ "mistBall": {
+ name: "Mist Ball",
+ effect: "A mist-like flurry of down envelops and damages the target. This may also lower the target's Sp. Atk stat."
+ },
+ "featherDance": {
+ name: "Feather Dance",
+ effect: "The user covers the target's body with a mass of down that harshly lowers its Attack stat."
+ },
+ "teeterDance": {
+ name: "Teeter Dance",
+ effect: "The user performs a wobbly dance that confuses the Pokémon around it."
+ },
+ "blazeKick": {
+ name: "Blaze Kick",
+ effect: "The user launches a kick that lands a critical hit more easily. This may also leave the target with a burn."
+ },
+ "mudSport": {
+ name: "Mud Sport",
+ effect: "The user kicks up mud on the battlefield. This weakens Electric-type moves for five turns."
+ },
+ "iceBall": {
+ name: "Ice Ball",
+ effect: "The user attacks the target for five turns. The move's power increases each time it hits."
+ },
+ "needleArm": {
+ name: "Needle Arm",
+ effect: "The user attacks by wildly swinging its thorny arms. This may also make the target flinch."
+ },
+ "slackOff": {
+ name: "Slack Off",
+ effect: "The user slacks off, restoring its own HP by up to half of its max HP."
+ },
+ "hyperVoice": {
+ name: "Hyper Voice",
+ effect: "The user lets loose a horribly echoing shout with the power to inflict damage."
+ },
+ "poisonFang": {
+ name: "Poison Fang",
+ effect: "The user bites the target with toxic fangs. This may also leave the target badly poisoned."
+ },
+ "crushClaw": {
+ name: "Crush Claw",
+ effect: "The user slashes the target with hard and sharp claws. This may also lower the target's Defense stat."
+ },
+ "blastBurn": {
+ name: "Blast Burn",
+ effect: "The target is razed by a fiery explosion. The user can't move on the next turn."
+ },
+ "hydroCannon": {
+ name: "Hydro Cannon",
+ effect: "The target is hit with a watery blast. The user can't move on the next turn."
+ },
+ "meteorMash": {
+ name: "Meteor Mash",
+ effect: "The target is hit with a hard punch fired like a meteor. This may also raise the user's Attack stat."
+ },
+ "astonish": {
+ name: "Astonish",
+ effect: "The user attacks the target while shouting in a startling fashion. This may also make the target flinch."
+ },
+ "weatherBall": {
+ name: "Weather Ball",
+ effect: "This attack move varies in power and type depending on the weather."
+ },
+ "aromatherapy": {
+ name: "Aromatherapy",
+ effect: "The user releases a soothing scent that heals all status conditions affecting the user's party."
+ },
+ "fakeTears": {
+ name: "Fake Tears",
+ effect: "The user feigns crying to fluster the target, harshly lowering its Sp. Def stat."
+ },
+ "airCutter": {
+ name: "Air Cutter",
+ effect: "The user launches razor-like wind to slash opposing Pokémon. Critical hits land more easily."
+ },
+ "overheat": {
+ name: "Overheat",
+ effect: "The user attacks the target at full power. The attack's recoil harshly lowers the user's Sp. Atk stat."
+ },
+ "odorSleuth": {
+ name: "Odor Sleuth",
+ effect: "Enables a Ghost-type target to be hit by Normal- and Fighting-type attacks. This also enables an evasive target to be hit."
+ },
+ "rockTomb": {
+ name: "Rock Tomb",
+ effect: "Boulders are hurled at the target. This also lowers the target's Speed stat by preventing its movement."
+ },
+ "silverWind": {
+ name: "Silver Wind",
+ effect: "The target is attacked with powdery scales blown by the wind. This may also raise all the user's stats."
+ },
+ "metalSound": {
+ name: "Metal Sound",
+ effect: "A horrible sound like scraping metal harshly lowers the target's Sp. Def stat."
+ },
+ "grassWhistle": {
+ name: "Grass Whistle",
+ effect: "The user plays a pleasant melody that lulls the target into a deep sleep."
+ },
+ "tickle": {
+ name: "Tickle",
+ effect: "The user tickles the target into laughing, reducing its Attack and Defense stats."
+ },
+ "cosmicPower": {
+ name: "Cosmic Power",
+ effect: "The user absorbs a mystical power from space to raise its Defense and Sp. Def stats."
+ },
+ "waterSpout": {
+ name: "Water Spout",
+ effect: "The user spouts water to damage opposing Pokémon. The lower the user's HP, the lower the move's power."
+ },
+ "signalBeam": {
+ name: "Signal Beam",
+ effect: "The user attacks with a sinister beam of light. This may also confuse the target."
+ },
+ "shadowPunch": {
+ name: "Shadow Punch",
+ effect: "The user throws a punch from the shadows. This attack never misses."
+ },
+ "extrasensory": {
+ name: "Extrasensory",
+ effect: "The user attacks with an odd, unseeable power. This may also make the target flinch."
+ },
+ "skyUppercut": {
+ name: "Sky Uppercut",
+ effect: "The user attacks the target with an uppercut thrown skyward with force."
+ },
+ "sandTomb": {
+ name: "Sand Tomb",
+ effect: "The user traps the target inside a harshly raging sandstorm for four to five turns."
+ },
+ "sheerCold": {
+ name: "Sheer Cold",
+ effect: "The target faints instantly. It's less likely to hit the target if it's used by Pokémon other than Ice types."
+ },
+ "muddyWater": {
+ name: "Muddy Water",
+ effect: "The user attacks by shooting muddy water at opposing Pokémon. This may also lower their accuracy."
+ },
+ "bulletSeed": {
+ name: "Bullet Seed",
+ effect: "The user forcefully shoots seeds at the target two to five times in a row."
+ },
+ "aerialAce": {
+ name: "Aerial Ace",
+ effect: "The user confounds the target with speed, then slashes. This attack never misses."
+ },
+ "icicleSpear": {
+ name: "Icicle Spear",
+ effect: "The user launches sharp icicles at the target two to five times in a row."
+ },
+ "ironDefense": {
+ name: "Iron Defense",
+ effect: "The user hardens its body's surface like iron, sharply raising its Defense stat."
+ },
+ "block": {
+ name: "Block",
+ effect: "The user blocks the target's way with arms spread wide to prevent escape."
+ },
+ "howl": {
+ name: "Howl",
+ effect: "The user howls loudly to raise the spirit of itself and allies. This raises their Attack stats."
+ },
+ "dragonClaw": {
+ name: "Dragon Claw",
+ effect: "The user slashes the target with huge sharp claws."
+ },
+ "frenzyPlant": {
+ name: "Frenzy Plant",
+ effect: "The user slams the target with the roots of an enormous tree. The user can't move on the next turn."
+ },
+ "bulkUp": {
+ name: "Bulk Up",
+ effect: "The user tenses its muscles to bulk up its body, raising both its Attack and Defense stats."
+ },
+ "bounce": {
+ name: "Bounce",
+ effect: "The user bounces up high, then drops on the target on the second turn. This may also leave the target with paralysis."
+ },
+ "mudShot": {
+ name: "Mud Shot",
+ effect: "The user attacks by hurling a blob of mud at the target. This also lowers the target's Speed stat."
+ },
+ "poisonTail": {
+ name: "Poison Tail",
+ effect: "The user hits the target with its tail. This may also poison the target. Critical hits land more easily."
+ },
+ "covet": {
+ name: "Covet",
+ effect: "The user endearingly approaches the target, then has a 30% chance to steal the target's held item."
+ },
+ "voltTackle": {
+ name: "Volt Tackle",
+ effect: "The user electrifies itself and charges the target. This also damages the user quite a lot. This attack may leave the target with paralysis."
+ },
+ "magicalLeaf": {
+ name: "Magical Leaf",
+ effect: "The user scatters curious leaves that chase the target. This attack never misses."
+ },
+ "waterSport": {
+ name: "Water Sport",
+ effect: "The user soaks the battlefield with water. This weakens Fire-type moves for five turns."
+ },
+ "calmMind": {
+ name: "Calm Mind",
+ effect: "The user quietly focuses its mind and calms its spirit to raise its Sp. Atk and Sp. Def stats."
+ },
+ "leafBlade": {
+ name: "Leaf Blade",
+ effect: "The user handles a sharp leaf like a sword and attacks by cutting its target. Critical hits land more easily."
+ },
+ "dragonDance": {
+ name: "Dragon Dance",
+ effect: "The user vigorously performs a mystic, powerful dance that raises its Attack and Speed stats."
+ },
+ "rockBlast": {
+ name: "Rock Blast",
+ effect: "The user hurls hard rocks at the target. Two to five rocks are launched in a row."
+ },
+ "shockWave": {
+ name: "Shock Wave",
+ effect: "The user strikes the target with a quick jolt of electricity. This attack never misses."
+ },
+ "waterPulse": {
+ name: "Water Pulse",
+ effect: "The user attacks the target with a pulsing blast of water. This may also confuse the target."
+ },
+ "doomDesire": {
+ name: "Doom Desire",
+ effect: "Two turns after this move is used, a concentrated bundle of light blasts the target."
+ },
+ "psychoBoost": {
+ name: "Psycho Boost",
+ effect: "The user attacks the target at full power. The attack's recoil harshly lowers the user's Sp. Atk stat."
+ },
+ "roost": {
+ name: "Roost",
+ effect: "The user lands and rests its body. This move restores the user's HP by up to half of its max HP."
+ },
+ "gravity": {
+ name: "Gravity",
+ effect: "This move enables Flying-type Pokémon or Pokémon with the Levitate Ability to be hit by Ground-type moves. Moves that involve flying can't be used."
+ },
+ "miracleEye": {
+ name: "Miracle Eye",
+ effect: "Enables a Dark-type target to be hit by Psychic-type attacks. This also enables an evasive target to be hit."
+ },
+ "wakeUpSlap": {
+ name: "Wake-Up Slap",
+ effect: "This attack inflicts big damage on a sleeping target. This also wakes the target up, however."
+ },
+ "hammerArm": {
+ name: "Hammer Arm",
+ effect: "The user swings and hits with its strong, heavy fist. It lowers the user's Speed, however."
+ },
+ "gyroBall": {
+ name: "Gyro Ball",
+ effect: "The user tackles the target with a high-speed spin. The slower the user compared to the target, the greater the move's power."
+ },
+ "healingWish": {
+ name: "Healing Wish",
+ effect: "The user faints. In return, the Pokémon taking its place will have its HP restored and status conditions cured."
+ },
+ "brine": {
+ name: "Brine",
+ effect: "If the target's HP is half or less, this attack will hit with double the power."
+ },
+ "naturalGift": {
+ name: "Natural Gift",
+ effect: "The user draws power to attack by using its held Berry. The Berry determines the move's type and power."
+ },
+ "feint": {
+ name: "Feint",
+ effect: "This attack hits a target using a move such as Protect or Detect. This also lifts the effects of those moves."
+ },
+ "pluck": {
+ name: "Pluck",
+ effect: "The user pecks the target. If the target is holding a Berry, the user eats it and gains its effect."
+ },
+ "tailwind": {
+ name: "Tailwind",
+ effect: "The user whips up a turbulent whirlwind that ups the Speed stats of the user and its allies for four turns."
+ },
+ "acupressure": {
+ name: "Acupressure",
+ effect: "The user applies pressure to stress points, sharply boosting one of its or its allies' stats."
+ },
+ "metalBurst": {
+ name: "Metal Burst",
+ effect: "The user retaliates with much greater force against the opponent that last inflicted damage on it."
+ },
+ "uTurn": {
+ name: "U-turn",
+ effect: "After making its attack, the user rushes back to switch places with a party Pokémon in waiting."
+ },
+ "closeCombat": {
+ name: "Close Combat",
+ effect: "The user fights the target up close without guarding itself. This also lowers the user's Defense and Sp. Def stats."
+ },
+ "payback": {
+ name: "Payback",
+ effect: "The user stores power, then attacks. If the user moves after the target, this attack's power will be doubled."
+ },
+ "assurance": {
+ name: "Assurance",
+ effect: "If the target has already taken some damage in the same turn, this attack's power is doubled."
+ },
+ "embargo": {
+ name: "Embargo",
+ effect: "This move prevents the target from using its held item for five turns. Its Trainer is also prevented from using items on it."
+ },
+ "fling": {
+ name: "Fling",
+ effect: "The user flings its held item at the target to attack. This move's power and effects depend on the item."
+ },
+ "psychoShift": {
+ name: "Psycho Shift",
+ effect: "Using its psychic power of suggestion, the user transfers its status conditions to the target."
+ },
+ "trumpCard": {
+ name: "Trump Card",
+ effect: "The fewer PP this move has, the greater its power."
+ },
+ "healBlock": {
+ name: "Heal Block",
+ effect: "For five turns, the user prevents the opposing team from using any moves, Abilities, or held items that recover HP."
+ },
+ "wringOut": {
+ name: "Wring Out",
+ effect: "The user powerfully wrings the target. The more HP the target has, the greater the move's power."
+ },
+ "powerTrick": {
+ name: "Power Trick",
+ effect: "The user employs its psychic power to switch its Attack stat with its Defense stat."
+ },
+ "gastroAcid": {
+ name: "Gastro Acid",
+ effect: "The user hurls up its stomach acids on the target. The fluid eliminates the effect of the target's Ability."
+ },
+ "luckyChant": {
+ name: "Lucky Chant",
+ effect: "The user chants an incantation toward the sky, preventing opposing Pokémon from landing critical hits for five turns."
+ },
+ "meFirst": {
+ name: "Me First",
+ effect: "The user cuts ahead of the target to copy and use the target's intended move with greater power. This move fails if it isn't used first."
+ },
+ "copycat": {
+ name: "Copycat",
+ effect: "The user mimics the move used immediately before it. The move fails if no other move has been used yet."
+ },
+ "powerSwap": {
+ name: "Power Swap",
+ effect: "The user employs its psychic power to switch changes to its Attack and Sp. Atk stats with the target."
+ },
+ "guardSwap": {
+ name: "Guard Swap",
+ effect: "The user employs its psychic power to switch changes to its Defense and Sp. Def stats with the target."
+ },
+ "punishment": {
+ name: "Punishment",
+ effect: "The more the target has powered up with stat changes, the greater the move's power."
+ },
+ "lastResort": {
+ name: "Last Resort",
+ effect: "This move can be used only after the user has used all the other moves it knows in the battle."
+ },
+ "worrySeed": {
+ name: "Worry Seed",
+ effect: "A seed that causes worry is planted on the target. It prevents sleep by making the target's Ability Insomnia."
+ },
+ "suckerPunch": {
+ name: "Sucker Punch",
+ effect: "This move enables the user to attack first. This move fails if the target is not readying an attack."
+ },
+ "toxicSpikes": {
+ name: "Toxic Spikes",
+ effect: "The user lays a trap of poison spikes at the feet of the opposing team. The spikes will poison opposing Pokémon that switch into battle."
+ },
+ "heartSwap": {
+ name: "Heart Swap",
+ effect: "The user employs its psychic power to switch stat changes with the target."
+ },
+ "aquaRing": {
+ name: "Aqua Ring",
+ effect: "The user envelops itself in a veil made of water. It regains some HP every turn."
+ },
+ "magnetRise": {
+ name: "Magnet Rise",
+ effect: "The user levitates using electrically generated magnetism for five turns."
+ },
+ "flareBlitz": {
+ name: "Flare Blitz",
+ effect: "The user cloaks itself in fire and charges the target. This also damages the user quite a lot. This attack may leave the target with a burn."
+ },
+ "forcePalm": {
+ name: "Force Palm",
+ effect: "The target is attacked with a shock wave. This may also leave the target with paralysis."
+ },
+ "auraSphere": {
+ name: "Aura Sphere",
+ effect: "The user lets loose a blast of aura power from deep within its body at the target. This attack never misses."
+ },
+ "rockPolish": {
+ name: "Rock Polish",
+ effect: "The user polishes its body to reduce drag. This sharply raises the Speed stat."
+ },
+ "poisonJab": {
+ name: "Poison Jab",
+ effect: "The target is stabbed with a tentacle, arm, or the like steeped in poison. This may also poison the target."
+ },
+ "darkPulse": {
+ name: "Dark Pulse",
+ effect: "The user releases a horrible aura imbued with dark thoughts. This may also make the target flinch."
+ },
+ "nightSlash": {
+ name: "Night Slash",
+ effect: "The user slashes the target the instant an opportunity arises. Critical hits land more easily."
+ },
+ "aquaTail": {
+ name: "Aqua Tail",
+ effect: "The user attacks by swinging its tail as if it were a vicious wave in a raging storm."
+ },
+ "seedBomb": {
+ name: "Seed Bomb",
+ effect: "The user slams a barrage of hard-shelled seeds down on the target from above."
+ },
+ "airSlash": {
+ name: "Air Slash",
+ effect: "The user attacks with a blade of air that slices even the sky. This may also make the target flinch."
+ },
+ "xScissor": {
+ name: "X-Scissor",
+ effect: "The user slashes at the target by crossing its scythes or claws as if they were a pair of scissors."
+ },
+ "bugBuzz": {
+ name: "Bug Buzz",
+ effect: "The user generates a damaging sound wave by vibration. This may also lower the target's Sp. Def stat."
+ },
+ "dragonPulse": {
+ name: "Dragon Pulse",
+ effect: "The target is attacked with a shock wave generated by the user's gaping mouth."
+ },
+ "dragonRush": {
+ name: "Dragon Rush",
+ effect: "The user tackles the target while exhibiting overwhelming menace. This may also make the target flinch."
+ },
+ "powerGem": {
+ name: "Power Gem",
+ effect: "The user attacks with a ray of light that sparkles as if it were made of gemstones."
+ },
+ "drainPunch": {
+ name: "Drain Punch",
+ effect: "An energy-draining punch. The user's HP is restored by half the damage taken by the target."
+ },
+ "vacuumWave": {
+ name: "Vacuum Wave",
+ effect: "The user whirls its fists to send a wave of pure vacuum at the target. This move always goes first."
+ },
+ "focusBlast": {
+ name: "Focus Blast",
+ effect: "The user heightens its mental focus and unleashes its power. This may also lower the target's Sp. Def stat."
+ },
+ "energyBall": {
+ name: "Energy Ball",
+ effect: "The user draws power from nature and fires it at the target. This may also lower the target's Sp. Def stat."
+ },
+ "braveBird": {
+ name: "Brave Bird",
+ effect: "The user tucks in its wings and charges from a low altitude. This also damages the user quite a lot."
+ },
+ "earthPower": {
+ name: "Earth Power",
+ effect: "The user makes the ground under the target erupt with power. This may also lower the target's Sp. Def stat."
+ },
+ "switcheroo": {
+ name: "Switcheroo",
+ effect: "The user trades held items with the target faster than the eye can follow."
+ },
+ "gigaImpact": {
+ name: "Giga Impact",
+ effect: "The user charges at the target using every bit of its power. The user can't move on the next turn."
+ },
+ "nastyPlot": {
+ name: "Nasty Plot",
+ effect: "The user stimulates its brain by thinking bad thoughts. This sharply raises the user's Sp. Atk stat."
+ },
+ "bulletPunch": {
+ name: "Bullet Punch",
+ effect: "The user strikes the target with tough punches as fast as bullets. This move always goes first."
+ },
+ "avalanche": {
+ name: "Avalanche",
+ effect: "The power of this attack move is doubled if the user has been hurt by the target in the same turn."
+ },
+ "iceShard": {
+ name: "Ice Shard",
+ effect: "The user flash-freezes chunks of ice and hurls them at the target. This move always goes first."
+ },
+ "shadowClaw": {
+ name: "Shadow Claw",
+ effect: "The user slashes with a sharp claw made from shadows. Critical hits land more easily."
+ },
+ "thunderFang": {
+ name: "Thunder Fang",
+ effect: "The user bites with electrified fangs. This may also make the target flinch or leave it with paralysis."
+ },
+ "iceFang": {
+ name: "Ice Fang",
+ effect: "The user bites with cold-infused fangs. This may also make the target flinch or leave it frozen."
+ },
+ "fireFang": {
+ name: "Fire Fang",
+ effect: "The user bites with flame-cloaked fangs. This may also make the target flinch or leave it with a burn."
+ },
+ "shadowSneak": {
+ name: "Shadow Sneak",
+ effect: "The user extends its shadow and attacks the target from behind. This move always goes first."
+ },
+ "mudBomb": {
+ name: "Mud Bomb",
+ effect: "The user launches a hard-packed mud ball to attack. This may also lower the target's accuracy."
+ },
+ "psychoCut": {
+ name: "Psycho Cut",
+ effect: "The user tears at the target with blades formed by psychic power. Critical hits land more easily."
+ },
+ "zenHeadbutt": {
+ name: "Zen Headbutt",
+ effect: "The user focuses its willpower to its head and attacks the target. This may also make the target flinch."
+ },
+ "mirrorShot": {
+ name: "Mirror Shot",
+ effect: "The user lets loose a flash of energy at the target from its polished body. This may also lower the target's accuracy."
+ },
+ "flashCannon": {
+ name: "Flash Cannon",
+ effect: "The user gathers all its light energy and releases it all at once. This may also lower the target's Sp. Def stat."
+ },
+ "rockClimb": {
+ name: "Rock Climb",
+ effect: "The user attacks the target by smashing into it with incredible force. This may also confuse the target."
+ },
+ "defog": {
+ name: "Defog",
+ effect: "A strong wind blows away the target's barriers such as Reflect or Light Screen. This also lowers the target's evasiveness."
+ },
+ "trickRoom": {
+ name: "Trick Room",
+ effect: "The user creates a bizarre area in which slower Pokémon get to move first for five turns."
+ },
+ "dracoMeteor": {
+ name: "Draco Meteor",
+ effect: "Comets are summoned down from the sky onto the target. The attack's recoil harshly lowers the user's Sp. Atk stat."
+ },
+ "discharge": {
+ name: "Discharge",
+ effect: "The user strikes everything around it by letting loose a flare of electricity. This may also cause paralysis."
+ },
+ "lavaPlume": {
+ name: "Lava Plume",
+ effect: "The user torches everything around it in an inferno of scarlet flames. This may also leave those it hits with a burn."
+ },
+ "leafStorm": {
+ name: "Leaf Storm",
+ effect: "The user whips up a storm of leaves around the target. The attack's recoil harshly lowers the user's Sp. Atk stat."
+ },
+ "powerWhip": {
+ name: "Power Whip",
+ effect: "The user violently whirls its vines, tentacles, or the like to harshly lash the target."
+ },
+ "rockWrecker": {
+ name: "Rock Wrecker",
+ effect: "The user launches a huge boulder at the target to attack. The user can't move on the next turn."
+ },
+ "crossPoison": {
+ name: "Cross Poison",
+ effect: "A slashing attack with a poisonous blade that may also poison the target. Critical hits land more easily."
+ },
+ "gunkShot": {
+ name: "Gunk Shot",
+ effect: "The user shoots filthy garbage at the target to attack. This may also poison the target."
+ },
+ "ironHead": {
+ name: "Iron Head",
+ effect: "The user slams the target with its steel-hard head. This may also make the target flinch."
+ },
+ "magnetBomb": {
+ name: "Magnet Bomb",
+ effect: "The user launches steel bombs that stick to the target. This attack never misses."
+ },
+ "stoneEdge": {
+ name: "Stone Edge",
+ effect: "The user stabs the target from below with sharpened stones. Critical hits land more easily."
+ },
+ "captivate": {
+ name: "Captivate",
+ effect: "If any opposing Pokémon is the opposite gender of the user, it is charmed, which harshly lowers its Sp. Atk stat."
+ },
+ "stealthRock": {
+ name: "Stealth Rock",
+ effect: "The user lays a trap of levitating stones around the opposing team. The trap hurts opposing Pokémon that switch into battle."
+ },
+ "grassKnot": {
+ name: "Grass Knot",
+ effect: "The user snares the target with grass and trips it. The heavier the target, the greater the move's power."
+ },
+ "chatter": {
+ name: "Chatter",
+ effect: "The user attacks the target with sound waves of deafening chatter. This confuses the target."
+ },
+ "judgment": {
+ name: "Judgment",
+ effect: "The user releases countless shots of light at the target. This move's type varies depending on the kind of Plate the user is holding."
+ },
+ "bugBite": {
+ name: "Bug Bite",
+ effect: "The user bites the target. If the target is holding a Berry, the user eats it and gains its effect."
+ },
+ "chargeBeam": {
+ name: "Charge Beam",
+ effect: "The user attacks the target with an electric charge. The user may use any remaining electricity to raise its Sp. Atk stat."
+ },
+ "woodHammer": {
+ name: "Wood Hammer",
+ effect: "The user slams its rugged body into the target to attack. This also damages the user quite a lot."
+ },
+ "aquaJet": {
+ name: "Aqua Jet",
+ effect: "The user lunges at the target at a speed that makes it almost invisible. This move always goes first."
+ },
+ "attackOrder": {
+ name: "Attack Order",
+ effect: "The user calls out its underlings to pummel the target. Critical hits land more easily."
+ },
+ "defendOrder": {
+ name: "Defend Order",
+ effect: "The user calls out its underlings to shield its body, raising its Defense and Sp. Def stats."
+ },
+ "healOrder": {
+ name: "Heal Order",
+ effect: "The user calls out its underlings to heal it. The user regains up to half of its max HP."
+ },
+ "headSmash": {
+ name: "Head Smash",
+ effect: "The user attacks the target with a hazardous, full-power headbutt. This also damages the user terribly."
+ },
+ "doubleHit": {
+ name: "Double Hit",
+ effect: "The user slams the target with a long tail, vines, or a tentacle. The target is hit twice in a row."
+ },
+ "roarOfTime": {
+ name: "Roar of Time",
+ effect: "The user blasts the target with power that distorts even time. The user can't move on the next turn."
+ },
+ "spacialRend": {
+ name: "Spacial Rend",
+ effect: "The user tears the target along with the space around it. Critical hits land more easily."
+ },
+ "lunarDance": {
+ name: "Lunar Dance",
+ effect: "The user faints. In return, the Pokémon taking its place will have its status and HP fully restored."
+ },
+ "crushGrip": {
+ name: "Crush Grip",
+ effect: "The target is crushed with great force. The more HP the target has left, the greater this move's power."
+ },
+ "magmaStorm": {
+ name: "Magma Storm",
+ effect: "The target becomes trapped within a maelstrom of fire that rages for four to five turns."
+ },
+ "darkVoid": {
+ name: "Dark Void",
+ effect: "Opposing Pokémon are dragged into a world of total darkness that makes them sleep."
+ },
+ "seedFlare": {
+ name: "Seed Flare",
+ effect: "The user emits a shock wave from its body to attack its target. This may also harshly lower the target's Sp. Def stat."
+ },
+ "ominousWind": {
+ name: "Ominous Wind",
+ effect: "The user blasts the target with a gust of repulsive wind. This may also raise all the user's stats at once."
+ },
+ "shadowForce": {
+ name: "Shadow Force",
+ effect: "The user disappears, then strikes the target on the next turn. This move hits even if the target protects itself."
+ },
+ "honeClaws": {
+ name: "Hone Claws",
+ effect: "The user sharpens its claws to boost its Attack stat and accuracy."
+ },
+ "wideGuard": {
+ name: "Wide Guard",
+ effect: "The user and its allies are protected from wide-ranging attacks for one turn."
+ },
+ "guardSplit": {
+ name: "Guard Split",
+ effect: "The user employs its psychic power to average its Defense and Sp. Def stats with those of the target."
+ },
+ "powerSplit": {
+ name: "Power Split",
+ effect: "The user employs its psychic power to average its Attack and Sp. Atk stats with those of the target."
+ },
+ "wonderRoom": {
+ name: "Wonder Room",
+ effect: "The user creates a bizarre area in which Pokémon's Defense and Sp. Def stats are swapped for five turns."
+ },
+ "psyshock": {
+ name: "Psyshock",
+ effect: "The user materializes an odd psychic wave to attack the target. This attack does physical damage."
+ },
+ "venoshock": {
+ name: "Venoshock",
+ effect: "The user drenches the target in a special poisonous liquid. This move's power is doubled if the target is poisoned."
+ },
+ "autotomize": {
+ name: "Autotomize",
+ effect: "The user sheds part of its body to make itself lighter and sharply raise its Speed stat."
+ },
+ "ragePowder": {
+ name: "Rage Powder",
+ effect: "The user scatters a cloud of irritating powder to draw attention to itself. Opposing Pokémon aim only at the user."
+ },
+ "telekinesis": {
+ name: "Telekinesis",
+ effect: "The user makes the target float with its psychic power. The target is easier to hit for three turns."
+ },
+ "magicRoom": {
+ name: "Magic Room",
+ effect: "The user creates a bizarre area in which Pokémon's held items lose their effects for five turns."
+ },
+ "smackDown": {
+ name: "Smack Down",
+ effect: "The user throws a stone or similar projectile to attack the target. A flying Pokémon will fall to the ground when it's hit."
+ },
+ "stormThrow": {
+ name: "Storm Throw",
+ effect: "The user strikes the target with a fierce blow. This attack always results in a critical hit."
+ },
+ "flameBurst": {
+ name: "Flame Burst",
+ effect: "The user attacks the target with a bursting flame. The bursting flame damages Pokémon next to the target as well."
+ },
+ "sludgeWave": {
+ name: "Sludge Wave",
+ effect: "The user strikes everything around it by swamping the area with a giant sludge wave. This may also poison those hit."
+ },
+ "quiverDance": {
+ name: "Quiver Dance",
+ effect: "The user lightly performs a beautiful, mystic dance. This boosts the user's Sp. Atk, Sp. Def, and Speed stats."
+ },
+ "heavySlam": {
+ name: "Heavy Slam",
+ effect: "The user slams into the target with its heavy body. The more the user outweighs the target, the greater the move's power."
+ },
+ "synchronoise": {
+ name: "Synchronoise",
+ effect: "Using an odd shock wave, the user inflicts damage on any Pokémon of the same type in the area around it."
+ },
+ "electroBall": {
+ name: "Electro Ball",
+ effect: "The user hurls an electric orb at the target. The faster the user is than the target, the greater the move's power."
+ },
+ "soak": {
+ name: "Soak",
+ effect: "The user shoots a torrent of water at the target and changes the target's type to Water."
+ },
+ "flameCharge": {
+ name: "Flame Charge",
+ effect: "Cloaking itself in flame, the user attacks the target. Then, building up more power, the user raises its Speed stat."
+ },
+ "coil": {
+ name: "Coil",
+ effect: "The user coils up and concentrates. This raises its Attack and Defense stats as well as its accuracy."
+ },
+ "lowSweep": {
+ name: "Low Sweep",
+ effect: "The user makes a swift attack on the target's legs, which lowers the target's Speed stat."
+ },
+ "acidSpray": {
+ name: "Acid Spray",
+ effect: "The user spits fluid that works to melt the target. This harshly lowers the target's Sp. Def stat."
+ },
+ "foulPlay": {
+ name: "Foul Play",
+ effect: "The user turns the target's power against it. The higher the target's Attack stat, the greater the damage it deals."
+ },
+ "simpleBeam": {
+ name: "Simple Beam",
+ effect: "The user's mysterious psychic wave changes the target's Ability to Simple."
+ },
+ "entrainment": {
+ name: "Entrainment",
+ effect: "The user dances with an odd rhythm that compels the target to mimic it, making the target's Ability the same as the user's."
+ },
+ "afterYou": {
+ name: "After You",
+ effect: "The user helps the target and makes it use its move right after the user."
+ },
+ "round": {
+ name: "Round",
+ effect: "The user attacks the target with a song. Others can join in the Round to increase the power of the attack."
+ },
+ "echoedVoice": {
+ name: "Echoed Voice",
+ effect: "The user attacks the target with an echoing voice. If this move is used every turn, its power is increased."
+ },
+ "chipAway": {
+ name: "Chip Away",
+ effect: "Looking for an opening, the user strikes consistently. The target's stat changes don't affect this attack's damage."
+ },
+ "clearSmog": {
+ name: "Clear Smog",
+ effect: "The user attacks the target by throwing a clump of special mud. All stat changes are returned to normal."
+ },
+ "storedPower": {
+ name: "Stored Power",
+ effect: "The user attacks the target with stored power. The more the user's stats are raised, the greater the move's power."
+ },
+ "quickGuard": {
+ name: "Quick Guard",
+ effect: "The user protects itself and its allies from priority moves."
+ },
+ "allySwitch": {
+ name: "Ally Switch",
+ effect: "The user teleports using a strange power and switches places with one of its allies."
+ },
+ "scald": {
+ name: "Scald",
+ effect: "The user shoots boiling hot water at its target. This may also leave the target with a burn."
+ },
+ "shellSmash": {
+ name: "Shell Smash",
+ effect: "The user breaks its shell, which lowers Defense and Sp. Def stats but sharply raises its Attack, Sp. Atk, and Speed stats."
+ },
+ "healPulse": {
+ name: "Heal Pulse",
+ effect: "The user emits a healing pulse that restores the target's HP by up to half of its max HP."
+ },
+ "hex": {
+ name: "Hex",
+ effect: "This relentless attack does massive damage to a target affected by status conditions."
+ },
+ "skyDrop": {
+ name: "Sky Drop",
+ effect: "The user takes the target into the sky, then drops it during the next turn. The target cannot attack while in the sky."
+ },
+ "shiftGear": {
+ name: "Shift Gear",
+ effect: "The user rotates its gears, raising its Attack stat and sharply raising its Speed stat."
+ },
+ "circleThrow": {
+ name: "Circle Throw",
+ effect: "The target is thrown, and a different Pokémon is dragged out. In the wild, this ends a battle against a single Pokémon."
+ },
+ "incinerate": {
+ name: "Incinerate",
+ effect: "The user attacks opposing Pokémon with fire. If a Pokémon is holding a certain item, such as a Berry, the item becomes burned up and unusable."
+ },
+ "quash": {
+ name: "Quash",
+ effect: "The user suppresses the target and makes its move go last."
+ },
+ "acrobatics": {
+ name: "Acrobatics",
+ effect: "The user nimbly strikes the target. If the user is not holding an item, this attack inflicts massive damage."
+ },
+ "reflectType": {
+ name: "Reflect Type",
+ effect: "The user reflects the target's type, making the user the same type as the target."
+ },
+ "retaliate": {
+ name: "Retaliate",
+ effect: "The user gets revenge for a fainted ally. If an ally fainted in the previous turn, this move's power is increased."
+ },
+ "finalGambit": {
+ name: "Final Gambit",
+ effect: "The user risks everything to attack its target. The user faints but does damage equal to its HP."
+ },
+ "bestow": {
+ name: "Bestow",
+ effect: "The user passes its held item to the target when the target isn't holding an item."
+ },
+ "inferno": {
+ name: "Inferno",
+ effect: "The user attacks by engulfing the target in an intense fire. This leaves the target with a burn."
+ },
+ "waterPledge": {
+ name: "Water Pledge",
+ effect: "A column of water hits the target. When used with its fire equivalent, its power increases and a rainbow appears."
+ },
+ "firePledge": {
+ name: "Fire Pledge",
+ effect: "A column of fire hits the target. When used with its grass equivalent, its power increases and a vast sea of fire appears."
+ },
+ "grassPledge": {
+ name: "Grass Pledge",
+ effect: "A column of grass hits the target. When used with its water equivalent, its power increases and a vast swamp appears."
+ },
+ "voltSwitch": {
+ name: "Volt Switch",
+ effect: "After making its attack, the user rushes back to switch places with a party Pokémon in waiting."
+ },
+ "struggleBug": {
+ name: "Struggle Bug",
+ effect: "While resisting, the user attacks opposing Pokémon. This lowers the Sp. Atk stats of those hit."
+ },
+ "bulldoze": {
+ name: "Bulldoze",
+ effect: "The user strikes everything around it by stomping down on the ground. This lowers the Speed stats of those hit."
+ },
+ "frostBreath": {
+ name: "Frost Breath",
+ effect: "The user blows its cold breath on the target. This attack always results in a critical hit."
+ },
+ "dragonTail": {
+ name: "Dragon Tail",
+ effect: "The target is knocked away, and a different Pokémon is dragged out. In the wild, this ends a battle against a single Pokémon."
+ },
+ "workUp": {
+ name: "Work Up",
+ effect: "The user is roused, and its Attack and Sp. Atk stats increase."
+ },
+ "electroweb": {
+ name: "Electroweb",
+ effect: "The user attacks and captures opposing Pokémon using an electric net. This lowers their Speed stats."
+ },
+ "wildCharge": {
+ name: "Wild Charge",
+ effect: "The user shrouds itself in electricity and smashes into its target. This also damages the user a little."
+ },
+ "drillRun": {
+ name: "Drill Run",
+ effect: "The user crashes into its target while rotating its body like a drill. Critical hits land more easily."
+ },
+ "dualChop": {
+ name: "Dual Chop",
+ effect: "The user attacks its target by hitting it with brutal strikes. The target is hit twice in a row."
+ },
+ "heartStamp": {
+ name: "Heart Stamp",
+ effect: "The user unleashes a vicious blow after its cute act makes the target less wary. This may also make the target flinch."
+ },
+ "hornLeech": {
+ name: "Horn Leech",
+ effect: "The user drains the target's energy with its horns. The user's HP is restored by half the damage taken by the target."
+ },
+ "sacredSword": {
+ name: "Sacred Sword",
+ effect: "The user attacks by slicing with a long horn. The target's stat changes don't affect this attack's damage."
+ },
+ "razorShell": {
+ name: "Razor Shell",
+ effect: "The user cuts its target with sharp shells. This may also lower the target's Defense stat."
+ },
+ "heatCrash": {
+ name: "Heat Crash",
+ effect: "The user slams its target with its flame-covered body. The more the user outweighs the target, the greater the move's power."
+ },
+ "leafTornado": {
+ name: "Leaf Tornado",
+ effect: "The user attacks its target by encircling it in sharp leaves. This attack may also lower the target's accuracy."
+ },
+ "steamroller": {
+ name: "Steamroller",
+ effect: "The user crushes its target by rolling over the target with its rolled-up body. This may also make the target flinch."
+ },
+ "cottonGuard": {
+ name: "Cotton Guard",
+ effect: "The user protects itself by wrapping its body in soft cotton, which drastically raises the user's Defense stat."
+ },
+ "nightDaze": {
+ name: "Night Daze",
+ effect: "The user lets loose a pitch-black shock wave at its target. This may also lower the target's accuracy."
+ },
+ "psystrike": {
+ name: "Psystrike",
+ effect: "The user materializes an odd psychic wave to attack the target. This attack does physical damage."
+ },
+ "tailSlap": {
+ name: "Tail Slap",
+ effect: "The user attacks by striking the target with its hard tail. It hits the target two to five times in a row."
+ },
+ "hurricane": {
+ name: "Hurricane",
+ effect: "The user attacks by wrapping its opponent in a fierce wind that flies up into the sky. This may also confuse the target."
+ },
+ "headCharge": {
+ name: "Head Charge",
+ effect: "The user charges its head into its target, using its powerful guard hair. This also damages the user a little."
+ },
+ "gearGrind": {
+ name: "Gear Grind",
+ effect: "The user attacks by throwing steel gears at its target twice."
+ },
+ "searingShot": {
+ name: "Searing Shot",
+ effect: "The user torches everything around it in an inferno of scarlet flames. This may also leave those it hits with a burn."
+ },
+ "technoBlast": {
+ name: "Techno Blast",
+ effect: "The user fires a beam of light at its target. The move's type changes depending on the Drive the user holds."
+ },
+ "relicSong": {
+ name: "Relic Song",
+ effect: "The user sings an ancient song and attacks by appealing to the hearts of the listening opposing Pokémon. This may also induce sleep."
+ },
+ "secretSword": {
+ name: "Secret Sword",
+ effect: "The user cuts with its long horn. The odd power contained in the horn does physical damage to the target."
+ },
+ "glaciate": {
+ name: "Glaciate",
+ effect: "The user attacks by blowing freezing cold air at opposing Pokémon. This lowers their Speed stats."
+ },
+ "boltStrike": {
+ name: "Bolt Strike",
+ effect: "The user surrounds itself with a great amount of electricity and charges its target. This may also leave the target with paralysis."
+ },
+ "blueFlare": {
+ name: "Blue Flare",
+ effect: "The user attacks by engulfing the target in an intense, yet beautiful, blue flame. This may also leave the target with a burn."
+ },
+ "fieryDance": {
+ name: "Fiery Dance",
+ effect: "Cloaked in flames, the user attacks the target by dancing and flapping its wings. This may also raise the user's Sp. Atk stat."
+ },
+ "freezeShock": {
+ name: "Freeze Shock",
+ effect: "On the second turn, the user hits the target with electrically charged ice. This may also leave the target with paralysis."
+ },
+ "iceBurn": {
+ name: "Ice Burn",
+ effect: "On the second turn, an ultracold, freezing wind surrounds the target. This may leave the target with a burn."
+ },
+ "snarl": {
+ name: "Snarl",
+ effect: "The user yells as if it's ranting about something, which lowers the Sp. Atk stats of opposing Pokémon."
+ },
+ "icicleCrash": {
+ name: "Icicle Crash",
+ effect: "The user attacks by harshly dropping large icicles onto the target. This may also make the target flinch."
+ },
+ "vCreate": {
+ name: "V-create",
+ effect: "With a hot flame on its forehead, the user hurls itself at its target. This lowers the user's Defense, Sp. Def, and Speed stats."
+ },
+ "fusionFlare": {
+ name: "Fusion Flare",
+ effect: "The user brings down a giant flame. This move's power is increased when influenced by an enormous lightning bolt."
+ },
+ "fusionBolt": {
+ name: "Fusion Bolt",
+ effect: "The user throws down a giant lightning bolt. This move's power is increased when influenced by an enormous flame."
+ },
+ "flyingPress": {
+ name: "Flying Press",
+ effect: "The user dives down onto the target from the sky. This move is Fighting and Flying type simultaneously."
+ },
+ "matBlock": {
+ name: "Mat Block",
+ effect: "Using a pulled-up mat as a shield, the user protects itself and its allies from damaging moves. This does not stop status moves."
+ },
+ "belch": {
+ name: "Belch",
+ effect: "The user lets out a damaging belch at the target. The user must eat a held Berry to use this move."
+ },
+ "rototiller": {
+ name: "Rototiller",
+ effect: "Tilling the soil, the user makes it easier for plants to grow. This raises the Attack and Sp. Atk stats of Grass-type Pokémon."
+ },
+ "stickyWeb": {
+ name: "Sticky Web",
+ effect: "The user weaves a sticky net around the opposing team, which lowers their Speed stats upon switching into battle."
+ },
+ "fellStinger": {
+ name: "Fell Stinger",
+ effect: "When the user knocks out a target with this move, the user's Attack stat rises drastically."
+ },
+ "phantomForce": {
+ name: "Phantom Force",
+ effect: "The user vanishes somewhere, then strikes the target on the next turn. This move hits even if the target protects itself."
+ },
+ "trickOrTreat": {
+ name: "Trick-or-Treat",
+ effect: "The user takes the target trick-or-treating. This adds Ghost type to the target's type."
+ },
+ "nobleRoar": {
+ name: "Noble Roar",
+ effect: "Letting out a noble roar, the user intimidates the target and lowers its Attack and Sp. Atk stats."
+ },
+ "ionDeluge": {
+ name: "Ion Deluge",
+ effect: "The user disperses electrically charged particles, which changes Normal-type moves to Electric-type moves."
+ },
+ "parabolicCharge": {
+ name: "Parabolic Charge",
+ effect: "The user attacks everything around it. The user's HP is restored by half the damage taken by those hit."
+ },
+ "forestsCurse": {
+ name: "Forest's Curse",
+ effect: "The user puts a forest curse on the target. The target is now Grass type as well."
+ },
+ "petalBlizzard": {
+ name: "Petal Blizzard",
+ effect: "The user stirs up a violent petal blizzard and attacks everything around it."
+ },
+ "freezeDry": {
+ name: "Freeze-Dry",
+ effect: "The user rapidly cools the target. This may also leave the target frozen. This move is super effective on Water types."
+ },
+ "disarmingVoice": {
+ name: "Disarming Voice",
+ effect: "Letting out a charming cry, the user does emotional damage to opposing Pokémon. This attack never misses."
+ },
+ "partingShot": {
+ name: "Parting Shot",
+ effect: "With a parting threat, the user lowers the target's Attack and Sp. Atk stats. Then it switches with a party Pokémon."
+ },
+ "topsyTurvy": {
+ name: "Topsy-Turvy",
+ effect: "All stat changes affecting the target turn topsy-turvy and become the opposite of what they were."
+ },
+ "drainingKiss": {
+ name: "Draining Kiss",
+ effect: "The user steals the target's HP with a kiss. The user's HP is restored by over half of the damage taken by the target."
+ },
+ "craftyShield": {
+ name: "Crafty Shield",
+ effect: "The user protects itself and its allies from status moves with a mysterious power. This does not stop moves that do damage."
+ },
+ "flowerShield": {
+ name: "Flower Shield",
+ effect: "The user raises the Defense stats of all Grass-type Pokémon in battle with a mysterious power."
+ },
+ "grassyTerrain": {
+ name: "Grassy Terrain",
+ effect: "The user turns the ground to grass for five turns. This restores the HP of Pokémon on the ground a little every turn and powers up Grass-type moves."
+ },
+ "mistyTerrain": {
+ name: "Misty Terrain",
+ effect: "This protects Pokémon on the ground from status conditions and halves damage from Dragon-type moves for five turns."
+ },
+ "electrify": {
+ name: "Electrify",
+ effect: "If the target is electrified before it uses a move during that turn, the target's move becomes Electric type."
+ },
+ "playRough": {
+ name: "Play Rough",
+ effect: "The user plays rough with the target and attacks it. This may also lower the target's Attack stat."
+ },
+ "fairyWind": {
+ name: "Fairy Wind",
+ effect: "The user stirs up a fairy wind and strikes the target with it."
+ },
+ "moonblast": {
+ name: "Moonblast",
+ effect: "Borrowing the power of the moon, the user attacks the target. This may also lower the target's Sp. Atk stat."
+ },
+ "boomburst": {
+ name: "Boomburst",
+ effect: "The user attacks everything around it with the destructive power of a terrible, explosive sound."
+ },
+ "fairyLock": {
+ name: "Fairy Lock",
+ effect: "By locking down the battlefield, the user keeps all Pokémon from fleeing during the next turn."
+ },
+ "kingsShield": {
+ name: "King's Shield",
+ effect: "The user takes a defensive stance while it protects itself from damage. It also lowers the Attack stat of any attacker that makes direct contact."
+ },
+ "playNice": {
+ name: "Play Nice",
+ effect: "The user and the target become friends, and the target loses its will to fight. This lowers the target's Attack stat."
+ },
+ "confide": {
+ name: "Confide",
+ effect: "The user tells the target a secret, and the target loses its ability to concentrate. This lowers the target's Sp. Atk stat."
+ },
+ "diamondStorm": {
+ name: "Diamond Storm",
+ effect: "The user whips up a storm of diamonds to damage opposing Pokémon. This may also sharply raise the user's Defense stat."
+ },
+ "steamEruption": {
+ name: "Steam Eruption",
+ effect: "The user immerses the target in superheated steam. This may also leave the target with a burn."
+ },
+ "hyperspaceHole": {
+ name: "Hyperspace Hole",
+ effect: "Using a hyperspace hole, the user appears right next to the target and strikes. This also hits a target using a move such as Protect or Detect."
+ },
+ "waterShuriken": {
+ name: "Water Shuriken",
+ effect: "The user hits the target with throwing stars two to five times in a row. This move always goes first."
+ },
+ "mysticalFire": {
+ name: "Mystical Fire",
+ effect: "The user attacks by breathing a special, hot fire. This also lowers the target's Sp. Atk stat."
+ },
+ "spikyShield": {
+ name: "Spiky Shield",
+ effect: "In addition to protecting the user from attacks, this move also damages any attacker that makes direct contact."
+ },
+ "aromaticMist": {
+ name: "Aromatic Mist",
+ effect: "The user raises the Sp. Def stat of an ally Pokémon by using a mysterious aroma."
+ },
+ "eerieImpulse": {
+ name: "Eerie Impulse",
+ effect: "The user's body generates an eerie impulse. Exposing the target to it harshly lowers the target's Sp. Atk stat."
+ },
+ "venomDrench": {
+ name: "Venom Drench",
+ effect: "Opposing Pokémon are drenched in an odd poisonous liquid. This lowers the Attack, Sp. Atk, and Speed stats of a poisoned target."
+ },
+ "powder": {
+ name: "Powder",
+ effect: "The user covers the target in a combustible powder. If the target uses a Fire-type move, the powder explodes and damages the target."
+ },
+ "geomancy": {
+ name: "Geomancy",
+ effect: "The user absorbs energy and sharply raises its Sp. Atk, Sp. Def, and Speed stats on the next turn."
+ },
+ "magneticFlux": {
+ name: "Magnetic Flux",
+ effect: "The user manipulates magnetic fields, which raises the Defense and Sp. Def stats of ally Pokémon with the Plus or Minus Ability."
+ },
+ "happyHour": {
+ name: "Happy Hour",
+ effect: "Using Happy Hour doubles the amount of prize money received after battle."
+ },
+ "electricTerrain": {
+ name: "Electric Terrain",
+ effect: "The user electrifies the ground for five turns, powering up Electric-type moves. Pokémon on the ground no longer fall asleep."
+ },
+ "dazzlingGleam": {
+ name: "Dazzling Gleam",
+ effect: "The user damages opposing Pokémon by emitting a powerful flash."
+ },
+ "celebrate": {
+ name: "Celebrate",
+ effect: "The Pokémon congratulates you on your special day!"
+ },
+ "holdHands": {
+ name: "Hold Hands",
+ effect: "The user and an ally hold hands. This makes them very happy."
+ },
+ "babyDollEyes": {
+ name: "Baby-Doll Eyes",
+ effect: "The user stares at the target with its baby-doll eyes, which lowers the target's Attack stat. This move always goes first."
+ },
+ "nuzzle": {
+ name: "Nuzzle",
+ effect: "The user attacks by nuzzling its electrified cheeks against the target. This also leaves the target with paralysis."
+ },
+ "holdBack": {
+ name: "Hold Back",
+ effect: "The user holds back when it attacks, and the target is left with at least 1 HP."
+ },
+ "infestation": {
+ name: "Infestation",
+ effect: "The target is infested and attacked for four to five turns. The target can't flee during this time."
+ },
+ "powerUpPunch": {
+ name: "Power-Up Punch",
+ effect: "Striking opponents over and over makes the user's fists harder. Hitting a target raises the Attack stat."
+ },
+ "oblivionWing": {
+ name: "Oblivion Wing",
+ effect: "The user absorbs its target's HP. The user's HP is restored by over half of the damage taken by the target."
+ },
+ "thousandArrows": {
+ name: "Thousand Arrows",
+ effect: "This move also hits opposing Pokémon that are in the air. Those Pokémon are knocked down to the ground."
+ },
+ "thousandWaves": {
+ name: "Thousand Waves",
+ effect: "The user attacks with a wave that crawls along the ground. Those it hits can't flee from battle."
+ },
+ "landsWrath": {
+ name: "Land's Wrath",
+ effect: "The user gathers the energy of the land and focuses that power on opposing Pokémon to damage them."
+ },
+ "lightOfRuin": {
+ name: "Light of Ruin",
+ effect: "Drawing power from the Eternal Flower, the user fires a powerful beam of light. This also damages the user quite a lot."
+ },
+ "originPulse": {
+ name: "Origin Pulse",
+ effect: "The user attacks opposing Pokémon with countless beams of light that glow a deep and brilliant blue."
+ },
+ "precipiceBlades": {
+ name: "Precipice Blades",
+ effect: "The user attacks opposing Pokémon by manifesting the power of the land in fearsome blades of stone."
+ },
+ "dragonAscent": {
+ name: "Dragon Ascent",
+ effect: "After soaring upward, the user attacks its target by dropping out of the sky at high speeds. But it lowers its own Defense and Sp. Def stats in the process."
+ },
+ "hyperspaceFury": {
+ name: "Hyperspace Fury",
+ effect: "Using its many arms, the user unleashes a barrage of attacks that ignore the effects of moves like Protect and Detect. But the user's Defense stat falls."
+ },
+ "breakneckBlitzPhysical": {
+ name: "Breakneck Blitz",
+ effect: "The user builds up its momentum using its Z-Power and crashes into the target at full speed. The power varies, depending on the original move."
+ },
+ "breakneckBlitzSpecial": {
+ name: "Breakneck Blitz",
+ effect: "Dummy Data"
+ },
+ "allOutPummelingPhysical": {
+ name: "All-Out Pummeling",
+ effect: "The user rams an energy orb created by its Z-Power into the target with full force. The power varies, depending on the original move."
+ },
+ "allOutPummelingSpecial": {
+ name: "All-Out Pummeling",
+ effect: "Dummy Data"
+ },
+ "supersonicSkystrikePhysical": {
+ name: "Supersonic Skystrike",
+ effect: "The user soars up with its Z-Power and plummets toward the target at full speed. The power varies, depending on the original move."
+ },
+ "supersonicSkystrikeSpecial": {
+ name: "Supersonic Skystrike",
+ effect: "Dummy Data"
+ },
+ "acidDownpourPhysical": {
+ name: "Acid Downpour",
+ effect: "The user creates a poisonous swamp using its Z-Power and sinks the target into it at full force. The power varies, depending on the original move."
+ },
+ "acidDownpourSpecial": {
+ name: "Acid Downpour",
+ effect: "Dummy Data"
+ },
+ "tectonicRagePhysical": {
+ name: "Tectonic Rage",
+ effect: "The user burrows deep into the ground and slams into the target with the full force of its Z-Power. The power varies, depending on the original move."
+ },
+ "tectonicRageSpecial": {
+ name: "Tectonic Rage",
+ effect: "Dummy Data"
+ },
+ "continentalCrushPhysical": {
+ name: "Continental Crush",
+ effect: "The user summons a huge rock mountain using its Z-Power and drops it onto the target with full force. The power varies, depending on the original move."
+ },
+ "continentalCrushSpecial": {
+ name: "Continental Crush",
+ effect: "Dummy Data"
+ },
+ "savageSpinOutPhysical": {
+ name: "Savage Spin-Out",
+ effect: "The user binds the target with full force with threads of silk that the user spits using its Z-Power. The power varies, depending on the original move."
+ },
+ "savageSpinOutSpecial": {
+ name: "Savage Spin-Out",
+ effect: "Dummy Data"
+ },
+ "neverEndingNightmarePhysical": {
+ name: "Never-Ending Nightmare",
+ effect: "Deep-seated grudges summoned by the user's Z-Power trap the target. The power varies, depending on the original move."
+ },
+ "neverEndingNightmareSpecial": {
+ name: "Never-Ending Nightmare",
+ effect: "Dummy Data"
+ },
+ "corkscrewCrashPhysical": {
+ name: "Corkscrew Crash",
+ effect: "The user spins very fast and rams into the target with the full force of its Z-Power. The power varies, depending on the original move."
+ },
+ "corkscrewCrashSpecial": {
+ name: "Corkscrew Crash",
+ effect: "Dummy Data"
+ },
+ "infernoOverdrivePhysical": {
+ name: "Inferno Overdrive",
+ effect: "The user breathes a stream of intense fire toward the target with the full force of its Z-Power. The power varies depending on the original move."
+ },
+ "infernoOverdriveSpecial": {
+ name: "Inferno Overdrive",
+ effect: "Dummy Data"
+ },
+ "hydroVortexPhysical": {
+ name: "Hydro Vortex",
+ effect: "The user creates a huge whirling current using its Z-Power to swallow the target with full force. The power varies, depending on the original move."
+ },
+ "hydroVortexSpecial": {
+ name: "Hydro Vortex",
+ effect: "Dummy Data"
+ },
+ "bloomDoomPhysical": {
+ name: "Bloom Doom",
+ effect: "The user collects energy from plants using its Z-Power and attacks the target with full force. The power varies, depending on the original move."
+ },
+ "bloomDoomSpecial": {
+ name: "Bloom Doom",
+ effect: "Dummy Data"
+ },
+ "gigavoltHavocPhysical": {
+ name: "Gigavolt Havoc",
+ effect: "The user hits the target with a powerful electric current collected by its Z-Power. The power varies, depending on the original move."
+ },
+ "gigavoltHavocSpecial": {
+ name: "Gigavolt Havoc",
+ effect: "Dummy Data"
+ },
+ "shatteredPsychePhysical": {
+ name: "Shattered Psyche",
+ effect: "The user controls the target with its Z-Power and hurts the target with full force. The power varies, depending on the original move."
+ },
+ "shatteredPsycheSpecial": {
+ name: "Shattered Psyche",
+ effect: "Dummy Data"
+ },
+ "subzeroSlammerPhysical": {
+ name: "Subzero Slammer",
+ effect: "The user dramatically drops the temperature using its Z-Power and freezes the target with full force. The power varies, depending on the original move."
+ },
+ "subzeroSlammerSpecial": {
+ name: "Subzero Slammer",
+ effect: "Dummy Data"
+ },
+ "devastatingDrakePhysical": {
+ name: "Devastating Drake",
+ effect: "The user materializes its aura using its Z-Power and attacks the target with full force. The power varies, depending on the original move."
+ },
+ "devastatingDrakeSpecial": {
+ name: "Devastating Drake",
+ effect: "Dummy Data"
+ },
+ "blackHoleEclipsePhysical": {
+ name: "Black Hole Eclipse",
+ effect: "The user gathers dark energy using its Z-Power and sucks the target into it. The power varies, depending on the original move."
+ },
+ "blackHoleEclipseSpecial": {
+ name: "Black Hole Eclipse",
+ effect: "Dummy Data"
+ },
+ "twinkleTacklePhysical": {
+ name: "Twinkle Tackle",
+ effect: "The user creates a very charming space using its Z-Power and totally toys with the target. The power varies, depending on the original move."
+ },
+ "twinkleTackleSpecial": {
+ name: "Twinkle Tackle",
+ effect: "Dummy Data"
+ },
+ "catastropika": {
+ name: "Catastropika",
+ effect: "The user, Pikachu, surrounds itself with the maximum amount of electricity using its Z-Power and pounces on its target with full force."
+ },
+ "shoreUp": {
+ name: "Shore Up",
+ effect: "The user regains up to half of its max HP. It restores more HP in a sandstorm."
+ },
+ "firstImpression": {
+ name: "First Impression",
+ effect: "Although this move has great power, it only works the first turn each time the user enters battle."
+ },
+ "banefulBunker": {
+ name: "Baneful Bunker",
+ effect: "In addition to protecting the user from attacks, this move also poisons any attacker that makes direct contact."
+ },
+ "spiritShackle": {
+ name: "Spirit Shackle",
+ effect: "The user attacks while simultaneously stitching the target's shadow to the ground to prevent the target from escaping."
+ },
+ "darkestLariat": {
+ name: "Darkest Lariat",
+ effect: "The user swings both arms and hits the target. The target's stat changes don't affect this attack's damage."
+ },
+ "sparklingAria": {
+ name: "Sparkling Aria",
+ effect: "The user bursts into song, emitting many bubbles. Any Pokémon suffering from a burn will be healed by the touch of these bubbles."
+ },
+ "iceHammer": {
+ name: "Ice Hammer",
+ effect: "The user swings and hits with its strong, heavy fist. It lowers the user's Speed, however."
+ },
+ "floralHealing": {
+ name: "Floral Healing",
+ effect: "The user restores the target's HP by up to half of its max HP. It restores more HP when the terrain is grass."
+ },
+ "highHorsepower": {
+ name: "High Horsepower",
+ effect: "The user fiercely attacks the target using its entire body."
+ },
+ "strengthSap": {
+ name: "Strength Sap",
+ effect: "The user restores its HP by the same amount as the target's Attack stat. It also lowers the target's Attack stat."
+ },
+ "solarBlade": {
+ name: "Solar Blade",
+ effect: "In this two-turn attack, the user gathers light and fills a blade with the light's energy, attacking the target on the next turn."
+ },
+ "leafage": {
+ name: "Leafage",
+ effect: "The user attacks by pelting the target with leaves."
+ },
+ "spotlight": {
+ name: "Spotlight",
+ effect: "The user shines a spotlight on the target so that only the target will be attacked during the turn."
+ },
+ "toxicThread": {
+ name: "Toxic Thread",
+ effect: "The user shoots poisonous threads to poison the target and lower the target's Speed stat."
+ },
+ "laserFocus": {
+ name: "Laser Focus",
+ effect: "The user concentrates intensely. The attack on the next turn always results in a critical hit."
+ },
+ "gearUp": {
+ name: "Gear Up",
+ effect: "The user engages its gears to raise the Attack and Sp. Atk stats of ally Pokémon with the Plus or Minus Ability."
+ },
+ "throatChop": {
+ name: "Throat Chop",
+ effect: "The user attacks the target's throat, and the resultant suffering prevents the target from using moves that emit sound for two turns."
+ },
+ "pollenPuff": {
+ name: "Pollen Puff",
+ effect: "The user attacks the enemy with a pollen puff that explodes. If the target is an ally, it gives the ally a pollen puff that restores its HP instead."
+ },
+ "anchorShot": {
+ name: "Anchor Shot",
+ effect: "The user entangles the target with its anchor chain while attacking. The target becomes unable to flee."
+ },
+ "psychicTerrain": {
+ name: "Psychic Terrain",
+ effect: "This protects Pokémon on the ground from priority moves and powers up Psychic-type moves for five turns."
+ },
+ "lunge": {
+ name: "Lunge",
+ effect: "The user makes a lunge at the target, attacking with full force. This also lowers the target's Attack stat."
+ },
+ "fireLash": {
+ name: "Fire Lash",
+ effect: "The user strikes the target with a burning lash. This also lowers the target's Defense stat."
+ },
+ "powerTrip": {
+ name: "Power Trip",
+ effect: "The user boasts its strength and attacks the target. The more the user's stats are raised, the greater the move's power."
+ },
+ "burnUp": {
+ name: "Burn Up",
+ effect: "To inflict massive damage, the user burns itself out. After using this move, the user will no longer be Fire type."
+ },
+ "speedSwap": {
+ name: "Speed Swap",
+ effect: "The user exchanges Speed stats with the target."
+ },
+ "smartStrike": {
+ name: "Smart Strike",
+ effect: "The user stabs the target with a sharp horn. This attack never misses."
+ },
+ "purify": {
+ name: "Purify",
+ effect: "The user heals the target's status condition. If the move succeeds, it also restores the user's own HP."
+ },
+ "revelationDance": {
+ name: "Revelation Dance",
+ effect: "The user attacks the target by dancing very hard. The user's type determines the type of this move."
+ },
+ "coreEnforcer": {
+ name: "Core Enforcer",
+ effect: "If the Pokémon the user has inflicted damage on have already used their moves, this move eliminates the effect of the target's Ability."
+ },
+ "tropKick": {
+ name: "Trop Kick",
+ effect: "The user lands an intense kick of tropical origins on the target. This also lowers the target's Attack stat."
+ },
+ "instruct": {
+ name: "Instruct",
+ effect: "The user instructs the target to use the target's last move again."
+ },
+ "beakBlast": {
+ name: "Beak Blast",
+ effect: "The user first heats up its beak, and then it attacks the target. Making direct contact with the Pokémon while it's heating up its beak results in a burn."
+ },
+ "clangingScales": {
+ name: "Clanging Scales",
+ effect: "The user rubs the scales on its entire body and makes a huge noise to attack opposing Pokémon. The user's Defense stat goes down after the attack."
+ },
+ "dragonHammer": {
+ name: "Dragon Hammer",
+ effect: "The user uses its body like a hammer to attack the target and inflict damage."
+ },
+ "brutalSwing": {
+ name: "Brutal Swing",
+ effect: "The user swings its body around violently to inflict damage on everything in its vicinity."
+ },
+ "auroraVeil": {
+ name: "Aurora Veil",
+ effect: "This move reduces damage from physical and special moves for five turns. This can be used only when it is snowing."
+ },
+ "sinisterArrowRaid": {
+ name: "Sinister Arrow Raid",
+ effect: "The user, Decidueye, creates countless arrows using its Z-Power and shoots the target with full force."
+ },
+ "maliciousMoonsault": {
+ name: "Malicious Moonsault",
+ effect: "The user, Incineroar, strengthens its body using its Z-Power and crashes into the target with full force."
+ },
+ "oceanicOperetta": {
+ name: "Oceanic Operetta",
+ effect: "The user, Primarina, summons a massive amount of water using its Z-Power and attacks the target with full force."
+ },
+ "guardianOfAlola": {
+ name: "Guardian of Alola",
+ effect: "The user, the Land Spirit Pokémon, obtains Alola's energy using its Z-Power and attacks the target with full force. This reduces the target's HP greatly."
+ },
+ "soulStealing7StarStrike": {
+ name: "Soul-Stealing 7-Star Strike",
+ effect: "After obtaining Z-Power, the user, Marshadow, punches and kicks the target consecutively with full force."
+ },
+ "stokedSparksurfer": {
+ name: "Stoked Sparksurfer",
+ effect: "After obtaining Z-Power, the user, Alolan Raichu, attacks the target with full force. This move leaves the target with paralysis."
+ },
+ "pulverizingPancake": {
+ name: "Pulverizing Pancake",
+ effect: "Z-Power brings out the true capabilities of the user, Snorlax. The Pokémon moves its enormous body energetically and attacks the target with full force."
+ },
+ "extremeEvoboost": {
+ name: "Extreme Evoboost",
+ effect: "After obtaining Z-Power, the user, Eevee, gets energy from its evolved friends and boosts its stats sharply."
+ },
+ "genesisSupernova": {
+ name: "Genesis Supernova",
+ effect: "After obtaining Z-Power, the user, Mew, attacks the target with full force. The terrain will be charged with psychic energy."
+ },
+ "shellTrap": {
+ name: "Shell Trap",
+ effect: "The user sets a shell trap. If the user is hit by a physical move, the trap will explode and inflict damage on opposing Pokémon."
+ },
+ "fleurCannon": {
+ name: "Fleur Cannon",
+ effect: "The user unleashes a strong beam. The attack's recoil harshly lowers the user's Sp. Atk stat."
+ },
+ "psychicFangs": {
+ name: "Psychic Fangs",
+ effect: "The user bites the target with its psychic capabilities. This can also destroy Light Screen and Reflect."
+ },
+ "stompingTantrum": {
+ name: "Stomping Tantrum",
+ effect: "Driven by frustration, the user attacks the target. If the user's previous move has failed, the power of this move doubles."
+ },
+ "shadowBone": {
+ name: "Shadow Bone",
+ effect: "The user attacks by beating the target with a bone that contains a spirit. This may also lower the target's Defense stat."
+ },
+ "accelerock": {
+ name: "Accelerock",
+ effect: "The user smashes into the target at high speed. This move always goes first."
+ },
+ "liquidation": {
+ name: "Liquidation",
+ effect: "The user slams into the target using a full-force blast of water. This may also lower the target's Defense stat."
+ },
+ "prismaticLaser": {
+ name: "Prismatic Laser",
+ effect: "The user shoots powerful lasers using the power of a prism. The user can't move on the next turn."
+ },
+ "spectralThief": {
+ name: "Spectral Thief",
+ effect: "The user hides in the target's shadow, steals the target's stat boosts, and then attacks."
+ },
+ "sunsteelStrike": {
+ name: "Sunsteel Strike",
+ effect: "The user slams into the target with the force of a meteor. This move can be used on the target regardless of its Abilities."
+ },
+ "moongeistBeam": {
+ name: "Moongeist Beam",
+ effect: "The user emits a sinister ray to attack the target. This move can be used on the target regardless of its Abilities."
+ },
+ "tearfulLook": {
+ name: "Tearful Look",
+ effect: "The user gets teary eyed to make the target lose its combative spirit. This lowers the target's Attack and Sp. Atk stats."
+ },
+ "zingZap": {
+ name: "Zing Zap",
+ effect: "A strong electric blast crashes down on the target, giving it an electric shock. This may also make the target flinch."
+ },
+ "naturesMadness": {
+ name: "Nature's Madness",
+ effect: "The user hits the target with the force of nature. It halves the target's HP."
+ },
+ "multiAttack": {
+ name: "Multi-Attack",
+ effect: "Cloaking itself in high energy, the user slams into the target. The memory held determines the move's type."
+ },
+ "tenMillionVoltThunderbolt": {
+ name: "10,000,000 Volt Thunderbolt",
+ effect: "The user, Pikachu wearing a cap, powers up a jolt of electricity using its Z-Power and unleashes it. Critical hits land more easily."
+ },
+ "mindBlown": {
+ name: "Mind Blown",
+ effect: "The user attacks everything around it by causing its own head to explode. This also damages the user."
+ },
+ "plasmaFists": {
+ name: "Plasma Fists",
+ effect: "The user attacks with electrically charged fists. This move changes Normal-type moves to Electric-type moves."
+ },
+ "photonGeyser": {
+ name: "Photon Geyser",
+ effect: "The user attacks a target with a pillar of light. This move inflicts Attack or Sp. Atk damage—whichever stat is higher for the user."
+ },
+ "lightThatBurnsTheSky": {
+ name: "Light That Burns the Sky",
+ effect: "This attack inflicts Attack or Sp. Atk damage—whichever stat is higher for the user, Necrozma. This move ignores the target's Ability."
+ },
+ "searingSunrazeSmash": {
+ name: "Searing Sunraze Smash",
+ effect: "After obtaining Z-Power, the user, Solgaleo, attacks the target with full force. This move can ignore the effect of the target's Ability."
+ },
+ "menacingMoonrazeMaelstrom": {
+ name: "Menacing Moonraze Maelstrom",
+ effect: "After obtaining Z-Power, the user, Lunala, attacks the target with full force. This move can ignore the effect of the target's Ability."
+ },
+ "letsSnuggleForever": {
+ name: "Let's Snuggle Forever",
+ effect: "After obtaining Z-Power, the user, Mimikyu, punches the target with full force."
+ },
+ "splinteredStormshards": {
+ name: "Splintered Stormshards",
+ effect: "After obtaining Z-Power, the user, Lycanroc, attacks the target with full force. This move negates the effect on the battlefield."
+ },
+ "clangorousSoulblaze": {
+ name: "Clangorous Soulblaze",
+ effect: "After obtaining Z-Power, the user, Kommo-o, attacks the opposing Pokémon with full force. This move boosts the user's stats."
+ },
+ "zippyZap": {
+ name: "Zippy Zap",
+ effect: "The user attacks the target with bursts of electricity at high speed. This move always goes first and results in a critical hit."
+ },
+ "splishySplash": {
+ name: "Splishy Splash",
+ effect: "The user charges a huge wave with electricity and hits the opposing Pokémon with the wave. This may also leave the opposing Pokémon with paralysis."
+ },
+ "floatyFall": {
+ name: "Floaty Fall",
+ effect: "The user floats in the air, and then dives at a steep angle to attack the target. This may also make the target flinch."
+ },
+ "pikaPapow": {
+ name: "Pika Papow",
+ effect: "The more Pikachu loves its Trainer, the greater the move's power. It never misses."
+ },
+ "bouncyBubble": {
+ name: "Bouncy Bubble",
+ effect: "The user attacks by shooting water bubbles at the target. It then absorbs water and restores its HP by half the damage taken by the target."
+ },
+ "buzzyBuzz": {
+ name: "Buzzy Buzz",
+ effect: "The user shoots a jolt of electricity to attack the target. This also leaves the target with paralysis."
+ },
+ "sizzlySlide": {
+ name: "Sizzly Slide",
+ effect: "The user cloaks itself in fire and charges at the target. This also leaves the target with a burn."
+ },
+ "glitzyGlow": {
+ name: "Glitzy Glow",
+ effect: "The user bombards the target with telekinetic force. A wondrous wall of light is put up to weaken the power of the opposing Pokémon's special moves."
+ },
+ "baddyBad": {
+ name: "Baddy Bad",
+ effect: "The user acts bad and attacks the target. A wondrous wall of light is put up to weaken the power of the opposing Pokémon's physical moves."
+ },
+ "sappySeed": {
+ name: "Sappy Seed",
+ effect: "The user grows a gigantic stalk that scatters seeds to attack the target. The seeds drain the target's HP every turn."
+ },
+ "freezyFrost": {
+ name: "Freezy Frost",
+ effect: "The user attacks with a crystal made of cold frozen haze. It eliminates every stat change among all the Pokémon engaged in battle."
+ },
+ "sparklySwirl": {
+ name: "Sparkly Swirl",
+ effect: "The user attacks the target by wrapping it with a whirlwind of an overpowering scent. This also heals all status conditions of the user's party."
+ },
+ "veeveeVolley": {
+ name: "Veevee Volley",
+ effect: "The more Eevee loves its Trainer, the greater the move's power. It never misses."
+ },
+ "doubleIronBash": {
+ name: "Double Iron Bash",
+ effect: "The user rotates, centering the hex nut in its chest, and then strikes with its arms twice in a row. This may also make the target flinch."
+ },
+ "maxGuard": {
+ name: "Max Guard",
+ effect: "This move enables the user to protect itself from all attacks. Its chance of failing rises if it is used in succession."
+ },
+ "dynamaxCannon": {
+ name: "Dynamax Cannon",
+ effect: "The user unleashes a strong beam from its core. This move deals twice the damage if the target is over level 200."
+ },
+ "snipeShot": {
+ name: "Snipe Shot",
+ effect: "The user ignores the effects of opposing Pokémon's moves and Abilities that draw in moves, allowing this move to hit the chosen target."
+ },
+ "jawLock": {
+ name: "Jaw Lock",
+ effect: "This move prevents the user and the target from switching out until either of them faints. The effect goes away if either of the Pokémon leaves the field."
+ },
+ "stuffCheeks": {
+ name: "Stuff Cheeks",
+ effect: "The user eats its held Berry, then sharply raises its Defense stat."
+ },
+ "noRetreat": {
+ name: "No Retreat",
+ effect: "This move raises all the user's stats but prevents the user from switching out or fleeing."
+ },
+ "tarShot": {
+ name: "Tar Shot",
+ effect: "The user pours sticky tar over the target, lowering the target's Speed stat. The target becomes weaker to Fire-type moves."
+ },
+ "magicPowder": {
+ name: "Magic Powder",
+ effect: "The user scatters a cloud of magic powder that changes the target to Psychic type."
+ },
+ "dragonDarts": {
+ name: "Dragon Darts",
+ effect: "The user attacks twice using Dreepy. If there are two targets, this move hits each target once."
+ },
+ "teatime": {
+ name: "Teatime",
+ effect: "The user has teatime with all the Pokémon in the battle. Each Pokémon eats its held Berry."
+ },
+ "octolock": {
+ name: "Octolock",
+ effect: "The user locks the target in and prevents it from fleeing. This move also lowers the target's Defense and Sp. Def every turn."
+ },
+ "boltBeak": {
+ name: "Bolt Beak",
+ effect: "The user stabs the target with its electrified beak. If the user attacks before the target, the power of this move is doubled."
+ },
+ "fishiousRend": {
+ name: "Fishious Rend",
+ effect: "The user rends the target with its hard gills. If the user attacks before the target, the power of this move is doubled."
+ },
+ "courtChange": {
+ name: "Court Change",
+ effect: "With its mysterious power, the user swaps the effects on either side of the field."
+ },
+ "maxFlare": {
+ name: "Max Flare",
+ effect: "This is a Fire-type attack Dynamax Pokémon use. The user intensifies the sun for five turns."
+ },
+ "maxFlutterby": {
+ name: "Max Flutterby",
+ effect: "This is a Bug-type attack Dynamax Pokémon use. This lowers the target's Sp. Atk stat."
+ },
+ "maxLightning": {
+ name: "Max Lightning",
+ effect: "This is an Electric-type attack Dynamax Pokémon use. The user turns the ground into Electric Terrain for five turns."
+ },
+ "maxStrike": {
+ name: "Max Strike",
+ effect: "This is a Normal-type attack Dynamax Pokémon use. This lowers the target's Speed stat."
+ },
+ "maxKnuckle": {
+ name: "Max Knuckle",
+ effect: "This is a Fighting-type attack Dynamax Pokémon use. This raises ally Pokémon's Attack stats."
+ },
+ "maxPhantasm": {
+ name: "Max Phantasm",
+ effect: "This is a Ghost-type attack Dynamax Pokémon use. This lowers the target's Defense stat."
+ },
+ "maxHailstorm": {
+ name: "Max Hailstorm",
+ effect: "This is an Ice-type attack Dynamax Pokémon use. The user summons a hailstorm lasting five turns."
+ },
+ "maxOoze": {
+ name: "Max Ooze",
+ effect: "This is a Poison-type attack Dynamax Pokémon use. This raises ally Pokémon's Sp. Atk stats."
+ },
+ "maxGeyser": {
+ name: "Max Geyser",
+ effect: "This is a Water-type attack Dynamax Pokémon use. The user summons a heavy rain that falls for five turns."
+ },
+ "maxAirstream": {
+ name: "Max Airstream",
+ effect: "This is a Flying-type attack Dynamax Pokémon use. This raises ally Pokémon's Speed stats."
+ },
+ "maxStarfall": {
+ name: "Max Starfall",
+ effect: "This is a Fairy-type attack Dynamax Pokémon use. The user turns the ground into Misty Terrain for five turns."
+ },
+ "maxWyrmwind": {
+ name: "Max Wyrmwind",
+ effect: "This is a Dragon-type attack Dynamax Pokémon use. This lowers the target's Attack stat."
+ },
+ "maxMindstorm": {
+ name: "Max Mindstorm",
+ effect: "This is a Psychic-type attack Dynamax Pokémon use. The user turns the ground into Psychic Terrain for five turns."
+ },
+ "maxRockfall": {
+ name: "Max Rockfall",
+ effect: "This is a Rock-type attack Dynamax Pokémon use. The user summons a sandstorm lasting five turns."
+ },
+ "maxQuake": {
+ name: "Max Quake",
+ effect: "This is a Ground-type attack Dynamax Pokémon use. This raises ally Pokémon's Sp. Def stats."
+ },
+ "maxDarkness": {
+ name: "Max Darkness",
+ effect: "This is a Dark-type attack Dynamax Pokémon use. This lowers the target's Sp. Def stat."
+ },
+ "maxOvergrowth": {
+ name: "Max Overgrowth",
+ effect: "This is a Grass-type attack Dynamax Pokémon use. The user turns the ground into Grassy Terrain for five turns."
+ },
+ "maxSteelspike": {
+ name: "Max Steelspike",
+ effect: "This is a Steel-type attack Dynamax Pokémon use. This raises ally Pokémon's Defense stats."
+ },
+ "clangorousSoul": {
+ name: "Clangorous Soul",
+ effect: "The user raises all its stats by using some of its HP."
+ },
+ "bodyPress": {
+ name: "Body Press",
+ effect: "The user attacks by slamming its body into the target. The higher the user's Defense, the more damage it can inflict on the target."
+ },
+ "decorate": {
+ name: "Decorate",
+ effect: "The user sharply raises the target's Attack and Sp. Atk stats by decorating the target."
+ },
+ "drumBeating": {
+ name: "Drum Beating",
+ effect: "The user plays its drum, controlling the drum's roots to attack the target. This also lowers the target's Speed stat."
+ },
+ "snapTrap": {
+ name: "Snap Trap",
+ effect: "The user snares the target in a snap trap for four to five turns."
+ },
+ "pyroBall": {
+ name: "Pyro Ball",
+ effect: "The user attacks by igniting a small stone and launching it as a fiery ball at the target. This may also leave the target with a burn."
+ },
+ "behemothBlade": {
+ name: "Behemoth Blade",
+ effect: "The user wields a large, powerful sword using its whole body and cuts the target in a vigorous attack."
+ },
+ "behemothBash": {
+ name: "Behemoth Bash",
+ effect: "The user's body becomes a firm shield and slams into the target fiercely."
+ },
+ "auraWheel": {
+ name: "Aura Wheel",
+ effect: "Morpeko attacks and raises its Speed with the energy stored in its cheeks. This move's type changes depending on the user's form."
+ },
+ "breakingSwipe": {
+ name: "Breaking Swipe",
+ effect: "The user swings its tough tail wildly and attacks opposing Pokémon. This also lowers their Attack stats."
+ },
+ "branchPoke": {
+ name: "Branch Poke",
+ effect: "The user attacks the target by poking it with a sharply pointed branch."
+ },
+ "overdrive": {
+ name: "Overdrive",
+ effect: "The user attacks opposing Pokémon by twanging a guitar or bass guitar, causing a huge echo and strong vibration."
+ },
+ "appleAcid": {
+ name: "Apple Acid",
+ effect: "The user attacks the target with an acidic liquid created from tart apples. This also lowers the target's Sp. Def stat."
+ },
+ "gravApple": {
+ name: "Grav Apple",
+ effect: "The user inflicts damage by dropping an apple from high above. This also lowers the target's Defense stat."
+ },
+ "spiritBreak": {
+ name: "Spirit Break",
+ effect: "The user attacks the target with so much force that it could break the target's spirit. This also lowers the target's Sp. Atk stat."
+ },
+ "strangeSteam": {
+ name: "Strange Steam",
+ effect: "The user attacks the target by emitting steam. This may also confuse the target."
+ },
+ "lifeDew": {
+ name: "Life Dew",
+ effect: "The user scatters mysterious water around and restores the HP of itself and its ally Pokémon in the battle."
+ },
+ "obstruct": {
+ name: "Obstruct",
+ effect: "This move enables the user to protect itself from all attacks. Its chance of failing rises if it is used in succession. Direct contact harshly lowers the attacker's Defense stat."
+ },
+ "falseSurrender": {
+ name: "False Surrender",
+ effect: "The user pretends to bow its head, but then it stabs the target with its disheveled hair. This attack never misses."
+ },
+ "meteorAssault": {
+ name: "Meteor Assault",
+ effect: "The user attacks wildly with its thick leek. The user can't move on the next turn, because the force of this move makes it stagger."
+ },
+ "eternabeam": {
+ name: "Eternabeam",
+ effect: "This is Eternatus's most powerful attack in its original form. The user can't move on the next turn."
+ },
+ "steelBeam": {
+ name: "Steel Beam",
+ effect: "The user fires a beam of steel that it collected from its entire body. This also damages the user."
+ },
+ "expandingForce": {
+ name: "Expanding Force",
+ effect: "The user attacks the target with its psychic power. This move's power goes up and damages all opposing Pokémon on Psychic Terrain."
+ },
+ "steelRoller": {
+ name: "Steel Roller",
+ effect: "The user attacks while destroying the terrain. This move fails when the ground hasn't turned into a terrain."
+ },
+ "scaleShot": {
+ name: "Scale Shot",
+ effect: "The user attacks by shooting scales two to five times in a row. This move boosts the user's Speed stat but lowers its Defense stat."
+ },
+ "meteorBeam": {
+ name: "Meteor Beam",
+ effect: "In this two-turn attack, the user gathers space power and boosts its Sp. Atk stat, then attacks the target on the next turn."
+ },
+ "shellSideArm": {
+ name: "Shell Side Arm",
+ effect: "This move inflicts physical or special damage, whichever will be more effective. This may also poison the target."
+ },
+ "mistyExplosion": {
+ name: "Misty Explosion",
+ effect: "The user attacks everything around it and faints upon using this move. This move's power is increased on Misty Terrain."
+ },
+ "grassyGlide": {
+ name: "Grassy Glide",
+ effect: "Gliding on the ground, the user attacks the target. This move always goes first on Grassy Terrain."
+ },
+ "risingVoltage": {
+ name: "Rising Voltage",
+ effect: "The user attacks with electric voltage rising from the ground. This move's power doubles when the target is on Electric Terrain."
+ },
+ "terrainPulse": {
+ name: "Terrain Pulse",
+ effect: "The user utilizes the power of the terrain to attack. This move's type and power changes depending on the terrain when it's used."
+ },
+ "skitterSmack": {
+ name: "Skitter Smack",
+ effect: "The user skitters behind the target to attack. This also lowers the target's Sp. Atk stat."
+ },
+ "burningJealousy": {
+ name: "Burning Jealousy",
+ effect: "The user attacks with energy from jealousy. This leaves all opposing Pokémon that have had their stats boosted during the turn with a burn."
+ },
+ "lashOut": {
+ name: "Lash Out",
+ effect: "The user lashes out to vent its frustration toward the target. If the user's stats were lowered during this turn, the power of this move is doubled."
+ },
+ "poltergeist": {
+ name: "Poltergeist",
+ effect: "The user attacks the target by controlling the target's item. The move fails if the target doesn't have an item."
+ },
+ "corrosiveGas": {
+ name: "Corrosive Gas",
+ effect: "The user surrounds everything around it with highly acidic gas and melts away items they hold."
+ },
+ "coaching": {
+ name: "Coaching",
+ effect: "The user properly coaches its ally Pokémon, boosting their Attack and Defense stats."
+ },
+ "flipTurn": {
+ name: "Flip Turn",
+ effect: "After making its attack, the user rushes back to switch places with a party Pokémon in waiting."
+ },
+ "tripleAxel": {
+ name: "Triple Axel",
+ effect: "A consecutive three-kick attack that becomes more powerful with each successful hit."
+ },
+ "dualWingbeat": {
+ name: "Dual Wingbeat",
+ effect: "The user slams the target with its wings. The target is hit twice in a row."
+ },
+ "scorchingSands": {
+ name: "Scorching Sands",
+ effect: "The user throws scorching sand at the target to attack. This may also leave the target with a burn."
+ },
+ "jungleHealing": {
+ name: "Jungle Healing",
+ effect: "The user becomes one with the jungle, restoring HP and healing any status conditions of itself and its ally Pokémon in battle."
+ },
+ "wickedBlow": {
+ name: "Wicked Blow",
+ effect: "The user, having mastered the Dark style, strikes the target with a fierce blow. This attack always results in a critical hit."
+ },
+ "surgingStrikes": {
+ name: "Surging Strikes",
+ effect: "The user, having mastered the Water style, strikes the target with a flowing motion three times in a row. This attack always results in a critical hit."
+ },
+ "thunderCage": {
+ name: "Thunder Cage",
+ effect: "The user traps the target in a cage of sparking electricity for four to five turns."
+ },
+ "dragonEnergy": {
+ name: "Dragon Energy",
+ effect: "Converting its life-force into power, the user attacks opposing Pokémon. The lower the user's HP, the lower the move's power."
+ },
+ "freezingGlare": {
+ name: "Freezing Glare",
+ effect: "The user shoots its psychic power from its eyes to attack. This may also leave the target frozen."
+ },
+ "fieryWrath": {
+ name: "Fiery Wrath",
+ effect: "The user transforms its wrath into a fire-like aura to attack. This may also make opposing Pokémon flinch."
+ },
+ "thunderousKick": {
+ name: "Thunderous Kick",
+ effect: "The user overwhelms the target with lightning-like movement before delivering a kick. This also lowers the target's Defense stat."
+ },
+ "glacialLance": {
+ name: "Glacial Lance",
+ effect: "The user attacks by hurling a blizzard-cloaked icicle lance at opposing Pokémon."
+ },
+ "astralBarrage": {
+ name: "Astral Barrage",
+ effect: "The user attacks by sending a frightful amount of small ghosts at opposing Pokémon."
+ },
+ "eerieSpell": {
+ name: "Eerie Spell",
+ effect: "The user attacks with its tremendous psychic power. This also removes 3 PP from the target's last move."
+ },
+ "direClaw": {
+ name: "Dire Claw",
+ effect: "The user lashes out at the target with ruinous claws. This may also leave the target poisoned, paralyzed, or asleep."
+ },
+ "psyshieldBash": {
+ name: "Psyshield Bash",
+ effect: "Cloaking itself in psychic energy, the user slams into the target. This also boosts the user's Defense stat."
+ },
+ "powerShift": {
+ name: "Power Shift",
+ effect: "The user swaps its Attack and Defense stats."
+ },
+ "stoneAxe": {
+ name: "Stone Axe",
+ effect: "The user swings its stone axes at the target. Stone splinters left behind by this attack float around the target."
+ },
+ "springtideStorm": {
+ name: "Springtide Storm",
+ effect: "The user attacks by wrapping opposing Pokémon in fierce winds brimming with love and hate. This may also lower their Attack stats."
+ },
+ "mysticalPower": {
+ name: "Mystical Power",
+ effect: "The user attacks by emitting a mysterious power. This also boosts the user's Sp. Atk stat."
+ },
+ "ragingFury": {
+ name: "Raging Fury",
+ effect: "The user rampages around spewing flames for two to three turns. The user then becomes confused."
+ },
+ "waveCrash": {
+ name: "Wave Crash",
+ effect: "The user shrouds itself in water and slams into the target with its whole body to inflict damage. This also damages the user quite a lot."
+ },
+ "chloroblast": {
+ name: "Chloroblast",
+ effect: "The user launches its amassed chlorophyll to inflict damage on the target. This also damages the user."
+ },
+ "mountainGale": {
+ name: "Mountain Gale",
+ effect: "The user hurls giant chunks of ice at the target to inflict damage. This may also make the target flinch."
+ },
+ "victoryDance": {
+ name: "Victory Dance",
+ effect: "The user performs an intense dance to usher in victory, boosting its Attack, Defense, and Speed stats."
+ },
+ "headlongRush": {
+ name: "Headlong Rush",
+ effect: "The user smashes into the target in a full-body tackle. This also lowers the user's Defense and Sp. Def stats."
+ },
+ "barbBarrage": {
+ name: "Barb Barrage",
+ effect: "The user launches countless toxic barbs to inflict damage. This may also poison the target. This move's power is doubled if the target is already poisoned."
+ },
+ "esperWing": {
+ name: "Esper Wing",
+ effect: "The user slashes the target with aura-enriched wings. This also boosts the user's Speed stat. This move has a heightened chance of landing a critical hit."
+ },
+ "bitterMalice": {
+ name: "Bitter Malice",
+ effect: "The user attacks the target with spine-chilling resentment. This also lowers the target's Attack stat."
+ },
+ "shelter": {
+ name: "Shelter",
+ effect: "The user makes its skin as hard as an iron shield, sharply boosting its Defense stat."
+ },
+ "tripleArrows": {
+ name: "Triple Arrows",
+ effect: "The user kicks, then fires three arrows. This move has a heightened chance of landing a critical hit and may also lower the target's Defense stat or make it flinch."
+ },
+ "infernalParade": {
+ name: "Infernal Parade",
+ effect: "The user attacks with myriad fireballs. This may also leave the target with a burn. This move's power is doubled if the target has a status condition."
+ },
+ "ceaselessEdge": {
+ name: "Ceaseless Edge",
+ effect: "The user slashes its shell blade at the target. Shell splinters left behind by this attack remain scattered under the target as spikes."
+ },
+ "bleakwindStorm": {
+ name: "Bleakwind Storm",
+ effect: "The user attacks with savagely cold winds that cause both body and spirit to tremble. This may also lower the Speed stats of opposing Pokémon."
+ },
+ "wildboltStorm": {
+ name: "Wildbolt Storm",
+ effect: "The user summons a thunderous tempest and savagely attacks with lightning and wind. This may also leave opposing Pokémon with paralysis."
+ },
+ "sandsearStorm": {
+ name: "Sandsear Storm",
+ effect: "The user attacks by wrapping opposing Pokémon in fierce winds and searingly hot sand. This may also leave them with a burn."
+ },
+ "lunarBlessing": {
+ name: "Lunar Blessing",
+ effect: "The user receives a blessing from the crescent moon, restoring HP and curing status conditions for itself and its ally Pokémon currently in the battle."
+ },
+ "takeHeart": {
+ name: "Take Heart",
+ effect: "The user lifts its spirits, curing its own status conditions and boosting its Sp. Atk and Sp. Def stats."
+ },
+ "gMaxWildfire": {
+ name: "G-Max Wildfire",
+ effect: "A Fire-type attack that Gigantamax Charizard use. This move continues to deal damage to opponents for four turns."
+ },
+ "gMaxBefuddle": {
+ name: "G-Max Befuddle",
+ effect: "A Bug-type attack that Gigantamax Butterfree use. This move inflicts the poisoned, paralyzed, or asleep status condition on opponents."
+ },
+ "gMaxVoltCrash": {
+ name: "G-Max Volt Crash",
+ effect: "An Electric-type attack that Gigantamax Pikachu use. This move paralyzes opponents."
+ },
+ "gMaxGoldRush": {
+ name: "G-Max Gold Rush",
+ effect: "A Normal-type attack that Gigantamax Meowth use. This move confuses opponents and also earns extra money."
+ },
+ "gMaxChiStrike": {
+ name: "G-Max Chi Strike",
+ effect: "A Fighting-type attack that Gigantamax Machamp use. This move raises the chance of critical hits."
+ },
+ "gMaxTerror": {
+ name: "G-Max Terror",
+ effect: "A Ghost-type attack that Gigantamax Gengar use. This Pokémon steps on the opposing Pokémon's shadow to prevent them from escaping."
+ },
+ "gMaxResonance": {
+ name: "G-Max Resonance",
+ effect: "An Ice-type attack that Gigantamax Lapras use. This move reduces the damage received for five turns."
+ },
+ "gMaxCuddle": {
+ name: "G-Max Cuddle",
+ effect: "A Normal-type attack that Gigantamax Eevee use. This move infatuates opponents."
+ },
+ "gMaxReplenish": {
+ name: "G-Max Replenish",
+ effect: "A Normal-type attack that Gigantamax Snorlax use. This move restores Berries that have been eaten."
+ },
+ "gMaxMalodor": {
+ name: "G-Max Malodor",
+ effect: "A Poison-type attack that Gigantamax Garbodor use. This move poisons opponents."
+ },
+ "gMaxStonesurge": {
+ name: "G-Max Stonesurge",
+ effect: "A Water-type attack that Gigantamax Drednaw use. This move scatters sharp rocks around the field."
+ },
+ "gMaxWindRage": {
+ name: "G-Max Wind Rage",
+ effect: "A Flying-type attack that Gigantamax Corviknight use. This move removes the effects of moves like Reflect and Light Screen."
+ },
+ "gMaxStunShock": {
+ name: "G-Max Stun Shock",
+ effect: "An Electric-type attack that Gigantamax Toxtricity use. This move poisons or paralyzes opponents."
+ },
+ "gMaxFinale": {
+ name: "G-Max Finale",
+ effect: "A Fairy-type attack that Gigantamax Alcremie use. This move heals the HP of allies."
+ },
+ "gMaxDepletion": {
+ name: "G-Max Depletion",
+ effect: "A Dragon-type attack that Gigantamax Duraludon use. Reduces the PP of the last move used."
+ },
+ "gMaxGravitas": {
+ name: "G-Max Gravitas",
+ effect: "A Psychic-type attack that Gigantamax Orbeetle use. This move changes gravity for five turns."
+ },
+ "gMaxVolcalith": {
+ name: "G-Max Volcalith",
+ effect: "A Rock-type attack that Gigantamax Coalossal use. This move continues to deal damage to opponents for four turns."
+ },
+ "gMaxSandblast": {
+ name: "G-Max Sandblast",
+ effect: "A Ground-type attack that Gigantamax Sandaconda use. Opponents are trapped in a raging sandstorm for four to five turns."
+ },
+ "gMaxSnooze": {
+ name: "G-Max Snooze",
+ effect: "A Dark-type attack that Gigantamax Grimmsnarl use. The user lets loose a huge yawn that lulls the targets into falling asleep on the next turn."
+ },
+ "gMaxTartness": {
+ name: "G-Max Tartness",
+ effect: "A Grass-type attack that Gigantamax Flapple use. This move reduces the opponents' evasiveness."
+ },
+ "gMaxSweetness": {
+ name: "G-Max Sweetness",
+ effect: "A Grass-type attack that Gigantamax Appletun use. This move heals the status conditions of allies."
+ },
+ "gMaxSmite": {
+ name: "G-Max Smite",
+ effect: "A Fairy-type attack that Gigantamax Hatterene use. This move confuses opponents."
+ },
+ "gMaxSteelsurge": {
+ name: "G-Max Steelsurge",
+ effect: "A Steel-type attack that Gigantamax Copperajah use. This move scatters sharp spikes around the field."
+ },
+ "gMaxMeltdown": {
+ name: "G-Max Meltdown",
+ effect: "A Steel-type attack that Gigantamax Melmetal use. This move makes opponents incapable of using the same move twice in a row."
+ },
+ "gMaxFoamBurst": {
+ name: "G-Max Foam Burst",
+ effect: "A Water-type attack that Gigantamax Kingler use. This move harshly lowers the Speed of opponents."
+ },
+ "gMaxCentiferno": {
+ name: "G-Max Centiferno",
+ effect: "A Fire-type attack that Gigantamax Centiskorch use. This move traps opponents in flames for four to five turns."
+ },
+ "gMaxVineLash": {
+ name: "G-Max Vine Lash",
+ effect: "A Grass-type attack that Gigantamax Venusaur use. This move continues to deal damage to opponents for four turns."
+ },
+ "gMaxCannonade": {
+ name: "G-Max Cannonade",
+ effect: "A Water-type attack that Gigantamax Blastoise use. This move continues to deal damage to opponents for four turns."
+ },
+ "gMaxDrumSolo": {
+ name: "G-Max Drum Solo",
+ effect: "A Grass-type attack that Gigantamax Rillaboom use. This move can be used on the target regardless of its Abilities."
+ },
+ "gMaxFireball": {
+ name: "G-Max Fireball",
+ effect: "A Fire-type attack that Gigantamax Cinderace use. This move can be used on the target regardless of its Abilities."
+ },
+ "gMaxHydrosnipe": {
+ name: "G-Max Hydrosnipe",
+ effect: "A Water-type attack that Gigantamax Inteleon use. This move can be used on the target regardless of its Abilities."
+ },
+ "gMaxOneBlow": {
+ name: "G-Max One Blow",
+ effect: "A Dark-type attack that Gigantamax Urshifu use. This single-strike move can ignore Max Guard."
+ },
+ "gMaxRapidFlow": {
+ name: "G-Max Rapid Flow",
+ effect: "A Water-type attack that Gigantamax Urshifu use. This rapid-strike move can ignore Max Guard."
+ },
+ "teraBlast": {
+ name: "Tera Blast",
+ effect: "If the user has Terastallized, it unleashes energy of its Tera Type. This move inflicts damage using the Attack or Sp. Atk stat-whichever is higher for the user."
+ },
+ "silkTrap": {
+ name: "Silk Trap",
+ effect: "The user spins a silken trap, protecting itself from damage while lowering the Speed stat of any attacker that makes direct contact."
+ },
+ "axeKick": {
+ name: "Axe Kick",
+ effect: "The user attacks by kicking up into the air and slamming its heel down upon the target. This may also confuse the target. If it misses, the user takes damage instead."
+ },
+ "lastRespects": {
+ name: "Last Respects",
+ effect: "The user attacks to avenge its allies. The more defeated allies there are in the user's party, the greater the move's power."
+ },
+ "luminaCrash": {
+ name: "Lumina Crash",
+ effect: "The user attacks by unleashing a peculiar light that even affects the mind. This also harshly lowers the target's Sp. Def stat."
+ },
+ "orderUp": {
+ name: "Order Up",
+ effect: "The user attacks with elegant poise. If the user has a Tatsugiri in its mouth, this move boosts one of the user's stats based on the Tatsugiri's form."
+ },
+ "jetPunch": {
+ name: "Jet Punch",
+ effect: "The user summons a torrent around its fist and punches at blinding speed. This move always goes first."
+ },
+ "spicyExtract": {
+ name: "Spicy Extract",
+ effect: "The user emits an incredibly spicy extract, sharply boosting the target's Attack stat and harshly lowering the target's Defense stat."
+ },
+ "spinOut": {
+ name: "Spin Out",
+ effect: "The user spins furiously by straining its legs, inflicting damage on the target. This also harshly lowers the user's Speed stat."
+ },
+ "populationBomb": {
+ name: "Population Bomb",
+ effect: "The user's fellows gather in droves to perform a combo attack that hits the target one to ten times in a row."
+ },
+ "iceSpinner": {
+ name: "Ice Spinner",
+ effect: "The user covers its feet in thin ice and twirls around, slamming into the target. This move's spinning motion also destroys the terrain."
+ },
+ "glaiveRush": {
+ name: "Glaive Rush",
+ effect: "The user throws its entire body into a reckless charge. After this move is used, attacks on the user cannot miss and will inflict double damage until the user's next turn."
+ },
+ "revivalBlessing": {
+ name: "Revival Blessing",
+ effect: "The user bestows a loving blessing, reviving a party Pokémon that has fainted and restoring half that Pokémon's max HP."
+ },
+ "saltCure": {
+ name: "Salt Cure",
+ effect: "The user salt cures the target, inflicting damage every turn. Steel and Water types are more strongly affected by this move."
+ },
+ "tripleDive": {
+ name: "Triple Dive",
+ effect: "The user performs a perfectly timed triple dive, hitting the target with splashes of water three times in a row."
+ },
+ "mortalSpin": {
+ name: "Mortal Spin",
+ effect: "The user performs a spin attack that can also eliminate the effects of such moves as Bind, Wrap, and Leech Seed. This also poisons opposing Pokémon."
+ },
+ "doodle": {
+ name: "Doodle",
+ effect: "The user captures the very essence of the target in a sketch. This changes the Abilities of the user and its ally Pokémon to that of the target."
+ },
+ "filletAway": {
+ name: "Fillet Away",
+ effect: "The user sharply boosts its Attack, Sp. Atk, and Speed stats by using its own HP."
+ },
+ "kowtowCleave": {
+ name: "Kowtow Cleave",
+ effect: "The user slashes at the target after kowtowing to make the target let down its guard. This attack never misses."
+ },
+ "flowerTrick": {
+ name: "Flower Trick",
+ effect: "The user throws a rigged bouquet of flowers at the target. This attack never misses and always lands a critical hit."
+ },
+ "torchSong": {
+ name: "Torch Song",
+ effect: "The user blows out raging flames as if singing a song, scorching the target. This also boosts the user's Sp. Atk stat."
+ },
+ "aquaStep": {
+ name: "Aqua Step",
+ effect: "The user toys with the target and attacks it using light and fluid dance steps. This also boosts the user's Speed stat."
+ },
+ "ragingBull": {
+ name: "Raging Bull",
+ effect: "The user performs a tackle like a raging bull. This move's type depends on the user's form. It can also break barriers, such as Light Screen and Reflect."
+ },
+ "makeItRain": {
+ name: "Make It Rain",
+ effect: "The user attacks by throwing out a mass of coins. This also lowers the user's Sp. Atk stat. Money is earned after the battle."
+ },
+ "psyblade": {
+ name: "Psyblade",
+ effect: "The user rends the target with an ethereal blade. This move's power is boosted by 50 percent if the user is on Electric Terrain."
+ },
+ "hydroSteam": {
+ name: "Hydro Steam",
+ effect: "The user blasts the target with boiling-hot water. This move's power is not lowered in harsh sunlight but rather boosted by 50 percent."
+ },
+ "ruination": {
+ name: "Ruination",
+ effect: "The user summons a ruinous disaster. This cuts the target's HP in half."
+ },
+ "collisionCourse": {
+ name: "Collision Course",
+ effect: "The user transforms and crashes to the ground, causing a massive prehistoric explosion. This move's power is boosted more than usual if it's a supereffective hit."
+ },
+ "electroDrift": {
+ name: "Electro Drift",
+ effect: "The user races forward at ultrafast speeds, piercing its target with futuristic electricity. This move's power is boosted more than usual if it's a supereffective hit."
+ },
+ "shedTail": {
+ name: "Shed Tail",
+ effect: "The user creates a substitute for itself using its own HP before switching places with a party Pokémon in waiting."
+ },
+ "chillyReception": {
+ name: "Chilly Reception",
+ effect: "The user tells a chillingly bad joke before switching places with a party Pokémon in waiting. This summons a snowstorm lasting five turns."
+ },
+ "tidyUp": {
+ name: "Tidy Up",
+ effect: "The user tidies up and removes the effects of Spikes, Stealth Rock, Sticky Web, Toxic Spikes, and Substitute. This also boosts the user's Attack and Speed stats."
+ },
+ "snowscape": {
+ name: "Snowscape",
+ effect: "The user summons a snowstorm lasting five turns. This boosts the Defense stats of Ice types."
+ },
+ "pounce": {
+ name: "Pounce",
+ effect: "The user attacks by pouncing on the target. This also lowers the target's Speed stat."
+ },
+ "trailblaze": {
+ name: "Trailblaze",
+ effect: "The user attacks suddenly as if leaping out from tall grass. The user's nimble footwork boosts its Speed stat."
+ },
+ "chillingWater": {
+ name: "Chilling Water",
+ effect: "The user attacks the target by showering it with water that's so cold it saps the target's power. This also lowers the target's Attack stat."
+ },
+ "hyperDrill": {
+ name: "Hyper Drill",
+ effect: "The user spins the pointed part of its body at high speed to pierce the target. This attack can hit a target using a move such as Protect or Detect."
+ },
+ "twinBeam": {
+ name: "Twin Beam",
+ effect: "The user shoots mystical beams from its eyes to inflict damage. The target is hit twice in a row."
+ },
+ "rageFist": {
+ name: "Rage Fist",
+ effect: "The user converts its rage into energy to attack. The more times the user has been hit by attacks, the greater the move's power."
+ },
+ "armorCannon": {
+ name: "Armor Cannon",
+ effect: "The user shoots its own armor out as blazing projectiles. This also lowers the user's Defense and Sp. Def stats."
+ },
+ "bitterBlade": {
+ name: "Bitter Blade",
+ effect: "The user focuses its bitter feelings toward the world of the living into a slashing attack. The user's HP is restored by up to half the damage taken by the target."
+ },
+ "doubleShock": {
+ name: "Double Shock",
+ effect: "The user discharges all the electricity from its body to perform a high-damage attack. After using this move, the user will no longer be Electric type."
+ },
+ "gigatonHammer": {
+ name: "Gigaton Hammer",
+ effect: "The user swings its whole body around to attack with its huge hammer. This move can't be used twice in a row."
+ },
+ "comeuppance": {
+ name: "Comeuppance",
+ effect: "The user retaliates with much greater force against the opponent that last inflicted damage on it."
+ },
+ "aquaCutter": {
+ name: "Aqua Cutter",
+ effect: "The user expels pressurized water to cut at the target like a blade. This move has a heightened chance of landing a critical hit."
+ },
+ "blazingTorque": {
+ name: "Blazing Torque",
+ effect: "The user revs their blazing engine into the target. This may also leave the target with a burn."
+ },
+ "wickedTorque": {
+ name: "Wicked Torque",
+ effect: "The user revs their engine into the target with malicious intent. This may put the target to sleep."
+ },
+ "noxiousTorque": {
+ name: "Noxious Torque",
+ effect: "The user revs their poisonous engine into the target. This may also poison the target."
+ },
+ "combatTorque": {
+ name: "Combat Torque",
+ effect: "The user revs their engine forcefully into the target. This may also leave the target with paralysis."
+ },
+ "magicalTorque": {
+ name: "Magical Torque",
+ effect: "The user revs their fae-like engine into the target. This may also confuse the target."
+ },
+ "bloodMoon": {
+ name: "Blood Moon",
+ effect: "The user unleashes the full brunt of its spirit from a full moon that shines as red as blood. This move can't be used twice in a row."
+ },
+ "matchaGotcha": {
+ name: "Matcha Gotcha",
+ effect: "The user fires a blast of tea that it mixed. The user's HP is restored by up to half the damage taken by the target. This may also leave the target with a burn."
+ },
+ "syrupBomb": {
+ name: "Syrup Bomb",
+ effect: "The user sets off an explosion of sticky candy syrup, which coats the target and causes the target's Speed stat to drop each turn for three turns."
+ },
+ "ivyCudgel": {
+ name: "Ivy Cudgel",
+ effect: "The user strikes with an ivy-wrapped cudgel. This move's type changes depending on the mask worn by the user, and it has a heightened chance of landing a critical hit."
+ },
+ "electroShot": {
+ name: "Electro Shot",
+ effect: "The user gathers electricity on the first turn, boosting its Sp. Atk stat, then fires a high-voltage shot on the next turn. The shot will be fired immediately in rain."
+ },
+ "teraStarstorm": {
+ name: "Tera Starstorm",
+ effect: "With the power of its crystals, the user bombards and eliminates the target. When used by Terapagos in its Stellar Form, this move damages all opposing Pokémon."
+ },
+ "fickleBeam": {
+ name: "Fickle Beam",
+ effect: "The user shoots a beam of light to inflict damage. Sometimes all the user's heads shoot beams in unison, doubling the move's power."
+ },
+ "burningBulwark": {
+ name: "Burning Bulwark",
+ effect: "The user's intensely hot fur protects it from attacks and also burns any attacker that makes direct contact with it."
+ },
+ "thunderclap": {
+ name: "Thunderclap",
+ effect: "This move enables the user to attack first with a jolt of electricity. This move fails if the target is not readying an attack."
+ },
+ "mightyCleave": {
+ name: "Mighty Cleave",
+ effect: "The user wields the light that has accumulated atop its head to cleave the target. This move hits even if the target protects itself."
+ },
+ "tachyonCutter": {
+ name: "Tachyon Cutter",
+ effect: "The user attacks by launching particle blades at the target twice in a row. This attack never misses."
+ },
+ "hardPress": {
+ name: "Hard Press",
+ effect: "The target is crushed with an arm, a claw, or the like to inflict damage. The more HP the target has left, the greater the move's power."
+ },
+ "dragonCheer": {
+ name: "Dragon Cheer",
+ effect: "The user raises its allies' morale with a draconic cry so that their future attacks have a heightened chance of landing critical hits. This rouses Dragon types more."
+ },
+ "alluringVoice": {
+ name: "Alluring Voice",
+ effect: "The user attacks the target using its angelic voice. This also confuses the target if its stats have been boosted during the turn."
+ },
+ "temperFlare": {
+ name: "Temper Flare",
+ effect: "Spurred by desperation, the user attacks the target. This move's power is doubled if the user's previous move failed."
+ },
+ "supercellSlam": {
+ name: "Supercell Slam",
+ effect: "The user electrifies its body and drops onto the target to inflict damage. If this move misses, the user takes damage instead."
+ },
+ "psychicNoise": {
+ name: "Psychic Noise",
+ effect: "The user attacks the target with unpleasant sound waves. For two turns, the target is prevented from recovering HP through moves, Abilities, or held items."
+ },
+ "upperHand": {
+ name: "Upper Hand",
+ effect: "The user reacts to the target's movement and strikes with the heel of its palm, making the target flinch. This move fails if the target is not readying a priority move."
+ },
+ "malignantChain": {
+ name: "Malignant Chain",
+ effect: "The user pours toxins into the target by wrapping them in a toxic, corrosive chain. This may also leave the target badly poisoned."
+ }
+} as const;
\ No newline at end of file
diff --git a/src/locales/en/pokeball.ts b/src/locales/en/pokeball.ts
new file mode 100644
index 00000000000..2bd7f603085
--- /dev/null
+++ b/src/locales/en/pokeball.ts
@@ -0,0 +1,10 @@
+import { SimpleTranslationEntries } from "#app/plugins/i18n";
+
+export const pokeball: SimpleTranslationEntries = {
+ "pokeBall": "Poké Ball",
+ "greatBall": "Great Ball",
+ "ultraBall": "Ultra Ball",
+ "rogueBall": "Rogue Ball",
+ "masterBall": "Master Ball",
+ "luxuryBall": "Luxury Ball",
+} as const;
\ No newline at end of file
diff --git a/src/locales/en/pokemon.ts b/src/locales/en/pokemon.ts
new file mode 100644
index 00000000000..09be8894eb4
--- /dev/null
+++ b/src/locales/en/pokemon.ts
@@ -0,0 +1,1086 @@
+import { SimpleTranslationEntries } from "#app/plugins/i18n";
+
+export const pokemon: SimpleTranslationEntries = {
+ "bulbasaur": "Bulbasaur",
+ "ivysaur": "Ivysaur",
+ "venusaur": "Venusaur",
+ "charmander": "Charmander",
+ "charmeleon": "Charmeleon",
+ "charizard": "Charizard",
+ "squirtle": "Squirtle",
+ "wartortle": "Wartortle",
+ "blastoise": "Blastoise",
+ "caterpie": "Caterpie",
+ "metapod": "Metapod",
+ "butterfree": "Butterfree",
+ "weedle": "Weedle",
+ "kakuna": "Kakuna",
+ "beedrill": "Beedrill",
+ "pidgey": "Pidgey",
+ "pidgeotto": "Pidgeotto",
+ "pidgeot": "Pidgeot",
+ "rattata": "Rattata",
+ "raticate": "Raticate",
+ "spearow": "Spearow",
+ "fearow": "Fearow",
+ "ekans": "Ekans",
+ "arbok": "Arbok",
+ "pikachu": "Pikachu",
+ "raichu": "Raichu",
+ "sandshrew": "Sandshrew",
+ "sandslash": "Sandslash",
+ "nidoran_f": "Nidoran♀",
+ "nidorina": "Nidorina",
+ "nidoqueen": "Nidoqueen",
+ "nidoran_m": "Nidoran♂",
+ "nidorino": "Nidorino",
+ "nidoking": "Nidoking",
+ "clefairy": "Clefairy",
+ "clefable": "Clefable",
+ "vulpix": "Vulpix",
+ "ninetales": "Ninetales",
+ "jigglypuff": "Jigglypuff",
+ "wigglytuff": "Wigglytuff",
+ "zubat": "Zubat",
+ "golbat": "Golbat",
+ "oddish": "Oddish",
+ "gloom": "Gloom",
+ "vileplume": "Vileplume",
+ "paras": "Paras",
+ "parasect": "Parasect",
+ "venonat": "Venonat",
+ "venomoth": "Venomoth",
+ "diglett": "Diglett",
+ "dugtrio": "Dugtrio",
+ "meowth": "Meowth",
+ "persian": "Persian",
+ "psyduck": "Psyduck",
+ "golduck": "Golduck",
+ "mankey": "Mankey",
+ "primeape": "Primeape",
+ "growlithe": "Growlithe",
+ "arcanine": "Arcanine",
+ "poliwag": "Poliwag",
+ "poliwhirl": "Poliwhirl",
+ "poliwrath": "Poliwrath",
+ "abra": "Abra",
+ "kadabra": "Kadabra",
+ "alakazam": "Alakazam",
+ "machop": "Machop",
+ "machoke": "Machoke",
+ "machamp": "Machamp",
+ "bellsprout": "Bellsprout",
+ "weepinbell": "Weepinbell",
+ "victreebel": "Victreebel",
+ "tentacool": "Tentacool",
+ "tentacruel": "Tentacruel",
+ "geodude": "Geodude",
+ "graveler": "Graveler",
+ "golem": "Golem",
+ "ponyta": "Ponyta",
+ "rapidash": "Rapidash",
+ "slowpoke": "Slowpoke",
+ "slowbro": "Slowbro",
+ "magnemite": "Magnemite",
+ "magneton": "Magneton",
+ "farfetchd": "Farfetch'd",
+ "doduo": "Doduo",
+ "dodrio": "Dodrio",
+ "seel": "Seel",
+ "dewgong": "Dewgong",
+ "grimer": "Grimer",
+ "muk": "Muk",
+ "shellder": "Shellder",
+ "cloyster": "Cloyster",
+ "gastly": "Gastly",
+ "haunter": "Haunter",
+ "gengar": "Gengar",
+ "onix": "Onix",
+ "drowzee": "Drowzee",
+ "hypno": "Hypno",
+ "krabby": "Krabby",
+ "kingler": "Kingler",
+ "voltorb": "Voltorb",
+ "electrode": "Electrode",
+ "exeggcute": "Exeggcute",
+ "exeggutor": "Exeggutor",
+ "cubone": "Cubone",
+ "marowak": "Marowak",
+ "hitmonlee": "Hitmonlee",
+ "hitmonchan": "Hitmonchan",
+ "lickitung": "Lickitung",
+ "koffing": "Koffing",
+ "weezing": "Weezing",
+ "rhyhorn": "Rhyhorn",
+ "rhydon": "Rhydon",
+ "chansey": "Chansey",
+ "tangela": "Tangela",
+ "kangaskhan": "Kangaskhan",
+ "horsea": "Horsea",
+ "seadra": "Seadra",
+ "goldeen": "Goldeen",
+ "seaking": "Seaking",
+ "staryu": "Staryu",
+ "starmie": "Starmie",
+ "mr_mime": "Mr. Mime",
+ "scyther": "Scyther",
+ "jynx": "Jynx",
+ "electabuzz": "Electabuzz",
+ "magmar": "Magmar",
+ "pinsir": "Pinsir",
+ "tauros": "Tauros",
+ "magikarp": "Magikarp",
+ "gyarados": "Gyarados",
+ "lapras": "Lapras",
+ "ditto": "Ditto",
+ "eevee": "Eevee",
+ "vaporeon": "Vaporeon",
+ "jolteon": "Jolteon",
+ "flareon": "Flareon",
+ "porygon": "Porygon",
+ "omanyte": "Omanyte",
+ "omastar": "Omastar",
+ "kabuto": "Kabuto",
+ "kabutops": "Kabutops",
+ "aerodactyl": "Aerodactyl",
+ "snorlax": "Snorlax",
+ "articuno": "Articuno",
+ "zapdos": "Zapdos",
+ "moltres": "Moltres",
+ "dratini": "Dratini",
+ "dragonair": "Dragonair",
+ "dragonite": "Dragonite",
+ "mewtwo": "Mewtwo",
+ "mew": "Mew",
+ "chikorita": "Chikorita",
+ "bayleef": "Bayleef",
+ "meganium": "Meganium",
+ "cyndaquil": "Cyndaquil",
+ "quilava": "Quilava",
+ "typhlosion": "Typhlosion",
+ "totodile": "Totodile",
+ "croconaw": "Croconaw",
+ "feraligatr": "Feraligatr",
+ "sentret": "Sentret",
+ "furret": "Furret",
+ "hoothoot": "Hoothoot",
+ "noctowl": "Noctowl",
+ "ledyba": "Ledyba",
+ "ledian": "Ledian",
+ "spinarak": "Spinarak",
+ "ariados": "Ariados",
+ "crobat": "Crobat",
+ "chinchou": "Chinchou",
+ "lanturn": "Lanturn",
+ "pichu": "Pichu",
+ "cleffa": "Cleffa",
+ "igglybuff": "Igglybuff",
+ "togepi": "Togepi",
+ "togetic": "Togetic",
+ "natu": "Natu",
+ "xatu": "Xatu",
+ "mareep": "Mareep",
+ "flaaffy": "Flaaffy",
+ "ampharos": "Ampharos",
+ "bellossom": "Bellossom",
+ "marill": "Marill",
+ "azumarill": "Azumarill",
+ "sudowoodo": "Sudowoodo",
+ "politoed": "Politoed",
+ "hoppip": "Hoppip",
+ "skiploom": "Skiploom",
+ "jumpluff": "Jumpluff",
+ "aipom": "Aipom",
+ "sunkern": "Sunkern",
+ "sunflora": "Sunflora",
+ "yanma": "Yanma",
+ "wooper": "Wooper",
+ "quagsire": "Quagsire",
+ "espeon": "Espeon",
+ "umbreon": "Umbreon",
+ "murkrow": "Murkrow",
+ "slowking": "Slowking",
+ "misdreavus": "Misdreavus",
+ "unown": "Unown",
+ "wobbuffet": "Wobbuffet",
+ "girafarig": "Girafarig",
+ "pineco": "Pineco",
+ "forretress": "Forretress",
+ "dunsparce": "Dunsparce",
+ "gligar": "Gligar",
+ "steelix": "Steelix",
+ "snubbull": "Snubbull",
+ "granbull": "Granbull",
+ "qwilfish": "Qwilfish",
+ "scizor": "Scizor",
+ "shuckle": "Shuckle",
+ "heracross": "Heracross",
+ "sneasel": "Sneasel",
+ "teddiursa": "Teddiursa",
+ "ursaring": "Ursaring",
+ "slugma": "Slugma",
+ "magcargo": "Magcargo",
+ "swinub": "Swinub",
+ "piloswine": "Piloswine",
+ "corsola": "Corsola",
+ "remoraid": "Remoraid",
+ "octillery": "Octillery",
+ "delibird": "Delibird",
+ "mantine": "Mantine",
+ "skarmory": "Skarmory",
+ "houndour": "Houndour",
+ "houndoom": "Houndoom",
+ "kingdra": "Kingdra",
+ "phanpy": "Phanpy",
+ "donphan": "Donphan",
+ "porygon2": "Porygon2",
+ "stantler": "Stantler",
+ "smeargle": "Smeargle",
+ "tyrogue": "Tyrogue",
+ "hitmontop": "Hitmontop",
+ "smoochum": "Smoochum",
+ "elekid": "Elekid",
+ "magby": "Magby",
+ "miltank": "Miltank",
+ "blissey": "Blissey",
+ "raikou": "Raikou",
+ "entei": "Entei",
+ "suicune": "Suicune",
+ "larvitar": "Larvitar",
+ "pupitar": "Pupitar",
+ "tyranitar": "Tyranitar",
+ "lugia": "Lugia",
+ "ho_oh": "Ho-Oh",
+ "celebi": "Celebi",
+ "treecko": "Treecko",
+ "grovyle": "Grovyle",
+ "sceptile": "Sceptile",
+ "torchic": "Torchic",
+ "combusken": "Combusken",
+ "blaziken": "Blaziken",
+ "mudkip": "Mudkip",
+ "marshtomp": "Marshtomp",
+ "swampert": "Swampert",
+ "poochyena": "Poochyena",
+ "mightyena": "Mightyena",
+ "zigzagoon": "Zigzagoon",
+ "linoone": "Linoone",
+ "wurmple": "Wurmple",
+ "silcoon": "Silcoon",
+ "beautifly": "Beautifly",
+ "cascoon": "Cascoon",
+ "dustox": "Dustox",
+ "lotad": "Lotad",
+ "lombre": "Lombre",
+ "ludicolo": "Ludicolo",
+ "seedot": "Seedot",
+ "nuzleaf": "Nuzleaf",
+ "shiftry": "Shiftry",
+ "taillow": "Taillow",
+ "swellow": "Swellow",
+ "wingull": "Wingull",
+ "pelipper": "Pelipper",
+ "ralts": "Ralts",
+ "kirlia": "Kirlia",
+ "gardevoir": "Gardevoir",
+ "surskit": "Surskit",
+ "masquerain": "Masquerain",
+ "shroomish": "Shroomish",
+ "breloom": "Breloom",
+ "slakoth": "Slakoth",
+ "vigoroth": "Vigoroth",
+ "slaking": "Slaking",
+ "nincada": "Nincada",
+ "ninjask": "Ninjask",
+ "shedinja": "Shedinja",
+ "whismur": "Whismur",
+ "loudred": "Loudred",
+ "exploud": "Exploud",
+ "makuhita": "Makuhita",
+ "hariyama": "Hariyama",
+ "azurill": "Azurill",
+ "nosepass": "Nosepass",
+ "skitty": "Skitty",
+ "delcatty": "Delcatty",
+ "sableye": "Sableye",
+ "mawile": "Mawile",
+ "aron": "Aron",
+ "lairon": "Lairon",
+ "aggron": "Aggron",
+ "meditite": "Meditite",
+ "medicham": "Medicham",
+ "electrike": "Electrike",
+ "manectric": "Manectric",
+ "plusle": "Plusle",
+ "minun": "Minun",
+ "volbeat": "Volbeat",
+ "illumise": "Illumise",
+ "roselia": "Roselia",
+ "gulpin": "Gulpin",
+ "swalot": "Swalot",
+ "carvanha": "Carvanha",
+ "sharpedo": "Sharpedo",
+ "wailmer": "Wailmer",
+ "wailord": "Wailord",
+ "numel": "Numel",
+ "camerupt": "Camerupt",
+ "torkoal": "Torkoal",
+ "spoink": "Spoink",
+ "grumpig": "Grumpig",
+ "spinda": "Spinda",
+ "trapinch": "Trapinch",
+ "vibrava": "Vibrava",
+ "flygon": "Flygon",
+ "cacnea": "Cacnea",
+ "cacturne": "Cacturne",
+ "swablu": "Swablu",
+ "altaria": "Altaria",
+ "zangoose": "Zangoose",
+ "seviper": "Seviper",
+ "lunatone": "Lunatone",
+ "solrock": "Solrock",
+ "barboach": "Barboach",
+ "whiscash": "Whiscash",
+ "corphish": "Corphish",
+ "crawdaunt": "Crawdaunt",
+ "baltoy": "Baltoy",
+ "claydol": "Claydol",
+ "lileep": "Lileep",
+ "cradily": "Cradily",
+ "anorith": "Anorith",
+ "armaldo": "Armaldo",
+ "feebas": "Feebas",
+ "milotic": "Milotic",
+ "castform": "Castform",
+ "kecleon": "Kecleon",
+ "shuppet": "Shuppet",
+ "banette": "Banette",
+ "duskull": "Duskull",
+ "dusclops": "Dusclops",
+ "tropius": "Tropius",
+ "chimecho": "Chimecho",
+ "absol": "Absol",
+ "wynaut": "Wynaut",
+ "snorunt": "Snorunt",
+ "glalie": "Glalie",
+ "spheal": "Spheal",
+ "sealeo": "Sealeo",
+ "walrein": "Walrein",
+ "clamperl": "Clamperl",
+ "huntail": "Huntail",
+ "gorebyss": "Gorebyss",
+ "relicanth": "Relicanth",
+ "luvdisc": "Luvdisc",
+ "bagon": "Bagon",
+ "shelgon": "Shelgon",
+ "salamence": "Salamence",
+ "beldum": "Beldum",
+ "metang": "Metang",
+ "metagross": "Metagross",
+ "regirock": "Regirock",
+ "regice": "Regice",
+ "registeel": "Registeel",
+ "latias": "Latias",
+ "latios": "Latios",
+ "kyogre": "Kyogre",
+ "groudon": "Groudon",
+ "rayquaza": "Rayquaza",
+ "jirachi": "Jirachi",
+ "deoxys": "Deoxys",
+ "turtwig": "Turtwig",
+ "grotle": "Grotle",
+ "torterra": "Torterra",
+ "chimchar": "Chimchar",
+ "monferno": "Monferno",
+ "infernape": "Infernape",
+ "piplup": "Piplup",
+ "prinplup": "Prinplup",
+ "empoleon": "Empoleon",
+ "starly": "Starly",
+ "staravia": "Staravia",
+ "staraptor": "Staraptor",
+ "bidoof": "Bidoof",
+ "bibarel": "Bibarel",
+ "kricketot": "Kricketot",
+ "kricketune": "Kricketune",
+ "shinx": "Shinx",
+ "luxio": "Luxio",
+ "luxray": "Luxray",
+ "budew": "Budew",
+ "roserade": "Roserade",
+ "cranidos": "Cranidos",
+ "rampardos": "Rampardos",
+ "shieldon": "Shieldon",
+ "bastiodon": "Bastiodon",
+ "burmy": "Burmy",
+ "wormadam": "Wormadam",
+ "mothim": "Mothim",
+ "combee": "Combee",
+ "vespiquen": "Vespiquen",
+ "pachirisu": "Pachirisu",
+ "buizel": "Buizel",
+ "floatzel": "Floatzel",
+ "cherubi": "Cherubi",
+ "cherrim": "Cherrim",
+ "shellos": "Shellos",
+ "gastrodon": "Gastrodon",
+ "ambipom": "Ambipom",
+ "drifloon": "Drifloon",
+ "drifblim": "Drifblim",
+ "buneary": "Buneary",
+ "lopunny": "Lopunny",
+ "mismagius": "Mismagius",
+ "honchkrow": "Honchkrow",
+ "glameow": "Glameow",
+ "purugly": "Purugly",
+ "chingling": "Chingling",
+ "stunky": "Stunky",
+ "skuntank": "Skuntank",
+ "bronzor": "Bronzor",
+ "bronzong": "Bronzong",
+ "bonsly": "Bonsly",
+ "mime_jr": "Mime Jr.",
+ "happiny": "Happiny",
+ "chatot": "Chatot",
+ "spiritomb": "Spiritomb",
+ "gible": "Gible",
+ "gabite": "Gabite",
+ "garchomp": "Garchomp",
+ "munchlax": "Munchlax",
+ "riolu": "Riolu",
+ "lucario": "Lucario",
+ "hippopotas": "Hippopotas",
+ "hippowdon": "Hippowdon",
+ "skorupi": "Skorupi",
+ "drapion": "Drapion",
+ "croagunk": "Croagunk",
+ "toxicroak": "Toxicroak",
+ "carnivine": "Carnivine",
+ "finneon": "Finneon",
+ "lumineon": "Lumineon",
+ "mantyke": "Mantyke",
+ "snover": "Snover",
+ "abomasnow": "Abomasnow",
+ "weavile": "Weavile",
+ "magnezone": "Magnezone",
+ "lickilicky": "Lickilicky",
+ "rhyperior": "Rhyperior",
+ "tangrowth": "Tangrowth",
+ "electivire": "Electivire",
+ "magmortar": "Magmortar",
+ "togekiss": "Togekiss",
+ "yanmega": "Yanmega",
+ "leafeon": "Leafeon",
+ "glaceon": "Glaceon",
+ "gliscor": "Gliscor",
+ "mamoswine": "Mamoswine",
+ "porygon_z": "Porygon-Z",
+ "gallade": "Gallade",
+ "probopass": "Probopass",
+ "dusknoir": "Dusknoir",
+ "froslass": "Froslass",
+ "rotom": "Rotom",
+ "uxie": "Uxie",
+ "mesprit": "Mesprit",
+ "azelf": "Azelf",
+ "dialga": "Dialga",
+ "palkia": "Palkia",
+ "heatran": "Heatran",
+ "regigigas": "Regigigas",
+ "giratina": "Giratina",
+ "cresselia": "Cresselia",
+ "phione": "Phione",
+ "manaphy": "Manaphy",
+ "darkrai": "Darkrai",
+ "shaymin": "Shaymin",
+ "arceus": "Arceus",
+ "victini": "Victini",
+ "snivy": "Snivy",
+ "servine": "Servine",
+ "serperior": "Serperior",
+ "tepig": "Tepig",
+ "pignite": "Pignite",
+ "emboar": "Emboar",
+ "oshawott": "Oshawott",
+ "dewott": "Dewott",
+ "samurott": "Samurott",
+ "patrat": "Patrat",
+ "watchog": "Watchog",
+ "lillipup": "Lillipup",
+ "herdier": "Herdier",
+ "stoutland": "Stoutland",
+ "purrloin": "Purrloin",
+ "liepard": "Liepard",
+ "pansage": "Pansage",
+ "simisage": "Simisage",
+ "pansear": "Pansear",
+ "simisear": "Simisear",
+ "panpour": "Panpour",
+ "simipour": "Simipour",
+ "munna": "Munna",
+ "musharna": "Musharna",
+ "pidove": "Pidove",
+ "tranquill": "Tranquill",
+ "unfezant": "Unfezant",
+ "blitzle": "Blitzle",
+ "zebstrika": "Zebstrika",
+ "roggenrola": "Roggenrola",
+ "boldore": "Boldore",
+ "gigalith": "Gigalith",
+ "woobat": "Woobat",
+ "swoobat": "Swoobat",
+ "drilbur": "Drilbur",
+ "excadrill": "Excadrill",
+ "audino": "Audino",
+ "timburr": "Timburr",
+ "gurdurr": "Gurdurr",
+ "conkeldurr": "Conkeldurr",
+ "tympole": "Tympole",
+ "palpitoad": "Palpitoad",
+ "seismitoad": "Seismitoad",
+ "throh": "Throh",
+ "sawk": "Sawk",
+ "sewaddle": "Sewaddle",
+ "swadloon": "Swadloon",
+ "leavanny": "Leavanny",
+ "venipede": "Venipede",
+ "whirlipede": "Whirlipede",
+ "scolipede": "Scolipede",
+ "cottonee": "Cottonee",
+ "whimsicott": "Whimsicott",
+ "petilil": "Petilil",
+ "lilligant": "Lilligant",
+ "basculin": "Basculin",
+ "sandile": "Sandile",
+ "krokorok": "Krokorok",
+ "krookodile": "Krookodile",
+ "darumaka": "Darumaka",
+ "darmanitan": "Darmanitan",
+ "maractus": "Maractus",
+ "dwebble": "Dwebble",
+ "crustle": "Crustle",
+ "scraggy": "Scraggy",
+ "scrafty": "Scrafty",
+ "sigilyph": "Sigilyph",
+ "yamask": "Yamask",
+ "cofagrigus": "Cofagrigus",
+ "tirtouga": "Tirtouga",
+ "carracosta": "Carracosta",
+ "archen": "Archen",
+ "archeops": "Archeops",
+ "trubbish": "Trubbish",
+ "garbodor": "Garbodor",
+ "zorua": "Zorua",
+ "zoroark": "Zoroark",
+ "minccino": "Minccino",
+ "cinccino": "Cinccino",
+ "gothita": "Gothita",
+ "gothorita": "Gothorita",
+ "gothitelle": "Gothitelle",
+ "solosis": "Solosis",
+ "duosion": "Duosion",
+ "reuniclus": "Reuniclus",
+ "ducklett": "Ducklett",
+ "swanna": "Swanna",
+ "vanillite": "Vanillite",
+ "vanillish": "Vanillish",
+ "vanilluxe": "Vanilluxe",
+ "deerling": "Deerling",
+ "sawsbuck": "Sawsbuck",
+ "emolga": "Emolga",
+ "karrablast": "Karrablast",
+ "escavalier": "Escavalier",
+ "foongus": "Foongus",
+ "amoonguss": "Amoonguss",
+ "frillish": "Frillish",
+ "jellicent": "Jellicent",
+ "alomomola": "Alomomola",
+ "joltik": "Joltik",
+ "galvantula": "Galvantula",
+ "ferroseed": "Ferroseed",
+ "ferrothorn": "Ferrothorn",
+ "klink": "Klink",
+ "klang": "Klang",
+ "klinklang": "Klinklang",
+ "tynamo": "Tynamo",
+ "eelektrik": "Eelektrik",
+ "eelektross": "Eelektross",
+ "elgyem": "Elgyem",
+ "beheeyem": "Beheeyem",
+ "litwick": "Litwick",
+ "lampent": "Lampent",
+ "chandelure": "Chandelure",
+ "axew": "Axew",
+ "fraxure": "Fraxure",
+ "haxorus": "Haxorus",
+ "cubchoo": "Cubchoo",
+ "beartic": "Beartic",
+ "cryogonal": "Cryogonal",
+ "shelmet": "Shelmet",
+ "accelgor": "Accelgor",
+ "stunfisk": "Stunfisk",
+ "mienfoo": "Mienfoo",
+ "mienshao": "Mienshao",
+ "druddigon": "Druddigon",
+ "golett": "Golett",
+ "golurk": "Golurk",
+ "pawniard": "Pawniard",
+ "bisharp": "Bisharp",
+ "bouffalant": "Bouffalant",
+ "rufflet": "Rufflet",
+ "braviary": "Braviary",
+ "vullaby": "Vullaby",
+ "mandibuzz": "Mandibuzz",
+ "heatmor": "Heatmor",
+ "durant": "Durant",
+ "deino": "Deino",
+ "zweilous": "Zweilous",
+ "hydreigon": "Hydreigon",
+ "larvesta": "Larvesta",
+ "volcarona": "Volcarona",
+ "cobalion": "Cobalion",
+ "terrakion": "Terrakion",
+ "virizion": "Virizion",
+ "tornadus": "Tornadus",
+ "thundurus": "Thundurus",
+ "reshiram": "Reshiram",
+ "zekrom": "Zekrom",
+ "landorus": "Landorus",
+ "kyurem": "Kyurem",
+ "keldeo": "Keldeo",
+ "meloetta": "Meloetta",
+ "genesect": "Genesect",
+ "chespin": "Chespin",
+ "quilladin": "Quilladin",
+ "chesnaught": "Chesnaught",
+ "fennekin": "Fennekin",
+ "braixen": "Braixen",
+ "delphox": "Delphox",
+ "froakie": "Froakie",
+ "frogadier": "Frogadier",
+ "greninja": "Greninja",
+ "bunnelby": "Bunnelby",
+ "diggersby": "Diggersby",
+ "fletchling": "Fletchling",
+ "fletchinder": "Fletchinder",
+ "talonflame": "Talonflame",
+ "scatterbug": "Scatterbug",
+ "spewpa": "Spewpa",
+ "vivillon": "Vivillon",
+ "litleo": "Litleo",
+ "pyroar": "Pyroar",
+ "flabebe": "Flabébé",
+ "floette": "Floette",
+ "florges": "Florges",
+ "skiddo": "Skiddo",
+ "gogoat": "Gogoat",
+ "pancham": "Pancham",
+ "pangoro": "Pangoro",
+ "furfrou": "Furfrou",
+ "espurr": "Espurr",
+ "meowstic": "Meowstic",
+ "honedge": "Honedge",
+ "doublade": "Doublade",
+ "aegislash": "Aegislash",
+ "spritzee": "Spritzee",
+ "aromatisse": "Aromatisse",
+ "swirlix": "Swirlix",
+ "slurpuff": "Slurpuff",
+ "inkay": "Inkay",
+ "malamar": "Malamar",
+ "binacle": "Binacle",
+ "barbaracle": "Barbaracle",
+ "skrelp": "Skrelp",
+ "dragalge": "Dragalge",
+ "clauncher": "Clauncher",
+ "clawitzer": "Clawitzer",
+ "helioptile": "Helioptile",
+ "heliolisk": "Heliolisk",
+ "tyrunt": "Tyrunt",
+ "tyrantrum": "Tyrantrum",
+ "amaura": "Amaura",
+ "aurorus": "Aurorus",
+ "sylveon": "Sylveon",
+ "hawlucha": "Hawlucha",
+ "dedenne": "Dedenne",
+ "carbink": "Carbink",
+ "goomy": "Goomy",
+ "sliggoo": "Sliggoo",
+ "goodra": "Goodra",
+ "klefki": "Klefki",
+ "phantump": "Phantump",
+ "trevenant": "Trevenant",
+ "pumpkaboo": "Pumpkaboo",
+ "gourgeist": "Gourgeist",
+ "bergmite": "Bergmite",
+ "avalugg": "Avalugg",
+ "noibat": "Noibat",
+ "noivern": "Noivern",
+ "xerneas": "Xerneas",
+ "yveltal": "Yveltal",
+ "zygarde": "Zygarde",
+ "diancie": "Diancie",
+ "hoopa": "Hoopa",
+ "volcanion": "Volcanion",
+ "rowlet": "Rowlet",
+ "dartrix": "Dartrix",
+ "decidueye": "Decidueye",
+ "litten": "Litten",
+ "torracat": "Torracat",
+ "incineroar": "Incineroar",
+ "popplio": "Popplio",
+ "brionne": "Brionne",
+ "primarina": "Primarina",
+ "pikipek": "Pikipek",
+ "trumbeak": "Trumbeak",
+ "toucannon": "Toucannon",
+ "yungoos": "Yungoos",
+ "gumshoos": "Gumshoos",
+ "grubbin": "Grubbin",
+ "charjabug": "Charjabug",
+ "vikavolt": "Vikavolt",
+ "crabrawler": "Crabrawler",
+ "crabominable": "Crabominable",
+ "oricorio": "Oricorio",
+ "cutiefly": "Cutiefly",
+ "ribombee": "Ribombee",
+ "rockruff": "Rockruff",
+ "lycanroc": "Lycanroc",
+ "wishiwashi": "Wishiwashi",
+ "mareanie": "Mareanie",
+ "toxapex": "Toxapex",
+ "mudbray": "Mudbray",
+ "mudsdale": "Mudsdale",
+ "dewpider": "Dewpider",
+ "araquanid": "Araquanid",
+ "fomantis": "Fomantis",
+ "lurantis": "Lurantis",
+ "morelull": "Morelull",
+ "shiinotic": "Shiinotic",
+ "salandit": "Salandit",
+ "salazzle": "Salazzle",
+ "stufful": "Stufful",
+ "bewear": "Bewear",
+ "bounsweet": "Bounsweet",
+ "steenee": "Steenee",
+ "tsareena": "Tsareena",
+ "comfey": "Comfey",
+ "oranguru": "Oranguru",
+ "passimian": "Passimian",
+ "wimpod": "Wimpod",
+ "golisopod": "Golisopod",
+ "sandygast": "Sandygast",
+ "palossand": "Palossand",
+ "pyukumuku": "Pyukumuku",
+ "type_null": "Type: Null",
+ "silvally": "Silvally",
+ "minior": "Minior",
+ "komala": "Komala",
+ "turtonator": "Turtonator",
+ "togedemaru": "Togedemaru",
+ "mimikyu": "Mimikyu",
+ "bruxish": "Bruxish",
+ "drampa": "Drampa",
+ "dhelmise": "Dhelmise",
+ "jangmo_o": "Jangmo-o",
+ "hakamo_o": "Hakamo-o",
+ "kommo_o": "Kommo-o",
+ "tapu_koko": "Tapu Koko",
+ "tapu_lele": "Tapu Lele",
+ "tapu_bulu": "Tapu Bulu",
+ "tapu_fini": "Tapu Fini",
+ "cosmog": "Cosmog",
+ "cosmoem": "Cosmoem",
+ "solgaleo": "Solgaleo",
+ "lunala": "Lunala",
+ "nihilego": "Nihilego",
+ "buzzwole": "Buzzwole",
+ "pheromosa": "Pheromosa",
+ "xurkitree": "Xurkitree",
+ "celesteela": "Celesteela",
+ "kartana": "Kartana",
+ "guzzlord": "Guzzlord",
+ "necrozma": "Necrozma",
+ "magearna": "Magearna",
+ "marshadow": "Marshadow",
+ "poipole": "Poipole",
+ "naganadel": "Naganadel",
+ "stakataka": "Stakataka",
+ "blacephalon": "Blacephalon",
+ "zeraora": "Zeraora",
+ "meltan": "Meltan",
+ "melmetal": "Melmetal",
+ "grookey": "Grookey",
+ "thwackey": "Thwackey",
+ "rillaboom": "Rillaboom",
+ "scorbunny": "Scorbunny",
+ "raboot": "Raboot",
+ "cinderace": "Cinderace",
+ "sobble": "Sobble",
+ "drizzile": "Drizzile",
+ "inteleon": "Inteleon",
+ "skwovet": "Skwovet",
+ "greedent": "Greedent",
+ "rookidee": "Rookidee",
+ "corvisquire": "Corvisquire",
+ "corviknight": "Corviknight",
+ "blipbug": "Blipbug",
+ "dottler": "Dottler",
+ "orbeetle": "Orbeetle",
+ "nickit": "Nickit",
+ "thievul": "Thievul",
+ "gossifleur": "Gossifleur",
+ "eldegoss": "Eldegoss",
+ "wooloo": "Wooloo",
+ "dubwool": "Dubwool",
+ "chewtle": "Chewtle",
+ "drednaw": "Drednaw",
+ "yamper": "Yamper",
+ "boltund": "Boltund",
+ "rolycoly": "Rolycoly",
+ "carkol": "Carkol",
+ "coalossal": "Coalossal",
+ "applin": "Applin",
+ "flapple": "Flapple",
+ "appletun": "Appletun",
+ "silicobra": "Silicobra",
+ "sandaconda": "Sandaconda",
+ "cramorant": "Cramorant",
+ "arrokuda": "Arrokuda",
+ "barraskewda": "Barraskewda",
+ "toxel": "Toxel",
+ "toxtricity": "Toxtricity",
+ "sizzlipede": "Sizzlipede",
+ "centiskorch": "Centiskorch",
+ "clobbopus": "Clobbopus",
+ "grapploct": "Grapploct",
+ "sinistea": "Sinistea",
+ "polteageist": "Polteageist",
+ "hatenna": "Hatenna",
+ "hattrem": "Hattrem",
+ "hatterene": "Hatterene",
+ "impidimp": "Impidimp",
+ "morgrem": "Morgrem",
+ "grimmsnarl": "Grimmsnarl",
+ "obstagoon": "Obstagoon",
+ "perrserker": "Perrserker",
+ "cursola": "Cursola",
+ "sirfetchd": "Sirfetch'd",
+ "mr_rime": "Mr. Rime",
+ "runerigus": "Runerigus",
+ "milcery": "Milcery",
+ "alcremie": "Alcremie",
+ "falinks": "Falinks",
+ "pincurchin": "Pincurchin",
+ "snom": "Snom",
+ "frosmoth": "Frosmoth",
+ "stonjourner": "Stonjourner",
+ "eiscue": "Eiscue",
+ "indeedee": "Indeedee",
+ "morpeko": "Morpeko",
+ "cufant": "Cufant",
+ "copperajah": "Copperajah",
+ "dracozolt": "Dracozolt",
+ "arctozolt": "Arctozolt",
+ "dracovish": "Dracovish",
+ "arctovish": "Arctovish",
+ "duraludon": "Duraludon",
+ "dreepy": "Dreepy",
+ "drakloak": "Drakloak",
+ "dragapult": "Dragapult",
+ "zacian": "Zacian",
+ "zamazenta": "Zamazenta",
+ "eternatus": "Eternatus",
+ "kubfu": "Kubfu",
+ "urshifu": "Urshifu",
+ "zarude": "Zarude",
+ "regieleki": "Regieleki",
+ "regidrago": "Regidrago",
+ "glastrier": "Glastrier",
+ "spectrier": "Spectrier",
+ "calyrex": "Calyrex",
+ "wyrdeer": "Wyrdeer",
+ "kleavor": "Kleavor",
+ "ursaluna": "Ursaluna",
+ "basculegion": "Basculegion",
+ "sneasler": "Sneasler",
+ "overqwil": "Overqwil",
+ "enamorus": "Enamorus",
+ "sprigatito": "Sprigatito",
+ "floragato": "Floragato",
+ "meowscarada": "Meowscarada",
+ "fuecoco": "Fuecoco",
+ "crocalor": "Crocalor",
+ "skeledirge": "Skeledirge",
+ "quaxly": "Quaxly",
+ "quaxwell": "Quaxwell",
+ "quaquaval": "Quaquaval",
+ "lechonk": "Lechonk",
+ "oinkologne": "Oinkologne",
+ "tarountula": "Tarountula",
+ "spidops": "Spidops",
+ "nymble": "Nymble",
+ "lokix": "Lokix",
+ "pawmi": "Pawmi",
+ "pawmo": "Pawmo",
+ "pawmot": "Pawmot",
+ "tandemaus": "Tandemaus",
+ "maushold": "Maushold",
+ "fidough": "Fidough",
+ "dachsbun": "Dachsbun",
+ "smoliv": "Smoliv",
+ "dolliv": "Dolliv",
+ "arboliva": "Arboliva",
+ "squawkabilly": "Squawkabilly",
+ "nacli": "Nacli",
+ "naclstack": "Naclstack",
+ "garganacl": "Garganacl",
+ "charcadet": "Charcadet",
+ "armarouge": "Armarouge",
+ "ceruledge": "Ceruledge",
+ "tadbulb": "Tadbulb",
+ "bellibolt": "Bellibolt",
+ "wattrel": "Wattrel",
+ "kilowattrel": "Kilowattrel",
+ "maschiff": "Maschiff",
+ "mabosstiff": "Mabosstiff",
+ "shroodle": "Shroodle",
+ "grafaiai": "Grafaiai",
+ "bramblin": "Bramblin",
+ "brambleghast": "Brambleghast",
+ "toedscool": "Toedscool",
+ "toedscruel": "Toedscruel",
+ "klawf": "Klawf",
+ "capsakid": "Capsakid",
+ "scovillain": "Scovillain",
+ "rellor": "Rellor",
+ "rabsca": "Rabsca",
+ "flittle": "Flittle",
+ "espathra": "Espathra",
+ "tinkatink": "Tinkatink",
+ "tinkatuff": "Tinkatuff",
+ "tinkaton": "Tinkaton",
+ "wiglett": "Wiglett",
+ "wugtrio": "Wugtrio",
+ "bombirdier": "Bombirdier",
+ "finizen": "Finizen",
+ "palafin": "Palafin",
+ "varoom": "Varoom",
+ "revavroom": "Revavroom",
+ "cyclizar": "Cyclizar",
+ "orthworm": "Orthworm",
+ "glimmet": "Glimmet",
+ "glimmora": "Glimmora",
+ "greavard": "Greavard",
+ "houndstone": "Houndstone",
+ "flamigo": "Flamigo",
+ "cetoddle": "Cetoddle",
+ "cetitan": "Cetitan",
+ "veluza": "Veluza",
+ "dondozo": "Dondozo",
+ "tatsugiri": "Tatsugiri",
+ "annihilape": "Annihilape",
+ "clodsire": "Clodsire",
+ "farigiraf": "Farigiraf",
+ "dudunsparce": "Dudunsparce",
+ "kingambit": "Kingambit",
+ "great_tusk": "Great Tusk",
+ "scream_tail": "Scream Tail",
+ "brute_bonnet": "Brute Bonnet",
+ "flutter_mane": "Flutter Mane",
+ "slither_wing": "Slither Wing",
+ "sandy_shocks": "Sandy Shocks",
+ "iron_treads": "Iron Treads",
+ "iron_bundle": "Iron Bundle",
+ "iron_hands": "Iron Hands",
+ "iron_jugulis": "Iron Jugulis",
+ "iron_moth": "Iron Moth",
+ "iron_thorns": "Iron Thorns",
+ "frigibax": "Frigibax",
+ "arctibax": "Arctibax",
+ "baxcalibur": "Baxcalibur",
+ "gimmighoul": "Gimmighoul",
+ "gholdengo": "Gholdengo",
+ "wo_chien": "Wo-Chien",
+ "chien_pao": "Chien-Pao",
+ "ting_lu": "Ting-Lu",
+ "chi_yu": "Chi-Yu",
+ "roaring_moon": "Roaring Moon",
+ "iron_valiant": "Iron Valiant",
+ "koraidon": "Koraidon",
+ "miraidon": "Miraidon",
+ "walking_wake": "Walking Wake",
+ "iron_leaves": "Iron Leaves",
+ "dipplin": "Dipplin",
+ "poltchageist": "Poltchageist",
+ "sinistcha": "Sinistcha",
+ "okidogi": "Okidogi",
+ "munkidori": "Munkidori",
+ "fezandipiti": "Fezandipiti",
+ "ogerpon": "Ogerpon",
+ "archaludon": "Archaludon",
+ "hydrapple": "Hydrapple",
+ "gouging_fire": "Gouging Fire",
+ "raging_bolt": "Raging Bolt",
+ "iron_boulder": "Iron Boulder",
+ "iron_crown": "Iron Crown",
+ "terapagos": "Terapagos",
+ "pecharunt": "Pecharunt",
+ "alola_rattata": "Rattata",
+ "alola_raticate": "Raticate",
+ "alola_raichu": "Raichu",
+ "alola_sandshrew": "Sandshrew",
+ "alola_sandslash": "Sandslash",
+ "alola_vulpix": "Vulpix",
+ "alola_ninetales": "Ninetales",
+ "alola_diglett": "Diglett",
+ "alola_dugtrio": "Dugtrio",
+ "alola_meowth": "Meowth",
+ "alola_persian": "Persian",
+ "alola_geodude": "Geodude",
+ "alola_graveler": "Graveler",
+ "alola_golem": "Golem",
+ "alola_grimer": "Grimer",
+ "alola_muk": "Muk",
+ "alola_exeggutor": "Exeggutor",
+ "alola_marowak": "Marowak",
+ "eternal_floette": "Floette",
+ "galar_meowth": "Meowth",
+ "galar_ponyta": "Ponyta",
+ "galar_rapidash": "Rapidash",
+ "galar_slowpoke": "Slowpoke",
+ "galar_slowbro": "Slowbro",
+ "galar_farfetchd": "Farfetch'd",
+ "galar_weezing": "Weezing",
+ "galar_mr_mime": "Mr. Mime",
+ "galar_articuno": "Articuno",
+ "galar_zapdos": "Zapdos",
+ "galar_moltres": "Moltres",
+ "galar_slowking": "Slowking",
+ "galar_corsola": "Corsola",
+ "galar_zigzagoon": "Zigzagoon",
+ "galar_linoone": "Linoone",
+ "galar_darumaka": "Darumaka",
+ "galar_darmanitan": "Darmanitan",
+ "galar_yamask": "Yamask",
+ "galar_stunfisk": "Stunfisk",
+ "hisui_growlithe": "Growlithe",
+ "hisui_arcanine": "Arcanine",
+ "hisui_voltorb": "Voltorb",
+ "hisui_electrode": "Electrode",
+ "hisui_typhlosion": "Typhlosion",
+ "hisui_qwilfish": "Qwilfish",
+ "hisui_sneasel": "Sneasel",
+ "hisui_samurott": "Samurott",
+ "hisui_lilligant": "Lilligant",
+ "hisui_zorua": "Zorua",
+ "hisui_zoroark": "Zoroark",
+ "hisui_braviary": "Braviary",
+ "hisui_sliggoo": "Sliggoo",
+ "hisui_goodra": "Goodra",
+ "hisui_avalugg": "Avalugg",
+ "hisui_decidueye": "Decidueye",
+ "paldea_tauros": "Tauros",
+ "paldea_wooper": "Wooper",
+ "bloodmoon_ursaluna": "Ursaluna",
+} as const;
\ No newline at end of file
diff --git a/src/locales/fr/menu.ts b/src/locales/fr/menu.ts
new file mode 100644
index 00000000000..aa4ae17cd1c
--- /dev/null
+++ b/src/locales/fr/menu.ts
@@ -0,0 +1,41 @@
+import { SimpleTranslationEntries } from "#app/plugins/i18n";
+
+export const menu: SimpleTranslationEntries = {
+ "cancel": "Annuler",
+ "continue": "Continuer",
+ "dailyRun": "Défi du jour (Bêta)",
+ "loadGame": "Charger la partie",
+ "newGame": "Nouvelle partie",
+ "selectGameMode": "Sélectionnez un mode de jeu.",
+ "logInOrCreateAccount": "Connectez-vous ou créez un compte pour commencer. Aucun e-mail requis !",
+ "failedToLoadSaveData": "Échec du chargement des données. Veuillez recharger la page.\nSi cela continue, veuillez contacter l'administrateur.",
+ "sessionSuccess": "Session chargée avec succès.",
+ "failedToLoadSession": "Vos données de session n'ont pas pu être chargées.\nElles pourraient être corrompues.",
+ "boyOrGirl": "Es-tu un garçon ou une fille ?",
+ "boy": "Garçon",
+ "girl": "Fille",
+ "bossAppeared": "Un {{bossName}} est apparaît.",
+ "trainerAppeared": "Un combat est lancé\npar {{trainerName}} !",
+ "singleWildAppeared": "Un {{pokemonName}} sauvage apparaît!",
+ "multiWildAppeared": "Un {{pokemonName1}} et un {{pokemonName2}}\nsauvages apparaissent !",
+ "playerComeBack": "{{pokemonName}}, on change!\nReviens !",
+ "trainerComeBack": "{{trainerName}} retire {{pokemonName}} !",
+ "playerGo": "{{pokemonName}} ! Go !",
+ "trainerGo": "{{pokemonName}} est envoyé par\n{{trainerName}} !",
+ "switchQuestion": "Voulez-vous changer\n{{pokemonName}} ?",
+ "pokemon": "Pokémon",
+ "sendOutPokemon": "{{pokemonName}} ! Go !",
+ "levelCapUp": "La limite de niveau\na été augmentée à {{levelCap}} !",
+ "moveNotImplemented": "{{moveName}} n'est pas encore implémenté et ne peut pas être sélectionné.",
+ "moveDisabled": "{{moveName}} est désactivé !",
+ "noPokeballForce": "Une force mystérieuse\nempêche l'utilisation des Poké Balls.",
+ "noPokeballTrainer": "Le Dresseur détourne la Ball\nVoler, c'est mal !",
+ "noPokeballMulti": "Impossible ! On ne peut pas viser\nquand il y a deux Pokémon!",
+ "noPokeballStrong": "Le Pokémon est trop fort pour être capturé !\nVous devez d'abord l'affaiblir !",
+ "noEscapeForce": "Une force mystérieuse\nempêche la fuite.",
+ "noEscapeTrainer": "On ne s'enfuit pas d'un\ncombat de Dresseurs !",
+ "noEscapePokemon": "{{moveName}} de {{pokemonName}}\nempêche {{escapeVerb}} !",
+ "escapeVerbSwitch": "le changement",
+ "escapeVerbFlee": "la fuite",
+ "notDisabled": "{{moveName}} n'est plus désactivé !",
+} as const;
\ No newline at end of file
diff --git a/src/locales/fr/move.ts b/src/locales/fr/move.ts
new file mode 100644
index 00000000000..02bd2d06837
--- /dev/null
+++ b/src/locales/fr/move.ts
@@ -0,0 +1,3812 @@
+import { MoveTranslationEntries } from "#app/plugins/i18n";
+
+export const move: MoveTranslationEntries = {
+ "pound": {
+ name: "Écras'Face",
+ effect: "Le lanceur écrase la cible avec l’un de ses membres, tels qu’une de ses pattes avant ou sa longue queue."
+ },
+ "karateChop": {
+ name: "Poing Karaté",
+ effect: "L'ennemi est tranché violemment. Taux de critique élevé."
+ },
+ "doubleSlap": {
+ name: "Torgnoles",
+ effect: "Gifle rapidement l'ennemi de deux à cinq fois d'affilée."
+ },
+ "cometPunch": {
+ name: "Poing Comète",
+ effect: "Une tornade de coups de poing qui frappe de deux à cinq fois d'affilée."
+ },
+ "megaPunch": {
+ name: "Ultimapoing",
+ effect: "La cible reçoit un coup de poing d’une grande puissance."
+ },
+ "payDay": {
+ name: "Jackpot",
+ effect: "Des pièces sont lancées sur la cible. Permet d’obtenir de l’argent à la fin du combat."
+ },
+ "firePunch": {
+ name: "Poing Feu",
+ effect: "Un coup de poing enflammé vient frapper la cible, ce qui peut la brûler (10% de chances)."
+ },
+ "icePunch": {
+ name: "Poing Glace",
+ effect: "Un coup de poing glacé vient frapper la cible, ce qui peut la geler (10% de chances)."
+ },
+ "thunderPunch": {
+ name: "Poing Éclair",
+ effect: "Un coup de poing électrique vient frapper la cible, ce qui peut la paralyser (10% de chances)."
+ },
+ "scratch": {
+ name: "Griffe",
+ effect: "Lacère la cible avec des griffes acérées pour lui infliger des dégâts."
+ },
+ "viseGrip": {
+ name: "Force Poigne",
+ effect: "La cible est attrapée et compressée par les côtés."
+ },
+ "guillotine": {
+ name: "Guillotine",
+ effect: "Des pinces lacèrent violemment la cible, la mettant K.O. sur le coup si elle est touchée."
+ },
+ "razorWind": {
+ name: "Coupe-Vent",
+ effect: "Attaque en deux tours. Des lames de vent frappent l'ennemi au second tour. Taux de critique élevé."
+ },
+ "swordsDance": {
+ name: "Danse Lames",
+ effect: "Une danse frénétique qui exalte l’esprit combatif. Augmente beaucoup l’Attaque du lanceur."
+ },
+ "cut": {
+ name: "Coupe",
+ effect: "Coupe la cible avec des lames ou des griffes."
+ },
+ "gust": {
+ name: "Tornade",
+ effect: "Le lanceur bat des ailes pour générer une bourrasque qui blesse la cible."
+ },
+ "wingAttack": {
+ name: "Cru-Ailes",
+ effect: "Le lanceur déploie largement ses ailes majestueuses pour attaquer la cible."
+ },
+ "whirlwind": {
+ name: "Cyclone",
+ effect: "Éjecte le Pokémon ennemi et le remplace par un autre. Lors d’un combat contre un Pokémon sauvage seul, met fin au combat."
+ },
+ "fly": {
+ name: "Vol",
+ effect: "Le lanceur s’envole au premier tour et frappe au second."
+ },
+ "bind": {
+ name: "Étreinte",
+ effect: "Le lanceur ligote la cible avec son corps allongé ou ses tentacules pour la compresser durant quatre à cinq tours."
+ },
+ "slam": {
+ name: "Souplesse",
+ effect: "Le lanceur utilise l’un de ses membres, tels qu’une queue ou une liane, pour infliger des dégâts à la cible."
+ },
+ "vineWhip": {
+ name: "Fouet Lianes",
+ effect: "Fouette la cible avec de fines lianes pour infliger des dégâts."
+ },
+ "stomp": {
+ name: "Écrasement",
+ effect: "Écrase la cible avec un énorme pied, ce qui peut aussi l’apeurer (30% de chances)."
+ },
+ "doubleKick": {
+ name: "Double Pied",
+ effect: "Deux coups de pied qui frappent la cible deux fois d’affilée."
+ },
+ "megaKick": {
+ name: "Ultimawashi",
+ effect: "Un coup de pied surpuissant qui frappe la cible."
+ },
+ "jumpKick": {
+ name: "Pied Sauté",
+ effect: "Le lanceur s'envole pour décocher un coup de pied sauté. S'il échoue, le lanceur se blesse."
+ },
+ "rollingKick": {
+ name: "Mawashi Geri",
+ effect: "Le lanceur effectue un coup de pied tournoyant et extrêmement rapide. Peut apeurer l'ennemi (30% de chances)."
+ },
+ "sandAttack": {
+ name: "Jet de Sable",
+ effect: "Lance du sable au visage de la cible pour baisser sa Précision."
+ },
+ "headbutt": {
+ name: "Coup d'Boule",
+ effect: "Le lanceur donne un coup de tête à la cible qui peut aussi l’apeurer (30% de chances)."
+ },
+ "hornAttack": {
+ name: "Koud'Korne",
+ effect: "Frappe la cible d’un coup de corne pointue pour infliger des dégâts."
+ },
+ "furyAttack": {
+ name: "Furie",
+ effect: "Frappe la cible deux à cinq fois d’affilée avec un membre pointu tel qu’un bec ou une corne."
+ },
+ "hornDrill": {
+ name: "Empal'Korne",
+ effect: "Un coup de corne en vrille qui empale la cible, la mettant K.O. sur le coup si elle est touchée."
+ },
+ "tackle": {
+ name: "Charge",
+ effect: "Le lanceur charge la cible et la percute de tout son poids."
+ },
+ "bodySlam": {
+ name: "Plaquage",
+ effect: "Le lanceur se laisse tomber sur la cible de tout son poids, ce qui peut aussi la paralyser (30% de chances)."
+ },
+ "wrap": {
+ name: "Ligotage",
+ effect: "Le lanceur ligote la cible avec son corps allongé ou ses tentacules pour la compresser durant quatre à cinq tours."
+ },
+ "takeDown": {
+ name: "Bélier",
+ effect: "Une charge violente qui blesse aussi légèrement le lanceur."
+ },
+ "thrash": {
+ name: "Mania",
+ effect: "Une attaque furieuse qui dure de deux à trois tours. Le lanceur devient confus."
+ },
+ "doubleEdge": {
+ name: "Damoclès",
+ effect: "Une charge dangereuse et imprudente. Blesse aussi gravement le lanceur."
+ },
+ "tailWhip": {
+ name: "Mimi-Queue",
+ effect: "Le lanceur remue son adorable queue pour tromper la vigilance de la cible et baisser sa Défense."
+ },
+ "poisonSting": {
+ name: "Dard-Venin",
+ effect: "Un dard toxique transperce la cible et peut aussi l’empoisonner (30% de chances)."
+ },
+ "twineedle": {
+ name: "Double Dard",
+ effect: "Un double coup de dard qui transperce l'ennemi deux fois d'affilée. Peut aussi l'empoisonner (36% de chances)."
+ },
+ "pinMissile": {
+ name: "Dard-Nuée",
+ effect: "Envoie une rafale de dards. Peut toucher de deux à cinq fois."
+ },
+ "leer": {
+ name: "Groz'Yeux",
+ effect: "Le lanceur fait les gros yeux à la cible pour l’intimider et baisser sa Défense."
+ },
+ "bite": {
+ name: "Morsure",
+ effect: "Le lanceur utilise ses canines tranchantes pour mordre la cible, ce qui peut aussi l’apeurer (30% de chances)."
+ },
+ "growl": {
+ name: "Rugissement",
+ effect: "Le lanceur pousse un cri tout mimi pour tromper la vigilance de la cible et baisser son Attaque."
+ },
+ "roar": {
+ name: "Hurlement",
+ effect: "Effraie le Pokémon ennemi et le remplace par un autre. Lors d’un combat contre un Pokémon sauvage seul, met fin au combat."
+ },
+ "sing": {
+ name: "Berceuse",
+ effect: "Une berceuse plonge la cible dans un profond sommeil."
+ },
+ "supersonic": {
+ name: "Ultrason",
+ effect: "Le lanceur produit d’étranges ondes sonores qui rendent la cible confuse."
+ },
+ "sonicBoom": {
+ name: "Sonic Boom",
+ effect: "Une onde de choc destructrice qui inflige toujours 20 PV de dégâts."
+ },
+ "disable": {
+ name: "Entrave",
+ effect: "Empêche la cible de répéter sa dernière attaque. Dure quatre tours."
+ },
+ "acid": {
+ name: "Acide",
+ effect: "Le lanceur attaque la cible avec un jet d’acide corrosif qui peut aussi baisser sa Défense Spéciale."
+ },
+ "ember": {
+ name: "Flammèche",
+ effect: "La cible est attaquée par une faible flamme qui peut aussi la brûler."
+ },
+ "flamethrower": {
+ name: "Lance-Flammes",
+ effect: "La cible reçoit un torrent de flammes qui peut aussi la brûler (10% de chances)."
+ },
+ "mist": {
+ name: "Brume",
+ effect: "Une brume blanche enveloppe le lanceur et ses alliés et empêche la réduction des stats pour cinq tours."
+ },
+ "waterGun": {
+ name: "Pistolet à O",
+ effect: "De l’eau est projetée avec force sur la cible."
+ },
+ "hydroPump": {
+ name: "Hydrocanon",
+ effect: "Un puissant jet d’eau est dirigé sur la cible."
+ },
+ "surf": {
+ name: "Surf",
+ effect: "Une énorme vague s’abat sur le champ de bataille et inflige des dégâts à tous les Pokémon autour du lanceur."
+ },
+ "iceBeam": {
+ name: "Laser Glace",
+ effect: "Un rayon de glace frappe la cible, ce qui peut aussi la geler (10% de chances)."
+ },
+ "blizzard": {
+ name: "Blizzard",
+ effect: "Une violente tempête de neige s’abat sur la cible, ce qui peut aussi la geler (10% de chances)."
+ },
+ "psybeam": {
+ name: "Rafale Psy",
+ effect: "Un étrange rayon frappe la cible, ce qui peut aussi la rendre confuse."
+ },
+ "bubbleBeam": {
+ name: "Bulles d'O",
+ effect: "Des bulles sont envoyées avec puissance sur la cible, ce qui peut aussi baisser sa Vitesse."
+ },
+ "auroraBeam": {
+ name: "Onde Boréale",
+ effect: "Le lanceur envoie un rayon arc-en-ciel sur la cible, ce qui peut aussi baisser son Attaque."
+ },
+ "hyperBeam": {
+ name: "Ultralaser",
+ effect: "Le lanceur projette un puissant rayon sur la cible, mais doit se reposer au tour suivant."
+ },
+ "peck": {
+ name: "Picpic",
+ effect: "Le lanceur frappe la cible d’un bec acéré ou d’une corne pointue pour infliger des dégâts."
+ },
+ "drillPeck": {
+ name: "Bec Vrille",
+ effect: "Une attaque utilisant le bec comme une perceuse."
+ },
+ "submission": {
+ name: "Sacrifice",
+ effect: "Le lanceur agrippe l'ennemi et l'écrase au sol. Blesse aussi légèrement le lanceur."
+ },
+ "lowKick": {
+ name: "Balayage",
+ effect: "Un grand coup de pied bas qui fauche la cible. Plus celle-ci est lourde, plus la puissance de cette capacité augmente."
+ },
+ "counter": {
+ name: "Riposte",
+ effect: "Une riposte qui répond à toute attaque physique en infligeant le double de dégâts."
+ },
+ "seismicToss": {
+ name: "Frappe Atlas",
+ effect: "La cible est projetée grâce au pouvoir de la gravité. Cette capacité inflige des dégâts égaux au niveau du lanceur."
+ },
+ "strength": {
+ name: "Force",
+ effect: "Le lanceur cogne la cible de toutes ses forces."
+ },
+ "absorb": {
+ name: "Vole-Vie",
+ effect: "Une attaque qui absorbe les nutriments et convertit la moitié des dégâts infligés en PV pour le lanceur."
+ },
+ "megaDrain": {
+ name: "Méga-Sangsue",
+ effect: "Une attaque qui absorbe les nutriments et convertit la moitié des dégâts infligés en PV pour le lanceur."
+ },
+ "leechSeed": {
+ name: "Vampigraine",
+ effect: "Une graine est semée sur la cible. À chaque tour, elle lui dérobe des PV que le lanceur récupère."
+ },
+ "growth": {
+ name: "Croissance",
+ effect: "Le corps du lanceur se développe. Augmente l’Attaque et l’Attaque Spéciale."
+ },
+ "razorLeaf": {
+ name: "Tranch'Herbe",
+ effect: "Des feuilles aiguisées comme des rasoirs entaillent la cible. Taux de critiques élevé."
+ },
+ "solarBeam": {
+ name: "Lance-Soleil",
+ effect: "Le lanceur absorbe une grande quantité de lumière au premier tour et envoie un rayon puissant au tour suivant."
+ },
+ "poisonPowder": {
+ name: "Poudre Toxik",
+ effect: "Une poudre toxique empoisonne la cible."
+ },
+ "stunSpore": {
+ name: "Para-Spore",
+ effect: "Le lanceur répand sur la cible une poudre qui la paralyse."
+ },
+ "sleepPowder": {
+ name: "Poudre Dodo",
+ effect: "Le lanceur répand une poudre soporifique qui endort la cible."
+ },
+ "petalDance": {
+ name: "Danse Fleurs",
+ effect: "Le lanceur attaque en projetant des pétales pendant deux à trois tours avant de céder à la confusion."
+ },
+ "stringShot": {
+ name: "Sécrétion",
+ effect: "Le lanceur crache de la soie pour ligoter la cible et beaucoup baisser sa Vitesse."
+ },
+ "dragonRage": {
+ name: "Draco-Rage",
+ effect: "La colère du lanceur déclenche une onde de choc destructrice qui inflige toujours 40 PV de dégâts."
+ },
+ "fireSpin": {
+ name: "Danse Flammes",
+ effect: "Un tourbillon de flammes emprisonne la cible pendant quatre à cinq tours."
+ },
+ "thunderShock": {
+ name: "Éclair",
+ effect: "Une décharge électrique tombe sur la cible, ce qui peut aussi la paralyser (10% de chances)."
+ },
+ "thunderbolt": {
+ name: "Tonnerre",
+ effect: "Une grosse décharge électrique tombe sur la cible, ce qui peut aussi la paralyser (10% de chances)."
+ },
+ "thunderWave": {
+ name: "Cage Éclair",
+ effect: "Un faible choc électrique paralyse la cible."
+ },
+ "thunder": {
+ name: "Fatal-Foudre",
+ effect: "La foudre tombe sur la cible pour lui infliger des dégâts, ce qui peut aussi la paralyser (30% de chances)."
+ },
+ "rockThrow": {
+ name: "Jet-Pierres",
+ effect: "Le lanceur soulève une pierre et la lance sur la cible."
+ },
+ "earthquake": {
+ name: "Séisme",
+ effect: "Le lanceur provoque un tremblement de terre touchant tous les Pokémon autour de lui."
+ },
+ "fissure": {
+ name: "Abîme",
+ effect: "Le lanceur fait tomber la cible dans une crevasse. Si cette attaque réussit, elle met K.O. sur le coup."
+ },
+ "dig": {
+ name: "Tunnel",
+ effect: "Le lanceur creuse au premier tour et frappe au second."
+ },
+ "toxic": {
+ name: "Fil Toxique",
+ effect: "Tisse un fil imprégné de venin. Empoisonne la cible et baisse sa Vitesse."
+ },
+ "confusion": {
+ name: "Choc Mental",
+ effect: "Une faible vague télékinétique frappe la cible, ce qui peut aussi la plonger dans la confusion."
+ },
+ "psychic": {
+ name: "Psyko",
+ effect: "Une puissante force télékinétique frappe la cible, ce qui peut aussi faire baisser sa Défense Spéciale."
+ },
+ "hypnosis": {
+ name: "Hypnose",
+ effect: "Le lanceur hypnotise la cible pour la plonger dans un profond sommeil."
+ },
+ "meditate": {
+ name: "Yoga",
+ effect: "Le lanceur médite pour éveiller son pouvoir latent et augmenter son Attaque."
+ },
+ "agility": {
+ name: "Hâte",
+ effect: "Le lanceur se relaxe et allège son corps pour beaucoup augmenter sa Vitesse."
+ },
+ "quickAttack": {
+ name: "Vive-attaque",
+ effect: "Le lanceur fonce sur la cible si rapidement qu’on parvient à peine à le discerner. Frappe en priorité."
+ },
+ "rage": {
+ name: "Frénésie",
+ effect: "Une fois activée, cette capacité augmente l'Attaque du lanceur à mesure que celui-ci subit des attaques."
+ },
+ "teleport": {
+ name: "Téléport",
+ effect: "Permet de changer de place avec un autre Pokémon de l’équipe s’il y en a. Quand cette capacité est utilisée par un Pokémon sauvage, celui-ci fuit le combat."
+ },
+ "nightShade": {
+ name: "Ombre Nocturne",
+ effect: "Le lanceur invoque un mirage et inflige des dégâts égaux au niveau du lanceur."
+ },
+ "mimic": {
+ name: "Copie",
+ effect: "Le lanceur copie la dernière capacité utilisée par la cible et la conserve tant qu’il reste au combat."
+ },
+ "screech": {
+ name: "Grincement",
+ effect: "Le lanceur émet un son strident qui donne envie de se boucher les oreilles. Baisse beaucoup la Défense de la cible."
+ },
+ "doubleTeam": {
+ name: "Reflet",
+ effect: "Le lanceur se déplace si vite qu’il crée des copies illusoires de lui-même, augmentant son Esquive."
+ },
+ "recover": {
+ name: "Soin",
+ effect: "Un soin qui permet au lanceur de récupérer jusqu’à la moitié de ses PV max."
+ },
+ "harden": {
+ name: "Armure",
+ effect: "Le lanceur contracte tous ses muscles pour augmenter sa Défense."
+ },
+ "minimize": {
+ name: "Lilliput",
+ effect: "Le lanceur comprime son corps pour se faire tout petit et beaucoup augmenter son Esquive."
+ },
+ "smokescreen": {
+ name: "Brouillard",
+ effect: "Le lanceur disperse un nuage d’encre ou de fumée qui réduit la Précision de la cible."
+ },
+ "confuseRay": {
+ name: "Onde Folie",
+ effect: "Une lumière étrange qui plonge la cible dans un état de confusion."
+ },
+ "withdraw": {
+ name: "Repli",
+ effect: "Le lanceur se recroqueville dans sa carapace, ce qui augmente sa Défense."
+ },
+ "defenseCurl": {
+ name: "Boul'Armure",
+ effect: "Le lanceur s’enroule pour cacher ses points faibles, ce qui augmente sa Défense."
+ },
+ "barrier": {
+ name: "Bouclier",
+ effect: "Le lanceur érige un mur solide qui augmente beaucoup sa Défense."
+ },
+ "lightScreen": {
+ name: "Mur Lumière",
+ effect: "Crée un fabuleux mur de lumière qui réduit les dégâts causés par les capacités spéciales pendant cinq tours."
+ },
+ "haze": {
+ name: "Buée Noire",
+ effect: "Crée un brouillard qui annule les changements de stats de tous les Pokémon au combat."
+ },
+ "reflect": {
+ name: "Protection",
+ effect: "Crée un fabuleux mur de lumière qui réduit les dégâts causés par les capacités physiques pendant cinq tours."
+ },
+ "focusEnergy": {
+ name: "Puissance",
+ effect: "Le lanceur prend une profonde inspiration et se concentre pour augmenter son taux de critiques."
+ },
+ "bide": {
+ name: "Patience",
+ effect: "Le lanceur encaisse les coups durant deux tours et réplique en infligeant le double des dégâts subis."
+ },
+ "metronome": {
+ name: "Métronome",
+ effect: "Le lanceur agite un doigt et stimule son cerveau pour utiliser presque n’importe quelle capacité au hasard."
+ },
+ "mirrorMove": {
+ name: "Mimique",
+ effect: "Le lanceur riposte à l'attaque de l'ennemi avec la même attaque."
+ },
+ "selfDestruct": {
+ name: "Destruction",
+ effect: "Le lanceur explose en blessant tous les Pokémon autour de lui. Le lanceur tombe K.O."
+ },
+ "eggBomb": {
+ name: "Bombe Oeuf",
+ effect: "De toutes ses forces, le lanceur jette un gros œuf sur l'ennemi pour lui infliger des dégâts."
+ },
+ "lick": {
+ name: "Léchouille",
+ effect: "Un grand coup de langue qui inflige des dégâts à la cible et peut aussi la paralyser (30% de chances)."
+ },
+ "smog": {
+ name: "Bain de Smog",
+ effect: "Le lanceur projette de la boue bizarre sur la cible. Les changements de stats de la cible sont annulés."
+ },
+ "sludge": {
+ name: "Détritus",
+ effect: "Des détritus toxiques sont projetés sur la cible, ce qui peut aussi l’empoisonner (30% de chances)."
+ },
+ "boneClub": {
+ name: "Massd'Os",
+ effect: "Le lanceur frappe l'ennemi à grands coups d'os. Peut aussi l'apeurer (10% de chances)."
+ },
+ "fireBlast": {
+ name: "Déflagration",
+ effect: "Un déluge de flammes ardentes submerge la cible, ce qui peut aussi la brûler (10% de chances)."
+ },
+ "waterfall": {
+ name: "Cascade",
+ effect: "Le lanceur charge la cible avec une intensité remarquable, ce qui peut l’apeurer (20% de chances)."
+ },
+ "clamp": {
+ name: "Claquoir",
+ effect: "Le lanceur piège l'ennemi dans sa dure coquille et l'écrase pendant quatre à cinq tours."
+ },
+ "swift": {
+ name: "Météores",
+ effect: "Le lanceur envoie des rayons d’étoiles qui touchent toujours la cible."
+ },
+ "skullBash": {
+ name: "Coud'Krâne",
+ effect: "Le lanceur baisse la tête pour augmenter sa Défense au premier tour et percuter l'ennemi au second."
+ },
+ "spikeCannon": {
+ name: "Picanon",
+ effect: "Envoie une rafale de dards. Peut toucher de deux à cinq fois."
+ },
+ "constrict": {
+ name: "Constriction",
+ effect: "De longs tentacules ou lianes attaquent l'ennemi. Peut aussi baisser sa Vitesse."
+ },
+ "amnesia": {
+ name: "Amnésie",
+ effect: "Le lanceur fait le vide dans son esprit pour oublier ses soucis. Augmente beaucoup sa Défense Spéciale."
+ },
+ "kinesis": {
+ name: "Télékinésie",
+ effect: "Le lanceur distrait l'ennemi en pliant une cuiller, ce qui baisse sa Précision."
+ },
+ "softBoiled": {
+ name: "E-Coque",
+ effect: "Le lanceur récupère jusqu’à la moitié de ses PV max."
+ },
+ "highJumpKick": {
+ name: "Pied Voltige",
+ effect: "Le lanceur s’élance pour effectuer un coup de genou sauté. S’il échoue, le lanceur se blesse."
+ },
+ "glare": {
+ name: "Regard Médusant",
+ effect: "Le lanceur intimide la cible grâce à son regard terrifiant pour la paralyser."
+ },
+ "dreamEater": {
+ name: "Dévorêve",
+ effect: "Le lanceur mange le rêve de la cible endormie et récupère en PV la moitié des dégâts infligés."
+ },
+ "poisonGas": {
+ name: "Gaz Toxik",
+ effect: "Le lanceur empoisonne la cible en lui projetant un nuage de gaz toxique au visage."
+ },
+ "barrage": {
+ name: "Pilonnage",
+ effect: "Projette de deux à cinq grosses boules sur l'ennemi."
+ },
+ "leechLife": {
+ name: "Vampirisme",
+ effect: "Une attaque qui aspire le sang de la cible. La moitié des dégâts sont convertis en PV pour le lanceur."
+ },
+ "lovelyKiss": {
+ name: "Grobisou",
+ effect: "Le lanceur fait un bisou à l'ennemi en prenant une mine effrayante. Endort l'ennemi."
+ },
+ "skyAttack": {
+ name: "Piqué",
+ effect: "Une attaque en deux tours au taux de critiques élevé, qui peut aussi apeurer la cible (30% de chances)."
+ },
+ "transform": {
+ name: "Morphing",
+ effect: "Le lanceur devient une copie de sa cible et obtient la même palette de capacités."
+ },
+ "bubble": {
+ name: "Écume",
+ effect: "Des bulles frappent l'ennemi. Peut réduire sa Vitesse."
+ },
+ "dizzyPunch": {
+ name: "Uppercut",
+ effect: "Un enchaînement de coups de poing cadencés frappe l'ennemi. Peut aussi le rendre confus."
+ },
+ "spore": {
+ name: "Spore",
+ effect: "Le lanceur répand un nuage de spores qui endort."
+ },
+ "flash": {
+ name: "Flash",
+ effect: "Explosion lumineuse qui fait baisser la Précision de l'ennemi."
+ },
+ "psywave": {
+ name: "Vague Psy",
+ effect: "Une étrange onde d'énergie chaude frappe l'ennemi. Cette attaque est d'intensité variable."
+ },
+ "splash": {
+ name: "Trempette",
+ effect: "Le lanceur barbote et éclabousse les environs. Cette capacité n’a aucun effet."
+ },
+ "acidArmor": {
+ name: "Acidarmure",
+ effect: "Le lanceur modifie sa structure moléculaire pour se liquéfier et beaucoup augmenter sa Défense."
+ },
+ "crabhammer": {
+ name: "Pince-Masse",
+ effect: "Une grande pince martèle la cible. Taux de critiques élevé."
+ },
+ "explosion": {
+ name: "Explosion",
+ effect: "Le lanceur explose et inflige des dégâts à tous les Pokémon autour de lui. Met K.O. le lanceur."
+ },
+ "furySwipes": {
+ name: "Combo-Griffe",
+ effect: "La cible est lacérée par des faux ou des griffes de deux à cinq fois d’affilée."
+ },
+ "bonemerang": {
+ name: "Osmerang",
+ effect: "Le lanceur projette son os comme un boomerang. Cette attaque frappe à l'aller et au retour."
+ },
+ "rest": {
+ name: "Repos",
+ effect: "Le lanceur regagne tous ses PV et ses altérations de statut sont soignées, puis il dort pendant deux tours."
+ },
+ "rockSlide": {
+ name: "Éboulement",
+ effect: "Le lanceur envoie de gros rochers sur la cible pour lui infliger des dégâts, ce qui peut aussi l’apeurer (30% de chances)."
+ },
+ "hyperFang": {
+ name: "Croc de Mort",
+ effect: "Le lanceur mord l'ennemi à l'aide de ses incisives aiguisées. Peut aussi l'apeurer (10% de chances)."
+ },
+ "sharpen": {
+ name: "Affûtage",
+ effect: "Le lanceur réduit son nombre de polygones pour accentuer ses angles et augmenter son Attaque."
+ },
+ "conversion": {
+ name: "Conversion",
+ effect: "Le lanceur change de type pour prendre celui de la première capacité de sa liste."
+ },
+ "triAttack": {
+ name: "Triplattaque",
+ effect: "Le lanceur envoie trois boules d’énergie simultanément qui peuvent aussi paralyser, brûler ou geler la cible (6.67% de chances)."
+ },
+ "superFang": {
+ name: "Croc Fatal",
+ effect: "Une vilaine morsure d’incisives qui réduit de moitié les PV de la cible."
+ },
+ "slash": {
+ name: "Tranche",
+ effect: "Le lanceur donne un coup de griffe ou de faux. Taux de critiques élevé."
+ },
+ "substitute": {
+ name: "Clonage",
+ effect: "Le lanceur crée un clone en sacrifiant quelques PV. Ce clone sert de leurre."
+ },
+ "struggle": {
+ name: "Lutte",
+ effect: "Une attaque désespérée, utilisée quand le lanceur n’a plus de PP. Le blesse aussi légèrement."
+ },
+ "sketch": {
+ name: "Gribouille",
+ effect: "Le lanceur apprend la dernière capacité utilisée par la cible. Gribouille disparaît après utilisation."
+ },
+ "tripleKick": {
+ name: "Triple Pied",
+ effect: "Une salve de un à trois coups de pied dont la puissance augmente à chaque coup porté."
+ },
+ "thief": {
+ name: "Larcin",
+ effect: "Le lanceur attaque la cible et vole son objet. Le lanceur ne peut rien voler s’il tient déjà un objet."
+ },
+ "spiderWeb": {
+ name: "Toile",
+ effect: "Le lanceur enserre l'ennemi à l'aide d'une fine soie gluante pour l'empêcher de fuir le combat."
+ },
+ "mindReader": {
+ name: "Lire-Esprit",
+ effect: "Le lanceur analyse les mouvements de l'ennemi pour être sûr de toucher au coup suivant."
+ },
+ "nightmare": {
+ name: "Cauchemar",
+ effect: "Un cauchemar qui inflige des dégâts à chaque tour à un ennemi endormi."
+ },
+ "flameWheel": {
+ name: "Roue de Feu",
+ effect: "Le lanceur s’entoure de feu et charge la cible, ce qui peut aussi la brûler (10% de chances)."
+ },
+ "snore": {
+ name: "Ronflement",
+ effect: "Une attaque qui ne fonctionne que si le lanceur est endormi. Le boucan peut aussi apeurer la cible (30% de chances)."
+ },
+ "curse": {
+ name: "Malédiction",
+ effect: "Une capacité à l’effet différent selon que le lanceur est un Pokémon Spectre ou non."
+ },
+ "flail": {
+ name: "Gigotage",
+ effect: "Le lanceur attaque en gigotant dans tous les sens. Plus ses PV sont bas, plus l’attaque est puissante."
+ },
+ "conversion2": {
+ name: "Conversion 2",
+ effect: "Le lanceur change de type pour être résistant au type de la dernière attaque lancée par sa cible."
+ },
+ "aeroblast": {
+ name: "Aéroblast",
+ effect: "Le lanceur projette une tornade sur l'ennemi pour infliger des dégâts. Taux de critique élevé."
+ },
+ "cottonSpore": {
+ name: "Spore Coton",
+ effect: "Le lanceur libère des spores cotonneuses qui collent à la cible et baissent beaucoup sa Vitesse."
+ },
+ "reversal": {
+ name: "Contre",
+ effect: "Le lanceur ne retient plus ses coups. Plus ses PV sont bas, plus la puissance de cette capacité augmente."
+ },
+ "spite": {
+ name: "Dépit",
+ effect: "Le lanceur exprime son ressentiment en retirant 4 PP à la dernière capacité utilisée par la cible."
+ },
+ "powderSnow": {
+ name: "Poudreuse",
+ effect: "Le lanceur projette de la neige poudreuse qui peut aussi geler la cible (10% de chances)."
+ },
+ "protect": {
+ name: "Abri",
+ effect: "Le lanceur se protège de toutes les attaques. Peut échouer si utilisée plusieurs fois de suite."
+ },
+ "machPunch": {
+ name: "Mach Punch",
+ effect: "Coup de poing fulgurant. Frappe en priorité."
+ },
+ "scaryFace": {
+ name: "Grimace",
+ effect: "Le lanceur fait une grimace qui effraie la cible et réduit beaucoup sa Vitesse."
+ },
+ "feintAttack": {
+ name: "Feinte",
+ effect: "Le lanceur s'approche l'air de rien avant de frapper par surprise. N'échoue jamais."
+ },
+ "sweetKiss": {
+ name: "Doux Baiser",
+ effect: "Le lanceur envoie un bisou si mignon et désarmant qu’il plonge la cible dans la confusion."
+ },
+ "bellyDrum": {
+ name: "Cognobidon",
+ effect: "Améliore l’Attaque au maximum en sacrifiant la moitié des PV max."
+ },
+ "sludgeBomb": {
+ name: "Bombe Beurk",
+ effect: "Des détritus toxiques sont projetés sur la cible, ce qui peut aussi l’empoisonner (30% de chances)."
+ },
+ "mudSlap": {
+ name: "Coud'Boue",
+ effect: "Le lanceur envoie de la boue au visage de la cible pour infliger des dégâts et baisser sa Précision."
+ },
+ "octazooka": {
+ name: "Octazooka",
+ effect: "Le lanceur attaque en projetant de l'encre au visage de l'ennemi. Peut aussi baisser sa Précision."
+ },
+ "spikes": {
+ name: "Picots",
+ effect: "Le lanceur disperse des picots sur le sol pour blesser tout ennemi qui entre au combat."
+ },
+ "zapCannon": {
+ name: "Élecanon",
+ effect: "Un boulet de canon électrifié qui inflige des dégâts à la cible et la paralyse."
+ },
+ "foresight": {
+ name: "Clairvoyance",
+ effect: "Permet de toucher un Pokémon Spectre avec n'importe quelle capacité ou de toucher un ennemi insaisissable."
+ },
+ "destinyBond": {
+ name: "Lien du Destin",
+ effect: "Si un assaillant porte un coup fatal au lanceur après qu’il a activé cette capacité, ils sont tous les deux mis K.O. La capacité échoue si elle est immédiatement réutilisée."
+ },
+ "perishSong": {
+ name: "Requiem",
+ effect: "Tout Pokémon qui entend ce requiem est K.O. dans trois tours à moins qu’il ne soit remplacé."
+ },
+ "icyWind": {
+ name: "Vent Glace",
+ effect: "Une bourrasque de vent froid blesse la cible et réduit sa Vitesse."
+ },
+ "detect": {
+ name: "Détection",
+ effect: "Le lanceur se protège de toutes les attaques. Peut échouer si utilisée plusieurs fois de suite."
+ },
+ "boneRush": {
+ name: "Charge Os",
+ effect: "Le lanceur frappe la cible avec un os de deux à cinq fois d’affilée."
+ },
+ "lockOn": {
+ name: "Verrouillage",
+ effect: "Le lanceur verrouille la cible pour ne pas la rater au tour suivant."
+ },
+ "outrage": {
+ name: "Colère",
+ effect: "Le lanceur enrage et attaque pendant deux ou trois tours avant de devenir confus."
+ },
+ "sandstorm": {
+ name: "Tempête de Sable",
+ effect: "Une tempête de sable blesse tous les Pokémon pendant cinq tours, sauf ceux de type Roche, Sol ou Acier. Augmente la Défense Spéciale des Pokémon Roche."
+ },
+ "gigaDrain": {
+ name: "Giga-Sangsue",
+ effect: "Une attaque qui absorbe les nutriments et convertit la moitié des dégâts infligés en PV pour le lanceur."
+ },
+ "endure": {
+ name: "Ténacité",
+ effect: "Le lanceur résiste aux attaques avec 1 PV. Peut échouer si utilisée plusieurs fois de suite."
+ },
+ "charm": {
+ name: "Charme",
+ effect: "Le lanceur fait les yeux doux pour berner la cible et beaucoup réduire son Attaque."
+ },
+ "rollout": {
+ name: "Roulade",
+ effect: "Un rocher roule sur la cible pendant cinq tours. L’attaque gagne en puissance à chaque coup."
+ },
+ "falseSwipe": {
+ name: "Faux-Chage",
+ effect: "Le lanceur retient ses coups pour que la cible garde au moins 1 PV et ne tombe pas K.O."
+ },
+ "swagger": {
+ name: "Vantardise",
+ effect: "Fait enrager la cible et la plonge dans la confusion, mais augmente beaucoup son Attaque."
+ },
+ "milkDrink": {
+ name: "Lait à Boire",
+ effect: "Le lanceur récupère jusqu’à la moitié de ses PV max."
+ },
+ "spark": {
+ name: "Étincelle",
+ effect: "Le lanceur envoie une charge électrique sur la cible qui peut aussi la paralyser (30% de chances)."
+ },
+ "furyCutter": {
+ name: "Taillade",
+ effect: "Un coup de faux ou de griffe dont la puissance augmente quand il touche plusieurs fois d’affilée."
+ },
+ "steelWing": {
+ name: "Ailes d'Acier",
+ effect: "Le lanceur frappe la cible avec des ailes d’acier, ce qui peut aussi augmenter la Défense du lanceur."
+ },
+ "meanLook": {
+ name: "Regard Noir",
+ effect: "Le lanceur pétrifie la cible en lui lançant un regard noir qui la rend incapable de quitter le terrain."
+ },
+ "attract": {
+ name: "Attraction",
+ effect: "Si la cible est du sexe opposé, elle tombe amoureuse et rechigne alors à attaquer."
+ },
+ "sleepTalk": {
+ name: "Blabla Dodo",
+ effect: "Le lanceur utilise une de ses capacités au hasard. Il ne peut utiliser cette capacité que quand il dort."
+ },
+ "healBell": {
+ name: "Glas de Soin",
+ effect: "Carillon apaisant qui soigne les altérations de statut de tous les Pokémon de l’équipe."
+ },
+ "return": {
+ name: "Retour",
+ effect: "Plus le Pokémon apprécie son Dresseur, plus la puissance de cette attaque furieuse augmente."
+ },
+ "present": {
+ name: "Cadeau",
+ effect: "Le lanceur attaque en offrant un cadeau piégé à la cible, mais le cadeau peut parfois restaurer les PV de celle-ci à la place."
+ },
+ "frustration": {
+ name: "Frustration",
+ effect: "Moins le Pokémon aime son Dresseur, plus cette attaque est puissante."
+ },
+ "safeguard": {
+ name: "Rune Protect",
+ effect: "Crée un champ protecteur qui empêche toutes les altérations de statut pendant cinq tours."
+ },
+ "painSplit": {
+ name: "Balance",
+ effect: "Le lanceur ajoute ses PV à ceux de sa cible et les répartit équitablement."
+ },
+ "sacredFire": {
+ name: "Feu Sacré",
+ effect: "Le lanceur génère un feu mystique d'une intensité redoutable pour attaquer l'ennemi. Peut aussi le brûler (50% de chances)."
+ },
+ "magnitude": {
+ name: "Ampleur",
+ effect: "Provoque un tremblement de terre d'intensité variable qui affecte tous les Pokémon alentour. L'efficacité varie."
+ },
+ "dynamicPunch": {
+ name: "Dynamo-Poing",
+ effect: "Le lanceur rassemble ses forces et envoie un coup de poing à la cible, ce qui la rend confuse à coup sûr."
+ },
+ "megahorn": {
+ name: "Mégacorne",
+ effect: "Le lanceur inflige un grand coup de corne à la cible."
+ },
+ "dragonBreath": {
+ name: "Draco-Souffle",
+ effect: "Le lanceur souffle fort sur la cible pour lui infliger des dégâts, ce qui peut aussi la paralyser (30% de chances)."
+ },
+ "batonPass": {
+ name: "Relais",
+ effect: "Le lanceur échange sa place et tout changement de stats avec un Pokémon de l’équipe."
+ },
+ "encore": {
+ name: "Encore",
+ effect: "Le lanceur oblige la cible à répéter la dernière capacité utilisée durant trois tours."
+ },
+ "pursuit": {
+ name: "Poursuite",
+ effect: "Une attaque qui inflige deux fois plus de dégâts à un ennemi qui s'apprête à être remplacé."
+ },
+ "rapidSpin": {
+ name: "Tour Rapide",
+ effect: "Le lanceur attaque en tournant sur lui-même. Sa Vitesse augmente également. Il se libère également des effets de capacités comme Étreinte, Ligotage ou Vampigraine."
+ },
+ "sweetScent": {
+ name: "Doux Parfum",
+ effect: "Un doux parfum qui réduit beaucoup l’Esquive de la cible."
+ },
+ "ironTail": {
+ name: "Queue de Fer",
+ effect: "Le lanceur attaque la cible avec une queue de fer, ce qui peut aussi baisser la Défense de la cible."
+ },
+ "metalClaw": {
+ name: "Griffe Acier",
+ effect: "Attaque avec des griffes d’acier. Peut aussi augmenter l’Attaque du lanceur."
+ },
+ "vitalThrow": {
+ name: "Corps Perdu",
+ effect: "Le lanceur porte son coup en dernier. En échange, cette capacité n'échoue jamais."
+ },
+ "morningSun": {
+ name: "Aurore",
+ effect: "Un soin qui restaure des PV au lanceur. Son efficacité varie en fonction de la météo."
+ },
+ "synthesis": {
+ name: "Synthèse",
+ effect: "Un soin qui restaure des PV au lanceur. Son efficacité varie en fonction de la météo."
+ },
+ "moonlight": {
+ name: "Rayon Lune",
+ effect: "Un soin qui restaure des PV au lanceur. Son efficacité varie en fonction de la météo."
+ },
+ "hiddenPower": {
+ name: "Puissance Cachée",
+ effect: "Attaque dont le type dépend du Pokémon qui l'utilise."
+ },
+ "crossChop": {
+ name: "Coup Croix",
+ effect: "Le lanceur délivre un coup double en croisant les avant-bras. Taux de critiques élevé."
+ },
+ "twister": {
+ name: "Ouragan",
+ effect: "Le lanceur déclenche un terrible ouragan sur la cible, ce qui peut aussi apeurer celle-ci (20% de chances)."
+ },
+ "rainDance": {
+ name: "Danse Pluie",
+ effect: "Invoque de fortes pluies qui durent cinq tours, augmentant la puissance des capacités de type Eau et baissant celle des capacités de type Feu."
+ },
+ "sunnyDay": {
+ name: "Zénith",
+ effect: "Fait briller le soleil pendant cinq tours, augmentant la puissance des capacités de type Feu et baissant celle des capacités de type Eau."
+ },
+ "crunch": {
+ name: "Mâchouille",
+ effect: "Le lanceur mord la cible de ses crocs pointus, ce qui peut aussi baisser sa Défense."
+ },
+ "mirrorCoat": {
+ name: "Voile Miroir",
+ effect: "Une riposte qui contre n’importe quelle capacité spéciale en infligeant le double des dégâts subis."
+ },
+ "psychUp": {
+ name: "Boost",
+ effect: "Une autohypnose qui permet au lanceur de copier les changements de stats de la cible."
+ },
+ "extremeSpeed": {
+ name: "Vitesse Extrême",
+ effect: "Le lanceur charge à une vitesse renversante. Frappe en priorité."
+ },
+ "ancientPower": {
+ name: "Pouvoir Antique",
+ effect: "Une attaque préhistorique qui peut augmenter toutes les stats du lanceur d’un seul coup."
+ },
+ "shadowBall": {
+ name: "Ball'Ombre",
+ effect: "Le lanceur projette une grande ombre sur la cible qui peut aussi faire baisser la Défense Spéciale de celle-ci."
+ },
+ "futureSight": {
+ name: "Prescience",
+ effect: "De l’énergie psychique vient frapper la cible deux tours après l’utilisation de cette capacité."
+ },
+ "rockSmash": {
+ name: "Éclate-Roc",
+ effect: "Le lanceur porte un coup de poing à la cible, ce qui peut baisser la Défense de celle-ci."
+ },
+ "whirlpool": {
+ name: "Siphon",
+ effect: "Le lanceur piège la cible dans une trombe d’eau pendant quatre à cinq tours."
+ },
+ "beatUp": {
+ name: "Baston",
+ effect: "Le lanceur appelle tous les Pokémon de son équipe à attaquer. Plus ils sont nombreux, plus il y a d’attaques."
+ },
+ "fakeOut": {
+ name: "Bluff",
+ effect: "Le lanceur frappe en priorité et apeure la cible. La capacité ne fonctionne que si elle est utilisée immédiatement en entrant au combat."
+ },
+ "uproar": {
+ name: "Brouhaha",
+ effect: "Le lanceur attaque en rugissant durant trois tours. Pendant ce temps, aucun Pokémon ne peut s’endormir."
+ },
+ "stockpile": {
+ name: "Stockage",
+ effect: "Le lanceur emmagasine de l’énergie et augmente sa Défense et sa Défense Spéciale. Peut être utilisée trois fois."
+ },
+ "spitUp": {
+ name: "Relâche",
+ effect: "Libère dans une attaque l’énergie précédemment emmagasinée avec Stockage. La puissance augmente en fonction du nombre de fois où Stockage a été utilisée."
+ },
+ "swallow": {
+ name: "Avale",
+ effect: "Le lanceur absorbe l’énergie emmagasinée avec Stockage pour restaurer ses PV. Le nombre de PV soignés augmente en fonction du nombre de fois où Stockage a été utilisée."
+ },
+ "heatWave": {
+ name: "Canicule",
+ effect: "Le lanceur provoque une vague de chaleur qui peut aussi brûler la cible (10% de chances)."
+ },
+ "hail": {
+ name: "Grêle",
+ effect: "Invoque une tempête de grêle qui dure cinq tours. Ne blesse pas les Pokémon de type Glace."
+ },
+ "torment": {
+ name: "Tourmente",
+ effect: "Le lanceur irrite la cible pour l’empêcher d’utiliser la même capacité deux fois de suite."
+ },
+ "flatter": {
+ name: "Flatterie",
+ effect: "Rend la cible confuse, mais augmente son Attaque Spéciale."
+ },
+ "willOWisp": {
+ name: "Feu Follet",
+ effect: "Le lanceur projette des flammes maléfiques à la cible pour lui infliger une brûlure."
+ },
+ "memento": {
+ name: "Souvenir",
+ effect: "Le lanceur est mis K.O., mais l’Attaque et l’Attaque Spéciale de la cible baissent beaucoup."
+ },
+ "facade": {
+ name: "Façade",
+ effect: "Une capacité dont la puissance double lorsque le lanceur est empoisonné, paralysé ou brûlé."
+ },
+ "focusPunch": {
+ name: "Mitra-Poing",
+ effect: "Le lanceur se concentre avant d’attaquer. Échoue s’il est touché avant d’avoir frappé."
+ },
+ "smellingSalts": {
+ name: "Stimulant",
+ effect: "Cette attaque est doublement efficace sur les Pokémon paralysés, mais elle soigne leur paralysie."
+ },
+ "followMe": {
+ name: "Par Ici",
+ effect: "Le lanceur attire l’attention des cibles présentes pour les forcer à n’attaquer que le lanceur."
+ },
+ "naturePower": {
+ name: "Force Nature",
+ effect: "Une attaque qui tire sa force de la nature. Son type varie selon le terrain."
+ },
+ "charge": {
+ name: "Chargeur",
+ effect: "Le lanceur se charge en électricité, ce qui augmente la puissance de la prochaine capacité Électrik qu’il utilisera. Sa Défense Spéciale augmente également."
+ },
+ "taunt": {
+ name: "Provoc",
+ effect: "Le lanceur provoque la cible, ce qui oblige celle-ci à n’utiliser que des capacités qui infligent des dégâts pendant trois tours."
+ },
+ "helpingHand": {
+ name: "Coup d'Main",
+ effect: "Le lanceur donne un coup de main à son allié, qui voit la puissance de ses capacités augmenter."
+ },
+ "trick": {
+ name: "Tour de Magie",
+ effect: "Le lanceur prend la cible au dépourvu et l’oblige à échanger son objet contre le sien."
+ },
+ "rolePlay": {
+ name: "Imitation",
+ effect: "Imite la cible et copie son talent."
+ },
+ "wish": {
+ name: "Voeu",
+ effect: "Un vœu qui permet au lanceur ou au Pokémon entrant sur le terrain au tour suivant de récupérer la moitié des PV max du lanceur."
+ },
+ "assist": {
+ name: "Assistance",
+ effect: "Le lanceur se dépêche d'utiliser une capacité au hasard parmi celles des Pokémon de l'équipe."
+ },
+ "ingrain": {
+ name: "Racines",
+ effect: "Le lanceur plante ses racines et récupère des PV à chaque tour. Une fois enraciné, il ne peut plus fuir."
+ },
+ "superpower": {
+ name: "Surpuissance",
+ effect: "Une attaque puissante, mais qui baisse l’Attaque et la Défense du lanceur."
+ },
+ "magicCoat": {
+ name: "Reflet Magik",
+ effect: "Une barrière qui renvoie les capacités comme Vampigraine et celles affectant le statut et les stats."
+ },
+ "recycle": {
+ name: "Recyclage",
+ effect: "Recycle un objet tenu à usage unique déjà utilisé lors du combat pour pouvoir l’utiliser à nouveau."
+ },
+ "revenge": {
+ name: "Vendetta",
+ effect: "Une attaque deux fois plus puissante si le lanceur a été blessé par l'ennemi durant ce tour."
+ },
+ "brickBreak": {
+ name: "Casse-Brique",
+ effect: "Le lanceur attaque avec le tranchant de la main. Permet aussi de briser les barrières comme Mur Lumière et Protection."
+ },
+ "yawn": {
+ name: "Bâillement",
+ effect: "Le lanceur fait bâiller la cible, qui s’endort au tour suivant."
+ },
+ "knockOff": {
+ name: "Sabotage",
+ effect: "Fait plus de dégâts aux cibles qui tiennent un objet. De plus, fait tomber cet objet et empêche la cible de l’utiliser jusqu’à la fin du combat."
+ },
+ "endeavor": {
+ name: "Effort",
+ effect: "Une attaque qui réduit les PV de la cible au niveau des PV du lanceur."
+ },
+ "eruption": {
+ name: "Éruption",
+ effect: "Le lanceur laisse exploser sa colère. Plus ses PV sont bas, moins l’attaque est puissante."
+ },
+ "skillSwap": {
+ name: "Échange",
+ effect: "Le lanceur utilise ses pouvoirs psychiques pour échanger son talent avec la cible."
+ },
+ "imprison": {
+ name: "Possessif",
+ effect: "Si la cible et le lanceur ont des capacités en commun, la cible ne pourra pas les utiliser."
+ },
+ "refresh": {
+ name: "Régénération",
+ effect: "Le lanceur se repose pour guérir d'un empoisonnement, d'une brûlure ou d'une paralysie."
+ },
+ "grudge": {
+ name: "Rancune",
+ effect: "Si le lanceur est mis K.O., sa rancune épuise les PP de la capacité utilisée par l'ennemi pour le mettre K.O."
+ },
+ "snatch": {
+ name: "Saisie",
+ effect: "Lorsqu'une capacité de soin ou de changement de stats est utilisée, le lanceur vole ses effets."
+ },
+ "secretPower": {
+ name: "Force Cachée",
+ effect: "Les effets de cette attaque varient en fonction de l'environnement."
+ },
+ "dive": {
+ name: "Plongée",
+ effect: "Le lanceur plonge sous l’eau au premier tour et frappe au second."
+ },
+ "armThrust": {
+ name: "Cogne",
+ effect: "Un déluge de coups adressés avec la paume qui frappe de deux à cinq fois d’affilée."
+ },
+ "camouflage": {
+ name: "Camouflage",
+ effect: "Modifie le type du lanceur en fonction du terrain, comme une berge, une grotte, l'herbe, etc."
+ },
+ "tailGlow": {
+ name: "Lumi-Queue",
+ effect: "Le lanceur regarde un flash lumineux fixement. Augmente énormément son Attaque Spéciale."
+ },
+ "lusterPurge": {
+ name: "Lumi-Éclat",
+ effect: "Le lanceur libère un éclair lumineux. Peut aussi baisser la Défense Spéciale de l'ennemi."
+ },
+ "mistBall": {
+ name: "Ball'Brume",
+ effect: "Une bulle de brume inflige des dégâts à l'ennemi. Peut aussi réduire son Attaque Spéciale."
+ },
+ "featherDance": {
+ name: "Danse Plumes",
+ effect: "Une montagne de plumes ensevelit la cible et réduit beaucoup son Attaque."
+ },
+ "teeterDance": {
+ name: "Danse Folle",
+ effect: "Danse qui rend confus tous les Pokémon autour du lanceur."
+ },
+ "blazeKick": {
+ name: "Pied Brûleur",
+ effect: "Le lanceur envoie un coup de pied au taux de critiques élevé. Peut aussi brûler la cible (10% de chances)."
+ },
+ "mudSport": {
+ name: "Lance-Boue",
+ effect: "Asperge les alentours de boue. Affaiblit les capacités Électrik pendant cinq tours."
+ },
+ "iceBall": {
+ name: "Ball'Glace",
+ effect: "Frappe l'ennemi pendant cinq tours. L'attaque gagne en puissance à chaque coup."
+ },
+ "needleArm": {
+ name: "Poing Dard",
+ effect: "Le lanceur attaque en fouettant l'ennemi de ses bras épineux. Peut aussi l'apeurer (30% de chances)."
+ },
+ "slackOff": {
+ name: "Paresse",
+ effect: "Le lanceur se tourne les pouces et récupère jusqu’à la moitié de ses PV max."
+ },
+ "hyperVoice": {
+ name: "Mégaphone",
+ effect: "Le lanceur pousse un cri dont l’écho terrifiant a le pouvoir d’infliger des dégâts à la cible."
+ },
+ "poisonFang": {
+ name: "Crochet Venin",
+ effect: "Le lanceur mord la cible avec ses crocs toxiques, ce qui peut aussi l’empoisonner gravement (50% de chances)."
+ },
+ "crushClaw": {
+ name: "Éclate Griffe",
+ effect: "Le lanceur lacère la cible avec des griffes solides et aiguisées, ce qui peut aussi baisser la Défense de celle-ci."
+ },
+ "blastBurn": {
+ name: "Rafale Feu",
+ effect: "Une explosion ardente consume la cible. Le lanceur doit se reposer au tour suivant."
+ },
+ "hydroCannon": {
+ name: "Hydroblast",
+ effect: "Le lanceur projette un missile d’eau sur la cible, mais il doit se reposer au tour suivant."
+ },
+ "meteorMash": {
+ name: "Poing Météore",
+ effect: "Un coup de poing lancé à la vitesse d’un météore. Peut aussi augmenter l’Attaque du lanceur."
+ },
+ "astonish": {
+ name: "Étonnement",
+ effect: "Le lanceur attaque la cible en poussant un cri terrifiant qui peut aussi l’apeurer (30% de chances)."
+ },
+ "weatherBall": {
+ name: "Ball'Météo",
+ effect: "Une capacité dont la puissance et le type varient en fonction du temps qu’il fait."
+ },
+ "aromatherapy": {
+ name: "Aromathérapie",
+ effect: "Le lanceur libère un parfum apaisant qui guérit tous les problèmes de statut de l'équipe."
+ },
+ "fakeTears": {
+ name: "Croco Larme",
+ effect: "Le lanceur fait semblant de pleurer pour troubler la cible et beaucoup baisser sa Défense Spéciale."
+ },
+ "airCutter": {
+ name: "Tranch'Air",
+ effect: "Le lanceur appelle des vents tranchants qui lacèrent la cible. Taux de critiques élevé."
+ },
+ "overheat": {
+ name: "Surchauffe",
+ effect: "Le lanceur attaque la cible à pleine puissance, mais le contrecoup baisse beaucoup l’Attaque Spéciale du lanceur."
+ },
+ "odorSleuth": {
+ name: "Flair",
+ effect: "Permet de toucher un Pokémon Spectre avec n'importe quelle capacité ou de toucher un ennemi insaisissable."
+ },
+ "rockTomb": {
+ name: "Tomberoche",
+ effect: "Des rochers frappent la cible et baissent sa Vitesse."
+ },
+ "silverWind": {
+ name: "Vent Argenté",
+ effect: "Vent qui projette des écailles poudreuses sur l'ennemi. Peut aussi monter toutes les stats du lanceur."
+ },
+ "metalSound": {
+ name: "Strido-Son",
+ effect: "Un cri horrible tel un crissement métallique qui réduit beaucoup la Défense Spéciale de la cible."
+ },
+ "grassWhistle": {
+ name: "Siffl'Herbe",
+ effect: "Le lanceur joue une douce mélodie qui plonge l'ennemi dans un profond sommeil."
+ },
+ "tickle": {
+ name: "Chatouille",
+ effect: "Le lanceur chatouille la cible, ce qui baisse son Attaque et sa Défense."
+ },
+ "cosmicPower": {
+ name: "Force Cosmique",
+ effect: "Le lanceur absorbe un pouvoir mystique spatial qui augmente sa Défense et sa Défense Spéciale."
+ },
+ "waterSpout": {
+ name: "Giclédo",
+ effect: "Le lanceur attaque avec un jet d’eau. Moins il a de PV et moins l’attaque est puissante."
+ },
+ "signalBeam": {
+ name: "Rayon Signal",
+ effect: "Le lanceur projette un rayon de lumière sinistre. Peut aussi rendre l'ennemi confus."
+ },
+ "shadowPunch": {
+ name: "Poing Ombre",
+ effect: "Le lanceur se fond dans les ombres pour porter un coup de poing. N’échoue jamais."
+ },
+ "extrasensory": {
+ name: "Extrasenseur",
+ effect: "Le lanceur attaque avec un pouvoir étrange et invisible qui peut aussi apeurer la cible (10% de chances)."
+ },
+ "skyUppercut": {
+ name: "Stratopercut",
+ effect: "Le lanceur attaque avec un uppercut. Il envoie son poing vers le ciel de toutes ses forces."
+ },
+ "sandTomb": {
+ name: "Tourbi-Sable",
+ effect: "Le lanceur emprisonne la cible dans une tempête de sable terrifiante qui dure de quatre à cinq tours."
+ },
+ "sheerCold": {
+ name: "Glaciation",
+ effect: "Une vague de froid glacial frappe la cible pour la mettre K.O. en un coup. Cela a peu de chances de réussir si le lanceur ne possède pas le type Glace."
+ },
+ "muddyWater": {
+ name: "Ocroupi",
+ effect: "Le lanceur attaque en projetant de l’eau boueuse. Peut aussi réduire la Précision de la cible."
+ },
+ "bulletSeed": {
+ name: "Balle Graine",
+ effect: "Le lanceur mitraille la cible avec une rafale de graines. De deux à cinq rafales sont lancées à la suite."
+ },
+ "aerialAce": {
+ name: "Aéropique",
+ effect: "Le lanceur prend la cible de vitesse et la lacère. N’échoue jamais."
+ },
+ "icicleSpear": {
+ name: "Stalactite",
+ effect: "Le lanceur jette des pics de glace sur la cible, de deux à cinq fois de suite."
+ },
+ "ironDefense": {
+ name: "Mur de Fer",
+ effect: "L’épiderme du lanceur devient dur comme du fer, ce qui augmente beaucoup sa Défense."
+ },
+ "block": {
+ name: "Barrage",
+ effect: "Le lanceur bloque la route de la cible pour empêcher sa fuite."
+ },
+ "howl": {
+ name: "Grondement",
+ effect: "Le lanceur pousse un grand cri d’encouragement, ce qui augmente son Attaque et celle de ses alliés."
+ },
+ "dragonClaw": {
+ name: "Draco-Griffe",
+ effect: "Le lanceur lacère la cible de ses grandes griffes aiguisées."
+ },
+ "frenzyPlant": {
+ name: "Végé-Attaque",
+ effect: "Un violent coup de racines s’abat sur la cible. Le lanceur doit se reposer au tour suivant."
+ },
+ "bulkUp": {
+ name: "Gonflette",
+ effect: "Le lanceur tend ses muscles pour se gonfler, ce qui booste son Attaque et sa Défense."
+ },
+ "bounce": {
+ name: "Rebond",
+ effect: "Le lanceur bondit très haut et plonge sur la cible au second tour, ce qui peut aussi la paralyser (30% de chances)."
+ },
+ "mudShot": {
+ name: "Tir de Boue",
+ effect: "Le lanceur attaque en projetant de la boue sur la cible, ce qui réduit aussi la Vitesse de celle-ci."
+ },
+ "poisonTail": {
+ name: "Queue-Poison",
+ effect: "Le lanceur attaque la cible avec sa queue, ce qui peut aussi l’empoisonner (10% de chances). Taux de critiques élevés."
+ },
+ "covet": {
+ name: "Implore",
+ effect: "Le lanceur s’approche de la cible avec un air angélique afin de dérober l’objet qu’elle tient."
+ },
+ "voltTackle": {
+ name: "Électacle",
+ effect: "Le lanceur électrifie son corps avant de charger. Le choc blesse aussi gravement le lanceur et peut paralyser la cible (10% de chances)."
+ },
+ "magicalLeaf": {
+ name: "Feuille Magik",
+ effect: "Le lanceur disperse d’étranges feuilles qui poursuivent la cible. N’échoue jamais."
+ },
+ "waterSport": {
+ name: "Tourniquet",
+ effect: "Asperge d'eau les alentours. Affaiblit les capacités de type Feu pendant cinq tours."
+ },
+ "calmMind": {
+ name: "Plénitude",
+ effect: "Le lanceur se concentre et fait le vide dans son esprit pour augmenter son Attaque Spéciale et sa Défense Spéciale."
+ },
+ "leafBlade": {
+ name: "Lame Feuille",
+ effect: "Une feuille coupante comme une lame entaille la cible. Taux de critiques élevé."
+ },
+ "dragonDance": {
+ name: "Danse Draco",
+ effect: "Une danse mystique dont le rythme effréné augmente l’Attaque et la Vitesse du lanceur."
+ },
+ "rockBlast": {
+ name: "Boule Roc",
+ effect: "Le lanceur projette un rocher sur la cible de deux à cinq fois d’affilée."
+ },
+ "shockWave": {
+ name: "Onde de Choc",
+ effect: "Le lanceur envoie un choc électrique rapide à la cible. N’échoue jamais."
+ },
+ "waterPulse": {
+ name: "Vibraqua",
+ effect: "Le lanceur projette une aura aquatique sur la cible, et peut la rendre confuse."
+ },
+ "doomDesire": {
+ name: "Voeu Destructeur",
+ effect: "Le lanceur génère une sphère lumineuse qu'il projette sur l'ennemi deux tours plus tard."
+ },
+ "psychoBoost": {
+ name: "Psycho-Boost",
+ effect: "Attaque l'ennemi à pleine puissance. Le contrecoup baisse beaucoup l'Attaque Spéciale du lanceur."
+ },
+ "roost": {
+ name: "Atterrissage",
+ effect: "Le lanceur atterrit et se repose. Restaure jusqu’à la moitié de ses PV max."
+ },
+ "gravity": {
+ name: "Gravité",
+ effect: "Pendant cinq tours, les Pokémon Vol ou qui ont Lévitation deviennent sensibles aux capacités Sol, et les capacités volantes deviennent inutilisables."
+ },
+ "miracleEye": {
+ name: "Oeil Miracle",
+ effect: "Permet de toucher un Pokémon Ténèbres avec les capacités de type Psy ou de toucher un ennemi ayant beaucoup d'esquive."
+ },
+ "wakeUpSlap": {
+ name: "Réveil Forcé",
+ effect: "Cette attaque inflige d'importants dégâts à un Pokémon endormi. Mais elle le réveille également."
+ },
+ "hammerArm": {
+ name: "Marto-Poing",
+ effect: "Le lanceur donne un puissant coup de poing à la cible, ce qui réduit la Vitesse du lanceur."
+ },
+ "gyroBall": {
+ name: "Gyroballe",
+ effect: "Le lanceur effectue une rotation rapide et frappe la cible. Plus la Vitesse du lanceur est basse par rapport à celle de la cible, plus il inflige de dégâts."
+ },
+ "healingWish": {
+ name: "Voeu Soin",
+ effect: "Le lanceur tombe K.O. pour soigner les altérations de statut et les PV du Pokémon qui viendra le remplacer sur le terrain."
+ },
+ "brine": {
+ name: "Saumure",
+ effect: "La puissance de cette capacité est doublée lorsque la cible a moins de la moitié de ses PV."
+ },
+ "naturalGift": {
+ name: "Don Naturel",
+ effect: "Avant d'attaquer, le lanceur rassemble ses forces grâce à sa Baie. Elle détermine le type et la puissance de l'attaque."
+ },
+ "feint": {
+ name: "Ruse",
+ effect: "Une attaque capable de toucher une cible qui utilise une capacité similaire à Détection ou Abri, et annule l’effet de cette capacité."
+ },
+ "pluck": {
+ name: "Picore",
+ effect: "Le lanceur picore la cible. Si cette dernière tient une Baie, le lanceur la mange et profite de ses effets."
+ },
+ "tailwind": {
+ name: "Vent Arrière",
+ effect: "Génère une rafale de vent qui augmente la Vitesse des Pokémon de l’équipe pendant quatre tours."
+ },
+ "acupressure": {
+ name: "Acupression",
+ effect: "Le lanceur utilise sa connaissance des points de pression pour beaucoup augmenter une stat."
+ },
+ "metalBurst": {
+ name: "Fulmifer",
+ effect: "Le lanceur contre-attaque avec un coup infligeant des dégâts supérieurs à ceux de la dernière capacité qui l’a blessé."
+ },
+ "uTurn": {
+ name: "Demi-Tour",
+ effect: "Après son attaque, le lanceur revient à toute vitesse et change de place avec un Pokémon de l’équipe prêt à combattre."
+ },
+ "closeCombat": {
+ name: "Close Combat",
+ effect: "Le lanceur ne pense plus à se protéger et frappe sa cible violemment au corps à corps. Cette capacité baisse la Défense et la Défense Spéciale du lanceur."
+ },
+ "payback": {
+ name: "Représailles",
+ effect: "Le lanceur charge son énergie, puis attaque. La puissance de la capacité est doublée si le lanceur agit après la cible."
+ },
+ "assurance": {
+ name: "Assurance",
+ effect: "La puissance de cette capacité est deux fois plus élevée si la cible a déjà été blessée durant ce tour."
+ },
+ "embargo": {
+ name: "Embargo",
+ effect: "Empêche la cible d'utiliser un objet tenu et son Dresseur d'utiliser un objet sur lui pendant cinq tours."
+ },
+ "fling": {
+ name: "Dégommage",
+ effect: "Le lanceur envoie l’objet qu’il tient sur la cible. La puissance et les effets dépendent de l’objet."
+ },
+ "psychoShift": {
+ name: "Échange Psy",
+ effect: "Le lanceur transfère ses problèmes de statut à l'ennemi grâce à son pouvoir de suggestion."
+ },
+ "trumpCard": {
+ name: "Atout",
+ effect: "Moins cette capacité possède de PP, plus elle est puissante."
+ },
+ "healBlock": {
+ name: "Anti-Soin",
+ effect: "Le lanceur empêche l'ennemi de récupérer des PV à l'aide de capacités, talents ou objets tenus, pendant cinq tours."
+ },
+ "wringOut": {
+ name: "Essorage",
+ effect: "Le lanceur essore l'ennemi. Plus l'ennemi a de PV, plus cette attaque est puissante."
+ },
+ "powerTrick": {
+ name: "Astuce Force",
+ effect: "Le lanceur utilise ses pouvoirs psychiques pour échanger sa Défense et son Attaque."
+ },
+ "gastroAcid": {
+ name: "Suc Digestif",
+ effect: "Le lanceur répand ses sucs digestifs sur la cible. Le fluide neutralise le talent de celle-ci."
+ },
+ "luckyChant": {
+ name: "Air Veinard",
+ effect: "Le lanceur envoie une incantation vers le ciel et protège l'équipe des coups critiques pendant cinq tours."
+ },
+ "meFirst": {
+ name: "Moi d'Abord",
+ effect: "Le lanceur vole la capacité prévue par l'ennemi et l'utilise en faisant plus de dégâts. Il doit frapper en premier."
+ },
+ "copycat": {
+ name: "Photocopie",
+ effect: "Le lanceur imite la dernière capacité employée. Échoue si aucune capacité n’a été utilisée."
+ },
+ "powerSwap": {
+ name: "Permuforce",
+ effect: "Le lanceur utilise un pouvoir psychique qui échange les changements de son Attaque et de son Attaque Spéciale avec celles de la cible."
+ },
+ "guardSwap": {
+ name: "Permugarde",
+ effect: "Le lanceur utilise un pouvoir psychique qui échange les changements de sa Défense et de sa Défense Spéciale avec celles de la cible."
+ },
+ "punishment": {
+ name: "Punition",
+ effect: "Plus l'ennemi a utilisé d'augmentations de stats et plus cette capacité est puissante."
+ },
+ "lastResort": {
+ name: "Dernier Recours",
+ effect: "Cette capacité ne peut être utilisée qu’après que le lanceur a utilisé toutes les autres."
+ },
+ "worrySeed": {
+ name: "Soucigraine",
+ effect: "Plante sur la cible une graine qui la rend soucieuse et remplace son talent par Insomnia, l’empêchant ainsi de dormir."
+ },
+ "suckerPunch": {
+ name: "Coup Bas",
+ effect: "Permet au lanceur de frapper en priorité. Échoue si la cible ne prépare pas une attaque."
+ },
+ "toxicSpikes": {
+ name: "Pics Toxik",
+ effect: "Le lanceur éparpille des pics autour de la cible, ce qui empoisonne les Pokémon entrant au combat de ce côté."
+ },
+ "heartSwap": {
+ name: "Permucoeur",
+ effect: "Cette capacité ne peut pas être utilisée. Il est recommandé de l’oublier, même s’il sera impossible de se la remémorer une fois oubliée."
+ },
+ "aquaRing": {
+ name: "Anneau Hydro",
+ effect: "Un voile d’eau recouvre le lanceur et régénère ses PV à chaque tour."
+ },
+ "magnetRise": {
+ name: "Vol Magnétik",
+ effect: "Le lanceur utilise l’électricité pour générer un champ magnétique et léviter durant cinq tours."
+ },
+ "flareBlitz": {
+ name: "Boutefeu",
+ effect: "Le lanceur s’embrase avant de charger la cible, ce qui peut la brûler (10% de chances). Le choc blesse aussi gravement le lanceur."
+ },
+ "forcePalm": {
+ name: "Forte-Paume",
+ effect: "Une onde de choc frappe la cible, ce qui peut aussi la paralyser (30% de chances)."
+ },
+ "auraSphere": {
+ name: "Aurasphère",
+ effect: "Le lanceur puise au fond de lui-même pour dégager une aura et projeter de l’énergie sur la cible. N’échoue jamais."
+ },
+ "rockPolish": {
+ name: "Poliroche",
+ effect: "Le lanceur polit son corps pour diminuer sa résistance au vent. Augmente beaucoup la Vitesse."
+ },
+ "poisonJab": {
+ name: "Direct Toxik",
+ effect: "Le lanceur attaque la cible avec un tentacule, un bras, ou un autre membre imprégné de poison, ce qui peut aussi empoisonner la cible (30% de chances)."
+ },
+ "darkPulse": {
+ name: "Vibrobscur",
+ effect: "Le lanceur projette une horrible aura chargée de pensées maléfiques, ce qui peut aussi apeurer la cible."
+ },
+ "nightSlash": {
+ name: "Tranche-Nuit",
+ effect: "Le lanceur lacère la cible à la première occasion. Taux de critiques élevé."
+ },
+ "aquaTail": {
+ name: "Hydro-Queue",
+ effect: "Le lanceur attaque en balançant sa queue comme une lame de fond en pleine tempête."
+ },
+ "seedBomb": {
+ name: "Canon Graine",
+ effect: "Le lanceur déclenche un déluge de grosses graines à la coque solide sur la cible."
+ },
+ "airSlash": {
+ name: "Lame d'Air",
+ effect: "Le lanceur attaque avec une lame d’air capable de fendre le ciel, ce qui peut aussi apeurer la cible (30% de chances)."
+ },
+ "xScissor": {
+ name: "Plaie Croix",
+ effect: "Le lanceur taillade la cible en utilisant ses faux ou ses griffes comme une paire de ciseaux."
+ },
+ "bugBuzz": {
+ name: "Bourdon",
+ effect: "Le lanceur fait vibrer son corps pour lancer une vague sonique, ce qui peut aussi baisser la Défense Spéciale de la cible."
+ },
+ "dragonPulse": {
+ name: "Draco-Choc",
+ effect: "Le lanceur ouvre la bouche pour projeter une aura qui frappe la cible."
+ },
+ "dragonRush": {
+ name: "Draco-Charge",
+ effect: "Le lanceur frappe la cible en prenant un air menaçant, ce qui peut aussi l’apeurer (20% de chances)."
+ },
+ "powerGem": {
+ name: "Rayon Gemme",
+ effect: "Le lanceur attaque avec un rayon de lumière qui scintille comme s’il était composé de gemmes."
+ },
+ "drainPunch": {
+ name: "Vampi-Poing",
+ effect: "Un coup de poing qui draine l’énergie. Convertit la moitié des dégâts infligés en PV pour le lanceur."
+ },
+ "vacuumWave": {
+ name: "Onde Vide",
+ effect: "Le lanceur agite son poing pour projeter une onde de vide. Frappe en priorité."
+ },
+ "focusBlast": {
+ name: "Exploforce",
+ effect: "Le lanceur rassemble ses forces et laisse éclater son pouvoir, ce qui peut aussi baisser la Défense Spéciale de la cible."
+ },
+ "energyBall": {
+ name: "Éco-Sphère",
+ effect: "Le lanceur utilise les pouvoirs de la nature pour attaquer la cible, ce qui peut aussi baisser la Défense Spéciale de celle-ci."
+ },
+ "braveBird": {
+ name: "Rapace",
+ effect: "Le lanceur replie ses ailes et charge en rase-mottes. Blesse gravement le lanceur."
+ },
+ "earthPower": {
+ name: "Telluriforce",
+ effect: "De terribles séismes secouent la cible et peuvent aussi baisser sa Défense Spéciale."
+ },
+ "switcheroo": {
+ name: "Passe-Passe",
+ effect: "Le lanceur échange son objet avec celui de la cible à une vitesse que l’œil a du mal à suivre."
+ },
+ "gigaImpact": {
+ name: "Giga Impact",
+ effect: "Le lanceur charge la cible de toute ses forces et doit ensuite se reposer au tour suivant."
+ },
+ "nastyPlot": {
+ name: "Machination",
+ effect: "Stimule l’esprit par de mauvaises pensées. Augmente beaucoup l’Attaque Spéciale du lanceur."
+ },
+ "bulletPunch": {
+ name: "Pisto-Poing",
+ effect: "Le lanceur envoie des coups de poing aussi rapides que des balles de revolver. Frappe en priorité."
+ },
+ "avalanche": {
+ name: "Avalanche",
+ effect: "Une capacité dont la puissance est doublée si le lanceur a été blessé par la cible durant ce tour."
+ },
+ "iceShard": {
+ name: "Éclats Glace",
+ effect: "Le lanceur crée des éclats de glace qu’il envoie sur la cible. Frappe en priorité."
+ },
+ "shadowClaw": {
+ name: "Griffe Ombre",
+ effect: "Attaque avec une griffe puissante faite d’ombres. Taux de critiques élevé."
+ },
+ "thunderFang": {
+ name: "Crocs Éclair",
+ effect: "Le lanceur utilise une morsure électrifiée qui peut aussi paralyser (10% de chances) ou apeurer la cible (10% de chances)."
+ },
+ "iceFang": {
+ name: "Crocs Givre",
+ effect: "Le lanceur utilise une morsure glaciale qui peut aussi geler (10% de chances) ou apeurer la cible (10% de chances)."
+ },
+ "fireFang": {
+ name: "Crocs Feu",
+ effect: "Le lanceur utilise une morsure enflammée qui peut aussi brûler (10% de chances) ou apeurer (10% de chances) la cible."
+ },
+ "shadowSneak": {
+ name: "Ombre Portée",
+ effect: "Le lanceur étend son ombre pour frapper par-derrière. Frappe en priorité."
+ },
+ "mudBomb": {
+ name: "Boue-Bombe",
+ effect: "Le lanceur attaque à l'aide d'une boule de boue solidifiée. Peut aussi baisser la Précision de l'ennemi."
+ },
+ "psychoCut": {
+ name: "Coupe Psycho",
+ effect: "Le lanceur entaille la cible grâce à des lames faites d’énergie psychique. Taux de critiques élevé."
+ },
+ "zenHeadbutt": {
+ name: "Psykoud'Boul",
+ effect: "Le lanceur concentre sa volonté et donne un coup de tête à la cible, ce qui peut aussi apeurer celle-ci (20% de chances)."
+ },
+ "mirrorShot": {
+ name: "Miroi-Tir",
+ effect: "Le corps poli du lanceur libère un éclair d'énergie. Peut aussi baisser la Précision de l'ennemi."
+ },
+ "flashCannon": {
+ name: "Luminocanon",
+ effect: "Le lanceur concentre son énergie lumineuse et la fait exploser, ce qui peut aussi baisser la Défense Spéciale de la cible."
+ },
+ "rockClimb": {
+ name: "Escalade",
+ effect: "Le lanceur se jette violemment sur l'ennemi. Peut aussi le rendre confus."
+ },
+ "defog": {
+ name: "Anti-Brume",
+ effect: "Un grand coup de vent disperse Protection ou Mur Lumière de la cible et diminue également son Esquive."
+ },
+ "trickRoom": {
+ name: "Distorsion",
+ effect: "Le lanceur crée une zone mystérieuse où les Pokémon les plus lents frappent en priorité pendant cinq tours."
+ },
+ "dracoMeteor": {
+ name: "Draco-Météore",
+ effect: "Le lanceur invoque des comètes. Le contrecoup réduit beaucoup son Attaque Spéciale."
+ },
+ "discharge": {
+ name: "Coup d'Jus",
+ effect: "Un flamboiement d’électricité frappe tous les Pokémon autour du lanceur. Peut aussi les paralyser (30% de chances)."
+ },
+ "lavaPlume": {
+ name: "Ébullilave",
+ effect: "Des flammes s’abattent sur tous les Pokémon autour du lanceur, ce qui peut aussi les brûler (10% de chances)."
+ },
+ "leafStorm": {
+ name: "Tempête Verte",
+ effect: "Invoque une tempête de feuilles acérées. Le contrecoup réduit beaucoup l’Attaque Spéciale du lanceur."
+ },
+ "powerWhip": {
+ name: "Mégafouet",
+ effect: "Le lanceur fait virevolter violemment ses lianes ou ses tentacules pour fouetter la cible."
+ },
+ "rockWrecker": {
+ name: "Roc-Boulet",
+ effect: "Le lanceur attaque en projetant un gros rocher sur l'ennemi. Il doit se reposer au tour suivant."
+ },
+ "crossPoison": {
+ name: "Poison Croix",
+ effect: "Un coup tranchant qui peut empoisonner la cible (10% de chances). Taux de critiques élevé."
+ },
+ "gunkShot": {
+ name: "Détricanon",
+ effect: "Le lanceur envoie des détritus sur la cible, ce qui peut aussi l’empoisonner (30% de chances)."
+ },
+ "ironHead": {
+ name: "Tête de Fer",
+ effect: "Le lanceur heurte la cible avec sa tête dure comme de l’acier, ce qui peut aussi l’apeurer (30% de chances)."
+ },
+ "magnetBomb": {
+ name: "Bombe Aimant",
+ effect: "Le lanceur projette des bombes d'acier qui collent à l'ennemi. N'échoue jamais."
+ },
+ "stoneEdge": {
+ name: "Lame de Roc",
+ effect: "Le lanceur transperce la cible avec des rochers aiguisés. Taux de critiques élevé."
+ },
+ "captivate": {
+ name: "Séduction",
+ effect: "Si l'ennemi est de sexe opposé au lanceur, il est séduit et son Attaque Spéciale baisse beaucoup."
+ },
+ "stealthRock": {
+ name: "Piège de Roc",
+ effect: "Le lanceur fait flotter des pierres autour de la cible qui blessent tout adversaire entrant au combat."
+ },
+ "grassKnot": {
+ name: "Noeud Herbe",
+ effect: "Le lanceur fait des nœuds dans l’herbe pour faire trébucher la cible. Plus la cible est lourde, plus la puissance de cette capacité augmente."
+ },
+ "chatter": {
+ name: "Babil",
+ effect: "Attaque avec les ondes sonores assourdissantes qu'il émet en bavardant. Rend l'ennemi confus."
+ },
+ "judgment": {
+ name: "Jugement",
+ effect: "Le lanceur libère une myriade de rayons de lumière. Le type varie selon la plaque que tient le lanceur."
+ },
+ "bugBite": {
+ name: "Piqûre",
+ effect: "Le lanceur pique la cible. Si celle-ci tient une Baie, le lanceur la dévore et obtient son effet."
+ },
+ "chargeBeam": {
+ name: "Rayon Chargé",
+ effect: "Le lanceur tire un rayon chargé d’électricité. Peut aussi augmenter son Attaque Spéciale."
+ },
+ "woodHammer": {
+ name: "Martobois",
+ effect: "Le lanceur heurte la cible de son corps robuste, ce qui blesse aussi gravement le lanceur."
+ },
+ "aquaJet": {
+ name: "Aqua-Jet",
+ effect: "Le lanceur fonce sur la cible si rapidement qu’on parvient à peine à le discerner. Frappe en priorité."
+ },
+ "attackOrder": {
+ name: "Appel Attaque",
+ effect: "Le lanceur appelle ses subalternes pour frapper la cible. Taux de critiques élevé."
+ },
+ "defendOrder": {
+ name: "Appel Défense",
+ effect: "Le lanceur appelle ses subalternes pour former un bouclier qui augmente sa Défense et sa Défense Spéciale."
+ },
+ "healOrder": {
+ name: "Appel Soins",
+ effect: "Le lanceur appelle ses sous-fifres pour le soigner. Il récupère jusqu'à la moitié de ses PV max."
+ },
+ "headSmash": {
+ name: "Fracass'Tête",
+ effect: "Le lanceur assène un coup de tête désespéré, ce qui le blesse aussi très gravement."
+ },
+ "doubleHit": {
+ name: "Coup Double",
+ effect: "Le lanceur frappe la cible deux fois d’affilée à l’aide de sa queue ou d’un autre membre."
+ },
+ "roarOfTime": {
+ name: "Hurle-Temps",
+ effect: "Le lanceur frappe si fort qu’il affecte le cours du temps. Il se repose au tour suivant."
+ },
+ "spacialRend": {
+ name: "Spatio-Rift",
+ effect: "Le lanceur déchire la cible et l’espace autour de lui. Taux de critiques élevé."
+ },
+ "lunarDance": {
+ name: "Danse Lune",
+ effect: "Le lanceur tombe K.O. pour soigner totalement le Pokémon qui prendra sa place au combat."
+ },
+ "crushGrip": {
+ name: "Presse",
+ effect: "Une force puissante écrase l'ennemi. Plus il lui reste de PV et plus l'attaque est puissante."
+ },
+ "magmaStorm": {
+ name: "Vortex Magma",
+ effect: "La cible est prise dans un tourbillon de feu qui dure de quatre à cinq tours."
+ },
+ "darkVoid": {
+ name: "Trou Noir",
+ effect: "L'ennemi est plongé dans les ténèbres. Il tombe dans un profond sommeil."
+ },
+ "seedFlare": {
+ name: "Fulmigraine",
+ effect: "Le corps du lanceur émet une onde de choc. Peut aussi beaucoup baisser la Défense Spéciale de la cible."
+ },
+ "ominousWind": {
+ name: "Vent Mauvais",
+ effect: "Le lanceur crée une violente bourrasque. Peut aussi augmenter toutes ses stats."
+ },
+ "shadowForce": {
+ name: "Revenant",
+ effect: "Le lanceur disparaît au premier tour et frappe la cible au deuxième. Cette capacité fonctionne même si la cible se protège."
+ },
+ "honeClaws": {
+ name: "Aiguisage",
+ effect: "Le lanceur s’aiguise les griffes. Augmente l’Attaque et la Précision."
+ },
+ "wideGuard": {
+ name: "Garde Large",
+ effect: "Bloque les attaques visant tous les alliés pendant un tour."
+ },
+ "guardSplit": {
+ name: "Partage Garde",
+ effect: "Additionne la Défense et la Défense Spéciale du lanceur et de sa cible et les redistribue équitablement entre les deux."
+ },
+ "powerSplit": {
+ name: "Partage Force",
+ effect: "Additionne l’Attaque Spéciale et l’Attaque du lanceur et de sa cible et les redistribue équitablement entre les deux."
+ },
+ "wonderRoom": {
+ name: "Zone Étrange",
+ effect: "Le lanceur crée une zone mystérieuse où la Défense et la Défense Spéciale de tous les Pokémon sont inversées pendant cinq tours."
+ },
+ "psyshock": {
+ name: "Choc Psy",
+ effect: "Le lanceur matérialise des ondes mystérieuses qu’il projette sur la cible, ce qui inflige des dégâts physiques à celle-ci."
+ },
+ "venoshock": {
+ name: "Choc Venin",
+ effect: "Le lanceur asperge la cible d’un poison spécial. La puissance de la capacité est doublée si la cible est empoisonnée."
+ },
+ "autotomize": {
+ name: "Allègement",
+ effect: "Le lanceur se débarrasse des parties inutiles de son corps. Son poids diminue et sa Vitesse augmente beaucoup."
+ },
+ "ragePowder": {
+ name: "Poudre Fureur",
+ effect: "Le lanceur s’asperge d’une poudre irritante pour attirer l’attention et diriger toutes les attaques ennemies sur lui."
+ },
+ "telekinesis": {
+ name: "Lévikinésie",
+ effect: "Un pouvoir qui fait flotter l'ennemi dans les airs. Pendant trois tours, il devient plus facile à atteindre."
+ },
+ "magicRoom": {
+ name: "Zone Magique",
+ effect: "Le lanceur crée une zone mystérieuse où les objets tenus par tous les Pokémon n’ont plus aucun effet pendant cinq tours."
+ },
+ "smackDown": {
+ name: "Anti-Air",
+ effect: "Le lanceur jette un projectile sur la cible. Si cette dernière vole, elle tombe au sol."
+ },
+ "stormThrow": {
+ name: "Yama Arashi",
+ effect: "Un coup très puissant dont l'effet est toujours critique."
+ },
+ "flameBurst": {
+ name: "Rebondifeu",
+ effect: "Quand l'attaque atteint sa cible, elle projette des flammes qui touchent tout ennemi situé à côté."
+ },
+ "sludgeWave": {
+ name: "Cradovague",
+ effect: "Une vague de détritus attaque tous les Pokémon autour du lanceur. Peut aussi empoisonner (10% de chances)."
+ },
+ "quiverDance": {
+ name: "Papillodanse",
+ effect: "Une danse mystique dont le rythme parfait augmente l’Attaque Spéciale, la Défense Spéciale et la Vitesse du lanceur."
+ },
+ "heavySlam": {
+ name: "Tacle Lourd",
+ effect: "Le lanceur se jette sur la cible de tout son poids. Plus il est lourd par rapport à la cible, plus la puissance de cette capacité augmente."
+ },
+ "synchronoise": {
+ name: "Synchropeine",
+ effect: "Des ondes mystérieuses blessent tous les Pokémon alentour qui sont du même type que le lanceur."
+ },
+ "electroBall": {
+ name: "Boule Élek",
+ effect: "Le lanceur envoie une boule d’électricité. Plus la Vitesse du lanceur est élevée par rapport à celle de la cible, plus la puissance de la capacité augmente."
+ },
+ "soak": {
+ name: "Détrempage",
+ effect: "Le lanceur projette beaucoup d’eau sur sa cible, qui devient de type Eau."
+ },
+ "flameCharge": {
+ name: "Nitrocharge",
+ effect: "Le lanceur s’entoure de flammes pour attaquer la cible. Il se concentre et sa Vitesse augmente."
+ },
+ "coil": {
+ name: "Enroulement",
+ effect: "Le lanceur s’enroule sur lui-même et se concentre. Son Attaque, sa Défense et sa Précision augmentent."
+ },
+ "lowSweep": {
+ name: "Balayette",
+ effect: "Un coup rapide qui affecte la mobilité de la cible et diminue sa Vitesse."
+ },
+ "acidSpray": {
+ name: "Bombe Acide",
+ effect: "Le lanceur projette un liquide acide qui fait fondre la cible, ce qui diminue beaucoup la Défense Spéciale de celle-ci."
+ },
+ "foulPlay": {
+ name: "Tricherie",
+ effect: "Le lanceur utilise la force de la cible. Plus l’Attaque de celle-ci est élevée, plus le lanceur inflige de dégâts."
+ },
+ "simpleBeam": {
+ name: "Rayon Simple",
+ effect: "Le lanceur envoie des ondes mystérieuses à la cible, dont le talent est remplacé par le talent Simple."
+ },
+ "entrainment": {
+ name: "Ten-Danse",
+ effect: "Le lanceur danse sur un rythme étrange. Il force sa cible à l’imiter, ce qui lui fait adopter son talent."
+ },
+ "afterYou": {
+ name: "Après Vous",
+ effect: "S’il est le premier à agir, le lanceur permet à sa cible d’utiliser une capacité juste après lui."
+ },
+ "round": {
+ name: "Chant Canon",
+ effect: "Le lanceur attaque la cible en chantant. Si plusieurs Pokémon déclenchent cette attaque à la suite, la puissance augmente."
+ },
+ "echoedVoice": {
+ name: "Écho",
+ effect: "Un cri retentissant blesse la cible. Si le lanceur ou d’autres Pokémon utilisent cette capacité à chaque tour, la puissance augmente."
+ },
+ "chipAway": {
+ name: "Attrition",
+ effect: "Une attaque puissante quand l'ennemi baisse sa garde. Inflige des dégâts sans tenir compte des changements de stats."
+ },
+ "clearSmog": {
+ name: "Bain de Smog",
+ effect: "Le lanceur projette de la boue bizarre sur la cible. Les changements de stats de la cible sont annulés."
+ },
+ "storedPower": {
+ name: "Force Ajoutée",
+ effect: "Le lanceur attaque la cible avec une force cumulée. Plus les stats du lanceur sont augmentées, plus la puissance de cette capacité augmente."
+ },
+ "quickGuard": {
+ name: "Prévention",
+ effect: "Protège le lanceur et ses alliés des attaques prioritaires."
+ },
+ "allySwitch": {
+ name: "Interversion",
+ effect: "Le lanceur se téléporte à l’aide d’un pouvoir mystérieux. Il échange sa place avec celle d’un allié sur le terrain. Peut échouer si utilisée plusieurs fois de suite."
+ },
+ "scald": {
+ name: "Ébullition",
+ effect: "Le lanceur projette un jet d’eau bouillante sur la cible, ce qui peut aussi la brûler (30% de chances)."
+ },
+ "shellSmash": {
+ name: "Exuviation",
+ effect: "Le lanceur brise sa carapace. Il baisse sa Défense et sa Défense Spéciale, mais augmente beaucoup son Attaque, son Attaque Spéciale et sa Vitesse."
+ },
+ "healPulse": {
+ name: "Vibra Soin",
+ effect: "Le lanceur projette une aura de bien-être qui fait récupérer la moitié de ses PV max à la cible."
+ },
+ "hex": {
+ name: "Châtiment",
+ effect: "Une attaque acharnée qui cause davantage de dégâts à la cible si elle a une altération de statut."
+ },
+ "skyDrop": {
+ name: "Chute Libre",
+ effect: "Le lanceur emmène l'ennemi dans les airs au premier tour et le lâche dans le vide au second. L'ennemi saisi ne peut pas attaquer."
+ },
+ "shiftGear": {
+ name: "Chgt Vitesse",
+ effect: "Le lanceur fait tourner ses engrenages. Cela augmente son Attaque et augmente beaucoup sa Vitesse."
+ },
+ "circleThrow": {
+ name: "Projection",
+ effect: "Le lanceur fait une projection sur un Pokémon ennemi et le remplace par un autre. Lors d’un combat contre un Pokémon sauvage seul, cela met fin au combat."
+ },
+ "incinerate": {
+ name: "Calcination",
+ effect: "Des flammes calcinent la cible. Si elle tient un objet, une Baie par exemple, celui-ci est brûlé et devient inutilisable."
+ },
+ "quash": {
+ name: "À la Queue",
+ effect: "Retient la cible de force, l’obligeant à agir en dernier."
+ },
+ "acrobatics": {
+ name: "Acrobatie",
+ effect: "Le lanceur frappe la cible avec agilité. S’il ne tient pas d’objet, l’attaque inflige davantage de dégâts."
+ },
+ "reflectType": {
+ name: "Copie-Type",
+ effect: "Le lanceur adopte le même type que la cible."
+ },
+ "retaliate": {
+ name: "Vengeance",
+ effect: "Le lanceur venge un allié K.O. Si un Pokémon de l’équipe a été mis K.O. au tour d’avant, la puissance augmente."
+ },
+ "finalGambit": {
+ name: "Tout ou Rien",
+ effect: "Une attaque très risquée. Le lanceur perd tous ses PV restants et inflige autant de dégâts à la cible."
+ },
+ "bestow": {
+ name: "Passe-Cadeau",
+ effect: "Si la cible ne tient pas d'objet, le lanceur lui donne l'objet qu'il tient."
+ },
+ "inferno": {
+ name: "Feu d'Enfer",
+ effect: "La cible est entourée d’un torrent de flammes ardentes qui la brûlent."
+ },
+ "waterPledge": {
+ name: "Aire d'Eau",
+ effect: "Une masse d’eau s’abat sur la cible. Si cette capacité est utilisée en même temps qu’Aire de Feu, la puissance augmente et un arc-en-ciel apparaît."
+ },
+ "firePledge": {
+ name: "Aire de Feu",
+ effect: "Une masse de feu s’abat sur la cible. Si cette capacité est utilisée en même temps qu’Aire d’Herbe, la puissance augmente et une mer de feu apparaît."
+ },
+ "grassPledge": {
+ name: "Aire d'Herbe",
+ effect: "Une masse végétale s’abat sur la cible. Si cette capacité est utilisée en même temps qu’Aire d’Eau, la puissance augmente et un marécage apparaît."
+ },
+ "voltSwitch": {
+ name: "Change Éclair",
+ effect: "Après son attaque, le lanceur revient à toute vitesse et change de place avec un Pokémon de l'équipe prêt au combat."
+ },
+ "struggleBug": {
+ name: "Survinsecte",
+ effect: "Le lanceur frappe en se débattant de toutes ses forces, et baisse l’Attaque Spéciale de la cible."
+ },
+ "bulldoze": {
+ name: "Piétisol",
+ effect: "Le lanceur piétine le sol et inflige des dégâts à tous les Pokémon autour de lui. Baisse aussi leur Vitesse."
+ },
+ "frostBreath": {
+ name: "Souffle Glacé",
+ effect: "Un souffle froid blesse la cible. L’effet est toujours critique."
+ },
+ "dragonTail": {
+ name: "Draco-Queue",
+ effect: "Un coup puissant qui blesse la cible et l’envoie au loin. Lors d’un combat contre un Pokémon sauvage seul, met fin au combat."
+ },
+ "workUp": {
+ name: "Rengorgement",
+ effect: "Le lanceur se rengorge et augmente son Attaque et son Attaque Spéciale."
+ },
+ "electroweb": {
+ name: "Toile Élek",
+ effect: "Le lanceur attaque la cible en l’attrapant dans un filet électrique. Baisse aussi la Vitesse de la cible."
+ },
+ "wildCharge": {
+ name: "Éclair Fou",
+ effect: "Une charge électrique violente qui blesse aussi légèrement le lanceur."
+ },
+ "drillRun": {
+ name: "Tunnelier",
+ effect: "Le lanceur tourne sur lui-même comme une perceuse et se jette sur la cible. Taux de critiques élevé."
+ },
+ "dualChop": {
+ name: "Double Baffe",
+ effect: "Le lanceur frappe l'ennemi deux fois d'affilée avec les parties les plus robustes de son corps."
+ },
+ "heartStamp": {
+ name: "Crève-Coeur",
+ effect: "Déconcentre l'ennemi avec des mouvements mignons avant de le frapper violemment. Peut aussi l'apeurer (30% de chances)."
+ },
+ "hornLeech": {
+ name: "Encornebois",
+ effect: "Un coup de cornes qui draine l’énergie de la cible. La capacité convertit la moitié des dégâts infligés en PV pour le lanceur."
+ },
+ "sacredSword": {
+ name: "Lame Sainte",
+ effect: "Un violent coup d’épée qui lacère la cible et lui inflige des dégâts en ignorant ses changements de stats."
+ },
+ "razorShell": {
+ name: "Coqui-Lame",
+ effect: "Un coquillage aiguisé lacère la cible et peut aussi baisser sa Défense."
+ },
+ "heatCrash": {
+ name: "Tacle Feu",
+ effect: "Le lanceur projette son corps enflammé contre la cible. Plus il est lourd par rapport à la cible, plus la puissance de cette capacité augmente."
+ },
+ "leafTornado": {
+ name: "Phytomixeur",
+ effect: "L'ennemi est pris dans un tourbillon de feuilles acérées. Peut aussi baisser sa Précision."
+ },
+ "steamroller": {
+ name: "Bulldoboule",
+ effect: "Le lanceur se roule en boule et écrase son ennemi. Peut aussi l'apeurer (30% de chances)."
+ },
+ "cottonGuard": {
+ name: "Cotogarde",
+ effect: "Le lanceur se protège en s’emmitouflant dans du coton. Sa Défense augmente énormément."
+ },
+ "nightDaze": {
+ name: "Explonuit",
+ effect: "Le lanceur attaque avec une onde de choc ténébreuse qui peut aussi baisser la Précision de la cible."
+ },
+ "psystrike": {
+ name: "Frappe Psy",
+ effect: "Le lanceur matérialise des ondes mystérieuses qu’il projette sur la cible, ce qui inflige des dégâts physiques à celle-ci."
+ },
+ "tailSlap": {
+ name: "Plumo-Queue",
+ effect: "Le lanceur frappe la cible de deux à cinq fois d’affilée avec sa queue robuste."
+ },
+ "hurricane": {
+ name: "Vent Violent",
+ effect: "Le lanceur déclenche une tempête de vents violents qui s’abat sur la cible, et peut aussi la rendre confuse."
+ },
+ "headCharge": {
+ name: "Peignée",
+ effect: "Le lanceur donne un coup avec sa tête couronnée d'une fière crinière. Blesse aussi légèrement le lanceur."
+ },
+ "gearGrind": {
+ name: "Lancécrou",
+ effect: "Le lanceur jette deux écrous d'acier qui frappent l'ennemi deux fois d'affilée."
+ },
+ "searingShot": {
+ name: "Incendie",
+ effect: "Des boules de feu s'abattent sur tous les Pokémon autour du lanceur. Peut aussi les brûler (30% de chances)."
+ },
+ "technoBlast": {
+ name: "Techno-Buster",
+ effect: "Le lanceur projette un rayon lumineux sur l'ennemi. Le type varie selon le Module que tient le lanceur."
+ },
+ "relicSong": {
+ name: "Chant Antique",
+ effect: "Le lanceur attaque la cible en lui chantant une chanson d’un autre temps qui peut aussi l’endormir."
+ },
+ "secretSword": {
+ name: "Lame Ointe",
+ effect: "L'ennemi est lacéré par une longue corne. Son pouvoir mystérieux inflige des dégâts physiques."
+ },
+ "glaciate": {
+ name: "Ère Glaciaire",
+ effect: "Un souffle de vent qui congèle tout sur son passage s'abat sur l'ennemi. Réduit aussi sa Vitesse."
+ },
+ "boltStrike": {
+ name: "Charge Foudre",
+ effect: "Le lanceur s'enveloppe d'une charge électrique surpuissante et se jette sur l'ennemi. Peut aussi le paralyser (20% de chances)."
+ },
+ "blueFlare": {
+ name: "Flamme Bleue",
+ effect: "De magnifiques et redoutables flammes bleues fondent sur l'ennemi. Peut aussi le brûler (20% de chances)."
+ },
+ "fieryDance": {
+ name: "Danse du Feu",
+ effect: "Le lanceur s’enveloppe de flammes et attaque la cible, Cela peut aussi augmenter l’Attaque Spéciale du lanceur."
+ },
+ "freezeShock": {
+ name: "Éclair Gelé",
+ effect: "Projette un bloc de glace électrifié sur l'ennemi au second tour. Peut aussi le paralyser (30% de chances)."
+ },
+ "iceBurn": {
+ name: "Feu Glacé",
+ effect: "Au second tour, le lanceur projette un souffle de vent glacial dévastateur sur l'ennemi. Peut aussi le brûler (30% de chances)."
+ },
+ "snarl": {
+ name: "Aboiement",
+ effect: "Le lanceur hurle sur la cible et baisse l’Attaque Spéciale de celle-ci."
+ },
+ "icicleCrash": {
+ name: "Chute Glace",
+ effect: "Le lanceur envoie de gros blocs de glace sur la cible pour lui infliger des dégâts, ce qui peut aussi l’apeurer (30% de chances)."
+ },
+ "vCreate": {
+ name: "Coup Victoire",
+ effect: "Le lanceur fait jaillir des flammes ardentes de son front et se jette sur la cible, ce qui baisse la Défense, la Défense Spéciale et la Vitesse du lanceur."
+ },
+ "fusionFlare": {
+ name: "Flamme Croix",
+ effect: "Projette une boule de feu gigantesque. L'effet augmente sous l'influence d'Éclair Croix."
+ },
+ "fusionBolt": {
+ name: "Éclair Croix",
+ effect: "Projette un orbe électrique gigantesque. L'effet augmente sous l'influence de Flamme Croix."
+ },
+ "flyingPress": {
+ name: "Flying Press",
+ effect: "Une attaque en piqué depuis le ciel, à la fois de type Combat et de type Vol."
+ },
+ "matBlock": {
+ name: "Tatamigaeshi",
+ effect: "Retourne un tatami pour bloquer, comme avec un bouclier, les capacités visant le lanceur ou ses alliés. N'a pas d'effet sur les attaques de statut."
+ },
+ "belch": {
+ name: "Éructation",
+ effect: "Le lanceur se tourne vers la cible et lui éructe dessus, infligeant des dégâts. Ne fonctionne que si le lanceur consomme une Baie tenue."
+ },
+ "rototiller": {
+ name: "Fertilisation",
+ effect: "Laboure le sol et le rend plus fertile. Augmente l'Attaque et l'Attaque Spéciale des Pokémon de type Plante."
+ },
+ "stickyWeb": {
+ name: "Toile Gluante",
+ effect: "Le lanceur déploie une toile visqueuse autour de la cible qui ralentit la Vitesse de tout adversaire entrant au combat."
+ },
+ "fellStinger": {
+ name: "Dard Mortel",
+ effect: "Le lanceur augmente énormément son Attaque si une cible est mise K.O. par cette capacité."
+ },
+ "phantomForce": {
+ name: "Hantise",
+ effect: "Le lanceur disparaît au premier tour et frappe au second. Cette attaque passe outre les protections."
+ },
+ "trickOrTreat": {
+ name: "Halloween",
+ effect: "Insuffle à la cible l'esprit d'Halloween, et ajoute le type Spectre à ses types actuels."
+ },
+ "nobleRoar": {
+ name: "Râle Mâle",
+ effect: "Le lanceur pousse un rugissement qui intimide la cible et diminue l’Attaque et l’Attaque Spéciale de celle-ci."
+ },
+ "ionDeluge": {
+ name: "Déluge Plasmique",
+ effect: "Diffuse des particules saturées d'électricité qui transforment les capacités de type Normal en capacités de type Électrik."
+ },
+ "parabolicCharge": {
+ name: "Parabocharge",
+ effect: "Inflige des dégâts à tous les Pokémon autour du lanceur. Il récupère en PV la moitié des dégâts infligés."
+ },
+ "forestsCurse": {
+ name: "Maléfice Sylvain",
+ effect: "La cible est charmée par l'esprit de la forêt. Le type Plante est ajouté à ses types actuels."
+ },
+ "petalBlizzard": {
+ name: "Tempête Florale",
+ effect: "Déclenche une violente tempête de fleurs qui inflige des dégâts à tous les Pokémon alentour."
+ },
+ "freezeDry": {
+ name: "Lyophilisation",
+ effect: "Le lanceur refroidit violemment la cible et peut la geler (10% de chances). Super efficace sur les Pokémon de type Eau."
+ },
+ "disarmingVoice": {
+ name: "Voix Enjôleuse",
+ effect: "Le lanceur laisse s’échapper une voix enchanteresse qui inflige des dégâts psychiques à la cible. N’échoue jamais."
+ },
+ "partingShot": {
+ name: "Dernier Mot",
+ effect: "Le lanceur menace la cible dans une ultime tirade avant de changer de place avec un autre Pokémon. Réduit l’Attaque et l’Attaque Spéciale de la cible."
+ },
+ "topsyTurvy": {
+ name: "Renversement",
+ effect: "Inverse tous les changements de stats de la cible."
+ },
+ "drainingKiss": {
+ name: "Vampibaiser",
+ effect: "Le lanceur aspire la force vitale de la cible par un baiser qui rend au lanceur un nombre de PV supérieur ou égal à la moitié des dégâts infligés."
+ },
+ "craftyShield": {
+ name: "Vigilance",
+ effect: "Utilise une force mystérieuse pour protéger l'équipe des capacités de statut. Ne protège pas des autres capacités."
+ },
+ "flowerShield": {
+ name: "Garde Florale",
+ effect: "Grâce à une force mystérieuse, la Défense de tous les Pokémon Plante au combat augmente."
+ },
+ "grassyTerrain": {
+ name: "Champ Herbu",
+ effect: "Pendant cinq tours, les Pokémon au sol récupèrent quelques PV à chaque tour et la puissance des capacités de type Plante augmente."
+ },
+ "mistyTerrain": {
+ name: "Champ Brumeux",
+ effect: "Pendant cinq tours, les Pokémon au sol ne peuvent pas subir d’altération de statut et les dégâts infligés par les capacités de type Dragon sont divisés par deux."
+ },
+ "electrify": {
+ name: "Électrisation",
+ effect: "Si le lanceur attaque avant la cible, les capacités de celle-ci seront de type Électrik jusqu'à la fin du tour."
+ },
+ "playRough": {
+ name: "Câlinerie",
+ effect: "Le lanceur attaque la cible en lui faisant des câlineries, ce qui peut aussi diminuer l’Attaque de celle-ci."
+ },
+ "fairyWind": {
+ name: "Vent Féérique",
+ effect: "Le lanceur déchaîne un vent magique qui cingle la cible."
+ },
+ "moonblast": {
+ name: "Pouvoir Lunaire",
+ effect: "Le lanceur attaque la cible grâce au pouvoir de la lune, ce qui peut diminuer l’Attaque Spéciale de celle-ci."
+ },
+ "boomburst": {
+ name: "Bang Sonique",
+ effect: "Attaque les Pokémon alentour grâce à une onde sonore assourdissante qui détruit tout sur son passage."
+ },
+ "fairyLock": {
+ name: "Verrou Enchanté",
+ effect: "Des chaînes entourent la zone de combat, empêchant tous les Pokémon de quitter le terrain au tour suivant."
+ },
+ "kingsShield": {
+ name: "Bouclier Royal",
+ effect: "Prend une posture défensive pour bloquer les dégâts. Diminue beaucoup l'Attaque de tout Pokémon qui entre en contact avec le lanceur."
+ },
+ "playNice": {
+ name: "Camaraderie",
+ effect: "La cible se lie d’amitié avec le lanceur et perd sa combativité, ce qui diminue son Attaque."
+ },
+ "confide": {
+ name: "Confidence",
+ effect: "Le lanceur dévoile des secrets à la cible, qui perd alors sa concentration et voit son Attaque Spéciale diminuer."
+ },
+ "diamondStorm": {
+ name: "Orage Adamantin",
+ effect: "Provoque une tempête de diamants qui inflige des dégâts. Peut beaucoup augmenter la Défense du lanceur."
+ },
+ "steamEruption": {
+ name: "Jet de Vapeur",
+ effect: "Le lanceur projette de la vapeur extrêmement chaude sur la cible, ce qui peut aussi la brûler (30% de chances)."
+ },
+ "hyperspaceHole": {
+ name: "TrouDimensionnel",
+ effect: "Le lanceur crée une faille dimensionnelle pour attaquer soudainement la cible de côté. Ignore même les capacités comme Abri ou Détection."
+ },
+ "waterShuriken": {
+ name: "Sheauriken",
+ effect: "Le lanceur attaque la cible avec des shuriken de mucus. Cette capacité frappe en priorité deux à cinq fois d’affilée en un tour."
+ },
+ "mysticalFire": {
+ name: "Feu Ensorcelé",
+ effect: "Le lanceur attaque en soufflant des flammes brûlantes par la bouche et diminue l’Attaque Spéciale de la cible."
+ },
+ "spikyShield": {
+ name: "Pico-Défense",
+ effect: "Protège des attaques, et diminue les PV de tout assaillant qui entre en contact avec le lanceur."
+ },
+ "aromaticMist": {
+ name: "Brume Capiteuse",
+ effect: "Grâce à un parfum mystérieux, augmente la Défense Spéciale d’un allié."
+ },
+ "eerieImpulse": {
+ name: "Ondes Étranges",
+ effect: "Le corps du lanceur produit des ondes anormales qui enveloppent la cible et diminuent beaucoup son Attaque Spéciale."
+ },
+ "venomDrench": {
+ name: "Piège de Venin",
+ effect: "Sécrète un liquide empoisonné. Diminue l'Attaque, l'Attaque Spéciale et la Vitesse de l'ennemi empoisonné."
+ },
+ "powder": {
+ name: "Nuée de Poudre",
+ effect: "L'ennemi est pris dans un nuage de poudre. S'il utilise une capacité de type Feu lors du même tour, le nuage explose et lui inflige des dégâts."
+ },
+ "geomancy": {
+ name: "Géo-Contrôle",
+ effect: "Le lanceur absorbe de l'énergie au premier tour et augmente beaucoup son Attaque Spéciale, sa Défense Spéciale et sa Vitesse au second."
+ },
+ "magneticFlux": {
+ name: "Magné-Contrôle",
+ effect: "Manipule les champs magnétiques pour augmenter la Défense et la Défense Spéciale des Pokémon alliés dotés du talent Plus ou du talent Moins."
+ },
+ "happyHour": {
+ name: "Étrennes",
+ effect: "Utilisée pendant un combat, multiplie par deux l’argent gagné à la fin."
+ },
+ "electricTerrain": {
+ name: "Champ Électrifié",
+ effect: "Pendant cinq tours, le terrain se charge d’électricité. Les Pokémon au sol ne peuvent pas s’endormir et la puissance des capacités de type Électrik augmente."
+ },
+ "dazzlingGleam": {
+ name: "Éclat Magique",
+ effect: "Le lanceur libère une puissante décharge lumineuse qui inflige des dégâts à l’ennemi."
+ },
+ "celebrate": {
+ name: "Célébration",
+ effect: "Le Pokémon vous souhaite plein de bonnes choses pour cet évènement spécial."
+ },
+ "holdHands": {
+ name: "Mains Jointes",
+ effect: "Le lanceur et un allié se prennent la main, ce qui les rend heureux."
+ },
+ "babyDollEyes": {
+ name: "Regard Touchant",
+ effect: "Le lanceur fixe la cible d’un air très attendrissant qui la touche et diminue son Attaque. Agit en priorité."
+ },
+ "nuzzle": {
+ name: "Frotte-Frimousse",
+ effect: "Le lanceur attaque en frottant ses bajoues chargées d’électricité, ce qui paralyse la cible."
+ },
+ "holdBack": {
+ name: "Retenue",
+ effect: "Le lanceur attaque avec retenue, et laisse au moins 1 PV à la cible."
+ },
+ "infestation": {
+ name: "Harcèlement",
+ effect: "Cette attaque perdure pendant quatre à cinq tours. La cible ne peut pas quitter le terrain pendant cette période."
+ },
+ "powerUpPunch": {
+ name: "Poing Boost",
+ effect: "À force de frapper, les poings deviennent plus durs. Augmente l'Attaque du lanceur si l'ennemi est touché."
+ },
+ "oblivionWing": {
+ name: "Mort'Ailes",
+ effect: "Vole l'énergie de la cible. Rend au lanceur un nombre de PV supérieur ou égal à la moitié des dégâts infligés."
+ },
+ "thousandArrows": {
+ name: "Myria-Flèches",
+ effect: "Touche même les Pokémon dans les airs. Dans ce cas, la cible retombe au sol."
+ },
+ "thousandWaves": {
+ name: "Myria-Vagues",
+ effect: "Attaque avec des vagues glissant au sol. L'ennemi pris dedans ne peut pas s'échapper."
+ },
+ "landsWrath": {
+ name: "Force Chtonienne",
+ effect: "Utilise la puissance du sol et la concentre sur l'ennemi pour infliger des dégâts."
+ },
+ "lightOfRuin": {
+ name: "Lumière du Néant",
+ effect: "Utilise la puissance de la fleur Éternelle pour lancer un formidable rayon d'énergie. Blesse aussi gravement le lanceur."
+ },
+ "originPulse": {
+ name: "Onde Originelle",
+ effect: "Le lanceur projette une aura, et d’innombrables rayons lumineux d’un bleu étincelant s’abattent sur la cible."
+ },
+ "precipiceBlades": {
+ name: "Lame Pangéenne",
+ effect: "Le Pokémon transforme la puissance de la terre et attaque la cible avec une lame acérée."
+ },
+ "dragonAscent": {
+ name: "Draco-Ascension",
+ effect: "Le Pokémon s’abat à toute vitesse sur la cible depuis les hautes couches de l’atmosphère. Baisse la Défense et la Défense Spéciale du lanceur."
+ },
+ "hyperspaceFury": {
+ name: "Furie Dimension",
+ effect: "Le Pokémon utilise sa multitude de bras pour infliger une nuée de coups qui ignorent les capacités telles qu’Abri ou Détection. Baisse la Défense du lanceur."
+ },
+ "breakneckBlitzPhysical": {
+ name: "Turbo-Charge Bulldozer",
+ effect: "Le Pokémon utilise la Force Z pour s'élancer à toute vitesse sur l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "breakneckBlitzSpecial": {
+ name: "Turbo-Charge Bulldozer",
+ effect: "Dummy Data"
+ },
+ "allOutPummelingPhysical": {
+ name: "Combo Hyper-Furie",
+ effect: "Le Pokémon utilise la Force Z pour créer une boule d'énergie qu'il projette sur l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "allOutPummelingSpecial": {
+ name: "Combo Hyper-Furie",
+ effect: "Dummy Data"
+ },
+ "supersonicSkystrikePhysical": {
+ name: "Piqué Supersonique",
+ effect: "Le Pokémon utilise la Force Z pour s'envoler très haut dans le ciel avant de plonger sur l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "supersonicSkystrikeSpecial": {
+ name: "Piqué Supersonique",
+ effect: "Dummy Data"
+ },
+ "acidDownpourPhysical": {
+ name: "Déluge Causti-Toxique",
+ effect: "Le Pokémon utilise la Force Z pour répandre un marécage empoisonné où l'adversaire sombre. La puissance varie selon celle de la capacité originale."
+ },
+ "acidDownpourSpecial": {
+ name: "Déluge Causti-Toxique",
+ effect: "Dummy Data"
+ },
+ "tectonicRagePhysical": {
+ name: "Éruption Géo-Sismique",
+ effect: "Le Pokémon utilise la Force Z pour entraîner l'adversaire dans les profondeurs de la terre. La puissance varie selon celle de la capacité originale."
+ },
+ "tectonicRageSpecial": {
+ name: "Éruption Géo-Sismique",
+ effect: "Dummy Data"
+ },
+ "continentalCrushPhysical": {
+ name: "Apocalypse Gigalithique",
+ effect: "Le Pokémon utilise la Force Z pour créer un immense rocher et écraser l'adversaire avec. La puissance varie selon celle de la capacité originale."
+ },
+ "continentalCrushSpecial": {
+ name: "Apocalypse Gigalithique",
+ effect: "Dummy Data"
+ },
+ "savageSpinOutPhysical": {
+ name: "Cocon Fatal",
+ effect: "Le Pokémon utilise la Force Z pour cracher de longs fils de soie et enserrer l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "savageSpinOutSpecial": {
+ name: "Cocon Fatal",
+ effect: "Dummy Data"
+ },
+ "neverEndingNightmarePhysical": {
+ name: "Appel des Ombres Éternelles",
+ effect: "Le Pokémon utilise la Force Z pour invoquer des esprits rancuniers qui s'abattent sur l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "neverEndingNightmareSpecial": {
+ name: "Appel des Ombres Éternelles",
+ effect: "Dummy Data"
+ },
+ "corkscrewCrashPhysical": {
+ name: "Vrille Maximum",
+ effect: "Le Pokémon utilise la Force Z pour tourner à toute vitesse et écraser l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "corkscrewCrashSpecial": {
+ name: "Vrille Maximum",
+ effect: "Dummy Data"
+ },
+ "infernoOverdrivePhysical": {
+ name: "Pyro-Explosion Cataclysmique",
+ effect: "Le Pokémon utilise la Force Z pour cracher une boule de feu qui réduit l'adversaire en cendres. La puissance varie selon celle de la capacité originale."
+ },
+ "infernoOverdriveSpecial": {
+ name: "Pyro-Explosion Cataclysmique",
+ effect: "Dummy Data"
+ },
+ "hydroVortexPhysical": {
+ name: "Super Tourbillon Abyssal",
+ effect: "Le Pokémon utilise la Force Z pour créer un tourbillon gigantesque qui avale l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "hydroVortexSpecial": {
+ name: "Super Tourbillon Abyssal",
+ effect: "Dummy Data"
+ },
+ "bloomDoomPhysical": {
+ name: "Pétalexplosion Éblouissante",
+ effect: "Le Pokémon utilise la Force Z pour libérer l'énergie des plantes et attaquer l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "bloomDoomSpecial": {
+ name: "Pétalexplosion Éblouissante",
+ effect: "Dummu Data"
+ },
+ "gigavoltHavocPhysical": {
+ name: "Fulguro-Lance Gigavolt",
+ effect: "Le Pokémon utilise la Force Z pour générer un courant électrique puissant qu'il projette sur l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "gigavoltHavocSpecial": {
+ name: "Fulguro-Lance Gigavolt",
+ effect: "Dummy Data"
+ },
+ "shatteredPsychePhysical": {
+ name: "Psycho-Pulvérisation EX",
+ effect: "Le Pokémon utilise la Force Z pour manipuler l'adversaire et lui infliger de sérieux dégâts. La puissance varie selon celle de la capacité originale."
+ },
+ "shatteredPsycheSpecial": {
+ name: "Psycho-Pulvérisation EX",
+ effect: "Dummy Data"
+ },
+ "subzeroSlammerPhysical": {
+ name: "Laser Cryogénique",
+ effect: "Le Pokémon utilise la Force Z pour baisser la température brutalement et congeler l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "subzeroSlammerSpecial": {
+ name: "Laser Cryogénique",
+ effect: "Dummy Data"
+ },
+ "devastatingDrakePhysical": {
+ name: "Chaos Draconique",
+ effect: "Le Pokémon utilise la Force Z pour matérialiser son aura et assaillir l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "devastatingDrakeSpecial": {
+ name: "Chaos Draconique",
+ effect: "Dummy Data"
+ },
+ "blackHoleEclipsePhysical": {
+ name: "Trou Noir des Ombres",
+ effect: "Le Pokémon utilise la Force Z pour rassembler l'énergie négative et y aspirer l'adversaire. La puissance varie selon celle de la capacité originale."
+ },
+ "blackHoleEclipseSpecial": {
+ name: "Trou Noir des Ombres",
+ effect: "Dummy Data"
+ },
+ "twinkleTacklePhysical": {
+ name: "Impact Choupinova",
+ effect: "Le Pokémon utilise la Force Z pour créer une dimension irréelle où l'adversaire est à sa merci. La puissance varie selon celle de la capacité originale."
+ },
+ "twinkleTackleSpecial": {
+ name: "Impact Choupinova",
+ effect: "Dummy Data"
+ },
+ "catastropika": {
+ name: "Pikachute Foudroyante",
+ effect: "Pikachu utilise la Force Z pour concentrer toute son électricité avant de se jeter à toute vitesse sur l'adversaire."
+ },
+ "shoreUp": {
+ name: "Amass'Sable",
+ effect: "Le lanceur récupère jusqu’à la moitié de ses PV max. Durant une tempête de sable, il en récupère encore plus."
+ },
+ "firstImpression": {
+ name: "Escarmouche",
+ effect: "Une capacité très puissante, mais qui ne fonctionne que lorsque le lanceur entre au combat."
+ },
+ "banefulBunker": {
+ name: "Blockhaus",
+ effect: "Le lanceur se protège contre les attaques, et si un assaillant utilise une attaque directe contre lui, il l’empoisonne."
+ },
+ "spiritShackle": {
+ name: "Tisse Ombre",
+ effect: "Une attaque qui coud la cible à son ombre, ce qui l’empêche de s’enfuir."
+ },
+ "darkestLariat": {
+ name: "Dark Lariat",
+ effect: "Le lanceur étend les bras et frappe l’adversaire en tournant violemment. Il inflige des dégâts et ignore les changements de stats de la cible."
+ },
+ "sparklingAria": {
+ name: "Aria de l'Écume",
+ effect: "Le lanceur émet plusieurs bulles en chantant. Soigne les brûlures des Pokémon touchés par ces bulles."
+ },
+ "iceHammer": {
+ name: "Marteau de Glace",
+ effect: "Le lanceur donne un puissant coup de poing à la cible, ce qui réduit la Vitesse du lanceur."
+ },
+ "floralHealing": {
+ name: "Soin Floral",
+ effect: "Rend la moitié de ses PV max à la cible. Plus efficace sur un Champ Herbu."
+ },
+ "highHorsepower": {
+ name: "Cavalerie Lourde",
+ effect: "Le lanceur attaque violemment en utilisant tout son poids."
+ },
+ "strengthSap": {
+ name: "Vole-Force",
+ effect: "Rend au lanceur une quantité de PV équivalente à la stat d’Attaque de la cible, puis baisse celle-ci."
+ },
+ "solarBlade": {
+ name: "Lame Solaire",
+ effect: "Le lanceur absorbe une grande quantité de lumière au premier tour et attaque au second tour en libérant cette énergie sous la forme d’une lame."
+ },
+ "leafage": {
+ name: "Feuillage",
+ effect: "Le lanceur attaque la cible avec des feuilles."
+ },
+ "spotlight": {
+ name: "Projecteur",
+ effect: "Met un Pokémon sous le feu des projecteurs et force tout le monde à le viser."
+ },
+ "toxicThread": {
+ name: "Fil Toxique",
+ effect: "Tisse un fil imprégné de venin. Empoisonne la cible et baisse sa Vitesse."
+ },
+ "laserFocus": {
+ name: "Affilage",
+ effect: "Le lanceur se concentre pour être sûr de porter un coup critique au tour suivant."
+ },
+ "gearUp": {
+ name: "Engrenage",
+ effect: "Change de réglage pour augmenter l'Attaque et l'Attaque Spéciale des alliés ayant les talents Plus ou Minus."
+ },
+ "throatChop": {
+ name: "Exécu-Son",
+ effect: "Inflige une douleur tellement violente à la cible qu’elle ne peut plus émettre de sons pendant deux tours."
+ },
+ "pollenPuff": {
+ name: "Boule Pollen",
+ effect: "Sur un ennemi, le lanceur envoie une boule explosive qui fait des dégâts. Sur un allié, il envoie du bon pollen nutritif qui fait récupérer des PV."
+ },
+ "anchorShot": {
+ name: "Ancrage",
+ effect: "Le lanceur jette son ancre sur la cible pour l'attaquer. Une fois accrochée, elle l'empêche de s'enfuir."
+ },
+ "psychicTerrain": {
+ name: "Champ Psychique",
+ effect: "Pendant cinq tours, les Pokémon au sol ne peuvent plus subir d’attaques prioritaires et la puissance des capacités de type Psy augmente."
+ },
+ "lunge": {
+ name: "Furie-Bond",
+ effect: "Le lanceur se jette sur la cible de toutes ses forces pour lui infliger des dégâts et baisser son Attaque."
+ },
+ "fireLash": {
+ name: "Fouet de Feu",
+ effect: "Frappe la cible avec un fouet incandescent et baisse sa Défense."
+ },
+ "powerTrip": {
+ name: "Arrogance",
+ effect: "Ivre de puissance, le lanceur attaque de toutes ses forces. Plus ses stats ont été augmentées, plus la puissance de cette capacité augmente."
+ },
+ "burnUp": {
+ name: "Flamme Ultime",
+ effect: "Le Pokémon se consume et les flammes de son corps infligent des dégâts élevés à la cible. Le lanceur perd le type Feu."
+ },
+ "speedSwap": {
+ name: "Permuvitesse",
+ effect: "Intervertit la Vitesse du lanceur et celle de la cible."
+ },
+ "smartStrike": {
+ name: "Estocorne",
+ effect: "Le lanceur transperce la cible avec sa corne effilée. N’échoue jamais."
+ },
+ "purify": {
+ name: "Purification",
+ effect: "Le lanceur soigne les altérations de statut de la cible, ce qui lui permet de regagner des PV."
+ },
+ "revelationDance": {
+ name: "Danse Éveil",
+ effect: "Le lanceur attaque en dansant avec enthousiasme. Le type de la capacité est le même que celui du lanceur."
+ },
+ "coreEnforcer": {
+ name: "Sanction Suprême",
+ effect: "La cible subit des dégâts et, si elle a déjà agi à ce tour, elle perd aussi son talent."
+ },
+ "tropKick": {
+ name: "Botte Sucrette",
+ effect: "Un coup de pied chaud comme les tropiques qui inflige des dégâts à la cible et baisse son Attaque."
+ },
+ "instruct": {
+ name: "Sommation",
+ effect: "Force la cible à lancer immédiatement la dernière capacité qu’elle a utilisée."
+ },
+ "beakBlast": {
+ name: "Bec-Canon",
+ effect: "Le lanceur fait chauffer son bec avant d'attaquer. S'il subit une attaque directe pendant la montée en température, l'attaquant sera brûlé."
+ },
+ "clangingScales": {
+ name: "Vibrécaille",
+ effect: "Le lanceur déclenche un vacarme en frottant ses écailles les unes contre les autres pour attaquer. Baisse la Défense du lanceur."
+ },
+ "dragonHammer": {
+ name: "Draco-Marteau",
+ effect: "Le lanceur utilise son corps comme un véritable marteau pour écraser la cible."
+ },
+ "brutalSwing": {
+ name: "Centrifugifle",
+ effect: "Le lanceur pivote pour prendre de l’élan et infliger des dégâts."
+ },
+ "auroraVeil": {
+ name: "Voile Aurore",
+ effect: "Réduit les dégâts causés par les capacités physiques et spéciales durant cinq tours. Ne peut être utilisée que lorsqu’il neige."
+ },
+ "sinisterArrowRaid": {
+ name: "Fureur des Plumes Spectrales",
+ effect: "Archéduc utilise la Force Z pour créer un nuage de flèches qui transpercent la cible."
+ },
+ "maliciousMoonsault": {
+ name: "Dark Body Press",
+ effect: "Félinferno utilise la Force Z pour gonfler ses muscles et écraser la cible de toutes ses forces."
+ },
+ "oceanicOperetta": {
+ name: "Symphonie des Ondines",
+ effect: "Oratoria utilise la Force Z pour rassembler une grande quantité d'eau et la projeter sur la cible à pleine puissance."
+ },
+ "guardianOfAlola": {
+ name: "Colère du Gardien d'Alola",
+ effect: "Le Pokémon Tutélaire utilise la Force Z et déchaîne toute la puissance d'Alola sur sa cible. Inflige des dégâts en fonction des PV restants de celle-ci."
+ },
+ "soulStealing7StarStrike": {
+ name: "Fauche-Âme des Sept Étoiles",
+ effect: "Marshadow concentre toute la Force Z dans ses poings et ses pieds pour infliger un déluge de coups à la cible."
+ },
+ "stokedSparksurfer": {
+ name: "Électro-Surf Survolté",
+ effect: "Le Raichu de la région d'Alola utilise la Force Z pour frapper la cible et la paralyser."
+ },
+ "pulverizingPancake": {
+ name: "Gare au Ronflex",
+ effect: "Ronflex utilise la Force Z pour montrer ce qu'il a dans le ventre et écraser la cible de tout son poids."
+ },
+ "extremeEvoboost": {
+ name: "Neuf pour Un",
+ effect: "Évoli utilise la Force Z pour emprunter la puissance de tous ses amis évolués et beaucoup augmenter toutes ses stats."
+ },
+ "genesisSupernova": {
+ name: "Supernova Originelle",
+ effect: "Mew utilise la Force Z pour attaquer la cible. Le terrain devient un Champ Psychique."
+ },
+ "shellTrap": {
+ name: "Carapiège",
+ effect: "Pose une carapace piégée. Si l'adversaire utilise une capacité physique, la carapace explose et lui inflige des dégâts."
+ },
+ "fleurCannon": {
+ name: "Canon Floral",
+ effect: "Envoie un rayon laser dévastateur. Baisse beaucoup l’Attaque Spéciale du lanceur."
+ },
+ "psychicFangs": {
+ name: "Psycho-Croc",
+ effect: "Le lanceur mord la cible avec ses pouvoirs psychiques. Brise aussi les barrières comme Mur Lumière et Protection."
+ },
+ "stompingTantrum": {
+ name: "Trépignement",
+ effect: "Le lanceur attaque en utilisant sa frustration. S’il a utilisé une capacité qui a échoué au tour précédent, la puissance de Trépignement est doublée."
+ },
+ "shadowBone": {
+ name: "Os Ombre",
+ effect: "Le lanceur frappe avec un os possédé par l'âme d'un défunt. Peut aussi baisser la Défense de la cible."
+ },
+ "accelerock": {
+ name: "Vif Roc",
+ effect: "Le lanceur charge la cible à toute vitesse. Frappe en priorité."
+ },
+ "liquidation": {
+ name: "Aqua-Brèche",
+ effect: "Le lanceur utilise la force de l’eau pour attaquer. Peut aussi baisser la Défense de la cible."
+ },
+ "prismaticLaser": {
+ name: "Laser Prisme",
+ effect: "Le lanceur utilise la puissance d'un prisme pour envoyer un laser destructeur, mais il doit se reposer au tour suivant."
+ },
+ "spectralThief": {
+ name: "Clepto-Mânes",
+ effect: "Le lanceur plonge dans l'ombre de la cible, vole ses augmentations de stats et l'attaque."
+ },
+ "sunsteelStrike": {
+ name: "Choc Météore",
+ effect: "Le lanceur fonce sur la cible à la vitesse d'une météorite. Ignore le talent de l'ennemi."
+ },
+ "moongeistBeam": {
+ name: "Rayon Spectral",
+ effect: "Le lanceur attaque avec un rayon de lumière mystérieux. Ignore le talent de la cible."
+ },
+ "tearfulLook": {
+ name: "Larme à l'Oeil",
+ effect: "Le lanceur regarde la cible avec des yeux remplis de larmes. Celle-ci perd toute combativité et voit son Attaque et son Attaque Spéciale baisser."
+ },
+ "zingZap": {
+ name: "Électrikipik",
+ effect: "Le lanceur fonce sur la cible et lui envoie un puissant choc électrique, ce qui peut aussi l’effrayer."
+ },
+ "naturesMadness": {
+ name: "Ire de la Nature",
+ effect: "Le lanceur déchaîne toute la colère de la nature pour baisser les PV de la cible de moitié."
+ },
+ "multiAttack": {
+ name: "Coup Varia-Type",
+ effect: "Le Pokémon s'entoure d'une puissante énergie avant de foncer sur sa cible. Le type de la capacité dépend de la ROM installée."
+ },
+ "tenMillionVoltThunderbolt": {
+ name: "Giga-Tonnerre",
+ effect: "Le Pikachu à casquette utilise la Force Z pour augmenter sa puissance électrique avant de la déchaîner sur la cible. Taux de critique élevé."
+ },
+ "mindBlown": {
+ name: "Caboche-Kaboum",
+ effect: "Le lanceur fait exploser sa tête pour attaquer toutes les cibles autour de lui. Il subit aussi des dégâts."
+ },
+ "plasmaFists": {
+ name: "Plasma Punch",
+ effect: "Le lanceur attaque en projetant de l'électricité avec ses poings. Convertit les capacités de type Normal en type Électrik."
+ },
+ "photonGeyser": {
+ name: "Photo-Geyser",
+ effect: "Le lanceur fait jaillir un pilier de lumière. Compare l'Attaque et l'Attaque Spéciale, et utilise celle qui infligera le plus de dégâts."
+ },
+ "lightThatBurnsTheSky": {
+ name: "Apocalypsis Luminis",
+ effect: "Compare l'Attaque et l'Attaque Spéciale, et utilise celle qui infligera le plus de dégâts. Ignore le talent de la cible."
+ },
+ "searingSunrazeSmash": {
+ name: "Hélio-Choc Dévastateur",
+ effect: "Baigné dans la Force Z, Solgaleo attaque en déchaînant toute sa puissance. Ignore le talent de la cible."
+ },
+ "menacingMoonrazeMaelstrom": {
+ name: "Rayons Séléno-Explosifs",
+ effect: "Baigné dans la Force Z, Lunala attaque en déchaînant toute sa puissance. Ignore le talent de la cible."
+ },
+ "letsSnuggleForever": {
+ name: "Patati-Patattrape",
+ effect: "Mimiqui concentre toute la Force Z dans son corps, et attaque dans le plus grand fracas !"
+ },
+ "splinteredStormshards": {
+ name: "Hurlement des Roches-Lames",
+ effect: "Lougaroc utilise la Force Z pour attaquer la cible de toutes ses forces. Efface aussi tout Champ existant."
+ },
+ "clangorousSoulblaze": {
+ name: "Dracacophonie Flamboyante",
+ effect: "Ékaïser utilise la Force Z pour frapper l'ennemi de toutes ses forces. Augmente aussi ses stats."
+ },
+ "zippyZap": {
+ name: "Pika-Sprint",
+ effect: "Une attaque électrique rapide comme l'éclair qui inflige un coup critique à coup sûr. Frappe en priorité."
+ },
+ "splishySplash": {
+ name: "Pika-Splash",
+ effect: "Pikachu frappe l'adversaire avec une vague géante chargée d'électricité. Peut aussi paralyser l'ennemi."
+ },
+ "floatyFall": {
+ name: "Pika-Piqué",
+ effect: "Pikachu prend de la hauteur avant de fondre sur son adversaire. Peut aussi apeurer l'ennemi."
+ },
+ "pikaPapow": {
+ name: "Pika-Fracas",
+ effect: "Plus le lanceur est heureux, plus l'attaque est puissante."
+ },
+ "bouncyBubble": {
+ name: "Évo-Thalasso",
+ effect: "Évoli frappe l'adversaire avec des bulles d'eau qu'il absorbe ensuite pour récupérer un nombre de PV égal à la moitié des dégâts infligés à l'ennemi."
+ },
+ "buzzyBuzz": {
+ name: "Évo-Dynamo",
+ effect: "Une attaque qui foudroie et paralyse l'adversaire."
+ },
+ "sizzlySlide": {
+ name: "Évo-Flambo",
+ effect: "Évoli s'embrase et percure violemment l'adversaire. Brûle aussi l'ennemi."
+ },
+ "glitzyGlow": {
+ name: "Évo-Psycho",
+ effect: "Évoli submerge l'adversaire sous un flot d'ondes psychiques et crée un mur fabuleux qui réduit les dégâts causés par les attaques spéciales de l'ennemi"
+ },
+ "baddyBad": {
+ name: "Évo-Ténébro",
+ effect: "Évoli fait appel à son côté sombre pour attaquer l'adversaire et créer un mur fabuleux qui réduit les dégâts causés par les attaques physiques de l'ennemi."
+ },
+ "sappySeed": {
+ name: "Évo-Écolo",
+ effect: "Une liane géante surgit du sol et bombarde l'adversaire de graines qui lui dérobent des PV à chaque tour. Ces PV sont ensuite absorbés par Évoli."
+ },
+ "freezyFrost": {
+ name: "Évo-Congélo",
+ effect: "Évoli frappe l'adversaire avec un cristal de buée noire gelée. Annule les changements de stats de tous les Pokémon au combat."
+ },
+ "sparklySwirl": {
+ name: "Évo-Fabulo",
+ effect: "Une attaque qui enserre l'adversaire dans un tourbillon de senteurs oppressantes. Guérit toutes les altérations de statut de l'équipe."
+ },
+ "veeveeVolley": {
+ name: "Évo-Chardasso",
+ effect: "Le lanceur lance une attaque dès lors qu'un signe apparaît sur le terrain. Les dégâts infligés sont proportionnels à l'affection de votre Pokémon"
+ },
+ "doubleIronBash": {
+ name: "Écrous d'Poing",
+ effect: "Le lanceur fait pivoter l'écrou de sa poitrine deux fois d'affilée pour frapper l'adversaire avec ses bras. Peut apeurer l'ennemi (30% de chances)."
+ },
+ "maxGuard": {
+ name: "Gardomax",
+ effect: "Le lanceur se protège de toutes les attaques. Peut échouer si utilisée plusieurs fois de suite."
+ },
+ "dynamaxCannon": {
+ name: "Canon Dynamax",
+ effect: "Le lanceur attaque en émettant un laser depuis son noyau. Cette capacité inflige deux fois plus de dégâts si l'adversaire est level 200."
+ },
+ "snipeShot": {
+ name: "Tir de Précision",
+ effect: "Le lanceur parvient toujours à viser la cible voulue, en ignorant l’effet des talents et des capacités capables de détourner les attaques."
+ },
+ "jawLock": {
+ name: "Croque Fort",
+ effect: "Le lanceur et sa cible ne peuvent plus être échangés jusqu’à ce que l’un d’entre eux tombe K.O. L’effet est annulé si l’un des deux Pokémon quitte le terrain."
+ },
+ "stuffCheeks": {
+ name: "Garde-à-Joues",
+ effect: "Le lanceur mange la Baie qu’il tient, ce qui augmente beaucoup sa Défense."
+ },
+ "noRetreat": {
+ name: "Ultime Bastion",
+ effect: "Le lanceur voit toutes ses stats augmenter, mais en contrepartie, il ne peut plus quitter le terrain."
+ },
+ "tarShot": {
+ name: "Goudronnage",
+ effect: "Le lanceur recouvre sa cible de goudron liquide pour baisser sa Vitesse et la rendre vulnérable au feu."
+ },
+ "magicPowder": {
+ name: "Poudre Magique",
+ effect: "Le lanceur recouvre sa cible d’une poudre magique qui change son type en Psy."
+ },
+ "dragonDarts": {
+ name: "Draco-Flèches",
+ effect: "Le lanceur attaque en propulsant deux Fantyrm. S’il y a deux cibles, chacune d’entre elles est frappée par un Fantyrm."
+ },
+ "teatime": {
+ name: "Thérémonie",
+ effect: "Le lanceur invite tous les Pokémon sur le terrain à prendre le goûter autour d’une tasse de thé. Ceux qui tiennent une Baie la mangent."
+ },
+ "octolock": {
+ name: "Octoprise",
+ effect: "Empêche l'ennemi de fuir ou de quitter le terrain. Baisse la Défense et la Défense Spécial de l'ennemi chaque tour."
+ },
+ "boltBeak": {
+ name: "Prise de Bec",
+ effect: "Inflige des dégâts et les double si le lanceur attaque avant l'ennemi."
+ },
+ "fishiousRend": {
+ name: "Branchicrok",
+ effect: "Inflige des dégâts et les double si le lanceur attaque avant l'ennemi."
+ },
+ "courtChange": {
+ name: "Change-Côté",
+ effect: "Une force mystérieuse intervertit les effets affectant chaque côté du terrain."
+ },
+ "maxFlare": {
+ name: "Pyromax",
+ effect: "Une attaque de type Feu que seuls les Pokémon Dynamax peuvent utiliser. Fait briller le soleil pendant cinq tours."
+ },
+ "maxFlutterby": {
+ name: "Insectomax",
+ effect: "Une attaque de type Insecte que seuls les Pokémon Dynamax peuvent utiliser. Baisse l'Attaque Spéciale de la cible."
+ },
+ "maxLightning": {
+ name: "Fulguromax",
+ effect: "Une attaque de type Électrik que seuls les Pokémon Dynamax peuvent utiliser. Crée un Champ Électrifié qui dure cinq tours."
+ },
+ "maxStrike": {
+ name: "Normalomax",
+ effect: "Une attaque de type Normal que seuls les Pokémon Dynamax peuvent utiliser. Baisse la Vitesse de la cible."
+ },
+ "maxKnuckle": {
+ name: "Pugilomax",
+ effect: "Une attaque de type Combat que seuls les Pokémon dynamax peuvent utiliser. Augmente l'Attaque des Alliés."
+ },
+ "maxPhantasm": {
+ name: "Spectromax",
+ effect: "Une attaque de type Spectre que seuls les Pokémon Dynamax peuvent utiliser. Baisse la Défense de la cible."
+ },
+ "maxHailstorm": {
+ name: "Cryomax",
+ effect: "Une attaque de type Glace que seuls les Pokémon Dynamax peuvent utiliser. Invoque une tempête de grêle qui dure cinq tours."
+ },
+ "maxOoze": {
+ name: "Toxinomax",
+ effect: "Une attaque de type Poison que seuls les Pokémon Dynamax peuvent utiliser. Augmente l'Attaque Spéciale des alliés."
+ },
+ "maxGeyser": {
+ name: "Hydromax",
+ effect: "Une attaque de type Eau que seuls les Pokémon Dynamax peuvent utiliser. Invoque de fortes pluies qui durent cinq tours."
+ },
+ "maxAirstream": {
+ name: "Aéromax",
+ effect: "Une attaque de type Vol que seuls les Pokémon Dynamax peuvent utiliser. Augmente la Vitesse des alliés."
+ },
+ "maxStarfall": {
+ name: "Enchantomax",
+ effect: "Une attaque de type Fée que seuls les Pokémon Dynamax peuvent utiliser. Crée un Champ Brumeux qui dure cinq tours."
+ },
+ "maxWyrmwind": {
+ name: "Dracomax",
+ effect: "Une attaque de type Dragon que seuls les Pokémon Dynamax peuvent utiliser. Baisse l'Attaque de la cible."
+ },
+ "maxMindstorm": {
+ name: "Psychomax",
+ effect: "Une attaque de type Psy que seuls les Pokémon Dynamax peuvent utiliser. Crée un Champ Psychique qui dure cinq tours."
+ },
+ "maxRockfall": {
+ name: "Lithomax",
+ effect: "Une attaque de type Roche que seuls les Pokémon Dynamax peuvent utiliser. Invoque une tempête de sable qui dure cinq tours."
+ },
+ "maxQuake": {
+ name: "Sismomax",
+ effect: "Une attaque de type Sol que seuls les Pokémon Dynamax peuvent utiliser. Augmente la Défense Spéciale des alliés."
+ },
+ "maxDarkness": {
+ name: "Sinistromax",
+ effect: "Une attaque de type Ténèbres que seuls les Pokémon Dynamax peuvent utiliser. Baisse la Défense Spéciale de la cible."
+ },
+ "maxOvergrowth": {
+ name: "Phytomax",
+ effect: "Une attaque de type Plante que seuls les Pokémon Dynamax peuvent utiliser. Crée un Champ Herbu qui dure cinq tours."
+ },
+ "maxSteelspike": {
+ name: "Métallomax",
+ effect: "Une attaque de type Acier que seuls les Pokémon Dynamax peuvent utiliser. Augmente la Défense des alliés."
+ },
+ "clangorousSoul": {
+ name: "Dracacophonie",
+ effect: "Sacrifie une partie de ses PV pour augmenter toutes ses statistiques."
+ },
+ "bodyPress": {
+ name: "Big Splash",
+ effect: "Le lanceur utilise son corps pour attaquer sa cible. Plus la Défense du lanceur est élevée, plus les dégâts infligés sont importants."
+ },
+ "decorate": {
+ name: "Nappage",
+ effect: "Augmente fortement l'Attaque et l'Attaque Spéciale du lanceur."
+ },
+ "drumBeating": {
+ name: "Tambour Battant",
+ effect: "Le lanceur bat son tambour pour en diriger les racines sur la cible, l’attaquer, et baisser sa Vitesse."
+ },
+ "snapTrap": {
+ name: "Troquenard",
+ effect: "Bloque l'ennemi pendant 4 à 5 tours."
+ },
+ "pyroBall": {
+ name: "Ballon Brûlant",
+ effect: "Le lanceur attaque avec un ballon fait à partir d’un caillou enflammé. Peut aussi brûler la cible (10% de chances)."
+ },
+ "behemothBlade": {
+ name: "Gladius Maximus",
+ effect: "Le lanceur se transforme en une immense épée et pourfend sa cible. Cette capacité inflige le double de dégâts aux Pokémon Dynamax."
+ },
+ "behemothBash": {
+ name: "Aegis Maxima",
+ effect: "Le lanceur se transforme en un immense bouclier et charge sa cible. Cette capacité inflige le double de dégâts aux Pokémon Dynamax."
+ },
+ "auraWheel": {
+ name: "Roue Libre",
+ effect: "Inflige et change en type Ténèbres"
+ },
+ "breakingSwipe": {
+ name: "Abattage",
+ effect: "Le lanceur balaie violemment le camp adverse avec son immense queue. Baisse l’Attaque de la cible."
+ },
+ "branchPoke": {
+ name: "Tapotige",
+ effect: "Le lanceur attaque sa cible en la piquant avec une branche pointue."
+ },
+ "overdrive": {
+ name: "Overdrive",
+ effect: "Le lanceur gratte ses cordes de guitare ou de basse pour créer de violentes vibrations sonores qui blessent la cible."
+ },
+ "appleAcid": {
+ name: "Acide Malique",
+ effect: "Le lanceur projette un liquide corrosif créé à partir d’une pomme acide sur la cible, ce qui baisse la Défense Spéciale de celle-ci."
+ },
+ "gravApple": {
+ name: "Force G",
+ effect: "Le lanceur fait tomber une pomme de très haut sur la cible, ce qui baisse la Défense de celle-ci."
+ },
+ "spiritBreak": {
+ name: "Choc Émotionnel",
+ effect: "Le lanceur attaque la cible avec une telle force que celle-ci peut s’en retrouver profondément troublée et voir son Attaque Spéciale baisser."
+ },
+ "strangeSteam": {
+ name: "Vapeur Féérique",
+ effect: "Inflige des dégâts et peut rendre confus l'ennemi."
+ },
+ "lifeDew": {
+ name: "Fontaine de Vie",
+ effect: "Le lanceur projette une eau mystérieuse sur le terrain pour restaurer ses PV et ceux de ses alliés au combat."
+ },
+ "obstruct": {
+ name: "Blocage",
+ effect: "Protège le lanceur des attaques de contact. Baisse la Défense de deux crans si l'ennemi a tenté une attaque de contact."
+ },
+ "falseSurrender": {
+ name: "Fourbette",
+ effect: "Le lanceur fait semblant de se prosterner et utilise ses cheveux pour transpercer sa cible. N’échoue jamais."
+ },
+ "meteorAssault": {
+ name: "Joute Astrale",
+ effect: "Inflige de gros dégâts mais oblige le lanceur à se reposer pendant un tour."
+ },
+ "eternabeam": {
+ name: "Laser Infinimax",
+ effect: "Inflige de gros dégâts mais oblige le lanceur à se reposer pendant un tour."
+ },
+ "steelBeam": {
+ name: "Métalaser",
+ effect: "Le lanceur concentre du métal issu de tout son corps en un rayon qu’il projette violemment sur sa cible. Il subit aussi des dégâts."
+ },
+ "expandingForce": {
+ name: "Vaste Pouvoir",
+ effect: "Le lanceur attaque la cible avec ses pouvoirs psychiques. Si un champ psychique est actif, la puissance de cette capacité augmente et elle touche tous les ennemis."
+ },
+ "steelRoller": {
+ name: "Métalliroue",
+ effect: "Une attaque qui inflige des dégâts et fait disparaître le champ actif, mais qui échoue s’il n’y en a pas à ce moment."
+ },
+ "scaleShot": {
+ name: "Rafale Écailles",
+ effect: "Le lanceur projette des écailles sur la cible de deux à cinq fois d’affilée. Augmente la Vitesse, mais diminue la Défense."
+ },
+ "meteorBeam": {
+ name: "Laser Météore",
+ effect: "Le lanceur concentre l’énergie cosmique au premier tour, ce qui augmente son Attaque Spéciale, et frappe au second."
+ },
+ "shellSideArm": {
+ name: "Kokiyarme",
+ effect: "Une attaque physique ou spéciale, en fonction de ce qui inflige le plus de dégâts à la cible. Peut aussi empoisonner."
+ },
+ "mistyExplosion": {
+ name: "Explo-Brume",
+ effect: "Le lanceur frappe tous les Pokémon autour de lui en explosant, ce qui le met K.O. La puissance de cette attaque augmente si un champ brumeux est actif."
+ },
+ "grassyGlide": {
+ name: "Gliss'Herbe",
+ effect: "Le lanceur attaque la cible en glissant sur le terrain. Frappe toujours en priorité si un champ herbu est actif."
+ },
+ "risingVoltage": {
+ name: "Monte-Tension",
+ effect: "Des éclairs surgissent du sol et frappent la cible. La puissance de cette attaque est doublée si la cible est sur un champ électrifié."
+ },
+ "terrainPulse": {
+ name: "Champlification",
+ effect: "Une attaque qui utilise la force des champs pour projeter une aura. Son type et sa puissance varient selon le champ actif."
+ },
+ "skitterSmack": {
+ name: "Ravage Rampant",
+ effect: "Le lanceur rampe derrière la cible pour l’attaquer, ce qui baisse l’Attaque Spéciale de celle-ci."
+ },
+ "burningJealousy": {
+ name: "Feu Envieux",
+ effect: "Le lanceur attaque sa cible avec toute sa jalousie. Cette capacité brûle tout Pokémon dont les stats ont augmenté pendant ce tour."
+ },
+ "lashOut": {
+ name: "Cent Rancunes",
+ effect: "Le lanceur frappe la cible avec toute sa rancune. Si les stats du lanceur ont diminué pendant ce tour, la puissance de cette attaque est doublée."
+ },
+ "poltergeist": {
+ name: "Esprit Frappeur",
+ effect: "Le lanceur manipule l’objet tenu par la cible pour l’attaquer. Cette capacité échoue si celle-ci ne tient rien."
+ },
+ "corrosiveGas": {
+ name: "Gaz Corrosif",
+ effect: "Un gaz corrosif qui enveloppe tous les Pokémon alentour et qui dissout les objets qu’ils tiennent."
+ },
+ "coaching": {
+ name: "Coaching",
+ effect: "Le lanceur coache ses alliés, augmentant ainsi leur Attaque et leur Défense."
+ },
+ "flipTurn": {
+ name: "Eau Revoir",
+ effect: "Après son attaque, le lanceur revient à toute vitesse et change de place avec un Pokémon de l’équipe prêt à combattre."
+ },
+ "tripleAxel": {
+ name: "Triple Axel",
+ effect: "Une série d’un à trois coups de pied distincts dont la puissance augmente à chaque fois que la capacité touche sa cible."
+ },
+ "dualWingbeat": {
+ name: "Double Volée",
+ effect: "Le lanceur frappe la cible avec ses ailes deux fois d’affilée."
+ },
+ "scorchingSands": {
+ name: "Sable Ardent",
+ effect: "Le lanceur projette du sable chauffé à blanc sur la cible, ce qui peut aussi la brûler (30% de chances)."
+ },
+ "jungleHealing": {
+ name: "Selve Salvatrice",
+ effect: "Le lanceur fait appel au pouvoir de la jungle pour restaurer les PV et soigner les altérations d’état de ses alliés et de lui-même."
+ },
+ "wickedBlow": {
+ name: "Poing Obscur",
+ effect: "Le lanceur assène un coup puissant à la cible. Cette technique qui inflige toujours un coup critique est réservée à ceux qui maîtrisent la puissance des Ténèbres."
+ },
+ "surgingStrikes": {
+ name: "Torrent de Coups",
+ effect: "Le lanceur assène trois coups fluides à la cible. Cette technique qui inflige toujours un coup critique est réservée à ceux qui maîtrisent la puissance de l’Eau."
+ },
+ "thunderCage": {
+ name: "Voltageôle",
+ effect: "Le lanceur frappe la cible, et le piège dans une prison électrique qui dure de quatre à cinq tours."
+ },
+ "dragonEnergy": {
+ name: "Draco-Énergie",
+ effect: "Le lanceur utilise son énergie vitale pour attaquer la cible. Moins il a de PV, moins l’attaque est puissante."
+ },
+ "freezingGlare": {
+ name: "Regard Glaçant",
+ effect: "Les yeux du lanceur tirent des rayons psychiques qui attaquent la cible et peuvent aussi la geler (10% de chances)."
+ },
+ "fieryWrath": {
+ name: "Fureur Ardente",
+ effect: "Le lanceur canalise sa colère et la transforme en émanation brûlante, avec laquelle il attaque la cible, ce qui peut aussi apeurer celle-ci (20% de chances)."
+ },
+ "thunderousKick": {
+ name: "Coup Fulgurant",
+ effect: "Le lanceur assène un coup de pied à la cible à la vitesse de l’éclair. Baisse aussi la Défense de la cible."
+ },
+ "glacialLance": {
+ name: "Lance de Glace",
+ effect: "Le lanceur attaque la cible avec une lance de glace entourée d’un blizzard."
+ },
+ "astralBarrage": {
+ name: "Éclat Spectral",
+ effect: "Le lanceur attaque la cible avec une multitude de petits spectres."
+ },
+ "eerieSpell": {
+ name: "Sort Sinistre",
+ effect: "Le lanceur attaque avec de puissants pouvoirs psychiques et retire 3 PP de la dernière capacité utilisée par la cible."
+ },
+ "direClaw": {
+ name: "Griffes Funestes",
+ effect: "Le lanceur attaque avec des griffes destructrices en visant les points faibles. La cible peut aussi être empoisonnée, paralysée, ou endormie."
+ },
+ "psyshieldBash": {
+ name: "Sprint Bouclier",
+ effect: "Le lanceur s’enveloppe d’énergie psychique et frappe sa cible de plein fouet. Cela augmente également la Défense du lanceur."
+ },
+ "powerShift": {
+ name: "Échange Force",
+ effect: "Le lanceur échange son Attaque avec sa Défense."
+ },
+ "stoneAxe": {
+ name: "Hache de Pierre",
+ effect: "Le lanceur attaque le point faible de sa cible avec sa hache de pierre. Les débris de pierre se mettent alors à flotter autour de la cible."
+ },
+ "springtideStorm": {
+ name: "Typhon Passionné",
+ effect: "Le lanceur déclenche un violent typhon de haine et d’amour qui s’abat sur la cible. Peut baisser l’Attaque de celle-ci."
+ },
+ "mysticalPower": {
+ name: "Force Mystique",
+ effect: "Le lanceur attaque en libérant un pouvoir mystique. Cela augmente également son Attaque Spéciale."
+ },
+ "ragingFury": {
+ name: "Grand Courroux",
+ effect: "Le lanceur se déchaîne et attaque en projetant de violentes flammes pendant deux ou trois tours. Il devient ensuite confus."
+ },
+ "waveCrash": {
+ name: "Aquatacle",
+ effect: "Le lanceur se recouvre entièrement d’eau avant de charger sa cible. Cela blesse aussi gravement le lanceur."
+ },
+ "chloroblast": {
+ name: "Herblast",
+ effect: "Le lanceur tire un concentré de sa propre chlorophylle sur la cible, ce qui le blesse également."
+ },
+ "mountainGale": {
+ name: "Bise Glaciaire",
+ effect: "Le lanceur envoie un bloc de glace de la taille d’un iceberg sur la cible, ce qui peut aussi l’apeurer (30% de chances)."
+ },
+ "victoryDance": {
+ name: "Danse Victoire",
+ effect: "Le lanceur danse vigoureusement pour invoquer la victoire, ce qui augmente son Attaque, sa Défense et sa Vitesse."
+ },
+ "headlongRush": {
+ name: "Assaut Frontal",
+ effect: "Le lanceur charge la cible de toutes ses forces, ce qui baisse la Défense et la Défense Spéciale du lanceur."
+ },
+ "barbBarrage": {
+ name: "Multitoxik",
+ effect: "Une multitude de pointes toxiques frappent la cible et peuvent l’empoisonner. La puissance est doublée si celle-ci est déjà empoisonnée (30% de chances en Style Normal et 50% de chances en Style Puissant)."
+ },
+ "esperWing": {
+ name: "Ailes Psycho",
+ effect: "Le lanceur entaille la cible avec ses ailes renforcées par une émanation psychique. Taux de critiques élevé. Cela augmente la Vitesse du lanceur."
+ },
+ "bitterMalice": {
+ name: "Coeur de Rancoeur",
+ effect: "Une rancœur glaciale frappe la cible et baisse son Attaque."
+ },
+ "shelter": {
+ name: "Mur Fumigène",
+ effect: "Rend la peau du lanceur dure comme un mur de fer, ce qui augmente beaucoup sa Défense."
+ },
+ "tripleArrows": {
+ name: "Triple Flèche",
+ effect: "Le lanceur donne un coup de pied et tire trois flèches simultanément, ce qui peut baisser la Défense de la cible ou l’apeurer (30% de chances). Taux de critiques élevé."
+ },
+ "infernalParade": {
+ name: "Cortège Funèbre",
+ effect: "Une multitude de boules de feu frappent la cible, ce qui peut aussi la brûler (30% de chances et 50% en Style Puissant). La puissance est doublée si celle-ci souffre d’une altération de statut."
+ },
+ "ceaselessEdge": {
+ name: "Vagues à Lames",
+ effect: "Des lames de coquillages entaillent la cible en visant ses points faibles. Les débris de coquillage se répandent sous la forme de picots aux pieds de la cible."
+ },
+ "bleakwindStorm": {
+ name: "Typhon Hivernal",
+ effect: "Le lanceur déclenche un typhon froid et brutal qui fait trembler le cœur et le corps de la cible, ce qui peut aussi baisser sa Vitesse."
+ },
+ "wildboltStorm": {
+ name: "Typhon Fulgurant",
+ effect: "Le lanceur déclenche un violent typhon orageux dont les rafales et la foudre frappent la cible, ce qui peut aussi la paralyser (30% de chances en Style Normal et 50% en Style Puissant)."
+ },
+ "sandsearStorm": {
+ name: "Typhon Pyrosable",
+ effect: "Le lanceur déclenche un violent typhon mêlé à du sable ardent qui s’abat sur la cible, ce qui peut la brûler (30% de chances et 50% en Style Puissant)."
+ },
+ "lunarBlessing": {
+ name: "Prière Lunaire",
+ effect: "Le lanceur adresse une prière à la lune pour restaurer les PV et soigner ses altérations de statut ainsi que celles de ses alliés."
+ },
+ "takeHeart": {
+ name: "Extravaillance",
+ effect: "Le lanceur fait preuve de bravoure pour soigner ses altérations de statut et augmenter sa puissance offensive et défensive."
+ },
+ "gMaxWildfire": {
+ name: "Fournaise G-Max",
+ effect: "Une attaque de type Feu que seul un Dracaufeu Gigamax peut utiliser. Pendant quatre tours, la cible continue de subir des dégâts."
+ },
+ "gMaxBefuddle": {
+ name: "Illusion G-Max",
+ effect: "Une attaque de type Insecte que seul un Papilusion Gigamax peut utiliser. Empoisonne, paralyse ou endort la cible."
+ },
+ "gMaxVoltCrash": {
+ name: "Foudre G-Max",
+ effect: "Une attaque de type Électrik que seul un Pikachu Gigamax peut utiliser. Paralyse la cible."
+ },
+ "gMaxGoldRush": {
+ name: "Pactole G-Max",
+ effect: "Une attaque de type Normal que seul un Miaouss Gigamax peut utiliser. Rend la cible confuse et permet d'obtenir de l'argent à la fin du combat."
+ },
+ "gMaxChiStrike": {
+ name: "Frappe G-Max",
+ effect: "Une attaque de type Combat que seul un Mackogneur Gigamax peut utiliser. Augmente le taux de critiques du lanceur et de ses alliés."
+ },
+ "gMaxTerror": {
+ name: "Hantise G-Max",
+ effect: "Une attaque de type Spectre que seul un Ectoplasma Gigamax peut utiliser. Empêche les Pokémon ennemis de quitter le combat."
+ },
+ "gMaxResonance": {
+ name: "Résonance G-Max",
+ effect: "Une attaque de type Glace que seul un Lokhlass Gigamax peut utiliser. Réduit les dégâts causés par des capacités pendant cinq tours."
+ },
+ "gMaxCuddle": {
+ name: "Câlin G-Max",
+ effect: "Une attaque de type Normal que seul un Évoli Gigamax peut utiliser. Rend la cible amoureuse."
+ },
+ "gMaxReplenish": {
+ name: "Récolte G-Max",
+ effect: "Une attaque de type Normal que seul un Ronflex Gigamax peut utiliser. Restaure une Baie tenue qui a déjà été mangée."
+ },
+ "gMaxMalodor": {
+ name: "Pestilence G-Max",
+ effect: "Une attaque de type Poison que seul un Miasmax Gigamax peut utiliser. Empoisonne la cible."
+ },
+ "gMaxStonesurge": {
+ name: "Récif G-Max",
+ effect: "Une attaque de type Eau que seul un Torgamord Gigamax peut utiliser. Disperse des pierres aiguisées sur le terrain."
+ },
+ "gMaxWindRage": {
+ name: "Rafale G-Max",
+ effect: "Une attaque de type Vol que seul un Corvaillus Gigamax peut utiliser. Permet de briser les barrières comme Protection et Mur Lumière."
+ },
+ "gMaxStunShock": {
+ name: "Choc G-Max",
+ effect: "Une attaque de type Électrik que seul un Salarsen Gigamax peut utiliser. Empoisonne ou paralyse la cible."
+ },
+ "gMaxFinale": {
+ name: "Cure G-Max",
+ effect: "Une attaque de type Fée que seul un Charmilly Gigamax peut utiliser. Restaure des PV aux alliés."
+ },
+ "gMaxDepletion": {
+ name: "Usure G-Max",
+ effect: "Une attaque de type Dragon que seul un Duralugon Gigamax peut utiliser. Baisse les PP de la dernière capacité utilisée par la cible."
+ },
+ "gMaxGravitas": {
+ name: "Ondes G-Max",
+ effect: "Une attaque de type Psy que seul un Astronelle Gigamax peut utiliser. Intensifie la gravité pendant cinq tours."
+ },
+ "gMaxVolcalith": {
+ name: "Téphra G-Max",
+ effect: "Une attaque de type Roche que seul un Monthracite Gigamax peut utiliser. Pendant quatre tours, la cible continue de subir des dégâts."
+ },
+ "gMaxSandblast": {
+ name: "Enlisement G-Max",
+ effect: "Une attaque de type Sol que seul un Dunaconda Gigamax peut utiliser. Emprisonne la cible dans une tempête de sable qui dure de quatre à cinq tours."
+ },
+ "gMaxSnooze": {
+ name: "Torpeur G-Max",
+ effect: "Une attaque de type Ténèbres que seul un Angoliath Gigamax peut utiliser. Fait bâiller la cible qui s'endort au tour suivant."
+ },
+ "gMaxTartness": {
+ name: "Corrosion G-Max",
+ effect: "Une attaque de type Plante que seul un Pomdrapi Gigamax peut utiliser. Réduit l'Esquive de la cible."
+ },
+ "gMaxSweetness": {
+ name: "Nectar G-Max",
+ effect: "Une attaque de type Plante que seul un Dratatin Gigamax peut utiliser. Soigne les altérations de statut des alliés."
+ },
+ "gMaxSmite": {
+ name: "Sentence G-Max",
+ effect: "Une attaque de type Fée que seul un Sorcilence Gigamax peut utiliser. Rend la cible confuse."
+ },
+ "gMaxSteelsurge": {
+ name: "Percée G-Max",
+ effect: "Une attaque de type Acier que seul un Pachyradjah Gigamax peut utiliser. Disperse des pics aiguisés sur le terrain."
+ },
+ "gMaxMeltdown": {
+ name: "Fonte G-Max",
+ effect: "Une attaque de type Acier que seul un Melmetal Gigamax peut utiliser. Empêche la cible d'utiliser la même capacité deux fois de suite."
+ },
+ "gMaxFoamBurst": {
+ name: "Bulles G-Max",
+ effect: "Une attaque de type Eau que seul un Krabboss Gigamax peut utiliser. Réduit beaucoup la Vitesse de la cible."
+ },
+ "gMaxCentiferno": {
+ name: "Combustion G-Max",
+ effect: "Une attaque de type Feu que seul un Scolocendre Gigamax peut utiliser. Emprisonne la cible dans un tourbillon de flammes qui dure de quatre à cinq tours."
+ },
+ "gMaxVineLash": {
+ name: "Fouet G-Max",
+ effect: "Une attaque de type Plante que seul un Florizarre Gigamax peut utiliser. Inflige des dégâts à la cible pendant quatre tours."
+ },
+ "gMaxCannonade": {
+ name: "Canonnade G-Max",
+ effect: "Une attaque de type Eau que seul un Tortank Gigamax peut utiliser. Inflige des dégâts à la cible pendant quatre tours."
+ },
+ "gMaxDrumSolo": {
+ name: "Percussion G-Max",
+ effect: "Une attaque de type Plante que seul un Gorythmic Gigamax peut utiliser. Ignore le talent de la cible."
+ },
+ "gMaxFireball": {
+ name: "Pyroball G-Max",
+ effect: "Une attaque de type Feu que seul un Pyrobut Gigamax peut utiliser. Ignore le talent de la cible."
+ },
+ "gMaxHydrosnipe": {
+ name: "Gâchette G-Max",
+ effect: "Une attaque de type Eau que seul un Lézargus Gigamax peut utiliser. Ignore le talent de la cible."
+ },
+ "gMaxOneBlow": {
+ name: "Coup Final G-Max",
+ effect: "Une attaque de type Ténèbres que seul un Shifours Gigamax peut utiliser. Cette frappe unique permet d'ignorer la capacité Gardomax."
+ },
+ "gMaxRapidFlow": {
+ name: "Multicoup G-Max",
+ effect: "Une attaque de type Eau que seul un Shifours Gigamax peut utiliser. Cet enchaînement de coups permet d'ignorer la capacité Gardomax."
+ },
+ "teraBlast": {
+ name: "Téra Explosion",
+ effect: "Si le lanceur est téracristallisé, il libère l’énergie de son type Téracristal. La capacité utilise l’Attaque ou l’Attaque Spéciale, selon ce qui infligera le plus de dégâts."
+ },
+ "silkTrap": {
+ name: "Piège de Fil",
+ effect: "Le lanceur déploie un piège de fil pour se protéger contre les attaques, et si un assaillant utilise une attaque directe contre lui, la Vitesse de l’assaillant baisse."
+ },
+ "axeKick": {
+ name: "Talon-Marteau",
+ effect: "Le lanceur donne un coup de talon descendant à la cible, ce qui peut aussi la rendre confuse. S’il échoue, le lanceur se blesse."
+ },
+ "lastRespects": {
+ name: "Hommage Posthume",
+ effect: "Le lanceur attaque pour venger ses alliés. Plus le nombre de Pokémon alliés mis K.O. est élevé, plus la puissance de cette capacité augmente."
+ },
+ "luminaCrash": {
+ name: "Lumino-Impact",
+ effect: "Le lanceur attaque en émettant une étrange lumière qui ébranle l’esprit de la cible. Cela baisse beaucoup la Défense Spéciale de la cible."
+ },
+ "orderUp": {
+ name: "Plat du Jour",
+ effect: "Le lanceur attaque avec adresse et élégance. S’il a un Nigirigon dans la gueule, une de ses stats augmente en fonction de la forme de celui-ci."
+ },
+ "jetPunch": {
+ name: "Poing Sonique",
+ effect: "Le lanceur enveloppe son poing d’un torrent furieux et attaque si rapidement qu’on peine à le discerner. Frappe en priorité."
+ },
+ "spicyExtract": {
+ name: "Habanerage",
+ effect: "Le lanceur relâche un concentré extrêmement pimenté sur la cible, ce qui augmente beaucoup l’Attaque de celle-ci, mais baisse aussi beaucoup sa Défense."
+ },
+ "spinOut": {
+ name: "Dérapage",
+ effect: "Le lanceur met tout son poids sur ses pattes et effectue de violentes rotations, ce qui inflige des dégâts à la cible, mais baisse beaucoup la Vitesse du lanceur."
+ },
+ "populationBomb": {
+ name: "Prolifération",
+ effect: "Le lanceur et ses congénères prolifèrent en masse et attaquent ensemble d’une à dix fois d’affilée."
+ },
+ "iceSpinner": {
+ name: "Cryo-Pirouette",
+ effect: "Le lanceur enveloppe ses jambes d’une fine couche de glace et heurte la cible en tournant sur lui-même. Ses rotations détruisent le champ actif sur le terrain."
+ },
+ "glaiveRush": {
+ name: "Charge Glaive",
+ effect: "Le lanceur se jette dans une charge inconsciente sur la cible. Au tour suivant, l’attaque de la cible inflige le double de dégâts et n’échoue jamais."
+ },
+ "revivalBlessing": {
+ name: "Second Souffle",
+ effect: "Dans un élan de compassion, le lanceur adresse une prière afin de ranimer un Pokémon de l’équipe K.O. en lui rendant la moitié de ses PV."
+ },
+ "saltCure": {
+ name: "Salaison",
+ effect: "Le lanceur couvre la cible de sel, ce qui lui inflige des dégâts à chaque tour. Si la cible est de type Acier ou Eau, ces dégâts sont plus élevés."
+ },
+ "tripleDive": {
+ name: "Triple Plongeon",
+ effect: "Le lanceur effectue des plongeons parfaitement cadencés pour éclabousser la cible et lui infliger des dégâts trois fois d’affilée."
+ },
+ "mortalSpin": {
+ name: "Toupie Éclat",
+ effect: "Le lanceur attaque en tournant sur lui-même et empoisonne la cible. Il se libère également des effets de capacités comme Étreinte, Ligotage ou Vampigraine."
+ },
+ "doodle": {
+ name: "Décalquage",
+ effect: "Le lanceur capture l’essence de la cible et la décalque. Le talent du lanceur et de ses alliés devient alors identique à celui de la cible."
+ },
+ "filletAway": {
+ name: "Décharnement",
+ effect: "Le lanceur sacrifie des PV pour beaucoup augmenter son Attaque, son Attaque Spéciale, et sa Vitesse."
+ },
+ "kowtowCleave": {
+ name: "Génusection",
+ effect: "Le lanceur se prosterne devant la cible et profite de cette distraction pour l’attaquer avec une lame. N’échoue jamais."
+ },
+ "flowerTrick": {
+ name: "Magie Florale",
+ effect: "Le lanceur attaque en jetant un bouquet de fleurs piégé sur la cible. N’échoue jamais et inflige toujours un coup critique."
+ },
+ "torchSong": {
+ name: "Chant Flamboyant",
+ effect: "Le lanceur carbonise la cible en projetant sur elle de vives flammes créées par un chant. Cette capacité augmente l’Attaque Spéciale du lanceur."
+ },
+ "aquaStep": {
+ name: "Danse Aquatique",
+ effect: "Le lanceur se joue de la cible et lui inflige des dégâts avec ses pas de danse gracieux et légers. Cette capacité augmente la Vitesse du lanceur."
+ },
+ "ragingBull": {
+ name: "Taurogne",
+ effect: "Le lanceur charge la cible comme un taureau enragé. Le type de cette capacité dépend de la race du lanceur, et brise les barrières comme Mur Lumière et Protection."
+ },
+ "makeItRain": {
+ name: "Ruée d'Or",
+ effect: "Le lanceur attaque en lançant de nombreuses pièces, ce qui baisse son Attaque Spéciale. Permet d’obtenir plus d’argent à la fin du combat."
+ },
+ "psyblade": {
+ name: "Lame Psychique",
+ effect: "Le lanceur lacère la cible à l'aide d'une lame intangible. S'il se trouve dans un champ électrifié, la puissance de cette capacité augmente de 50 %."
+ },
+ "hydroSteam": {
+ name: "Hydrovapeur",
+ effect: "Le lanceur asperge la cible avec un puissant jet d'eau bouillante. Quand le soleil brille, la puissance de cette capacité augmente de 50 % au lieu de baisser."
+ },
+ "ruination": {
+ name: "Cataclysme",
+ effect: "Le lanceur déclenche un cataclysme qui baisse les PV de la cible de moitié."
+ },
+ "collisionCourse": {
+ name: "Nitro Crash",
+ effect: "Le lanceur change de forme et s’écrase sur la cible dans une explosion antique. Si la capacité est super efficace, elle inflige encore plus de dégâts que d’ordinaire."
+ },
+ "electroDrift": {
+ name: "Turbo Volt",
+ effect: "Le lanceur change de forme et fonce sur la cible en la perforant d’électricité futuriste. Si la capacité est super efficace, sa puissance augmente encore plus."
+ },
+ "shedTail": {
+ name: "Queulonage",
+ effect: "Le lanceur crée un clone en sacrifiant des PV, puis il revient et échange sa place avec un Pokémon de l’équipe prêt à combattre."
+ },
+ "chillyReception": {
+ name: "Neigeux de Mots",
+ effect: "Le lanceur fait un si mauvais jeu de mots qu’il jette un froid et échange sa place avec un Pokémon de l’équipe prêt à combattre. La neige tombe pendant cinq tours."
+ },
+ "tidyUp": {
+ name: "Grand Nettoyage",
+ effect: "Le lanceur fait le ménage sur le terrain, ce qui annule les effets de Picots, Piège de Roc, Toile Gluante, Pics Toxik, et Clonage. Augmente l’Attaque et la Vitesse du lanceur."
+ },
+ "snowscape": {
+ name: "Chute de Neige",
+ effect: "Le lanceur invoque une tempête de neige qui dure cinq tours, ce qui augmente la Défense des Pokémon de type Glace."
+ },
+ "pounce": {
+ name: "Bond",
+ effect: "Le lanceur attaque en bondissant sur la cible, ce qui baisse la Vitesse de celle-ci."
+ },
+ "trailblaze": {
+ name: "Désherbaffe",
+ effect: "Le lanceur surgit des hautes herbes pour attaquer la cible. Les mouvements agiles du lanceur augmentent sa Vitesse."
+ },
+ "chillingWater": {
+ name: "Douche Froide",
+ effect: "Le lanceur attaque la cible en l’arrosant d’une eau si froide qu’elle détériore son esprit combatif. Baisse l’Attaque de la cible."
+ },
+ "hyperDrill": {
+ name: "Hyperceuse",
+ effect: "Le lanceur fait tourner à toute vitesse la partie pointue de son corps afin de transpercer la cible. Ignore même les capacités comme Abri ou Détection."
+ },
+ "twinBeam": {
+ name: "Double Laser",
+ effect: "Le lanceur projette d’étranges rayons lumineux avec ses yeux et inflige des dégâts deux fois d’affilée."
+ },
+ "rageFist": {
+ name: "Poing de Colère",
+ effect: "Le lanceur transforme sa colère en énergie pour attaquer. Plus il a subi d’attaques, plus la puissance de cette capacité augmente."
+ },
+ "armorCannon": {
+ name: "Canon Blindé",
+ effect: "Le lanceur tire un boulet de canon ardent provenant de sa propre armure sur la cible. Cela baisse la Défense et la Défense Spéciale du lanceur."
+ },
+ "bitterBlade": {
+ name: "Lame en Peine",
+ effect: "Le lanceur concentre son amertume du monde des vivants dans la pointe de ses épées et tranche la cible. La moitié des dégâts infligés sont convertis en PV pour le lanceur."
+ },
+ "doubleShock": {
+ name: "Double Décharge",
+ effect: "Le lanceur libère toute l’électricité contenue dans son corps pour infliger des dégâts élevés à la cible. Le lanceur perd le type Électrik."
+ },
+ "gigatonHammer": {
+ name: "Marteau Mastoc",
+ effect: "Le lanceur met tout son corps à contribution pour attaquer la cible avec un immense marteau. Cette capacité ne peut pas être utilisée deux fois d’affilée."
+ },
+ "comeuppance": {
+ name: "Vindicte",
+ effect: "Le lanceur contre-attaque avec un coup infligeant des dégâts supérieurs à ceux de la dernière capacité qui l’a blessé."
+ },
+ "aquaCutter": {
+ name: "Tranch'Aqua",
+ effect: "Le lanceur projette de l’eau pressurisée qui entaille la cible comme une lame. Taux de critiques élevé."
+ },
+ "blazingTorque": {
+ name: "Crash Brûlant",
+ effect: "Crash Brûlant inflige des dégâts et possède 30 % de chances de brûler l'adversaire."
+ },
+ "wickedTorque": {
+ name: "Crash Obscur",
+ effect: "Crash Obscur inflige des dégâts et possède 10 % de chances d'endormir l'adversaire."
+ },
+ "noxiousTorque": {
+ name: "Crash Toxique",
+ effect: "Crash Toxique inflige des dégâts et possède 30 % de chances d'empoisonner l'adversaire."
+ },
+ "combatTorque": {
+ name: "Crash Musclé",
+ effect: "Crash Musclé inflige des dégâts et possède 30 % de chances de paralyser l'adversaire."
+ },
+ "magicalTorque": {
+ name: "Crash Magique",
+ effect: "Crash Magique inflige des dégâts et possède 30 % de chances de rendre l'adversaire confus."
+ },
+ "bloodMoon": {
+ name: "Lune Rouge",
+ effect: "Le lanceur concentre toute son énergie dans la lune rouge sang sur son front et la projette sur la cible. Cette capacité ne peut pas être utilisée deux fois d'affilée."
+ },
+ "matchaGotcha": {
+ name: "Mortier Matcha",
+ effect: "Le lanceur remue son thé et en bombarde la cible. La moitié des dégâts infligés sont convertis en PV pour le lanceur. Cette capacité peut aussi brûler la cible."
+ },
+ "syrupBomb": {
+ name: "Bombe au sirop",
+ effect: "Le lanceur jette une bombe qui recouvre la cible de sirop gluant et fait progressivement baisser la Vitesse de la cible pendant trois tours."
+ },
+ "ivyCudgel": {
+ name: "Massue Liane",
+ effect: "Le lanceur frappe la cible à l'aide d'une massue entourée d'une liane. Le type de cette capacité varie en fonction du masque que porte le lanceur. Taux de critiques élevé."
+ },
+ "electroShot": {
+ name: "Fulgurayon",
+ effect: "Le lanceur absorbe de l'électricité au premier tour, ce qui augmente son Attaque Spéciale, et envoie une puissante décharge au second. S'il pleut, il l'envoie au premier tour."
+ },
+ "teraStarstorm": {
+ name: "Pluie Térastrale",
+ effect: "Le lanceur bombarde la cible afin de l'éliminer grâce au pouvoir des cristaux. Si le lanceur est Terapagos sous sa Forme Stellaire, la capacité touche tous les ennemis."
+ },
+ "fickleBeam": {
+ name: "Laser Hasard",
+ effect: "Le lanceur attaque en tirant un rayon lumineux. Il arrive parfois que toutes les têtes agissent ensemble, ce qui double la puissance de la capacité."
+ },
+ "burningBulwark": {
+ name: "Rempart Brûlant",
+ effect: "Le lanceur se protège contre les attaques grâce à son pelage incandescent, et si un assaillant utilise une attaque directe contre lui, il le brûle."
+ },
+ "thunderclap": {
+ name: "Vif Éclair",
+ effect: "Permet au lanceur d’attaquer la cible en priorité avec une décharge électrique. Échoue si la cible ne prépare pas une attaque."
+ },
+ "mightyCleave": {
+ name: "Lame Puissante",
+ effect: "Le lanceur pourfend la cible avec la lumière accumulée sur sa tête. Cette attaque passe outre les protections."
+ },
+ "tachyonCutter": {
+ name: "Lame Tachyonique",
+ effect: "Le lanceur concentre des particules élémentaires pour créer une lame qui inflige des dégâts à la cible deux fois d’affilée. N'échoue jamais."
+ },
+ "hardPress": {
+ name: "Pression Extrême",
+ effect: "Le lanceur écrase la cible avec ses bras ou ses pinces. Plus il reste de PV à la cible, plus la puissance de la capacité augmente."
+ },
+ "dragonCheer": {
+ name: "Cri Draconique",
+ effect: "Le lanceur galvanise ses alliés avec un encouragement draconique qui augmente leur taux de critiques. L'effet est plus puissant si les alliés ont le type Dragon."
+ },
+ "alluringVoice": {
+ name: "Voix Envoûtante",
+ effect: "Le lanceur attaque la cible avec sa voix angélique. Cette capacité rend la cible confuse si ses stats ont augmenté pendant ce tour."
+ },
+ "temperFlare": {
+ name: "Indignition",
+ effect: "Le lanceur utilise la force de son dépit pour attaquer. S'il a utilisé une capacité qui a échoué au tour précédent, la puissance d'Indignition est doublée."
+ },
+ "supercellSlam": {
+ name: "Volt Assaut",
+ effect: "Le lanceur se charge en électricité et fond sur la cible. S'il échoue, le lanceur se blesse."
+ },
+ "psychicNoise": {
+ name: "Dissonance Psy",
+ effect: "Le lanceur attaque avec des ondes sonores dissonantes. Cela empêche la cible de récupérer des PV à l'aide de capacités, talents ou objets tenus pendant 2 tours."
+ },
+ "upperHand": {
+ name: "Prio-Parade",
+ effect: "Le lanceur réagit instinctivement au moindre mouvement et donne un coup de paume qui apeure la cible. Échoue si cette dernière n'a pas utilisé une attaque prioritaire."
+ },
+ "malignantChain": {
+ name: "Chaîne Malsaine",
+ effect: "Le lanceur ligote la cible avec une chaîne faite de poison et lui injecte un venin corrosif, ce qui peut aussi gravement l'empoisonner."
+ }
+} as const;
\ No newline at end of file
diff --git a/src/locales/fr/pokeball.ts b/src/locales/fr/pokeball.ts
new file mode 100644
index 00000000000..82dfea3e2d7
--- /dev/null
+++ b/src/locales/fr/pokeball.ts
@@ -0,0 +1,10 @@
+import { SimpleTranslationEntries } from "#app/plugins/i18n";
+
+export const pokeball: SimpleTranslationEntries = {
+ "pokeBall": "Poké Ball",
+ "greatBall": "Super Ball",
+ "ultraBall": "Hyper Ball",
+ "rogueBall": "Rogue Ball",
+ "masterBall": "Master Ball",
+ "luxuryBall": "Luxe Ball",
+} as const;
\ No newline at end of file
diff --git a/src/locales/fr/pokemon.ts b/src/locales/fr/pokemon.ts
new file mode 100644
index 00000000000..09be8894eb4
--- /dev/null
+++ b/src/locales/fr/pokemon.ts
@@ -0,0 +1,1086 @@
+import { SimpleTranslationEntries } from "#app/plugins/i18n";
+
+export const pokemon: SimpleTranslationEntries = {
+ "bulbasaur": "Bulbasaur",
+ "ivysaur": "Ivysaur",
+ "venusaur": "Venusaur",
+ "charmander": "Charmander",
+ "charmeleon": "Charmeleon",
+ "charizard": "Charizard",
+ "squirtle": "Squirtle",
+ "wartortle": "Wartortle",
+ "blastoise": "Blastoise",
+ "caterpie": "Caterpie",
+ "metapod": "Metapod",
+ "butterfree": "Butterfree",
+ "weedle": "Weedle",
+ "kakuna": "Kakuna",
+ "beedrill": "Beedrill",
+ "pidgey": "Pidgey",
+ "pidgeotto": "Pidgeotto",
+ "pidgeot": "Pidgeot",
+ "rattata": "Rattata",
+ "raticate": "Raticate",
+ "spearow": "Spearow",
+ "fearow": "Fearow",
+ "ekans": "Ekans",
+ "arbok": "Arbok",
+ "pikachu": "Pikachu",
+ "raichu": "Raichu",
+ "sandshrew": "Sandshrew",
+ "sandslash": "Sandslash",
+ "nidoran_f": "Nidoran♀",
+ "nidorina": "Nidorina",
+ "nidoqueen": "Nidoqueen",
+ "nidoran_m": "Nidoran♂",
+ "nidorino": "Nidorino",
+ "nidoking": "Nidoking",
+ "clefairy": "Clefairy",
+ "clefable": "Clefable",
+ "vulpix": "Vulpix",
+ "ninetales": "Ninetales",
+ "jigglypuff": "Jigglypuff",
+ "wigglytuff": "Wigglytuff",
+ "zubat": "Zubat",
+ "golbat": "Golbat",
+ "oddish": "Oddish",
+ "gloom": "Gloom",
+ "vileplume": "Vileplume",
+ "paras": "Paras",
+ "parasect": "Parasect",
+ "venonat": "Venonat",
+ "venomoth": "Venomoth",
+ "diglett": "Diglett",
+ "dugtrio": "Dugtrio",
+ "meowth": "Meowth",
+ "persian": "Persian",
+ "psyduck": "Psyduck",
+ "golduck": "Golduck",
+ "mankey": "Mankey",
+ "primeape": "Primeape",
+ "growlithe": "Growlithe",
+ "arcanine": "Arcanine",
+ "poliwag": "Poliwag",
+ "poliwhirl": "Poliwhirl",
+ "poliwrath": "Poliwrath",
+ "abra": "Abra",
+ "kadabra": "Kadabra",
+ "alakazam": "Alakazam",
+ "machop": "Machop",
+ "machoke": "Machoke",
+ "machamp": "Machamp",
+ "bellsprout": "Bellsprout",
+ "weepinbell": "Weepinbell",
+ "victreebel": "Victreebel",
+ "tentacool": "Tentacool",
+ "tentacruel": "Tentacruel",
+ "geodude": "Geodude",
+ "graveler": "Graveler",
+ "golem": "Golem",
+ "ponyta": "Ponyta",
+ "rapidash": "Rapidash",
+ "slowpoke": "Slowpoke",
+ "slowbro": "Slowbro",
+ "magnemite": "Magnemite",
+ "magneton": "Magneton",
+ "farfetchd": "Farfetch'd",
+ "doduo": "Doduo",
+ "dodrio": "Dodrio",
+ "seel": "Seel",
+ "dewgong": "Dewgong",
+ "grimer": "Grimer",
+ "muk": "Muk",
+ "shellder": "Shellder",
+ "cloyster": "Cloyster",
+ "gastly": "Gastly",
+ "haunter": "Haunter",
+ "gengar": "Gengar",
+ "onix": "Onix",
+ "drowzee": "Drowzee",
+ "hypno": "Hypno",
+ "krabby": "Krabby",
+ "kingler": "Kingler",
+ "voltorb": "Voltorb",
+ "electrode": "Electrode",
+ "exeggcute": "Exeggcute",
+ "exeggutor": "Exeggutor",
+ "cubone": "Cubone",
+ "marowak": "Marowak",
+ "hitmonlee": "Hitmonlee",
+ "hitmonchan": "Hitmonchan",
+ "lickitung": "Lickitung",
+ "koffing": "Koffing",
+ "weezing": "Weezing",
+ "rhyhorn": "Rhyhorn",
+ "rhydon": "Rhydon",
+ "chansey": "Chansey",
+ "tangela": "Tangela",
+ "kangaskhan": "Kangaskhan",
+ "horsea": "Horsea",
+ "seadra": "Seadra",
+ "goldeen": "Goldeen",
+ "seaking": "Seaking",
+ "staryu": "Staryu",
+ "starmie": "Starmie",
+ "mr_mime": "Mr. Mime",
+ "scyther": "Scyther",
+ "jynx": "Jynx",
+ "electabuzz": "Electabuzz",
+ "magmar": "Magmar",
+ "pinsir": "Pinsir",
+ "tauros": "Tauros",
+ "magikarp": "Magikarp",
+ "gyarados": "Gyarados",
+ "lapras": "Lapras",
+ "ditto": "Ditto",
+ "eevee": "Eevee",
+ "vaporeon": "Vaporeon",
+ "jolteon": "Jolteon",
+ "flareon": "Flareon",
+ "porygon": "Porygon",
+ "omanyte": "Omanyte",
+ "omastar": "Omastar",
+ "kabuto": "Kabuto",
+ "kabutops": "Kabutops",
+ "aerodactyl": "Aerodactyl",
+ "snorlax": "Snorlax",
+ "articuno": "Articuno",
+ "zapdos": "Zapdos",
+ "moltres": "Moltres",
+ "dratini": "Dratini",
+ "dragonair": "Dragonair",
+ "dragonite": "Dragonite",
+ "mewtwo": "Mewtwo",
+ "mew": "Mew",
+ "chikorita": "Chikorita",
+ "bayleef": "Bayleef",
+ "meganium": "Meganium",
+ "cyndaquil": "Cyndaquil",
+ "quilava": "Quilava",
+ "typhlosion": "Typhlosion",
+ "totodile": "Totodile",
+ "croconaw": "Croconaw",
+ "feraligatr": "Feraligatr",
+ "sentret": "Sentret",
+ "furret": "Furret",
+ "hoothoot": "Hoothoot",
+ "noctowl": "Noctowl",
+ "ledyba": "Ledyba",
+ "ledian": "Ledian",
+ "spinarak": "Spinarak",
+ "ariados": "Ariados",
+ "crobat": "Crobat",
+ "chinchou": "Chinchou",
+ "lanturn": "Lanturn",
+ "pichu": "Pichu",
+ "cleffa": "Cleffa",
+ "igglybuff": "Igglybuff",
+ "togepi": "Togepi",
+ "togetic": "Togetic",
+ "natu": "Natu",
+ "xatu": "Xatu",
+ "mareep": "Mareep",
+ "flaaffy": "Flaaffy",
+ "ampharos": "Ampharos",
+ "bellossom": "Bellossom",
+ "marill": "Marill",
+ "azumarill": "Azumarill",
+ "sudowoodo": "Sudowoodo",
+ "politoed": "Politoed",
+ "hoppip": "Hoppip",
+ "skiploom": "Skiploom",
+ "jumpluff": "Jumpluff",
+ "aipom": "Aipom",
+ "sunkern": "Sunkern",
+ "sunflora": "Sunflora",
+ "yanma": "Yanma",
+ "wooper": "Wooper",
+ "quagsire": "Quagsire",
+ "espeon": "Espeon",
+ "umbreon": "Umbreon",
+ "murkrow": "Murkrow",
+ "slowking": "Slowking",
+ "misdreavus": "Misdreavus",
+ "unown": "Unown",
+ "wobbuffet": "Wobbuffet",
+ "girafarig": "Girafarig",
+ "pineco": "Pineco",
+ "forretress": "Forretress",
+ "dunsparce": "Dunsparce",
+ "gligar": "Gligar",
+ "steelix": "Steelix",
+ "snubbull": "Snubbull",
+ "granbull": "Granbull",
+ "qwilfish": "Qwilfish",
+ "scizor": "Scizor",
+ "shuckle": "Shuckle",
+ "heracross": "Heracross",
+ "sneasel": "Sneasel",
+ "teddiursa": "Teddiursa",
+ "ursaring": "Ursaring",
+ "slugma": "Slugma",
+ "magcargo": "Magcargo",
+ "swinub": "Swinub",
+ "piloswine": "Piloswine",
+ "corsola": "Corsola",
+ "remoraid": "Remoraid",
+ "octillery": "Octillery",
+ "delibird": "Delibird",
+ "mantine": "Mantine",
+ "skarmory": "Skarmory",
+ "houndour": "Houndour",
+ "houndoom": "Houndoom",
+ "kingdra": "Kingdra",
+ "phanpy": "Phanpy",
+ "donphan": "Donphan",
+ "porygon2": "Porygon2",
+ "stantler": "Stantler",
+ "smeargle": "Smeargle",
+ "tyrogue": "Tyrogue",
+ "hitmontop": "Hitmontop",
+ "smoochum": "Smoochum",
+ "elekid": "Elekid",
+ "magby": "Magby",
+ "miltank": "Miltank",
+ "blissey": "Blissey",
+ "raikou": "Raikou",
+ "entei": "Entei",
+ "suicune": "Suicune",
+ "larvitar": "Larvitar",
+ "pupitar": "Pupitar",
+ "tyranitar": "Tyranitar",
+ "lugia": "Lugia",
+ "ho_oh": "Ho-Oh",
+ "celebi": "Celebi",
+ "treecko": "Treecko",
+ "grovyle": "Grovyle",
+ "sceptile": "Sceptile",
+ "torchic": "Torchic",
+ "combusken": "Combusken",
+ "blaziken": "Blaziken",
+ "mudkip": "Mudkip",
+ "marshtomp": "Marshtomp",
+ "swampert": "Swampert",
+ "poochyena": "Poochyena",
+ "mightyena": "Mightyena",
+ "zigzagoon": "Zigzagoon",
+ "linoone": "Linoone",
+ "wurmple": "Wurmple",
+ "silcoon": "Silcoon",
+ "beautifly": "Beautifly",
+ "cascoon": "Cascoon",
+ "dustox": "Dustox",
+ "lotad": "Lotad",
+ "lombre": "Lombre",
+ "ludicolo": "Ludicolo",
+ "seedot": "Seedot",
+ "nuzleaf": "Nuzleaf",
+ "shiftry": "Shiftry",
+ "taillow": "Taillow",
+ "swellow": "Swellow",
+ "wingull": "Wingull",
+ "pelipper": "Pelipper",
+ "ralts": "Ralts",
+ "kirlia": "Kirlia",
+ "gardevoir": "Gardevoir",
+ "surskit": "Surskit",
+ "masquerain": "Masquerain",
+ "shroomish": "Shroomish",
+ "breloom": "Breloom",
+ "slakoth": "Slakoth",
+ "vigoroth": "Vigoroth",
+ "slaking": "Slaking",
+ "nincada": "Nincada",
+ "ninjask": "Ninjask",
+ "shedinja": "Shedinja",
+ "whismur": "Whismur",
+ "loudred": "Loudred",
+ "exploud": "Exploud",
+ "makuhita": "Makuhita",
+ "hariyama": "Hariyama",
+ "azurill": "Azurill",
+ "nosepass": "Nosepass",
+ "skitty": "Skitty",
+ "delcatty": "Delcatty",
+ "sableye": "Sableye",
+ "mawile": "Mawile",
+ "aron": "Aron",
+ "lairon": "Lairon",
+ "aggron": "Aggron",
+ "meditite": "Meditite",
+ "medicham": "Medicham",
+ "electrike": "Electrike",
+ "manectric": "Manectric",
+ "plusle": "Plusle",
+ "minun": "Minun",
+ "volbeat": "Volbeat",
+ "illumise": "Illumise",
+ "roselia": "Roselia",
+ "gulpin": "Gulpin",
+ "swalot": "Swalot",
+ "carvanha": "Carvanha",
+ "sharpedo": "Sharpedo",
+ "wailmer": "Wailmer",
+ "wailord": "Wailord",
+ "numel": "Numel",
+ "camerupt": "Camerupt",
+ "torkoal": "Torkoal",
+ "spoink": "Spoink",
+ "grumpig": "Grumpig",
+ "spinda": "Spinda",
+ "trapinch": "Trapinch",
+ "vibrava": "Vibrava",
+ "flygon": "Flygon",
+ "cacnea": "Cacnea",
+ "cacturne": "Cacturne",
+ "swablu": "Swablu",
+ "altaria": "Altaria",
+ "zangoose": "Zangoose",
+ "seviper": "Seviper",
+ "lunatone": "Lunatone",
+ "solrock": "Solrock",
+ "barboach": "Barboach",
+ "whiscash": "Whiscash",
+ "corphish": "Corphish",
+ "crawdaunt": "Crawdaunt",
+ "baltoy": "Baltoy",
+ "claydol": "Claydol",
+ "lileep": "Lileep",
+ "cradily": "Cradily",
+ "anorith": "Anorith",
+ "armaldo": "Armaldo",
+ "feebas": "Feebas",
+ "milotic": "Milotic",
+ "castform": "Castform",
+ "kecleon": "Kecleon",
+ "shuppet": "Shuppet",
+ "banette": "Banette",
+ "duskull": "Duskull",
+ "dusclops": "Dusclops",
+ "tropius": "Tropius",
+ "chimecho": "Chimecho",
+ "absol": "Absol",
+ "wynaut": "Wynaut",
+ "snorunt": "Snorunt",
+ "glalie": "Glalie",
+ "spheal": "Spheal",
+ "sealeo": "Sealeo",
+ "walrein": "Walrein",
+ "clamperl": "Clamperl",
+ "huntail": "Huntail",
+ "gorebyss": "Gorebyss",
+ "relicanth": "Relicanth",
+ "luvdisc": "Luvdisc",
+ "bagon": "Bagon",
+ "shelgon": "Shelgon",
+ "salamence": "Salamence",
+ "beldum": "Beldum",
+ "metang": "Metang",
+ "metagross": "Metagross",
+ "regirock": "Regirock",
+ "regice": "Regice",
+ "registeel": "Registeel",
+ "latias": "Latias",
+ "latios": "Latios",
+ "kyogre": "Kyogre",
+ "groudon": "Groudon",
+ "rayquaza": "Rayquaza",
+ "jirachi": "Jirachi",
+ "deoxys": "Deoxys",
+ "turtwig": "Turtwig",
+ "grotle": "Grotle",
+ "torterra": "Torterra",
+ "chimchar": "Chimchar",
+ "monferno": "Monferno",
+ "infernape": "Infernape",
+ "piplup": "Piplup",
+ "prinplup": "Prinplup",
+ "empoleon": "Empoleon",
+ "starly": "Starly",
+ "staravia": "Staravia",
+ "staraptor": "Staraptor",
+ "bidoof": "Bidoof",
+ "bibarel": "Bibarel",
+ "kricketot": "Kricketot",
+ "kricketune": "Kricketune",
+ "shinx": "Shinx",
+ "luxio": "Luxio",
+ "luxray": "Luxray",
+ "budew": "Budew",
+ "roserade": "Roserade",
+ "cranidos": "Cranidos",
+ "rampardos": "Rampardos",
+ "shieldon": "Shieldon",
+ "bastiodon": "Bastiodon",
+ "burmy": "Burmy",
+ "wormadam": "Wormadam",
+ "mothim": "Mothim",
+ "combee": "Combee",
+ "vespiquen": "Vespiquen",
+ "pachirisu": "Pachirisu",
+ "buizel": "Buizel",
+ "floatzel": "Floatzel",
+ "cherubi": "Cherubi",
+ "cherrim": "Cherrim",
+ "shellos": "Shellos",
+ "gastrodon": "Gastrodon",
+ "ambipom": "Ambipom",
+ "drifloon": "Drifloon",
+ "drifblim": "Drifblim",
+ "buneary": "Buneary",
+ "lopunny": "Lopunny",
+ "mismagius": "Mismagius",
+ "honchkrow": "Honchkrow",
+ "glameow": "Glameow",
+ "purugly": "Purugly",
+ "chingling": "Chingling",
+ "stunky": "Stunky",
+ "skuntank": "Skuntank",
+ "bronzor": "Bronzor",
+ "bronzong": "Bronzong",
+ "bonsly": "Bonsly",
+ "mime_jr": "Mime Jr.",
+ "happiny": "Happiny",
+ "chatot": "Chatot",
+ "spiritomb": "Spiritomb",
+ "gible": "Gible",
+ "gabite": "Gabite",
+ "garchomp": "Garchomp",
+ "munchlax": "Munchlax",
+ "riolu": "Riolu",
+ "lucario": "Lucario",
+ "hippopotas": "Hippopotas",
+ "hippowdon": "Hippowdon",
+ "skorupi": "Skorupi",
+ "drapion": "Drapion",
+ "croagunk": "Croagunk",
+ "toxicroak": "Toxicroak",
+ "carnivine": "Carnivine",
+ "finneon": "Finneon",
+ "lumineon": "Lumineon",
+ "mantyke": "Mantyke",
+ "snover": "Snover",
+ "abomasnow": "Abomasnow",
+ "weavile": "Weavile",
+ "magnezone": "Magnezone",
+ "lickilicky": "Lickilicky",
+ "rhyperior": "Rhyperior",
+ "tangrowth": "Tangrowth",
+ "electivire": "Electivire",
+ "magmortar": "Magmortar",
+ "togekiss": "Togekiss",
+ "yanmega": "Yanmega",
+ "leafeon": "Leafeon",
+ "glaceon": "Glaceon",
+ "gliscor": "Gliscor",
+ "mamoswine": "Mamoswine",
+ "porygon_z": "Porygon-Z",
+ "gallade": "Gallade",
+ "probopass": "Probopass",
+ "dusknoir": "Dusknoir",
+ "froslass": "Froslass",
+ "rotom": "Rotom",
+ "uxie": "Uxie",
+ "mesprit": "Mesprit",
+ "azelf": "Azelf",
+ "dialga": "Dialga",
+ "palkia": "Palkia",
+ "heatran": "Heatran",
+ "regigigas": "Regigigas",
+ "giratina": "Giratina",
+ "cresselia": "Cresselia",
+ "phione": "Phione",
+ "manaphy": "Manaphy",
+ "darkrai": "Darkrai",
+ "shaymin": "Shaymin",
+ "arceus": "Arceus",
+ "victini": "Victini",
+ "snivy": "Snivy",
+ "servine": "Servine",
+ "serperior": "Serperior",
+ "tepig": "Tepig",
+ "pignite": "Pignite",
+ "emboar": "Emboar",
+ "oshawott": "Oshawott",
+ "dewott": "Dewott",
+ "samurott": "Samurott",
+ "patrat": "Patrat",
+ "watchog": "Watchog",
+ "lillipup": "Lillipup",
+ "herdier": "Herdier",
+ "stoutland": "Stoutland",
+ "purrloin": "Purrloin",
+ "liepard": "Liepard",
+ "pansage": "Pansage",
+ "simisage": "Simisage",
+ "pansear": "Pansear",
+ "simisear": "Simisear",
+ "panpour": "Panpour",
+ "simipour": "Simipour",
+ "munna": "Munna",
+ "musharna": "Musharna",
+ "pidove": "Pidove",
+ "tranquill": "Tranquill",
+ "unfezant": "Unfezant",
+ "blitzle": "Blitzle",
+ "zebstrika": "Zebstrika",
+ "roggenrola": "Roggenrola",
+ "boldore": "Boldore",
+ "gigalith": "Gigalith",
+ "woobat": "Woobat",
+ "swoobat": "Swoobat",
+ "drilbur": "Drilbur",
+ "excadrill": "Excadrill",
+ "audino": "Audino",
+ "timburr": "Timburr",
+ "gurdurr": "Gurdurr",
+ "conkeldurr": "Conkeldurr",
+ "tympole": "Tympole",
+ "palpitoad": "Palpitoad",
+ "seismitoad": "Seismitoad",
+ "throh": "Throh",
+ "sawk": "Sawk",
+ "sewaddle": "Sewaddle",
+ "swadloon": "Swadloon",
+ "leavanny": "Leavanny",
+ "venipede": "Venipede",
+ "whirlipede": "Whirlipede",
+ "scolipede": "Scolipede",
+ "cottonee": "Cottonee",
+ "whimsicott": "Whimsicott",
+ "petilil": "Petilil",
+ "lilligant": "Lilligant",
+ "basculin": "Basculin",
+ "sandile": "Sandile",
+ "krokorok": "Krokorok",
+ "krookodile": "Krookodile",
+ "darumaka": "Darumaka",
+ "darmanitan": "Darmanitan",
+ "maractus": "Maractus",
+ "dwebble": "Dwebble",
+ "crustle": "Crustle",
+ "scraggy": "Scraggy",
+ "scrafty": "Scrafty",
+ "sigilyph": "Sigilyph",
+ "yamask": "Yamask",
+ "cofagrigus": "Cofagrigus",
+ "tirtouga": "Tirtouga",
+ "carracosta": "Carracosta",
+ "archen": "Archen",
+ "archeops": "Archeops",
+ "trubbish": "Trubbish",
+ "garbodor": "Garbodor",
+ "zorua": "Zorua",
+ "zoroark": "Zoroark",
+ "minccino": "Minccino",
+ "cinccino": "Cinccino",
+ "gothita": "Gothita",
+ "gothorita": "Gothorita",
+ "gothitelle": "Gothitelle",
+ "solosis": "Solosis",
+ "duosion": "Duosion",
+ "reuniclus": "Reuniclus",
+ "ducklett": "Ducklett",
+ "swanna": "Swanna",
+ "vanillite": "Vanillite",
+ "vanillish": "Vanillish",
+ "vanilluxe": "Vanilluxe",
+ "deerling": "Deerling",
+ "sawsbuck": "Sawsbuck",
+ "emolga": "Emolga",
+ "karrablast": "Karrablast",
+ "escavalier": "Escavalier",
+ "foongus": "Foongus",
+ "amoonguss": "Amoonguss",
+ "frillish": "Frillish",
+ "jellicent": "Jellicent",
+ "alomomola": "Alomomola",
+ "joltik": "Joltik",
+ "galvantula": "Galvantula",
+ "ferroseed": "Ferroseed",
+ "ferrothorn": "Ferrothorn",
+ "klink": "Klink",
+ "klang": "Klang",
+ "klinklang": "Klinklang",
+ "tynamo": "Tynamo",
+ "eelektrik": "Eelektrik",
+ "eelektross": "Eelektross",
+ "elgyem": "Elgyem",
+ "beheeyem": "Beheeyem",
+ "litwick": "Litwick",
+ "lampent": "Lampent",
+ "chandelure": "Chandelure",
+ "axew": "Axew",
+ "fraxure": "Fraxure",
+ "haxorus": "Haxorus",
+ "cubchoo": "Cubchoo",
+ "beartic": "Beartic",
+ "cryogonal": "Cryogonal",
+ "shelmet": "Shelmet",
+ "accelgor": "Accelgor",
+ "stunfisk": "Stunfisk",
+ "mienfoo": "Mienfoo",
+ "mienshao": "Mienshao",
+ "druddigon": "Druddigon",
+ "golett": "Golett",
+ "golurk": "Golurk",
+ "pawniard": "Pawniard",
+ "bisharp": "Bisharp",
+ "bouffalant": "Bouffalant",
+ "rufflet": "Rufflet",
+ "braviary": "Braviary",
+ "vullaby": "Vullaby",
+ "mandibuzz": "Mandibuzz",
+ "heatmor": "Heatmor",
+ "durant": "Durant",
+ "deino": "Deino",
+ "zweilous": "Zweilous",
+ "hydreigon": "Hydreigon",
+ "larvesta": "Larvesta",
+ "volcarona": "Volcarona",
+ "cobalion": "Cobalion",
+ "terrakion": "Terrakion",
+ "virizion": "Virizion",
+ "tornadus": "Tornadus",
+ "thundurus": "Thundurus",
+ "reshiram": "Reshiram",
+ "zekrom": "Zekrom",
+ "landorus": "Landorus",
+ "kyurem": "Kyurem",
+ "keldeo": "Keldeo",
+ "meloetta": "Meloetta",
+ "genesect": "Genesect",
+ "chespin": "Chespin",
+ "quilladin": "Quilladin",
+ "chesnaught": "Chesnaught",
+ "fennekin": "Fennekin",
+ "braixen": "Braixen",
+ "delphox": "Delphox",
+ "froakie": "Froakie",
+ "frogadier": "Frogadier",
+ "greninja": "Greninja",
+ "bunnelby": "Bunnelby",
+ "diggersby": "Diggersby",
+ "fletchling": "Fletchling",
+ "fletchinder": "Fletchinder",
+ "talonflame": "Talonflame",
+ "scatterbug": "Scatterbug",
+ "spewpa": "Spewpa",
+ "vivillon": "Vivillon",
+ "litleo": "Litleo",
+ "pyroar": "Pyroar",
+ "flabebe": "Flabébé",
+ "floette": "Floette",
+ "florges": "Florges",
+ "skiddo": "Skiddo",
+ "gogoat": "Gogoat",
+ "pancham": "Pancham",
+ "pangoro": "Pangoro",
+ "furfrou": "Furfrou",
+ "espurr": "Espurr",
+ "meowstic": "Meowstic",
+ "honedge": "Honedge",
+ "doublade": "Doublade",
+ "aegislash": "Aegislash",
+ "spritzee": "Spritzee",
+ "aromatisse": "Aromatisse",
+ "swirlix": "Swirlix",
+ "slurpuff": "Slurpuff",
+ "inkay": "Inkay",
+ "malamar": "Malamar",
+ "binacle": "Binacle",
+ "barbaracle": "Barbaracle",
+ "skrelp": "Skrelp",
+ "dragalge": "Dragalge",
+ "clauncher": "Clauncher",
+ "clawitzer": "Clawitzer",
+ "helioptile": "Helioptile",
+ "heliolisk": "Heliolisk",
+ "tyrunt": "Tyrunt",
+ "tyrantrum": "Tyrantrum",
+ "amaura": "Amaura",
+ "aurorus": "Aurorus",
+ "sylveon": "Sylveon",
+ "hawlucha": "Hawlucha",
+ "dedenne": "Dedenne",
+ "carbink": "Carbink",
+ "goomy": "Goomy",
+ "sliggoo": "Sliggoo",
+ "goodra": "Goodra",
+ "klefki": "Klefki",
+ "phantump": "Phantump",
+ "trevenant": "Trevenant",
+ "pumpkaboo": "Pumpkaboo",
+ "gourgeist": "Gourgeist",
+ "bergmite": "Bergmite",
+ "avalugg": "Avalugg",
+ "noibat": "Noibat",
+ "noivern": "Noivern",
+ "xerneas": "Xerneas",
+ "yveltal": "Yveltal",
+ "zygarde": "Zygarde",
+ "diancie": "Diancie",
+ "hoopa": "Hoopa",
+ "volcanion": "Volcanion",
+ "rowlet": "Rowlet",
+ "dartrix": "Dartrix",
+ "decidueye": "Decidueye",
+ "litten": "Litten",
+ "torracat": "Torracat",
+ "incineroar": "Incineroar",
+ "popplio": "Popplio",
+ "brionne": "Brionne",
+ "primarina": "Primarina",
+ "pikipek": "Pikipek",
+ "trumbeak": "Trumbeak",
+ "toucannon": "Toucannon",
+ "yungoos": "Yungoos",
+ "gumshoos": "Gumshoos",
+ "grubbin": "Grubbin",
+ "charjabug": "Charjabug",
+ "vikavolt": "Vikavolt",
+ "crabrawler": "Crabrawler",
+ "crabominable": "Crabominable",
+ "oricorio": "Oricorio",
+ "cutiefly": "Cutiefly",
+ "ribombee": "Ribombee",
+ "rockruff": "Rockruff",
+ "lycanroc": "Lycanroc",
+ "wishiwashi": "Wishiwashi",
+ "mareanie": "Mareanie",
+ "toxapex": "Toxapex",
+ "mudbray": "Mudbray",
+ "mudsdale": "Mudsdale",
+ "dewpider": "Dewpider",
+ "araquanid": "Araquanid",
+ "fomantis": "Fomantis",
+ "lurantis": "Lurantis",
+ "morelull": "Morelull",
+ "shiinotic": "Shiinotic",
+ "salandit": "Salandit",
+ "salazzle": "Salazzle",
+ "stufful": "Stufful",
+ "bewear": "Bewear",
+ "bounsweet": "Bounsweet",
+ "steenee": "Steenee",
+ "tsareena": "Tsareena",
+ "comfey": "Comfey",
+ "oranguru": "Oranguru",
+ "passimian": "Passimian",
+ "wimpod": "Wimpod",
+ "golisopod": "Golisopod",
+ "sandygast": "Sandygast",
+ "palossand": "Palossand",
+ "pyukumuku": "Pyukumuku",
+ "type_null": "Type: Null",
+ "silvally": "Silvally",
+ "minior": "Minior",
+ "komala": "Komala",
+ "turtonator": "Turtonator",
+ "togedemaru": "Togedemaru",
+ "mimikyu": "Mimikyu",
+ "bruxish": "Bruxish",
+ "drampa": "Drampa",
+ "dhelmise": "Dhelmise",
+ "jangmo_o": "Jangmo-o",
+ "hakamo_o": "Hakamo-o",
+ "kommo_o": "Kommo-o",
+ "tapu_koko": "Tapu Koko",
+ "tapu_lele": "Tapu Lele",
+ "tapu_bulu": "Tapu Bulu",
+ "tapu_fini": "Tapu Fini",
+ "cosmog": "Cosmog",
+ "cosmoem": "Cosmoem",
+ "solgaleo": "Solgaleo",
+ "lunala": "Lunala",
+ "nihilego": "Nihilego",
+ "buzzwole": "Buzzwole",
+ "pheromosa": "Pheromosa",
+ "xurkitree": "Xurkitree",
+ "celesteela": "Celesteela",
+ "kartana": "Kartana",
+ "guzzlord": "Guzzlord",
+ "necrozma": "Necrozma",
+ "magearna": "Magearna",
+ "marshadow": "Marshadow",
+ "poipole": "Poipole",
+ "naganadel": "Naganadel",
+ "stakataka": "Stakataka",
+ "blacephalon": "Blacephalon",
+ "zeraora": "Zeraora",
+ "meltan": "Meltan",
+ "melmetal": "Melmetal",
+ "grookey": "Grookey",
+ "thwackey": "Thwackey",
+ "rillaboom": "Rillaboom",
+ "scorbunny": "Scorbunny",
+ "raboot": "Raboot",
+ "cinderace": "Cinderace",
+ "sobble": "Sobble",
+ "drizzile": "Drizzile",
+ "inteleon": "Inteleon",
+ "skwovet": "Skwovet",
+ "greedent": "Greedent",
+ "rookidee": "Rookidee",
+ "corvisquire": "Corvisquire",
+ "corviknight": "Corviknight",
+ "blipbug": "Blipbug",
+ "dottler": "Dottler",
+ "orbeetle": "Orbeetle",
+ "nickit": "Nickit",
+ "thievul": "Thievul",
+ "gossifleur": "Gossifleur",
+ "eldegoss": "Eldegoss",
+ "wooloo": "Wooloo",
+ "dubwool": "Dubwool",
+ "chewtle": "Chewtle",
+ "drednaw": "Drednaw",
+ "yamper": "Yamper",
+ "boltund": "Boltund",
+ "rolycoly": "Rolycoly",
+ "carkol": "Carkol",
+ "coalossal": "Coalossal",
+ "applin": "Applin",
+ "flapple": "Flapple",
+ "appletun": "Appletun",
+ "silicobra": "Silicobra",
+ "sandaconda": "Sandaconda",
+ "cramorant": "Cramorant",
+ "arrokuda": "Arrokuda",
+ "barraskewda": "Barraskewda",
+ "toxel": "Toxel",
+ "toxtricity": "Toxtricity",
+ "sizzlipede": "Sizzlipede",
+ "centiskorch": "Centiskorch",
+ "clobbopus": "Clobbopus",
+ "grapploct": "Grapploct",
+ "sinistea": "Sinistea",
+ "polteageist": "Polteageist",
+ "hatenna": "Hatenna",
+ "hattrem": "Hattrem",
+ "hatterene": "Hatterene",
+ "impidimp": "Impidimp",
+ "morgrem": "Morgrem",
+ "grimmsnarl": "Grimmsnarl",
+ "obstagoon": "Obstagoon",
+ "perrserker": "Perrserker",
+ "cursola": "Cursola",
+ "sirfetchd": "Sirfetch'd",
+ "mr_rime": "Mr. Rime",
+ "runerigus": "Runerigus",
+ "milcery": "Milcery",
+ "alcremie": "Alcremie",
+ "falinks": "Falinks",
+ "pincurchin": "Pincurchin",
+ "snom": "Snom",
+ "frosmoth": "Frosmoth",
+ "stonjourner": "Stonjourner",
+ "eiscue": "Eiscue",
+ "indeedee": "Indeedee",
+ "morpeko": "Morpeko",
+ "cufant": "Cufant",
+ "copperajah": "Copperajah",
+ "dracozolt": "Dracozolt",
+ "arctozolt": "Arctozolt",
+ "dracovish": "Dracovish",
+ "arctovish": "Arctovish",
+ "duraludon": "Duraludon",
+ "dreepy": "Dreepy",
+ "drakloak": "Drakloak",
+ "dragapult": "Dragapult",
+ "zacian": "Zacian",
+ "zamazenta": "Zamazenta",
+ "eternatus": "Eternatus",
+ "kubfu": "Kubfu",
+ "urshifu": "Urshifu",
+ "zarude": "Zarude",
+ "regieleki": "Regieleki",
+ "regidrago": "Regidrago",
+ "glastrier": "Glastrier",
+ "spectrier": "Spectrier",
+ "calyrex": "Calyrex",
+ "wyrdeer": "Wyrdeer",
+ "kleavor": "Kleavor",
+ "ursaluna": "Ursaluna",
+ "basculegion": "Basculegion",
+ "sneasler": "Sneasler",
+ "overqwil": "Overqwil",
+ "enamorus": "Enamorus",
+ "sprigatito": "Sprigatito",
+ "floragato": "Floragato",
+ "meowscarada": "Meowscarada",
+ "fuecoco": "Fuecoco",
+ "crocalor": "Crocalor",
+ "skeledirge": "Skeledirge",
+ "quaxly": "Quaxly",
+ "quaxwell": "Quaxwell",
+ "quaquaval": "Quaquaval",
+ "lechonk": "Lechonk",
+ "oinkologne": "Oinkologne",
+ "tarountula": "Tarountula",
+ "spidops": "Spidops",
+ "nymble": "Nymble",
+ "lokix": "Lokix",
+ "pawmi": "Pawmi",
+ "pawmo": "Pawmo",
+ "pawmot": "Pawmot",
+ "tandemaus": "Tandemaus",
+ "maushold": "Maushold",
+ "fidough": "Fidough",
+ "dachsbun": "Dachsbun",
+ "smoliv": "Smoliv",
+ "dolliv": "Dolliv",
+ "arboliva": "Arboliva",
+ "squawkabilly": "Squawkabilly",
+ "nacli": "Nacli",
+ "naclstack": "Naclstack",
+ "garganacl": "Garganacl",
+ "charcadet": "Charcadet",
+ "armarouge": "Armarouge",
+ "ceruledge": "Ceruledge",
+ "tadbulb": "Tadbulb",
+ "bellibolt": "Bellibolt",
+ "wattrel": "Wattrel",
+ "kilowattrel": "Kilowattrel",
+ "maschiff": "Maschiff",
+ "mabosstiff": "Mabosstiff",
+ "shroodle": "Shroodle",
+ "grafaiai": "Grafaiai",
+ "bramblin": "Bramblin",
+ "brambleghast": "Brambleghast",
+ "toedscool": "Toedscool",
+ "toedscruel": "Toedscruel",
+ "klawf": "Klawf",
+ "capsakid": "Capsakid",
+ "scovillain": "Scovillain",
+ "rellor": "Rellor",
+ "rabsca": "Rabsca",
+ "flittle": "Flittle",
+ "espathra": "Espathra",
+ "tinkatink": "Tinkatink",
+ "tinkatuff": "Tinkatuff",
+ "tinkaton": "Tinkaton",
+ "wiglett": "Wiglett",
+ "wugtrio": "Wugtrio",
+ "bombirdier": "Bombirdier",
+ "finizen": "Finizen",
+ "palafin": "Palafin",
+ "varoom": "Varoom",
+ "revavroom": "Revavroom",
+ "cyclizar": "Cyclizar",
+ "orthworm": "Orthworm",
+ "glimmet": "Glimmet",
+ "glimmora": "Glimmora",
+ "greavard": "Greavard",
+ "houndstone": "Houndstone",
+ "flamigo": "Flamigo",
+ "cetoddle": "Cetoddle",
+ "cetitan": "Cetitan",
+ "veluza": "Veluza",
+ "dondozo": "Dondozo",
+ "tatsugiri": "Tatsugiri",
+ "annihilape": "Annihilape",
+ "clodsire": "Clodsire",
+ "farigiraf": "Farigiraf",
+ "dudunsparce": "Dudunsparce",
+ "kingambit": "Kingambit",
+ "great_tusk": "Great Tusk",
+ "scream_tail": "Scream Tail",
+ "brute_bonnet": "Brute Bonnet",
+ "flutter_mane": "Flutter Mane",
+ "slither_wing": "Slither Wing",
+ "sandy_shocks": "Sandy Shocks",
+ "iron_treads": "Iron Treads",
+ "iron_bundle": "Iron Bundle",
+ "iron_hands": "Iron Hands",
+ "iron_jugulis": "Iron Jugulis",
+ "iron_moth": "Iron Moth",
+ "iron_thorns": "Iron Thorns",
+ "frigibax": "Frigibax",
+ "arctibax": "Arctibax",
+ "baxcalibur": "Baxcalibur",
+ "gimmighoul": "Gimmighoul",
+ "gholdengo": "Gholdengo",
+ "wo_chien": "Wo-Chien",
+ "chien_pao": "Chien-Pao",
+ "ting_lu": "Ting-Lu",
+ "chi_yu": "Chi-Yu",
+ "roaring_moon": "Roaring Moon",
+ "iron_valiant": "Iron Valiant",
+ "koraidon": "Koraidon",
+ "miraidon": "Miraidon",
+ "walking_wake": "Walking Wake",
+ "iron_leaves": "Iron Leaves",
+ "dipplin": "Dipplin",
+ "poltchageist": "Poltchageist",
+ "sinistcha": "Sinistcha",
+ "okidogi": "Okidogi",
+ "munkidori": "Munkidori",
+ "fezandipiti": "Fezandipiti",
+ "ogerpon": "Ogerpon",
+ "archaludon": "Archaludon",
+ "hydrapple": "Hydrapple",
+ "gouging_fire": "Gouging Fire",
+ "raging_bolt": "Raging Bolt",
+ "iron_boulder": "Iron Boulder",
+ "iron_crown": "Iron Crown",
+ "terapagos": "Terapagos",
+ "pecharunt": "Pecharunt",
+ "alola_rattata": "Rattata",
+ "alola_raticate": "Raticate",
+ "alola_raichu": "Raichu",
+ "alola_sandshrew": "Sandshrew",
+ "alola_sandslash": "Sandslash",
+ "alola_vulpix": "Vulpix",
+ "alola_ninetales": "Ninetales",
+ "alola_diglett": "Diglett",
+ "alola_dugtrio": "Dugtrio",
+ "alola_meowth": "Meowth",
+ "alola_persian": "Persian",
+ "alola_geodude": "Geodude",
+ "alola_graveler": "Graveler",
+ "alola_golem": "Golem",
+ "alola_grimer": "Grimer",
+ "alola_muk": "Muk",
+ "alola_exeggutor": "Exeggutor",
+ "alola_marowak": "Marowak",
+ "eternal_floette": "Floette",
+ "galar_meowth": "Meowth",
+ "galar_ponyta": "Ponyta",
+ "galar_rapidash": "Rapidash",
+ "galar_slowpoke": "Slowpoke",
+ "galar_slowbro": "Slowbro",
+ "galar_farfetchd": "Farfetch'd",
+ "galar_weezing": "Weezing",
+ "galar_mr_mime": "Mr. Mime",
+ "galar_articuno": "Articuno",
+ "galar_zapdos": "Zapdos",
+ "galar_moltres": "Moltres",
+ "galar_slowking": "Slowking",
+ "galar_corsola": "Corsola",
+ "galar_zigzagoon": "Zigzagoon",
+ "galar_linoone": "Linoone",
+ "galar_darumaka": "Darumaka",
+ "galar_darmanitan": "Darmanitan",
+ "galar_yamask": "Yamask",
+ "galar_stunfisk": "Stunfisk",
+ "hisui_growlithe": "Growlithe",
+ "hisui_arcanine": "Arcanine",
+ "hisui_voltorb": "Voltorb",
+ "hisui_electrode": "Electrode",
+ "hisui_typhlosion": "Typhlosion",
+ "hisui_qwilfish": "Qwilfish",
+ "hisui_sneasel": "Sneasel",
+ "hisui_samurott": "Samurott",
+ "hisui_lilligant": "Lilligant",
+ "hisui_zorua": "Zorua",
+ "hisui_zoroark": "Zoroark",
+ "hisui_braviary": "Braviary",
+ "hisui_sliggoo": "Sliggoo",
+ "hisui_goodra": "Goodra",
+ "hisui_avalugg": "Avalugg",
+ "hisui_decidueye": "Decidueye",
+ "paldea_tauros": "Tauros",
+ "paldea_wooper": "Wooper",
+ "bloodmoon_ursaluna": "Ursaluna",
+} as const;
\ No newline at end of file
diff --git a/src/locales/it/menu.ts b/src/locales/it/menu.ts
index 6c6b6ba468c..872315d77c0 100644
--- a/src/locales/it/menu.ts
+++ b/src/locales/it/menu.ts
@@ -1,4 +1,6 @@
-export const menu = {
+import { SimpleTranslationEntries } from "#app/plugins/i18n";
+
+export const menu: SimpleTranslationEntries = {
"cancel": "Annulla",
"continue": "Continua",
"newGame": "Nuova Partita",
diff --git a/src/main.ts b/src/main.ts
index 4c22606146e..13aa5076ff4 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -44,6 +44,7 @@ const config: Phaser.Types.Core.GameConfig = {
touch: {
target: 'app'
},
+ gamepad: true
},
dom: {
createContainer: true
@@ -78,4 +79,4 @@ document.fonts.load('16px emerald').then(() => document.fonts.load('10px pkmnems
const game = new Phaser.Game(config);
game.sound.pauseOnBlur = false;
-export default game;
\ No newline at end of file
+export default game;
diff --git a/src/modifier/modifier-type.ts b/src/modifier/modifier-type.ts
index 258e79e3651..9e9ce1de1a0 100644
--- a/src/modifier/modifier-type.ts
+++ b/src/modifier/modifier-type.ts
@@ -19,6 +19,7 @@ import { VoucherType, getVoucherTypeIcon, getVoucherTypeName } from '../system/v
import { FormChangeItem, SpeciesFormChangeItemTrigger, pokemonFormChanges } from '../data/pokemon-forms';
import { ModifierTier } from './modifier-tier';
import { Nature, getNatureName, getNatureStatMultiplier } from '#app/data/nature';
+import { Localizable } from '#app/plugins/i18n';
const outputModifierData = false;
const useMaxWeightForOutput = false;
@@ -131,10 +132,19 @@ export interface GeneratedPersistentModifierType {
getPregenArgs(): any[];
}
-class AddPokeballModifierType extends ModifierType {
+class AddPokeballModifierType extends ModifierType implements Localizable {
+ private pokeballType: PokeballType;
+ private count: integer;
+
constructor(pokeballType: PokeballType, count: integer, iconImage?: string) {
- super(`${count}x ${getPokeballName(pokeballType)}`, `Receive ${getPokeballName(pokeballType)} x${count}\nCatch Rate: ${getPokeballCatchMultiplier(pokeballType) > -1 ? `${getPokeballCatchMultiplier(pokeballType)}x` : 'Certain'}`,
- (_type, _args) => new Modifiers.AddPokeballModifier(this, pokeballType, count), iconImage, 'pb', 'pb_bounce_1');
+ super('', '', (_type, _args) => new Modifiers.AddPokeballModifier(this, pokeballType, count), iconImage, 'pb', 'pb_bounce_1');
+ this.pokeballType = pokeballType;
+ this.count = count;
+ }
+
+ localize(): void {
+ this.name = `${this.count}x ${getPokeballName(this.pokeballType)}`;
+ this.description = `Receive ${getPokeballName(this.pokeballType)} x${this.count}\nCatch Rate: ${getPokeballCatchMultiplier(this.pokeballType) > -1 ? `${getPokeballCatchMultiplier(this.pokeballType)}x` : 'Certain'}`;
}
}
@@ -400,7 +410,7 @@ export class AttackTypeBoosterModifierType extends PokemonHeldItemModifierType i
public boostPercent: integer;
constructor(moveType: Type, boostPercent: integer) {
- super(getAttackTypeBoosterItemName(moveType), `Inceases the power of a Pokémon's ${Utils.toReadableString(Type[moveType])}-type moves by 20%`,
+ super(getAttackTypeBoosterItemName(moveType), `Increases the power of a Pokémon's ${Utils.toReadableString(Type[moveType])}-type moves by 20%`,
(_type, args) => new Modifiers.AttackTypeBoosterModifier(this, (args[0] as Pokemon).id, moveType, boostPercent),
`${getAttackTypeBoosterItemName(moveType).replace(/[ \-]/g, '_').toLowerCase()}`);
@@ -502,6 +512,12 @@ export class PokemonFriendshipBoosterModifierType extends PokemonHeldItemModifie
}
}
+export class PokemonMoveAccuracyBoosterModifierType extends PokemonHeldItemModifierType {
+ constructor(name: string, amount: integer, iconImage?: string, group?: string, soundName?: string) {
+ super(name, `Increases move accuracy by ${amount} (up to 100)`, (_type, args) => new Modifiers.PokemonMoveAccuracyBoosterModifier(this, (args[0] as Pokemon).id, amount), iconImage, group, soundName);
+ }
+}
+
export class PokemonMultiHitModifierType extends PokemonHeldItemModifierType {
constructor(name: string, iconImage?: string) {
super(name, `Attacks hit one additional time at the cost of a 60/75/82.5% power reduction per stack respectively`, (type, args) => new Modifiers.PokemonMultiHitModifier(type as PokemonMultiHitModifierType, (args[0] as Pokemon).id), iconImage);
@@ -887,6 +903,7 @@ export const modifierTypes = {
LOCK_CAPSULE: () => new ModifierType('Lock Capsule', 'Allows you to lock item rarities when rerolling items', (type, _args) => new Modifiers.LockModifierTiersModifier(type), 'lock_capsule'),
GRIP_CLAW: () => new ContactHeldItemTransferChanceModifierType('Grip Claw', 10),
+ WIDE_LENS: () => new PokemonMoveAccuracyBoosterModifierType('Wide Lens', 5, 'wide_lens'),
MULTI_LENS: () => new PokemonMultiHitModifierType('Multi Lens', 'zoom_lens'),
@@ -1056,6 +1073,7 @@ const modifierPool: ModifierPool = {
new WeightedModifierType(modifierTypes.SHELL_BELL, 3),
new WeightedModifierType(modifierTypes.BERRY_POUCH, 4),
new WeightedModifierType(modifierTypes.GRIP_CLAW, 5),
+ new WeightedModifierType(modifierTypes.WIDE_LENS, 4),
new WeightedModifierType(modifierTypes.BATON, 2),
new WeightedModifierType(modifierTypes.SOUL_DEW, 8),
//new WeightedModifierType(modifierTypes.OVAL_CHARM, 6),
@@ -1113,6 +1131,7 @@ const trainerModifierPool: ModifierPool = {
new WeightedModifierType(modifierTypes.FOCUS_BAND, 2),
new WeightedModifierType(modifierTypes.LUCKY_EGG, 4),
new WeightedModifierType(modifierTypes.GRIP_CLAW, 1),
+ new WeightedModifierType(modifierTypes.WIDE_LENS, 1),
].map(m => { m.setTier(ModifierTier.ROGUE); return m; }),
[ModifierTier.MASTER]: [
new WeightedModifierType(modifierTypes.KINGS_ROCK, 1),
@@ -1341,7 +1360,7 @@ export function getPlayerShopModifierTypeOptionsForWave(waveIndex: integer, base
new ModifierTypeOption(modifierTypes.FULL_RESTORE(), 0, baseCost * 2.25)
],
[
- new ModifierTypeOption(modifierTypes.SACRED_ASH(), 0, baseCost * 12)
+ new ModifierTypeOption(modifierTypes.SACRED_ASH(), 0, baseCost * 10)
]
];
return options.slice(0, Math.ceil(Math.max(waveIndex + 10, 0) / 30)).flat();
diff --git a/src/modifier/modifier.ts b/src/modifier/modifier.ts
index de4477a3e68..ca6ef0c7519 100644
--- a/src/modifier/modifier.ts
+++ b/src/modifier/modifier.ts
@@ -1001,9 +1001,11 @@ export class PokemonHpRestoreModifier extends ConsumablePokemonModifier {
if (this.fainted || this.healStatus)
pokemon.resetStatus();
pokemon.hp = Math.min(pokemon.hp + Math.max(Math.ceil(Math.max(Math.floor((this.restorePercent * 0.01) * pokemon.getMaxHp()), restorePoints)), 1), pokemon.getMaxHp());
+
+ return true;
}
- return true;
+ return false;
}
}
@@ -1436,6 +1438,46 @@ export class PokemonNatureWeightModifier extends PokemonHeldItemModifier {
}
}
+export class PokemonMoveAccuracyBoosterModifier extends PokemonHeldItemModifier {
+ private accuracyAmount: integer;
+
+ constructor(type: ModifierTypes.PokemonMoveAccuracyBoosterModifierType, pokemonId: integer, accuracy: integer, stackCount?: integer) {
+ super(type, pokemonId, stackCount);
+ this.accuracyAmount = accuracy;
+ }
+
+ matchType(modifier: Modifier): boolean {
+ if (modifier instanceof PokemonMoveAccuracyBoosterModifier) {
+ const pokemonAccuracyBoosterModifier = modifier as PokemonMoveAccuracyBoosterModifier;
+ return pokemonAccuracyBoosterModifier.accuracyAmount === this.accuracyAmount;
+ }
+ return false;
+ }
+
+ clone(): PersistentModifier {
+ return new PokemonMoveAccuracyBoosterModifier(this.type as ModifierTypes.PokemonMoveAccuracyBoosterModifierType, this.pokemonId, this.accuracyAmount, this.stackCount);
+ }
+
+ getArgs(): any[] {
+ return super.getArgs().concat(this.accuracyAmount);
+ }
+
+ shouldApply(args: any[]): boolean {
+ return super.shouldApply(args) && args.length === 2 && args[1] instanceof Utils.NumberHolder;
+ }
+
+ apply(args: any[]): boolean {
+ const moveAccuracy = (args[1] as Utils.IntegerHolder);
+ moveAccuracy.value = Math.min(moveAccuracy.value + this.accuracyAmount * this.getStackCount(), 100);
+
+ return true;
+ }
+
+ getMaxHeldItemCount(pokemon: Pokemon): integer {
+ return 3;
+ }
+}
+
export class PokemonMultiHitModifier extends PokemonHeldItemModifier {
constructor(type: ModifierTypes.PokemonMultiHitModifierType, pokemonId: integer, stackCount?: integer) {
super(type, pokemonId, stackCount);
@@ -1536,9 +1578,7 @@ export class MoneyRewardModifier extends ConsumableModifier {
scene.applyModifiers(MoneyMultiplierModifier, true, moneyAmount);
- scene.money += moneyAmount.value;
- scene.updateMoneyText();
- scene.validateAchvs(MoneyAchv);
+ scene.addMoney(moneyAmount.value);
return true;
}
@@ -1585,9 +1625,7 @@ export class DamageMoneyRewardModifier extends PokemonHeldItemModifier {
const scene = (args[0] as Pokemon).scene;
const moneyAmount = new Utils.IntegerHolder(Math.floor((args[1] as Utils.IntegerHolder).value * (0.5 * this.getStackCount())));
scene.applyModifiers(MoneyMultiplierModifier, true, moneyAmount);
- scene.money += moneyAmount.value;
- scene.updateMoneyText();
- scene.validateAchvs(MoneyAchv);
+ scene.addMoney(moneyAmount.value);
return true;
}
@@ -1609,9 +1647,7 @@ export class MoneyInterestModifier extends PersistentModifier {
apply(args: any[]): boolean {
const scene = args[0] as BattleScene;
const interestAmount = Math.floor(scene.money * 0.1 * this.getStackCount());
- scene.money += interestAmount;
- scene.updateMoneyText();
- scene.validateAchvs(MoneyAchv);
+ scene.addMoney(interestAmount);
scene.queueMessage(`You received interest of ₽${interestAmount.toLocaleString('en-US')}\nfrom the ${this.type.name}!`, null, true);
diff --git a/src/phases.ts b/src/phases.ts
index 7e5a3aab1d6..91741bacd2b 100644
--- a/src/phases.ts
+++ b/src/phases.ts
@@ -2,11 +2,11 @@ import BattleScene, { STARTER_FORM_OVERRIDE, STARTER_SPECIES_OVERRIDE, bypassLog
import { default as Pokemon, PlayerPokemon, EnemyPokemon, PokemonMove, MoveResult, DamageResult, FieldPosition, HitResult, TurnMove } from "./field/pokemon";
import * as Utils from './utils';
import { Moves } from "./data/enums/moves";
-import { allMoves, applyMoveAttrs, BypassSleepAttr, ChargeAttr, applyFilteredMoveAttrs, HitsTagAttr, MissEffectAttr, MoveAttr, MoveEffectAttr, MoveFlags, MultiHitAttr, OverrideMoveEffectAttr, VariableAccuracyAttr, MoveTarget, OneHitKOAttr, getMoveTargets, MoveTargetSet, MoveEffectTrigger, CopyMoveAttr, AttackMove, SelfStatusMove, DelayedAttackAttr, RechargeAttr, PreMoveMessageAttr, HealStatusEffectAttr, IgnoreOpponentStatChangesAttr, NoEffectAttr, FixedDamageAttr } from "./data/move";
+import { allMoves, applyMoveAttrs, BypassSleepAttr, ChargeAttr, applyFilteredMoveAttrs, HitsTagAttr, MissEffectAttr, MoveAttr, MoveEffectAttr, MoveFlags, MultiHitAttr, OverrideMoveEffectAttr, VariableAccuracyAttr, MoveTarget, OneHitKOAttr, getMoveTargets, MoveTargetSet, MoveEffectTrigger, CopyMoveAttr, AttackMove, SelfStatusMove, DelayedAttackAttr, RechargeAttr, PreMoveMessageAttr, HealStatusEffectAttr, IgnoreOpponentStatChangesAttr, NoEffectAttr, FixedDamageAttr, OneHitKOAccuracyAttr } from "./data/move";
import { Mode } from './ui/ui';
import { Command } from "./ui/command-ui-handler";
import { Stat } from "./data/pokemon-stat";
-import { BerryModifier, ContactHeldItemTransferChanceModifier, EnemyAttackStatusEffectChanceModifier, EnemyPersistentModifier, EnemyStatusEffectHealChanceModifier, EnemyTurnHealModifier, ExpBalanceModifier, ExpBoosterModifier, ExpShareModifier, ExtraModifierModifier, FlinchChanceModifier, FusePokemonModifier, HealingBoosterModifier, HitHealModifier, LapsingPersistentModifier, MapModifier, Modifier, MultipleParticipantExpBonusModifier, PersistentModifier, PokemonExpBoosterModifier, PokemonHeldItemModifier, PokemonInstantReviveModifier, SwitchEffectTransferModifier, TempBattleStatBoosterModifier, TurnHealModifier, TurnHeldItemTransferModifier, MoneyMultiplierModifier, MoneyInterestModifier, IvScannerModifier, PokemonFriendshipBoosterModifier, LapsingPokemonHeldItemModifier, PokemonMultiHitModifier } from "./modifier/modifier";
+import { BerryModifier, ContactHeldItemTransferChanceModifier, EnemyAttackStatusEffectChanceModifier, EnemyPersistentModifier, EnemyStatusEffectHealChanceModifier, EnemyTurnHealModifier, ExpBalanceModifier, ExpBoosterModifier, ExpShareModifier, ExtraModifierModifier, FlinchChanceModifier, FusePokemonModifier, HealingBoosterModifier, HitHealModifier, LapsingPersistentModifier, MapModifier, Modifier, MultipleParticipantExpBonusModifier, PersistentModifier, PokemonExpBoosterModifier, PokemonHeldItemModifier, PokemonInstantReviveModifier, SwitchEffectTransferModifier, TempBattleStatBoosterModifier, TurnHealModifier, TurnHeldItemTransferModifier, MoneyMultiplierModifier, MoneyInterestModifier, IvScannerModifier, PokemonFriendshipBoosterModifier, LapsingPokemonHeldItemModifier, PokemonMultiHitModifier, PokemonMoveAccuracyBoosterModifier } from "./modifier/modifier";
import PartyUiHandler, { PartyOption, PartyUiMode } from "./ui/party-ui-handler";
import { doPokeballBounceAnim, getPokeballAtlasKey, getPokeballCatchMultiplier, getPokeballTintColor, PokeballType } from "./data/pokeball";
import { CommonAnim, CommonBattleAnim, MoveAnim, initMoveAnim, loadMoveAnimAssets } from "./data/battle-anims";
@@ -16,7 +16,7 @@ import EvolutionSceneHandler from "./ui/evolution-scene-handler";
import { EvolutionPhase } from "./evolution-phase";
import { Phase } from "./phase";
import { BattleStat, getBattleStatLevelChangeDescription, getBattleStatName } from "./data/battle-stat";
-import { biomeLinks } from "./data/biomes";
+import { biomeLinks, getBiomeName } from "./data/biomes";
import { Biome } from "./data/enums/biome";
import { ModifierTier } from "./modifier/modifier-tier";
import { FusePokemonModifierType, ModifierPoolType, ModifierType, ModifierTypeFunc, ModifierTypeOption, PokemonModifierType, PokemonMoveModifierType, RememberMoveModifierType, TmModifierType, getDailyRunStarterModifiers, getEnemyBuffModifierForWave, getModifierType, getPlayerModifierTypeOptions, getPlayerShopModifierTypeOptionsForWave, modifierTypes, regenerateModifierPoolThresholds } from "./modifier/modifier-type";
@@ -30,21 +30,20 @@ import { Weather, WeatherType, getRandomWeatherType, getTerrainBlockMessage, get
import { TempBattleStat } from "./data/temp-battle-stat";
import { ArenaTagSide, ArenaTrapTag, MistTag, TrickRoomTag } from "./data/arena-tag";
import { ArenaTagType } from "./data/enums/arena-tag-type";
-import { CheckTrappedAbAttr, MoveAbilityBypassAbAttr, IgnoreOpponentStatChangesAbAttr, PostAttackAbAttr, PostBattleAbAttr, PostDefendAbAttr, PostSummonAbAttr, PostTurnAbAttr, PostWeatherLapseAbAttr, PreSwitchOutAbAttr, PreWeatherDamageAbAttr, ProtectStatAbAttr, RedirectMoveAbAttr, RunSuccessAbAttr, StatChangeMultiplierAbAttr, SuppressWeatherEffectAbAttr, SyncEncounterNatureAbAttr, applyAbAttrs, applyCheckTrappedAbAttrs, applyPostAttackAbAttrs, applyPostBattleAbAttrs, applyPostDefendAbAttrs, applyPostSummonAbAttrs, applyPostTurnAbAttrs, applyPostWeatherLapseAbAttrs, applyPreStatChangeAbAttrs, applyPreSwitchOutAbAttrs, applyPreWeatherEffectAbAttrs, BattleStatMultiplierAbAttr, applyBattleStatMultiplierAbAttrs, IncrementMovePriorityAbAttr, applyPostVictoryAbAttrs, PostVictoryAbAttr, applyPostBattleInitAbAttrs, PostBattleInitAbAttr, BlockNonDirectDamageAbAttr as BlockNonDirectDamageAbAttr, applyPostKnockOutAbAttrs, PostKnockOutAbAttr, PostBiomeChangeAbAttr, applyPostFaintAbAttrs, PostFaintAbAttr, IncreasePpAbAttr, PostStatChangeAbAttr, applyPostStatChangeAbAttrs } from "./data/ability";
-import { Abilities } from "./data/enums/abilities";
+import { CheckTrappedAbAttr, IgnoreOpponentStatChangesAbAttr, PostAttackAbAttr, PostBattleAbAttr, PostDefendAbAttr, PostSummonAbAttr, PostTurnAbAttr, PostWeatherLapseAbAttr, PreSwitchOutAbAttr, PreWeatherDamageAbAttr, ProtectStatAbAttr, RedirectMoveAbAttr, RunSuccessAbAttr, StatChangeMultiplierAbAttr, SuppressWeatherEffectAbAttr, SyncEncounterNatureAbAttr, applyAbAttrs, applyCheckTrappedAbAttrs, applyPostAttackAbAttrs, applyPostBattleAbAttrs, applyPostDefendAbAttrs, applyPostSummonAbAttrs, applyPostTurnAbAttrs, applyPostWeatherLapseAbAttrs, applyPreStatChangeAbAttrs, applyPreSwitchOutAbAttrs, applyPreWeatherEffectAbAttrs, BattleStatMultiplierAbAttr, applyBattleStatMultiplierAbAttrs, IncrementMovePriorityAbAttr, applyPostVictoryAbAttrs, PostVictoryAbAttr, applyPostBattleInitAbAttrs, PostBattleInitAbAttr, BlockNonDirectDamageAbAttr as BlockNonDirectDamageAbAttr, applyPostKnockOutAbAttrs, PostKnockOutAbAttr, PostBiomeChangeAbAttr, applyPostFaintAbAttrs, PostFaintAbAttr, IncreasePpAbAttr, PostStatChangeAbAttr, applyPostStatChangeAbAttrs, AlwaysHitAbAttr } from "./data/ability";
import { Unlockables, getUnlockableName } from "./system/unlockables";
import { getBiomeKey } from "./field/arena";
import { BattleType, BattlerIndex, TurnCommand } from "./battle";
import { BattleSpec } from "./enums/battle-spec";
import { Species } from "./data/enums/species";
-import { HealAchv, LevelAchv, MoneyAchv, achvs } from "./system/achv";
+import { HealAchv, LevelAchv, achvs } from "./system/achv";
import { TrainerSlot, trainerConfigs } from "./data/trainer-config";
import { TrainerType } from "./data/enums/trainer-type";
import { EggHatchPhase } from "./egg-hatch-phase";
import { Egg } from "./data/egg";
import { vouchers } from "./system/voucher";
import { loggedInUser, updateUserInfo } from "./account";
-import { DexAttr, GameDataType, PlayerGender, SessionSaveData } from "./system/game-data";
+import { PlayerGender, SessionSaveData } from "./system/game-data";
import { addPokeballCaptureStars, addPokeballOpenParticles } from "./field/anims";
import { SpeciesFormChangeActiveTrigger, SpeciesFormChangeManualTrigger, SpeciesFormChangeMoveLearnedTrigger, SpeciesFormChangePostMoveTrigger, SpeciesFormChangePreMoveTrigger } from "./data/pokemon-forms";
import { battleSpecDialogue, getCharVariantFromDialogue } from "./data/dialogue";
@@ -159,6 +158,7 @@ export class TitlePhase extends Phase {
this.scene.gameData.getSession(loggedInUser.lastSessionSlot).then(sessionData => {
if (sessionData) {
this.lastSessionData = sessionData;
+ console.log(sessionData);
const biomeKey = getBiomeKey(sessionData.arena.biome);
const bgTexture = `${biomeKey}_bg`;
this.scene.arenaBg.setTexture(bgTexture);
@@ -306,7 +306,7 @@ export class TitlePhase extends Phase {
const starterGender = starter.species.malePercent !== null
? !starterProps.female ? Gender.MALE : Gender.FEMALE
: Gender.GENDERLESS;
- const starterPokemon = this.scene.addPlayerPokemon(starter.species, startingLevel, starterProps.abilityIndex, starterFormIndex, starterGender, starterProps.shiny, undefined, starter.nature);
+ const starterPokemon = this.scene.addPlayerPokemon(starter.species, startingLevel, starter.abilityIndex, starterFormIndex, starterGender, starterProps.shiny, starterProps.variant, undefined, starter.nature);
starterPokemon.setVisible(false);
party.push(starterPokemon);
loadPokemonAssets.push(starterPokemon.loadAssets());
@@ -379,6 +379,43 @@ export class UnavailablePhase extends Phase {
}
}
+export class ReloadSessionPhase extends Phase {
+ constructor(scene: BattleScene) {
+ super(scene);
+ }
+
+ start(): void {
+ this.scene.ui.setMode(Mode.SESSION_RELOAD);
+
+ let delayElapsed = false;
+ let loaded = false;
+
+ this.scene.time.delayedCall(Utils.fixedInt(1500), () => {
+ if (loaded)
+ this.end();
+ else
+ delayElapsed = true;
+ });
+
+ this.scene.gameData.loadSystem().then(() => {
+ if (delayElapsed)
+ this.end();
+ else
+ loaded = true;
+ });
+ }
+}
+
+export class OutdatedPhase extends Phase {
+ constructor(scene: BattleScene) {
+ super(scene);
+ }
+
+ start(): void {
+ this.scene.ui.setMode(Mode.OUTDATED);
+ }
+}
+
export class SelectGenderPhase extends Phase {
constructor(scene: BattleScene) {
super(scene);
@@ -456,12 +493,10 @@ export class SelectStarterPhase extends Phase {
? !starterProps.female ? Gender.MALE : Gender.FEMALE
: Gender.GENDERLESS;
const starterIvs = this.scene.gameData.dexData[starter.species.speciesId].ivs.slice(0);
- const starterPokemon = this.scene.addPlayerPokemon(starter.species, this.scene.gameMode.getStartingLevel(), starterProps.abilityIndex, starterFormIndex, starterGender, starterProps.shiny, starterIvs, starter.nature);
+ const starterPokemon = this.scene.addPlayerPokemon(starter.species, this.scene.gameMode.getStartingLevel(), starter.abilityIndex, starterFormIndex, starterGender, starterProps.shiny, starterProps.variant, starterIvs, starter.nature);
starterPokemon.tryPopulateMoveset(starter.moveset);
if (starter.passive)
starterPokemon.passive = true;
- if (starter.variant && starter.dexAttr & DexAttr.SHINY)
- starterPokemon.variant = starter.variant;
if (starter.pokerus)
starterPokemon.pokerus = true;
if (this.scene.gameMode.isSplicedOnly)
@@ -732,6 +767,7 @@ export class EncounterPhase extends BattlePhase {
this.scene.ui.setMode(Mode.MESSAGE).then(() => {
if (!this.loaded) {
this.scene.gameData.saveSystem().then(success => {
+ this.scene.disableMenu = false;
if (!success)
return this.scene.reset(true);
this.scene.gameData.saveSession(this.scene, true).then(() => this.doEncounter());
@@ -758,7 +794,8 @@ export class EncounterPhase extends BattlePhase {
pokemon.resetBattleData();
}
- this.scene.arena.trySetWeather(getRandomWeatherType(this.scene.arena), false);
+ if (!this.loaded)
+ this.scene.arena.trySetWeather(getRandomWeatherType(this.scene.arena), false);
const enemyField = this.scene.getEnemyField();
this.scene.tweens.add({
@@ -1024,9 +1061,28 @@ export class SelectBiomePhase extends BattlePhase {
.map(b => !Array.isArray(b) ? b : b[0]);
}, this.scene.currentBattle.waveIndex);
if (biomes.length > 1 && this.scene.findModifier(m => m instanceof MapModifier)) {
- this.scene.ui.setMode(Mode.BIOME_SELECT, currentBiome, (biomeIndex: integer) => {
- this.scene.ui.setMode(Mode.MESSAGE);
- setNextBiome(biomes[biomeIndex]);
+ let biomeChoices: Biome[];
+ this.scene.executeWithSeedOffset(() => {
+ biomeChoices = (!Array.isArray(biomeLinks[currentBiome])
+ ? [ biomeLinks[currentBiome] as Biome ]
+ : biomeLinks[currentBiome] as (Biome | [Biome, integer])[])
+ .filter((b, i) => !Array.isArray(b) || !Utils.randSeedInt(b[1]))
+ .map(b => Array.isArray(b) ? b[0] : b);
+ }, this.scene.currentBattle.waveIndex);
+ const biomeSelectItems = biomeChoices.map(b => {
+ const ret: OptionSelectItem = {
+ label: getBiomeName(b),
+ handler: () => {
+ this.scene.ui.setMode(Mode.MESSAGE);
+ setNextBiome(b);
+ return true;
+ }
+ };
+ return ret;
+ });
+ this.scene.ui.setMode(Mode.OPTION_SELECT, {
+ options: biomeSelectItems,
+ delay: 1000
});
} else
setNextBiome(biomes[Utils.randSeedInt(biomes.length)]);
@@ -2113,10 +2169,8 @@ export class MovePhase extends BattlePhase {
}
if (!this.followUp) {
- const abilityEffectsIgnored = new Utils.BooleanHolder(false);
- this.scene.getField(true).map(p => applyAbAttrs(MoveAbilityBypassAbAttr, p, abilityEffectsIgnored));
- if (abilityEffectsIgnored.value)
- this.scene.arena.setIgnoreAbilities(true);
+ if (this.move.getMove().checkFlag(MoveFlags.IGNORE_ABILITIES, this.pokemon, null))
+ this.scene.arena.setIgnoreAbilities();
} else {
this.pokemon.turnData.hitsLeft = undefined;
this.pokemon.turnData.hitCount = undefined;
@@ -2147,7 +2201,7 @@ export class MovePhase extends BattlePhase {
const targets = this.scene.getField(true).filter(p => {
if (this.targets.indexOf(p.getBattlerIndex()) > -1) {
const hiddenTag = p.getTag(HiddenTag);
- if (hiddenTag && !this.move.getMove().getAttrs(HitsTagAttr).filter(hta => (hta as HitsTagAttr).tagType === hiddenTag.tagType).length)
+ if (hiddenTag && !this.move.getMove().getAttrs(HitsTagAttr).filter(hta => (hta as HitsTagAttr).tagType === hiddenTag.tagType).length && !p.hasAbilityWithAttr(AlwaysHitAbAttr) && !this.pokemon.hasAbilityWithAttr(AlwaysHitAbAttr))
return false;
return true;
}
@@ -2190,7 +2244,7 @@ export class MovePhase extends BattlePhase {
for (let opponent of targetedOpponents) {
if (this.move.ppUsed === this.move.getMove().pp)
break;
- if ((opponent.canApplyAbility() && opponent.getAbility().hasAttr(IncreasePpAbAttr)) || (opponent.canApplyAbility(true) && opponent.getPassiveAbility().hasAttr(IncreasePpAbAttr)))
+ if (opponent.hasAbilityWithAttr(IncreasePpAbAttr))
this.move.ppUsed = Math.min(this.move.ppUsed + 1, this.move.getMovePp());
}
}
@@ -2241,6 +2295,7 @@ export class MovePhase extends BattlePhase {
this.cancelled = activated;
break;
}
+
if (activated) {
this.scene.queueMessage(getPokemonMessage(this.pokemon, getStatusEffectActivationText(this.pokemon.status.effect)));
this.scene.unshiftPhase(new CommonAnimPhase(this.scene, this.pokemon.getBattlerIndex(), undefined, CommonAnim.POISON + (this.pokemon.status.effect - 1)));
@@ -2263,6 +2318,7 @@ export class MovePhase extends BattlePhase {
showMoveText(): void {
if (this.move.getMove().getAttrs(ChargeAttr).length) {
+ this.scene.queueMessage(getPokemonMessage(this.pokemon, ` used\n${this.move.getName()}!`), 500);
const lastMove = this.pokemon.getLastXMoves() as TurnMove[];
if (!lastMove.length || lastMove[0].move !== this.move.getMove().id || lastMove[0].result !== MoveResult.OTHER)
return;
@@ -2389,7 +2445,7 @@ export class MoveEffectPhase extends PokemonPhase {
}
Utils.executeIf(!isProtected && !chargeEffect, () => applyFilteredMoveAttrs((attr: MoveAttr) => attr instanceof MoveEffectAttr && (attr as MoveEffectAttr).trigger === MoveEffectTrigger.HIT && (!attr.firstHitOnly || firstHit),
user, target, this.move.getMove()).then(() => {
- return Utils.executeIf(!target.isFainted(), () => applyPostDefendAbAttrs(PostDefendAbAttr, target, user, this.move, hitResult).then(() => {
+ return Utils.executeIf(!target.isFainted() || target.canApplyAbility(), () => applyPostDefendAbAttrs(PostDefendAbAttr, target, user, this.move, hitResult).then(() => {
if (!user.isPlayer() && this.move.getMove() instanceof AttackMove)
user.scene.applyModifiers(EnemyAttackStatusEffectChanceModifier, false, target);
})).then(() => {
@@ -2441,6 +2497,9 @@ export class MoveEffectPhase extends PokemonPhase {
if (user.turnData.hitsLeft < user.turnData.hitCount)
return true;
+ if (user.hasAbilityWithAttr(AlwaysHitAbAttr) || target.hasAbilityWithAttr(AlwaysHitAbAttr))
+ return true;
+
const hiddenTag = target.getTag(HiddenTag);
if (hiddenTag && !this.move.getMove().getAttrs(HitsTagAttr).filter(hta => (hta as HitsTagAttr).tagType === hiddenTag.tagType).length)
return false;
@@ -2455,10 +2514,15 @@ export class MoveEffectPhase extends PokemonPhase {
if (moveAccuracy.value === -1)
return true;
+ const isOhko = !!this.move.getMove().getAttrs(OneHitKOAccuracyAttr).length;
+
+ if (!isOhko)
+ user.scene.applyModifiers(PokemonMoveAccuracyBoosterModifier, user.isPlayer(), user, moveAccuracy);
+
if (this.scene.arena.weather?.weatherType === WeatherType.FOG)
moveAccuracy.value = Math.floor(moveAccuracy.value * 0.9);
- if (!this.move.getMove().getAttrs(OneHitKOAttr).length && this.scene.arena.getTag(ArenaTagType.GRAVITY))
+ if (!isOhko && this.scene.arena.getTag(ArenaTagType.GRAVITY))
moveAccuracy.value = Math.floor(moveAccuracy.value * 1.67);
const userAccuracyLevel = new Utils.IntegerHolder(user.summonData.battleStats[BattleStat.ACC]);
@@ -3193,6 +3257,8 @@ export class TrainerVictoryPhase extends BattlePhase {
}
start() {
+ this.scene.disableMenu = true;
+
this.scene.playBgm(this.scene.currentBattle.trainer.config.victoryBgm);
this.scene.unshiftPhase(new MoneyRewardPhase(this.scene, this.scene.currentBattle.trainer.config.moneyMultiplier));
@@ -3251,10 +3317,7 @@ export class MoneyRewardPhase extends BattlePhase {
this.scene.applyModifiers(MoneyMultiplierModifier, true, moneyAmount);
- this.scene.money += moneyAmount.value;
- this.scene.updateMoneyText();
-
- this.scene.validateAchvs(MoneyAchv);
+ this.scene.addMoney(moneyAmount.value);
this.scene.ui.showText(`You got ₽${moneyAmount.value.toLocaleString('en-US')}\nfor winning!`, null, () => this.end(), null, true);
}
@@ -3359,6 +3422,8 @@ export class GameOverPhase extends BattlePhase {
handleClearSession(): void {
this.scene.gameData.tryClearSession(this.scene, this.scene.sessionSlotId).then((success: boolean | [boolean, boolean]) => {
+ if (!success[0])
+ return this.scene.reset(true);
this.scene.time.delayedCall(1000, () => {
let firstClear = false;
if (this.victory && success[1]) {
@@ -3513,12 +3578,17 @@ export class ShowPartyExpBarPhase extends PlayerPartyMemberPokemonPhase {
this.scene.unshiftPhase(new HidePartyExpBarPhase(this.scene));
pokemon.updateInfo();
- this.scene.partyExpBar.showPokemonExp(pokemon, exp.value).then(() => {
- if (newLevel > lastLevel)
- this.end();
- else
- setTimeout(() => this.end(), 500);
- });
+ if (this.scene.expGainsSpeed < 3) {
+ this.scene.partyExpBar.showPokemonExp(pokemon, exp.value).then(() => {
+ if (newLevel > lastLevel)
+ this.end();
+ else
+ setTimeout(() => this.end(), 500 / Math.pow(2, this.scene.expGainsSpeed));
+ });
+ } else {
+ this.end();
+ }
+
}
}
@@ -3729,11 +3799,15 @@ export class PokemonHealPhase extends CommonAnimPhase {
const hasMessage = !!this.message;
let lastStatusEffect = StatusEffect.NONE;
- if (!fullHp) {
+ if (!fullHp || this.hpHealed < 0) {
const hpRestoreMultiplier = new Utils.IntegerHolder(1);
if (!this.revive)
this.scene.applyModifiers(HealingBoosterModifier, this.player, hpRestoreMultiplier);
const healAmount = new Utils.NumberHolder(Math.floor(this.hpHealed * hpRestoreMultiplier.value));
+ if (healAmount.value < 0) {
+ pokemon.damageAndUpdate(healAmount.value * -1, HitResult.HEAL);
+ healAmount.value = 0;
+ }
// Prevent healing to full if specified (in case of healing tokens so Sturdy doesn't cause a softlock)
if (this.preventFullHeal && pokemon.hp + healAmount.value >= pokemon.getMaxHp())
healAmount.value = (pokemon.getMaxHp() - pokemon.hp) - 1;
@@ -4152,10 +4226,15 @@ export class SelectModifierPhase extends BattlePhase {
const applyModifier = (modifier: Modifier, playSound: boolean = false) => {
const result = this.scene.addModifier(modifier, false, playSound);
if (cost) {
- this.scene.money -= cost;
- this.scene.updateMoneyText();
- this.scene.playSound('buy');
- (this.scene.ui.getHandler() as ModifierSelectUiHandler).updateCostText();
+ result.then(success => {
+ if (success) {
+ this.scene.money -= cost;
+ this.scene.updateMoneyText();
+ this.scene.playSound('buy');
+ (this.scene.ui.getHandler() as ModifierSelectUiHandler).updateCostText();
+ } else
+ this.scene.ui.playError();
+ });
} else {
const doEnd = () => {
this.scene.ui.clearText();
@@ -4241,7 +4320,7 @@ export class SelectModifierPhase extends BattlePhase {
return getPlayerModifierTypeOptions(modifierCount, this.scene.getParty(), this.scene.lockModifierTiers ? this.modifierTiers : undefined);
}
- addModifier(modifier: Modifier): Promise {
+ addModifier(modifier: Modifier): Promise {
return this.scene.addModifier(modifier, false, true);
}
}
@@ -4256,7 +4335,7 @@ export class EggLapsePhase extends Phase {
const eggsToHatch: Egg[] = this.scene.gameData.eggs.filter((egg: Egg) => {
return --egg.hatchWaves < 1
- })
+ });
if (eggsToHatch.length) {
this.scene.queueMessage('Oh?');
diff --git a/src/pipelines/sprite.ts b/src/pipelines/sprite.ts
index 819efd0d8f5..534c8d42d54 100644
--- a/src/pipelines/sprite.ts
+++ b/src/pipelines/sprite.ts
@@ -1,7 +1,9 @@
import BattleScene from "../battle-scene";
+import { variantColorCache, variantData } from '#app/data/variant';
import Pokemon from "../field/pokemon";
import Trainer from "../field/trainer";
import FieldSpritePipeline from "./field-sprite";
+import * as Utils from "../utils";
const spriteFragShader = `
#ifdef GL_FRAGMENT_PRECISION_HIGH
@@ -36,6 +38,8 @@ uniform vec2 size;
uniform vec2 texSize;
uniform float yOffset;
uniform vec4 tone;
+uniform ivec4 baseVariantColors[32];
+uniform vec4 variantColors[32];
uniform ivec4 spriteColors[32];
uniform ivec4 fusionSpriteColors[32];
@@ -155,10 +159,21 @@ vec3 hsv2rgb(vec3 c) {
void main() {
vec4 texture = texture2D(uMainSampler[0], outTexCoord);
+ ivec4 colorInt = ivec4(int(texture.r * 255.0), int(texture.g * 255.0), int(texture.b * 255.0), int(texture.a * 255.0));
+
+ for (int i = 0; i < 32; i++) {
+ if (baseVariantColors[i][3] == 0)
+ break;
+ if (texture.a > 0.0 && colorInt.r == baseVariantColors[i].r && colorInt.g == baseVariantColors[i].g && colorInt.b == baseVariantColors[i].b) {
+ texture.rgb = variantColors[i].rgb;
+ break;
+ }
+ }
+
for (int i = 0; i < 32; i++) {
if (spriteColors[i][3] == 0)
break;
- if (texture.a > 0.0 && int(texture.r * 255.0) == spriteColors[i].r && int(texture.g * 255.0) == spriteColors[i].g && int(texture.b * 255.0) == spriteColors[i].b) {
+ if (texture.a > 0.0 && colorInt.r == spriteColors[i].r && colorInt.g == spriteColors[i].g && colorInt.b == spriteColors[i].b) {
vec3 fusionColor = vec3(float(fusionSpriteColors[i].r) / 255.0, float(fusionSpriteColors[i].g) / 255.0, float(fusionSpriteColors[i].b) / 255.0);
vec3 bg = vec3(float(spriteColors[i].r) / 255.0, float(spriteColors[i].g) / 255.0, float(spriteColors[i].b) / 255.0);
float gray = (bg.r + bg.g + bg.b) / 3.0;
@@ -362,16 +377,17 @@ export default class SpritePipeline extends FieldSpritePipeline {
this.set1f('yOffset', sprite.height - sprite.frame.height * (isEntityObj ? sprite.parentContainer.scale : sprite.scale));
this.set4fv('tone', tone);
this.bindTexture(this.game.textures.get('tera').source[0].glTexture, 1);
+
if ((gameObject.scene as BattleScene).fusionPaletteSwaps) {
- const spriteColors = (ignoreOverride && data['spriteColorsBase']) || data['spriteColors'] || [] as number[][];
- const fusionSpriteColors = (ignoreOverride && data['fusionSpriteColorsBase']) || data['fusionSpriteColors'] || [] as number[][];
+ const spriteColors = ((ignoreOverride && data['spriteColorsBase']) || data['spriteColors'] || []) as number[][];
+ const fusionSpriteColors = ((ignoreOverride && data['fusionSpriteColorsBase']) || data['fusionSpriteColors'] || []) as number[][];
const emptyColors = [ 0, 0, 0, 0 ];
const flatSpriteColors: integer[] = [];
const flatFusionSpriteColors: integer[] = [];
for (let c = 0; c < 32; c++) {
- flatSpriteColors.splice(flatSpriteColors.length, 0, c < spriteColors.length ? spriteColors[c] : emptyColors);
- flatFusionSpriteColors.splice(flatFusionSpriteColors.length, 0, c < fusionSpriteColors.length ? fusionSpriteColors[c] : emptyColors);
+ flatSpriteColors.splice(flatSpriteColors.length, 0, ...(c < spriteColors.length ? spriteColors[c] : emptyColors));
+ flatFusionSpriteColors.splice(flatFusionSpriteColors.length, 0, ...(c < fusionSpriteColors.length ? fusionSpriteColors[c] : emptyColors));
}
this.set4iv(`spriteColors`, flatSpriteColors.flat());
@@ -379,6 +395,49 @@ export default class SpritePipeline extends FieldSpritePipeline {
}
}
+ onBatch(gameObject: Phaser.GameObjects.GameObject): void {
+ if (gameObject) {
+ const sprite = (gameObject as Phaser.GameObjects.Sprite);
+ const data = sprite.pipelineData;
+
+ const variant: integer = data.hasOwnProperty('variant')
+ ? data['variant']
+ : sprite.parentContainer instanceof Pokemon ? sprite.parentContainer.variant
+ : 0;
+ let variantColors;
+
+ const emptyColors = [ 0, 0, 0, 0 ];
+ const flatBaseColors: integer[] = [];
+ const flatVariantColors: number[] = [];
+
+ if ((sprite.parentContainer instanceof Pokemon ? sprite.parentContainer.shiny : !!data['shiny'])
+ && (variantColors = variantColorCache[sprite.parentContainer instanceof Pokemon ? sprite.parentContainer.getSprite().texture.key : data['spriteKey']]) && variantColors.hasOwnProperty(variant)) {
+ const baseColors = Object.keys(variantColors[variant]);
+ for (let c = 0; c < 32; c++) {
+ if (c < baseColors.length) {
+ const baseColor = Array.from(Object.values(Utils.rgbHexToRgba(baseColors[c])));
+ const variantColor = Array.from(Object.values(Utils.rgbHexToRgba(variantColors[variant][baseColors[c]])));
+ flatBaseColors.splice(flatBaseColors.length, 0, ...baseColor);
+ flatVariantColors.splice(flatVariantColors.length, 0, ...variantColor.map(c => c / 255.0));
+ } else {
+ flatBaseColors.splice(flatBaseColors.length, 0, ...emptyColors);
+ flatVariantColors.splice(flatVariantColors.length, 0, ...emptyColors);
+ }
+ }
+ } else {
+ for (let c = 0; c < 32; c++) {
+ flatBaseColors.splice(flatBaseColors.length, 0, ...emptyColors);
+ flatVariantColors.splice(flatVariantColors.length, 0, ...emptyColors);
+ }
+ }
+
+ this.set4iv('baseVariantColors', flatBaseColors.flat());
+ this.set4fv('variantColors', flatVariantColors.flat());
+ }
+
+ super.onBatch(gameObject);
+ }
+
batchQuad(gameObject: Phaser.GameObjects.GameObject, x0: number, y0: number, x1: number, y1: number, x2: number, y2: number, x3: number, y3: number,
u0: number, v0: number, u1: number, v1: number, tintTL: number, tintTR: number, tintBL: number, tintBR: number, tintEffect: number | boolean,
texture?: Phaser.Renderer.WebGL.Wrappers.WebGLTextureWrapper, unit?: number): boolean {
diff --git a/src/plugins/cache-busted-loader-plugin.ts b/src/plugins/cache-busted-loader-plugin.ts
index 5a1cbf70a94..e1ee78709df 100644
--- a/src/plugins/cache-busted-loader-plugin.ts
+++ b/src/plugins/cache-busted-loader-plugin.ts
@@ -1,5 +1,7 @@
let cacheBuster = '';
+const ignoredFiles = [ 'intro_dark' ];
+
export default class CacheBustedLoaderPlugin extends Phaser.Loader.LoaderPlugin {
constructor(scene: Phaser.Scene) {
super(scene)
@@ -15,9 +17,9 @@ export default class CacheBustedLoaderPlugin extends Phaser.Loader.LoaderPlugin
addFile(file): void {
if (!Array.isArray(file))
- file = [ file ]
-
- if (cacheBuster)
+ file = [ file ];
+
+ if (!ignoredFiles.includes(file?.key) && cacheBuster)
file.forEach(item => item.url += '?v=' + cacheBuster);
super.addFile(file);
diff --git a/src/plugins/i18n.ts b/src/plugins/i18n.ts
index a2a1283eafe..daf2231c1b6 100644
--- a/src/plugins/i18n.ts
+++ b/src/plugins/i18n.ts
@@ -1,43 +1,89 @@
import i18next from 'i18next';
import { menu as enMenu } from '../locales/en/menu';
import { menu as itMenu } from '../locales/it/menu';
+import { menu as frMenu } from '../locales/fr/menu';
+
+import { move as enMove } from '../locales/en/move';
+import { move as frMove } from '../locales/fr/move';
+
+import { pokeball as enPokeball } from '../locales/en/pokeball';
+import { pokeball as frPokeball } from '../locales/fr/pokeball';
+
+import { pokemon as enPokemon } from '../locales/en/pokemon';
+import { pokemon as frPokemon } from '../locales/fr/pokemon';
+
+export interface SimpleTranslationEntries {
+ [key: string]: string
+}
+
+export interface MoveTranslationEntry {
+ name: string,
+ effect: string
+}
+
+export interface MoveTranslationEntries {
+ [key: string]: MoveTranslationEntry
+}
+
+export interface Localizable {
+ localize(): void;
+}
const DEFAULT_LANGUAGE_OVERRIDE = '';
-/**
- * i18next is a localization library for maintaining and using translation resources.
- *
- * Q: How do I add a new language?
- * A: To add a new language, create a new folder in the locales directory with the language code.
- * Each language folder should contain a file for each namespace (ex. menu.ts) with the translations.
- *
- * Q: How do I add a new namespace?
- * A: To add a new namespace, create a new file in each language folder with the translations.
- * Then update the `resources` field in the init() call and the CustomTypeOptions interface.
- */
+export function initI18n(): void {
+ let lang = 'en';
-i18next.init({
- lng: DEFAULT_LANGUAGE_OVERRIDE ? DEFAULT_LANGUAGE_OVERRIDE : 'en',
- fallbackLng: 'en',
- debug: true,
- interpolation: {
- escapeValue: false,
- },
- resources: {
- en: {
- menu: enMenu,
+ if (localStorage.getItem('prLang'))
+ lang = localStorage.getItem('prLang');
+
+ /**
+ * i18next is a localization library for maintaining and using translation resources.
+ *
+ * Q: How do I add a new language?
+ * A: To add a new language, create a new folder in the locales directory with the language code.
+ * Each language folder should contain a file for each namespace (ex. menu.ts) with the translations.
+ *
+ * Q: How do I add a new namespace?
+ * A: To add a new namespace, create a new file in each language folder with the translations.
+ * Then update the `resources` field in the init() call and the CustomTypeOptions interface.
+ */
+
+ i18next.init({
+ lng: DEFAULT_LANGUAGE_OVERRIDE ? DEFAULT_LANGUAGE_OVERRIDE : lang,
+ fallbackLng: 'en',
+ debug: true,
+ interpolation: {
+ escapeValue: false,
},
- it: {
- menu: itMenu,
- }
- },
-});
+ resources: {
+ en: {
+ menu: enMenu,
+ move: enMove,
+ pokeball: enPokeball,
+ pokemon: enPokemon,
+ },
+ it: {
+ menu: itMenu,
+ },
+ fr: {
+ menu: frMenu,
+ move: frMove,
+ pokeball: frPokeball,
+ pokemon: frPokemon,
+ }
+ },
+ });
+}
// Module declared to make referencing keys in the localization files type-safe.
declare module 'i18next' {
interface CustomTypeOptions {
resources: {
menu: typeof enMenu;
+ move: typeof enMove;
+ pokeball: typeof enPokeball;
+ pokemon: typeof enPokemon;
};
}
}
diff --git a/src/system/game-data.ts b/src/system/game-data.ts
index 78ed699e954..c5b9f32cf9c 100644
--- a/src/system/game-data.ts
+++ b/src/system/game-data.ts
@@ -1,8 +1,8 @@
import BattleScene, { PokeballCounts, bypassLogin } from "../battle-scene";
import Pokemon, { EnemyPokemon, PlayerPokemon } from "../field/pokemon";
-import { pokemonPrevolutions } from "../data/pokemon-evolutions";
-import PokemonSpecies, { SpeciesFormKey, allSpecies, getPokemonSpecies, noStarterFormKeys, speciesStarters } from "../data/pokemon-species";
-import { Species } from "../data/enums/species";
+import { pokemonEvolutions, pokemonPrevolutions } from "../data/pokemon-evolutions";
+import PokemonSpecies, { allSpecies, getPokemonSpecies, noStarterFormKeys, speciesStarters } from "../data/pokemon-species";
+import { Species, defaultStarterSpecies } from "../data/enums/species";
import * as Utils from "../utils";
import PokemonData from "./pokemon-data";
import PersistentModifierData from "./modifier-data";
@@ -27,6 +27,8 @@ import { Moves } from "../data/enums/moves";
import { speciesEggMoves } from "../data/egg-moves";
import { allMoves } from "../data/move";
import { TrainerVariant } from "../field/trainer";
+import { OutdatedPhase, ReloadSessionPhase } from "#app/phases";
+import { Variant, variantData } from "#app/data/variant";
const saveKey = 'x0i2O7WRiANTqPmZ'; // Temporary; secure encryption is not yet necessary
@@ -134,19 +136,25 @@ export const DexAttr = {
SHINY: 2n,
MALE: 4n,
FEMALE: 8n,
- ABILITY_1: 16n,
- ABILITY_2: 32n,
- ABILITY_HIDDEN: 64n,
+ DEFAULT_VARIANT: 16n,
+ VARIANT_2: 32n,
+ VARIANT_3: 64n,
DEFAULT_FORM: 128n
}
export interface DexAttrProps {
shiny: boolean;
female: boolean;
- abilityIndex: integer;
+ variant: Variant;
formIndex: integer;
}
+export const AbilityAttr = {
+ ABILITY_1: 1,
+ ABILITY_2: 2,
+ ABILITY_HIDDEN: 4
+}
+
export type StarterMoveset = [ Moves ] | [ Moves, Moves ] | [ Moves, Moves, Moves ] | [ Moves, Moves, Moves, Moves ];
export interface StarterFormMoveData {
@@ -161,8 +169,8 @@ export interface StarterDataEntry {
moveset: StarterMoveset | StarterFormMoveData;
eggMoves: integer;
candyCount: integer;
+ abilityAttr: integer;
passiveAttr: integer;
- variantAttr: integer;
valueReduction: integer;
}
@@ -183,7 +191,7 @@ const systemShortKeys = {
ivs: '$i',
moveset: '$m',
eggMoves: '$em',
- candyCount: '$cc',
+ candyCount: '$x',
passive: '$p',
valueReduction: '$vr'
};
@@ -269,6 +277,13 @@ export class GameData {
.then(error => {
this.scene.ui.savingIcon.hide();
if (error) {
+ if (error.startsWith('client version out of date')) {
+ this.scene.clearPhaseQueue();
+ this.scene.unshiftPhase(new OutdatedPhase(this.scene));
+ } else if (error.startsWith('session out of date')) {
+ this.scene.clearPhaseQueue();
+ this.scene.unshiftPhase(new ReloadSessionPhase(this.scene));
+ }
console.error(error);
return resolve(false);
}
@@ -327,8 +342,19 @@ export class GameData {
for (let s of Object.keys(starterEggMoveData))
this.starterData[s].eggMoves = starterEggMoveData[s];
}
- } else
+
+ this.migrateStarterAbilities(systemData, this.starterData);
+ } else {
+ if ([ '1.0.0', '1.0.1' ].includes(systemData.gameVersion))
+ this.migrateStarterAbilities(systemData);
+ this.fixVariantData(systemData);
+ // Migrate ability starter data if empty for caught species
+ Object.keys(systemData.starterData).forEach(sd => {
+ if (systemData.dexData[sd].caughtAttr && !systemData.starterData[sd].abilityAttr)
+ systemData.starterData[sd].abilityAttr = 1;
+ });
this.starterData = systemData.starterData;
+ }
if (systemData.gameStats)
this.gameStats = systemData.gameStats;
@@ -387,7 +413,7 @@ export class GameData {
}
if (!bypassLogin) {
- Utils.apiFetch(`savedata/get?datatype=${GameDataType.SYSTEM}`)
+ Utils.apiFetch(`savedata/get?datatype=${GameDataType.SYSTEM}`, true)
.then(response => response.text())
.then(response => {
if (!response.length || response[0] !== '{') {
@@ -419,7 +445,7 @@ export class GameData {
return ret;
}
- return k.endsWith('Attr') && ![ 'natureAttr', 'passiveAttr', 'variantAttr' ].includes(k) ? BigInt(v) : v;
+ return k.endsWith('Attr') && ![ 'natureAttr', 'abilityAttr', 'passiveAttr' ].includes(k) ? BigInt(v) : v;
}) as SystemSaveData;
}
@@ -528,6 +554,10 @@ export class GameData {
.then(response => response.text())
.then(error => {
if (error) {
+ if (error.startsWith('session out of date')) {
+ this.scene.clearPhaseQueue();
+ this.scene.unshiftPhase(new ReloadSessionPhase(this.scene));
+ }
console.error(error);
return resolve(false);
}
@@ -547,6 +577,8 @@ export class GameData {
getSession(slotId: integer): Promise {
return new Promise(async (resolve, reject) => {
+ if (slotId < 0)
+ return resolve(null);
const handleSessionData = async (sessionDataStr: string) => {
try {
const sessionData = this.parseSessionData(sessionDataStr);
@@ -558,7 +590,7 @@ export class GameData {
};
if (!bypassLogin) {
- Utils.apiFetch(`savedata/get?datatype=${GameDataType.SESSION}&slot=${slotId}`)
+ Utils.apiFetch(`savedata/get?datatype=${GameDataType.SESSION}&slot=${slotId}`, true)
.then(response => response.text())
.then(async response => {
if (!response.length || response[0] !== '{') {
@@ -687,12 +719,22 @@ export class GameData {
updateUserInfo().then(success => {
if (success !== null && !success)
return resolve(false);
- Utils.apiFetch(`savedata/delete?datatype=${GameDataType.SESSION}&slot=${slotId}`).then(response => {
+ Utils.apiFetch(`savedata/delete?datatype=${GameDataType.SESSION}&slot=${slotId}`, true).then(response => {
if (response.ok) {
loggedInUser.lastSessionSlot = -1;
- return resolve(true);
+ resolve(true);
}
- resolve(false);
+ return response.text();
+ }).then(error => {
+ if (error) {
+ if (error.startsWith('session out of date')) {
+ this.scene.clearPhaseQueue();
+ this.scene.unshiftPhase(new ReloadSessionPhase(this.scene));
+ }
+ console.error(error);
+ resolve(false);
+ }
+ resolve(true);
});
});
});
@@ -710,12 +752,19 @@ export class GameData {
return resolve([false, false]);
const sessionData = this.getSessionSaveData(scene);
Utils.apiPost(`savedata/clear?slot=${slotId}`, JSON.stringify(sessionData)).then(response => {
- if (response.ok) {
+ if (response.ok)
loggedInUser.lastSessionSlot = -1;
- return response.json();
+ return response.json();
+ }).then(jsonResponse => {
+ if (!jsonResponse.error)
+ return resolve([true, jsonResponse.success as boolean]);
+ if (jsonResponse && jsonResponse.error.startsWith('session out of date')) {
+ this.scene.clearPhaseQueue();
+ this.scene.unshiftPhase(new ReloadSessionPhase(this.scene));
}
+ console.error(jsonResponse);
resolve([false, false]);
- }).then(jsonResponse => resolve([true, jsonResponse.success as boolean]));
+ });
});
});
}
@@ -775,7 +824,7 @@ export class GameData {
link.remove();
};
if (!bypassLogin && dataType < GameDataType.SETTINGS) {
- Utils.apiFetch(`savedata/get?datatype=${dataType}${dataType === GameDataType.SESSION ? `&slot=${slotId}` : ''}`)
+ Utils.apiFetch(`savedata/get?datatype=${dataType}${dataType === GameDataType.SESSION ? `&slot=${slotId}` : ''}`, true)
.then(response => response.text())
.then(response => {
if (!response.length || response[0] !== '{') {
@@ -902,30 +951,18 @@ export class GameData {
};
}
- const defaultStarters: Species[] = [
- Species.BULBASAUR, Species.CHARMANDER, Species.SQUIRTLE,
- Species.CHIKORITA, Species.CYNDAQUIL, Species.TOTODILE,
- Species.TREECKO, Species.TORCHIC, Species.MUDKIP,
- Species.TURTWIG, Species.CHIMCHAR, Species.PIPLUP,
- Species.SNIVY, Species.TEPIG, Species.OSHAWOTT,
- Species.CHESPIN, Species.FENNEKIN, Species.FROAKIE,
- Species.ROWLET, Species.LITTEN, Species.POPPLIO,
- Species.GROOKEY, Species.SCORBUNNY, Species.SOBBLE,
- Species.SPRIGATITO, Species.FUECOCO, Species.QUAXLY
- ];
-
- const defaultStarterAttr = DexAttr.NON_SHINY | DexAttr.MALE | DexAttr.ABILITY_1 | DexAttr.DEFAULT_FORM;
+ const defaultStarterAttr = DexAttr.NON_SHINY | DexAttr.MALE | DexAttr.DEFAULT_VARIANT | DexAttr.DEFAULT_FORM;
const defaultStarterNatures: Nature[] = [];
this.scene.executeWithSeedOffset(() => {
const neutralNatures = [ Nature.HARDY, Nature.DOCILE, Nature.SERIOUS, Nature.BASHFUL, Nature.QUIRKY ];
- for (let s = 0; s < defaultStarters.length; s++)
+ for (let s = 0; s < defaultStarterSpecies.length; s++)
defaultStarterNatures.push(Utils.randSeedItem(neutralNatures));
}, 0, 'default');
- for (let ds = 0; ds < defaultStarters.length; ds++) {
- let entry = data[defaultStarters[ds]] as DexEntry;
+ for (let ds = 0; ds < defaultStarterSpecies.length; ds++) {
+ let entry = data[defaultStarterSpecies[ds]] as DexEntry;
entry.seenAttr = defaultStarterAttr;
entry.caughtAttr = defaultStarterAttr;
entry.natureAttr = Math.pow(2, defaultStarterNatures[ds] + 1);
@@ -947,8 +984,8 @@ export class GameData {
moveset: null,
eggMoves: 0,
candyCount: 0,
+ abilityAttr: 0,
passiveAttr: 0,
- variantAttr: 0,
valueReduction: 0
};
}
@@ -981,6 +1018,11 @@ export class GameData {
const dexAttr = pokemon.getDexAttr();
pokemon.formIndex = formIndex;
dexEntry.caughtAttr |= dexAttr;
+ if (speciesStarters.hasOwnProperty(species.speciesId)) {
+ this.starterData[species.speciesId].abilityAttr |= pokemon.abilityIndex !== 1 || pokemon.species.ability2
+ ? Math.pow(2, pokemon.abilityIndex)
+ : AbilityAttr.ABILITY_HIDDEN;
+ }
dexEntry.natureAttr |= Math.pow(2, pokemon.nature + 1);
const hasPrevolution = pokemonPrevolutions.hasOwnProperty(species.speciesId);
@@ -1008,7 +1050,7 @@ export class GameData {
}
if (!hasPrevolution)
- this.addStarterCandy(species, (1 * (pokemon.isShiny() ? 5 : 1)) * (fromEgg || pokemon.isBoss() ? 2 : 1));
+ this.addStarterCandy(species, (1 * (pokemon.isShiny() ? 5 * Math.pow(2, pokemon.variant || 0) : 1)) * (fromEgg || pokemon.isBoss() ? 2 : 1));
}
const checkPrevolution = () => {
@@ -1092,13 +1134,17 @@ export class GameData {
return starterCount;
}
- getSpeciesDefaultDexAttr(species: PokemonSpecies, forSeen: boolean = false): bigint {
+ getSpeciesDefaultDexAttr(species: PokemonSpecies, forSeen: boolean = false, optimistic: boolean = false): bigint {
let ret = 0n;
const dexEntry = this.dexData[species.speciesId];
const attr = dexEntry.caughtAttr;
- ret |= attr & DexAttr.NON_SHINY || !(attr & DexAttr.SHINY) ? DexAttr.NON_SHINY : DexAttr.SHINY;
+ ret |= optimistic
+ ? attr & DexAttr.SHINY ? DexAttr.SHINY : DexAttr.NON_SHINY
+ : attr & DexAttr.NON_SHINY || !(attr & DexAttr.SHINY) ? DexAttr.NON_SHINY : DexAttr.SHINY;
ret |= attr & DexAttr.MALE || !(attr & DexAttr.FEMALE) ? DexAttr.MALE : DexAttr.FEMALE;
- ret |= attr & DexAttr.ABILITY_1 || (!(attr & DexAttr.ABILITY_2) && !(attr & DexAttr.ABILITY_HIDDEN)) ? DexAttr.ABILITY_1 : attr & DexAttr.ABILITY_2 ? DexAttr.ABILITY_2 : DexAttr.ABILITY_HIDDEN;
+ ret |= optimistic
+ ? attr & DexAttr.SHINY ? attr & DexAttr.VARIANT_3 ? DexAttr.VARIANT_3 : attr & DexAttr.VARIANT_2 ? DexAttr.VARIANT_2 : DexAttr.DEFAULT_VARIANT : DexAttr.DEFAULT_VARIANT
+ : attr & DexAttr.DEFAULT_VARIANT ? DexAttr.DEFAULT_VARIANT : attr & DexAttr.VARIANT_2 ? DexAttr.VARIANT_2 : attr & DexAttr.VARIANT_3 ? DexAttr.VARIANT_3 : DexAttr.DEFAULT_VARIANT;
ret |= this.getFormAttr(this.getFormIndex(attr));
return ret;
}
@@ -1106,17 +1152,22 @@ export class GameData {
getSpeciesDexAttrProps(species: PokemonSpecies, dexAttr: bigint): DexAttrProps {
const shiny = !(dexAttr & DexAttr.NON_SHINY);
const female = !(dexAttr & DexAttr.MALE);
- const abilityIndex = dexAttr & DexAttr.ABILITY_1 ? 0 : !species.ability2 || dexAttr & DexAttr.ABILITY_2 ? 1 : 2;
+ const variant = dexAttr & DexAttr.DEFAULT_VARIANT ? 0 : dexAttr & DexAttr.VARIANT_2 ? 1 : dexAttr & DexAttr.VARIANT_3 ? 2 : 0;
const formIndex = this.getFormIndex(dexAttr);
return {
shiny,
female,
- abilityIndex,
+ variant,
formIndex
};
}
+ getStarterSpeciesDefaultAbilityIndex(species: PokemonSpecies): integer {
+ const abilityAttr = this.starterData[species.speciesId].abilityAttr;
+ return abilityAttr & AbilityAttr.ABILITY_1 ? 0 : !species.ability2 || abilityAttr & AbilityAttr.ABILITY_2 ? 1 : 2;
+ }
+
getSpeciesDefaultNature(species: PokemonSpecies): Nature {
const dexEntry = this.dexData[species.speciesId];
for (let n = 0; n < 25; n++) {
@@ -1179,4 +1230,65 @@ export class GameData {
entry.natureAttr = this.defaultDexData[k].natureAttr || Math.pow(2, Utils.randInt(25, 1));
}
}
+
+ migrateStarterAbilities(systemData: SystemSaveData, initialStarterData?: StarterData): void {
+ const starterIds = Object.keys(this.starterData).map(s => parseInt(s) as Species);
+ const starterData = initialStarterData || systemData.starterData;
+ const dexData = systemData.dexData;
+ for (let s of starterIds) {
+ const dexAttr = dexData[s].caughtAttr;
+ starterData[s].abilityAttr = (dexAttr & DexAttr.DEFAULT_VARIANT ? AbilityAttr.ABILITY_1 : 0)
+ | (dexAttr & DexAttr.VARIANT_2 ? AbilityAttr.ABILITY_2 : 0)
+ | (dexAttr & DexAttr.VARIANT_3 ? AbilityAttr.ABILITY_HIDDEN : 0);
+ if (dexAttr) {
+ if (!(dexAttr & DexAttr.DEFAULT_VARIANT))
+ dexData[s].caughtAttr ^= DexAttr.DEFAULT_VARIANT;
+ if (dexAttr & DexAttr.VARIANT_2)
+ dexData[s].caughtAttr ^= DexAttr.VARIANT_2;
+ if (dexAttr & DexAttr.VARIANT_3)
+ dexData[s].caughtAttr ^= DexAttr.VARIANT_3;
+ }
+ }
+ }
+
+ fixVariantData(systemData: SystemSaveData): void {
+ const starterIds = Object.keys(this.starterData).map(s => parseInt(s) as Species);
+ const starterData = systemData.starterData;
+ const dexData = systemData.dexData;
+ if (starterIds.find(id => (dexData[id].caughtAttr & DexAttr.VARIANT_2 || dexData[id].caughtAttr & DexAttr.VARIANT_3) && !variantData[id])) {
+ for (let s of starterIds) {
+ const species = getPokemonSpecies(s);
+ if (variantData[s]) {
+ const tempCaughtAttr = dexData[s].caughtAttr;
+ let seenVariant2 = false;
+ let seenVariant3 = false;
+ let checkEvoSpecies = (es: Species) => {
+ seenVariant2 ||= !!(dexData[es].seenAttr & DexAttr.VARIANT_2);
+ seenVariant3 ||= !!(dexData[es].seenAttr & DexAttr.VARIANT_3);
+ if (pokemonEvolutions.hasOwnProperty(es)) {
+ for (let pe of pokemonEvolutions[es])
+ checkEvoSpecies(pe.speciesId);
+ }
+ };
+ checkEvoSpecies(s);
+ if (dexData[s].caughtAttr & DexAttr.VARIANT_2 && !seenVariant2)
+ dexData[s].caughtAttr ^= DexAttr.VARIANT_2;
+ if (dexData[s].caughtAttr & DexAttr.VARIANT_3 && !seenVariant3)
+ dexData[s].caughtAttr ^= DexAttr.VARIANT_3;
+ starterData[s].abilityAttr = (tempCaughtAttr & DexAttr.DEFAULT_VARIANT ? AbilityAttr.ABILITY_1 : 0)
+ | (tempCaughtAttr & DexAttr.VARIANT_2 && species.ability2 ? AbilityAttr.ABILITY_2 : 0)
+ | (tempCaughtAttr & DexAttr.VARIANT_3 && species.abilityHidden ? AbilityAttr.ABILITY_HIDDEN : 0);
+ } else {
+ const tempCaughtAttr = dexData[s].caughtAttr;
+ if (dexData[s].caughtAttr & DexAttr.VARIANT_2)
+ dexData[s].caughtAttr ^= DexAttr.VARIANT_2;
+ if (dexData[s].caughtAttr & DexAttr.VARIANT_3)
+ dexData[s].caughtAttr ^= DexAttr.VARIANT_3;
+ starterData[s].abilityAttr = (tempCaughtAttr & DexAttr.DEFAULT_VARIANT ? AbilityAttr.ABILITY_1 : 0)
+ | (tempCaughtAttr & DexAttr.VARIANT_2 && species.ability2 ? AbilityAttr.ABILITY_2 : 0)
+ | (tempCaughtAttr & DexAttr.VARIANT_3 && species.abilityHidden ? AbilityAttr.ABILITY_HIDDEN : 0);
+ }
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/src/system/pokemon-data.ts b/src/system/pokemon-data.ts
index d9cb8b5d44f..8ad14d5ca81 100644
--- a/src/system/pokemon-data.ts
+++ b/src/system/pokemon-data.ts
@@ -10,6 +10,7 @@ import { Status } from "../data/status-effect";
import Pokemon, { EnemyPokemon, PokemonMove, PokemonSummonData } from "../field/pokemon";
import { TrainerSlot } from "../data/trainer-config";
import { Moves } from "../data/enums/moves";
+import { Variant } from "#app/data/variant";
export default class PokemonData {
public id: integer;
@@ -19,7 +20,7 @@ export default class PokemonData {
public abilityIndex: integer;
public passive: boolean;
public shiny: boolean;
- public variant: integer;
+ public variant: Variant;
public pokeball: PokeballType;
public level: integer;
public exp: integer;
@@ -42,6 +43,7 @@ export default class PokemonData {
public fusionFormIndex: integer;
public fusionAbilityIndex: integer;
public fusionShiny: boolean;
+ public fusionVariant: Variant;
public fusionGender: Gender;
public boss: boolean;
@@ -81,6 +83,7 @@ export default class PokemonData {
this.fusionFormIndex = source.fusionFormIndex;
this.fusionAbilityIndex = source.fusionAbilityIndex;
this.fusionShiny = source.fusionShiny;
+ this.fusionVariant = source.fusionVariant;
this.fusionGender = source.fusionGender;
if (!forHistory)
@@ -115,7 +118,7 @@ export default class PokemonData {
toPokemon(scene: BattleScene, battleType?: BattleType, partyMemberIndex: integer = 0, double: boolean = false): Pokemon {
const species = getPokemonSpecies(this.species);
const ret: Pokemon = this.player
- ? scene.addPlayerPokemon(species, this.level, this.abilityIndex, this.formIndex, this.gender, this.shiny, this.ivs, this.nature, this)
+ ? scene.addPlayerPokemon(species, this.level, this.abilityIndex, this.formIndex, this.gender, this.shiny, this.variant, this.ivs, this.nature, this)
: scene.addEnemyPokemon(species, this.level, battleType === BattleType.TRAINER ? !double || !(partyMemberIndex % 2) ? TrainerSlot.TRAINER : TrainerSlot.TRAINER_PARTNER : TrainerSlot.NONE, this.boss, this);
if (this.summonData)
ret.primeSummonData(this.summonData);
diff --git a/src/system/settings.ts b/src/system/settings.ts
index 09d5dde94a8..bc302543a13 100644
--- a/src/system/settings.ts
+++ b/src/system/settings.ts
@@ -1,13 +1,17 @@
+import i18next from "i18next";
import BattleScene from "../battle-scene";
import { hasTouchscreen } from "../touch-controls";
import { updateWindowType } from "../ui/ui-theme";
import { PlayerGender } from "./game-data";
+import { Mode } from "#app/ui/ui";
+import SettingsUiHandler from "#app/ui/settings-ui-handler";
export enum Setting {
Game_Speed = "GAME_SPEED",
Master_Volume = "MASTER_VOLUME",
BGM_Volume = "BGM_VOLUME",
SE_Volume = "SE_VOLUME",
+ Language = "LANGUAGE",
Damage_Numbers = "DAMAGE_NUMBERS",
UI_Theme = "UI_THEME",
Window_Type = "WINDOW_TYPE",
@@ -16,9 +20,11 @@ export enum Setting {
Sprite_Set = "SPRITE_SET",
Move_Animations = "MOVE_ANIMATIONS",
Show_Stats_on_Level_Up = "SHOW_LEVEL_UP_STATS",
+ EXP_Gains_Speed = "EXP_GAINS_SPEED",
HP_Bar_Speed = "HP_BAR_SPEED",
Fusion_Palette_Swaps = "FUSION_PALETTE_SWAPS",
Player_Gender = "PLAYER_GENDER",
+ Gamepad_Support = "GAMEPAD_SUPPORT",
Touch_Controls = "TOUCH_CONTROLS",
Vibration = "VIBRATION"
}
@@ -36,6 +42,7 @@ export const settingOptions: SettingOptions = {
[Setting.Master_Volume]: new Array(11).fill(null).map((_, i) => i ? (i * 10).toString() : 'Mute'),
[Setting.BGM_Volume]: new Array(11).fill(null).map((_, i) => i ? (i * 10).toString() : 'Mute'),
[Setting.SE_Volume]: new Array(11).fill(null).map((_, i) => i ? (i * 10).toString() : 'Mute'),
+ [Setting.Language]: [ 'English', 'Change' ],
[Setting.Damage_Numbers]: [ 'Off', 'Simple', 'Fancy' ],
[Setting.UI_Theme]: [ 'Default', 'Legacy' ],
[Setting.Window_Type]: new Array(5).fill(null).map((_, i) => (i + 1).toString()),
@@ -44,9 +51,11 @@ export const settingOptions: SettingOptions = {
[Setting.Sprite_Set]: [ 'Consistent', 'Prioritize Animation' ],
[Setting.Move_Animations]: [ 'Off', 'On' ],
[Setting.Show_Stats_on_Level_Up]: [ 'Off', 'On' ],
+ [Setting.EXP_Gains_Speed]: [ 'Normal', 'Fast', 'Faster', 'Skip' ],
[Setting.HP_Bar_Speed]: [ 'Normal', 'Fast', 'Faster', 'Instant' ],
[Setting.Fusion_Palette_Swaps]: [ 'Off', 'On' ],
[Setting.Player_Gender]: [ 'Boy', 'Girl' ],
+ [Setting.Gamepad_Support]: [ 'Auto', 'Disabled' ],
[Setting.Touch_Controls]: [ 'Auto', 'Disabled' ],
[Setting.Vibration]: [ 'Auto', 'Disabled' ]
};
@@ -56,6 +65,7 @@ export const settingDefaults: SettingDefaults = {
[Setting.Master_Volume]: 5,
[Setting.BGM_Volume]: 10,
[Setting.SE_Volume]: 10,
+ [Setting.Language]: 0,
[Setting.Damage_Numbers]: 0,
[Setting.UI_Theme]: 0,
[Setting.Window_Type]: 0,
@@ -64,14 +74,16 @@ export const settingDefaults: SettingDefaults = {
[Setting.Sprite_Set]: 0,
[Setting.Move_Animations]: 1,
[Setting.Show_Stats_on_Level_Up]: 1,
+ [Setting.EXP_Gains_Speed]: 0,
[Setting.HP_Bar_Speed]: 0,
[Setting.Fusion_Palette_Swaps]: 1,
[Setting.Player_Gender]: 0,
+ [Setting.Gamepad_Support]: 0,
[Setting.Touch_Controls]: 0,
[Setting.Vibration]: 0
};
-export const reloadSettings: Setting[] = [ Setting.UI_Theme ];
+export const reloadSettings: Setting[] = [ Setting.UI_Theme, Setting.Language ];
export function setSetting(scene: BattleScene, setting: Setting, value: integer): boolean {
switch (setting) {
@@ -116,6 +128,9 @@ export function setSetting(scene: BattleScene, setting: Setting, value: integer)
case Setting.Show_Stats_on_Level_Up:
scene.showLevelUpStats = settingOptions[setting][value] === 'On';
break;
+ case Setting.EXP_Gains_Speed:
+ scene.expGainsSpeed = value;
+ break;
case Setting.HP_Bar_Speed:
scene.hpBarSpeed = value;
break;
@@ -130,6 +145,9 @@ export function setSetting(scene: BattleScene, setting: Setting, value: integer)
} else
return false;
break;
+ case Setting.Gamepad_Support:
+ scene.gamepadSupport = settingOptions[setting][value] !== 'Disabled';
+ break;
case Setting.Touch_Controls:
scene.enableTouchControls = settingOptions[setting][value] !== 'Disabled' && hasTouchscreen();
const touchControls = document.getElementById('touchControls');
@@ -139,7 +157,40 @@ export function setSetting(scene: BattleScene, setting: Setting, value: integer)
case Setting.Vibration:
scene.enableVibration = settingOptions[setting][value] !== 'Disabled' && hasTouchscreen();
break;
+ case Setting.Language:
+ if (value) {
+ if (scene.ui) {
+ const cancelHandler = () => {
+ scene.ui.revertMode();
+ (scene.ui.getHandler() as SettingsUiHandler).setOptionCursor(Object.values(Setting).indexOf(Setting.Language), 0, true);
+ };
+ const changeLocaleHandler = (locale: string) => {
+ i18next.changeLanguage(locale);
+ localStorage.setItem('prLang', locale);
+ cancelHandler();
+ scene.reset(true, false, true);
+ };
+ scene.ui.setOverlayMode(Mode.OPTION_SELECT, {
+ options: [
+ {
+ label: 'English',
+ handler: () => changeLocaleHandler('en')
+ },
+ {
+ label: 'French',
+ handler: () => changeLocaleHandler('fr')
+ },
+ {
+ label: 'Cancel',
+ handler: () => cancelHandler()
+ }
+ ]
+ });
+ return false;
+ }
+ }
+ break;
}
return true;
-}
\ No newline at end of file
+}
diff --git a/src/ui/battle-info.ts b/src/ui/battle-info.ts
index 71f04831034..c26214b5940 100644
--- a/src/ui/battle-info.ts
+++ b/src/ui/battle-info.ts
@@ -6,6 +6,7 @@ import { getGenderSymbol, getGenderColor, Gender } from '../data/gender';
import { StatusEffect } from '../data/status-effect';
import BattleScene from '../battle-scene';
import { Type, getTypeRgb } from '../data/type';
+import { getVariantTint } from '#app/data/variant';
export default class BattleInfo extends Phaser.GameObjects.Container {
private player: boolean;
@@ -29,8 +30,8 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
private genderText: Phaser.GameObjects.Text;
private ownedIcon: Phaser.GameObjects.Sprite;
private teraIcon: Phaser.GameObjects.Sprite;
- private splicedIcon: Phaser.GameObjects.Sprite;
private shinyIcon: Phaser.GameObjects.Sprite;
+ private splicedIcon: Phaser.GameObjects.Sprite;
private statusIndicator: Phaser.GameObjects.Sprite;
private levelContainer: Phaser.GameObjects.Container;
private hpBar: Phaser.GameObjects.Image;
@@ -39,6 +40,7 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
private hpNumbersContainer: Phaser.GameObjects.Container;
private type1Icon: Phaser.GameObjects.Sprite;
private type2Icon: Phaser.GameObjects.Sprite;
+ private type3Icon: Phaser.GameObjects.Sprite;
private expBar: Phaser.GameObjects.Image;
public expMaskRect: Phaser.GameObjects.Graphics;
@@ -79,7 +81,7 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
this.ownedIcon = this.scene.add.sprite(0, 0, 'icon_owned');
this.ownedIcon.setVisible(false);
this.ownedIcon.setOrigin(0, 0);
- this.ownedIcon.setPositionRelative(this.nameText, 0, 11.5);
+ this.ownedIcon.setPositionRelative(this.nameText, 0, 11.75);
this.add(this.ownedIcon);
}
@@ -91,6 +93,14 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
this.teraIcon.setInteractive(new Phaser.Geom.Rectangle(0, 0, 12, 15), Phaser.Geom.Rectangle.Contains);
this.add(this.teraIcon);
+ this.shinyIcon = this.scene.add.sprite(0, 0, 'shiny_star');
+ this.shinyIcon.setVisible(false);
+ this.shinyIcon.setOrigin(0, 0);
+ this.shinyIcon.setScale(0.5)
+ this.shinyIcon.setPositionRelative(this.nameText, 0, 2);
+ this.shinyIcon.setInteractive(new Phaser.Geom.Rectangle(0, 0, 12, 15), Phaser.Geom.Rectangle.Contains);
+ this.add(this.shinyIcon);
+
this.splicedIcon = this.scene.add.sprite(0, 0, 'icon_spliced');
this.splicedIcon.setVisible(false);
this.splicedIcon.setOrigin(0, 0);
@@ -111,12 +121,6 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
const levelOverlay = this.scene.add.image(0, 0, 'overlay_lv');
this.levelContainer.add(levelOverlay);
- this.shinyIcon = this.scene.add.sprite(0, 0, 'shiny_star');
- this.shinyIcon.setVisible(false);
- this.shinyIcon.setOrigin(0, 0);
- this.shinyIcon.setPositionRelative(this.levelContainer, -12, -5);
- this.add(this.shinyIcon);
-
this.hpBar = this.scene.add.image(player ? -61 : -71, player ? -1 : 4.5, 'overlay_hp');
this.hpBar.setOrigin(0);
this.add(this.hpBar);
@@ -134,6 +138,10 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
this.type2Icon.setOrigin(0, 0);
this.add(this.type2Icon);
+ this.type3Icon = this.scene.add.sprite(player ? -154 : 0, player ? -17 : -15.5, `pbinfo_${player ? 'player' : 'enemy'}_type`);
+ this.type3Icon.setOrigin(0, 0);
+ this.add(this.type3Icon);
+
if (this.player) {
this.hpNumbersContainer = this.scene.add.container(-15, 10);
this.add(this.hpNumbersContainer);
@@ -182,11 +190,19 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
this.splicedIcon.on('pointerout', () => (this.scene as BattleScene).ui.hideTooltip());
}
+ this.shinyIcon.setPositionRelative(this.nameText, nameTextWidth + this.genderText.displayWidth + 1 + (this.teraIcon.visible ? this.teraIcon.displayWidth + 1 : 0) + (this.splicedIcon.visible ? this.splicedIcon.displayWidth + 1 : 0), 2.5);
+ this.shinyIcon.setVisible(!!pokemon.isShiny());
+ this.shinyIcon.setTint(getVariantTint(pokemon.getVariant()));
+ if (this.shinyIcon.visible) {
+ this.shinyIcon.on('pointerover', () => (this.scene as BattleScene).ui.showTooltip(null, `Shiny${pokemon.getVariant() ? ` (${pokemon.getVariant() === 2 ? 'Epic' : 'Rare'})` : ''}`));
+ this.shinyIcon.on('pointerout', () => (this.scene as BattleScene).ui.hideTooltip());
+ }
+
if (!this.player) {
const dexEntry = pokemon.scene.gameData.dexData[pokemon.species.speciesId];
this.ownedIcon.setVisible(!!dexEntry.caughtAttr);
const dexAttr = pokemon.getDexAttr();
- if ((dexEntry.caughtAttr & dexAttr) < dexAttr)
+ if ((dexEntry.caughtAttr & dexAttr) < dexAttr || !(pokemon.scene.gameData.starterData[pokemon.species.getRootSpeciesId()].abilityAttr & Math.pow(2, pokemon.abilityIndex)))
this.ownedIcon.setTint(0x808080);
if (this.boss)
@@ -210,8 +226,11 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
this.type1Icon.setTexture(`pbinfo_${this.player ? 'player' : 'enemy'}_type${types.length > 1 ? '1' : ''}`);
this.type1Icon.setFrame(Type[types[0]].toLowerCase());
this.type2Icon.setVisible(types.length > 1);
+ this.type3Icon.setVisible(types.length > 2);
if (types.length > 1)
this.type2Icon.setFrame(Type[types[1]].toLowerCase());
+ if (types.length > 2)
+ this.type3Icon.setFrame(Type[types[2]].toLowerCase());
if (this.player) {
this.expMaskRect.x = (pokemon.levelExp / getLevelTotalExp(pokemon.level, pokemon.species.growthRate)) * 510;
@@ -235,16 +254,14 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
if (this.player)
this.y -= 12 * (mini ? 1 : -1);
- const offsetElements = [ this.nameText, this.genderText, this.teraIcon, this.splicedIcon, this.statusIndicator, this.levelContainer ];
+ const offsetElements = [ this.nameText, this.genderText, this.teraIcon, this.splicedIcon, this.shinyIcon, this.statusIndicator, this.levelContainer ];
offsetElements.forEach(el => el.y += 1.5 * (mini ? -1 : 1));
- [ this.type1Icon, this.type2Icon ].forEach(el => {
+ [ this.type1Icon, this.type2Icon, this.type3Icon ].forEach(el => {
el.x += 4 * (mini ? 1 : -1);
el.y += -8 * (mini ? 1 : -1);
});
- this.shinyIcon.setPositionRelative(this.levelContainer, -12, -5);
-
const toggledElements = [ this.hpNumbersContainer, this.expBar ];
toggledElements.forEach(el => el.setVisible(!mini));
}
@@ -255,7 +272,7 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
if (boss !== this.boss) {
this.boss = boss;
- [ this.nameText, this.genderText, this.teraIcon, this.splicedIcon, this.ownedIcon, this.statusIndicator, this.levelContainer ].map(e => e.x += 48 * (boss ? -1 : 1));
+ [ this.nameText, this.genderText, this.teraIcon, this.splicedIcon, this.shinyIcon, this.ownedIcon, this.statusIndicator, this.levelContainer ].map(e => e.x += 48 * (boss ? -1 : 1));
this.hpBar.x += 38 * (boss ? -1 : 1);
this.hpBar.y += 2 * (this.boss ? -1 : 1);
this.hpBar.setTexture(`overlay_hp${boss ? '_boss' : ''}`);
@@ -337,8 +354,11 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
this.type1Icon.setTexture(`pbinfo_${this.player ? 'player' : 'enemy'}_type${types.length > 1 ? '1' : ''}`);
this.type1Icon.setFrame(Type[types[0]].toLowerCase());
this.type2Icon.setVisible(types.length > 1);
+ this.type3Icon.setVisible(types.length > 2);
if (types.length > 1)
this.type2Icon.setFrame(Type[types[1]].toLowerCase());
+ if (types.length > 2)
+ this.type3Icon.setFrame(Type[types[2]].toLowerCase());
const updateHpFrame = () => {
const hpFrame = this.hpBar.scaleX > 0.5 ? 'high' : this.hpBar.scaleX > 0.25 ? 'medium' : 'low';
@@ -478,7 +498,6 @@ export default class BattleInfo extends Phaser.GameObjects.Container {
for (let i = 0; i < levelStr.length; i++)
this.levelNumbersContainer.add(this.scene.add.image(i * 8, 0, `numbers${isCapped && this.player ? '_red' : ''}`, levelStr[i]));
this.levelContainer.setX((this.player ? -41 : -50) - 8 * Math.max(levelStr.length - 3, 0));
- this.shinyIcon.setPositionRelative(this.levelContainer, -12, -5);
}
setHpNumbers(hp: integer, maxHp: integer) {
diff --git a/src/ui/biome-select-ui-handler.ts b/src/ui/biome-select-ui-handler.ts
deleted file mode 100644
index 083a13d020e..00000000000
--- a/src/ui/biome-select-ui-handler.ts
+++ /dev/null
@@ -1,134 +0,0 @@
-import BattleScene, { Button } from "../battle-scene";
-import { biomeLinks, getBiomeName } from "../data/biomes";
-import { Biome } from "../data/enums/biome";
-import { addTextObject, TextStyle } from "./text";
-import { Mode } from "./ui";
-import UiHandler from "./ui-handler";
-import * as Utils from "../utils";
-import { addWindow } from "./ui-theme";
-
-export default class BiomeSelectUiHandler extends UiHandler {
- private biomeSelectContainer: Phaser.GameObjects.Container;
- private biomeSelectBg: Phaser.GameObjects.NineSlice;
- private biomesText: Phaser.GameObjects.Text;
- private biomeChoices: Biome[];
-
- private cursorObj: Phaser.GameObjects.Image;
-
- private blockInput: boolean;
-
- private biomeSelectHandler: Function;
-
- constructor(scene: BattleScene) {
- super(scene, Mode.BIOME_SELECT);
- }
-
- setup() {
- const ui = this.getUi();
-
- this.biomeSelectContainer = this.scene.add.container((this.scene.game.canvas.width / 6) - 97, -49);
- this.biomeSelectContainer.setVisible(false);
- ui.add(this.biomeSelectContainer);
-
- this.biomeSelectBg = addWindow(this.scene, 0, 0, 96, 32);
- this.biomeSelectBg.setOrigin(0, 1);
- this.biomeSelectContainer.add(this.biomeSelectBg);
-
- this.biomesText = addTextObject(this.scene, 0, 0, '', TextStyle.WINDOW, { maxLines: 3 });
- this.biomesText.setLineSpacing(12);
- this.biomeSelectContainer.add(this.biomesText);
- }
-
- show(args: any[]): boolean {
- if (args.length >= 2 && typeof(args[0]) === 'number' && args[1] instanceof Function) {
- super.show(args);
-
- this.scene.executeWithSeedOffset(() => {
- this.biomeChoices = (!Array.isArray(biomeLinks[args[0]])
- ? [ biomeLinks[args[0]] as Biome ]
- : biomeLinks[args[0]] as (Biome | [Biome, integer])[])
- .filter((b, i) => !Array.isArray(b) || !Utils.randSeedInt(b[1]))
- .map(b => Array.isArray(b) ? b[0] : b);
- }, this.scene.currentBattle.waveIndex);
-
- if (this.biomeChoices.length <= 1)
- return;
-
- this.biomeSelectBg.height = (this.biomeChoices.length + 1) * 16;
- this.biomesText.setText(this.biomeChoices.map(b => getBiomeName(b)).join('\n'));
- this.biomesText.setPositionRelative(this.biomeSelectBg, 16, 9);
- this.biomeSelectHandler = args[1] as Function;
-
- this.biomeSelectContainer.setVisible(true);
- this.setCursor(0);
-
- this.blockInput = true;
- this.biomesText.setAlpha(0.5);
- this.scene.time.delayedCall(Utils.fixedInt(1000), () => {
- this.blockInput = false;
- this.biomesText.setAlpha(1);
- });
- }
-
- return true;
- }
-
- processInput(button: Button): boolean {
- const ui = this.getUi();
-
- let success = false;
-
- if (button === Button.ACTION || button === Button.CANCEL) {
- if (this.blockInput)
- return false;
-
- success = true;
- const originalBiomeSelectHandler = this.biomeSelectHandler;
- this.biomeSelectHandler = null;
- originalBiomeSelectHandler(this.cursor);
- this.clear();
- } else {
- switch (button) {
- case Button.UP:
- if (this.cursor)
- success = this.setCursor(this.cursor - 1);
- break;
- case Button.DOWN:
- if (this.cursor < this.biomeChoices.length - 1)
- success = this.setCursor(this.cursor + 1);
- break;
- }
- }
-
- if (success)
- ui.playSelect();
-
- return success;
- }
-
- setCursor(cursor: integer): boolean {
- const ret = super.setCursor(cursor);
-
- if (!this.cursorObj) {
- this.cursorObj = this.scene.add.image(0, 0, 'cursor');
- this.biomeSelectContainer.add(this.cursorObj);
- }
-
- this.cursorObj.setPositionRelative(this.biomeSelectBg, 12, 17 + 16 * this.cursor);
-
- return ret;
- }
-
- clear() {
- super.clear();
- this.biomeSelectContainer.setVisible(false);
- this.biomeSelectHandler = null;
- this.eraseCursor();
- }
-
- eraseCursor() {
- if (this.cursorObj)
- this.cursorObj.destroy();
- this.cursorObj = null;
- }
-}
\ No newline at end of file
diff --git a/src/ui/egg-hatch-scene-handler.ts b/src/ui/egg-hatch-scene-handler.ts
index 358b8c13b1a..f841bafc268 100644
--- a/src/ui/egg-hatch-scene-handler.ts
+++ b/src/ui/egg-hatch-scene-handler.ts
@@ -49,5 +49,6 @@ export default class EggHatchSceneHandler extends UiHandler {
clear() {
super.clear();
this.eggHatchContainer.removeAll(true);
+ this.getUi().hideTooltip();
}
}
\ No newline at end of file
diff --git a/src/ui/form-modal-ui-handler.ts b/src/ui/form-modal-ui-handler.ts
index 5adf6d3c6b2..3e326322c17 100644
--- a/src/ui/form-modal-ui-handler.ts
+++ b/src/ui/form-modal-ui-handler.ts
@@ -28,7 +28,7 @@ export abstract class FormModalUiHandler extends ModalUiHandler {
abstract getFields(): string[];
getHeight(config?: ModalConfig): number {
- return 20 * this.getFields().length + (this.getModalTitle() ? 26 : 0) + ((config as FormModalConfig)?.errorMessage ? 12 : 0) + 28;
+ return 20 * this.getFields().length + (this.getModalTitle() ? 26 : 0) + ((config as FormModalConfig)?.errorMessage ? 12 : 0) + this.getButtonTopMargin() + 28;
}
getReadableErrorMessage(error: string): string {
@@ -67,7 +67,7 @@ export abstract class FormModalUiHandler extends ModalUiHandler {
this.inputs.push(input);
});
- this.errorMessage = addTextObject(this.scene, 10, (hasTitle ? 31 : 5) + 20 * (fields.length - 1) + 16, '', TextStyle.TOOLTIP_CONTENT);
+ this.errorMessage = addTextObject(this.scene, 10, (hasTitle ? 31 : 5) + 20 * (fields.length - 1) + 16 + this.getButtonTopMargin(), '', TextStyle.TOOLTIP_CONTENT);
this.errorMessage.setColor(this.getTextColor(TextStyle.SUMMARY_PINK));
this.errorMessage.setShadowColor(this.getTextColor(TextStyle.SUMMARY_PINK, true));
this.errorMessage.setVisible(false);
diff --git a/src/ui/login-form-ui-handler.ts b/src/ui/login-form-ui-handler.ts
index 27c841b82a6..ce6a28b5290 100644
--- a/src/ui/login-form-ui-handler.ts
+++ b/src/ui/login-form-ui-handler.ts
@@ -58,7 +58,11 @@ export default class LoginFormUiHandler extends FormModalUiHandler {
};
if (!this.inputs[0].text)
return onFail('Username must not be empty');
- Utils.apiPost('account/login', JSON.stringify({ username: this.inputs[0].text, password: this.inputs[1].text }))
+ const contentType = 'application/x-www-form-urlencoded';
+ const headers = {
+ 'Content-Type': contentType,
+ };
+ fetch(`${Utils.apiUrl}/account/login`, { method: 'POST', headers: headers, body: `username=${encodeURIComponent(this.inputs[0].text)}&password=${encodeURIComponent(this.inputs[1].text)}` })
.then(response => {
if (!response.ok)
return response.text();
diff --git a/src/ui/menu-ui-handler.ts b/src/ui/menu-ui-handler.ts
index 88a80f7d21d..8b2c5646903 100644
--- a/src/ui/menu-ui-handler.ts
+++ b/src/ui/menu-ui-handler.ts
@@ -336,10 +336,14 @@ export default class MenuUiHandler extends MessageUiHandler {
case Button.UP:
if (this.cursor)
success = this.setCursor(this.cursor - 1);
+ else
+ success = this.setCursor(this.menuOptions.length - 1);
break;
case Button.DOWN:
if (this.cursor + 1 < this.menuOptions.length)
success = this.setCursor(this.cursor + 1);
+ else
+ success = this.setCursor(0);
break;
}
}
diff --git a/src/ui/modal-ui-handler.ts b/src/ui/modal-ui-handler.ts
index 2bdc809b364..f193a3db54f 100644
--- a/src/ui/modal-ui-handler.ts
+++ b/src/ui/modal-ui-handler.ts
@@ -32,6 +32,10 @@ export abstract class ModalUiHandler extends UiHandler {
abstract getButtonLabels(config?: ModalConfig): string[];
+ getButtonTopMargin(): number {
+ return 0;
+ }
+
setup() {
const ui = this.getUi();
@@ -52,6 +56,8 @@ export abstract class ModalUiHandler extends UiHandler {
const buttonLabels = this.getButtonLabels();
+ const buttonTopMargin = this.getButtonTopMargin();
+
for (let label of buttonLabels) {
const buttonLabel = addTextObject(this.scene, 0, 8, label, TextStyle.TOOLTIP_CONTENT);
buttonLabel.setOrigin(0.5, 0.5);
@@ -60,7 +66,7 @@ export abstract class ModalUiHandler extends UiHandler {
buttonBg.setOrigin(0.5, 0);
buttonBg.setInteractive(new Phaser.Geom.Rectangle(0, 0, buttonBg.width, buttonBg.height), Phaser.Geom.Rectangle.Contains);
- const buttonContainer = this.scene.add.container(0, 0);
+ const buttonContainer = this.scene.add.container(0, buttonTopMargin);
this.buttonBgs.push(buttonBg);
this.buttonContainers.push(buttonContainer);
diff --git a/src/ui/outdated-modal-ui-handler.ts b/src/ui/outdated-modal-ui-handler.ts
new file mode 100644
index 00000000000..53243c42bbe
--- /dev/null
+++ b/src/ui/outdated-modal-ui-handler.ts
@@ -0,0 +1,47 @@
+import BattleScene from "../battle-scene";
+import { ModalConfig, ModalUiHandler } from "./modal-ui-handler";
+import { addTextObject, TextStyle } from "./text";
+import { Mode } from "./ui";
+
+export default class OutdatedModalUiHandler extends ModalUiHandler {
+ constructor(scene: BattleScene, mode?: Mode) {
+ super(scene, mode);
+ }
+
+ getModalTitle(): string {
+ return '';
+ }
+
+ getWidth(): number {
+ return 160;
+ }
+
+ getHeight(): number {
+ return 64;
+ }
+
+ getMargin(): [number, number, number, number] {
+ return [ 0, 0, 48, 0 ];
+ }
+
+ getButtonLabels(): string[] {
+ return [ ];
+ }
+
+ setup(): void {
+ super.setup();
+
+ const label = addTextObject(this.scene, this.getWidth() / 2, this.getHeight() / 2, 'Your client is currently outdated.\nPlease reload to update the game.\n\nIf this error persists, please clear your browser cache.', TextStyle.WINDOW, { fontSize: '48px', align: 'center' });
+ label.setOrigin(0.5, 0.5);
+
+ this.modalContainer.add(label);
+ }
+
+ show(args: any[]): boolean {
+ const config: ModalConfig = {
+ buttonActions: []
+ };
+
+ return super.show([ config ]);
+ }
+}
\ No newline at end of file
diff --git a/src/ui/party-exp-bar.ts b/src/ui/party-exp-bar.ts
index a582c7e8502..a5451c5f27a 100644
--- a/src/ui/party-exp-bar.ts
+++ b/src/ui/party-exp-bar.ts
@@ -51,7 +51,7 @@ export default class PartyExpBar extends Phaser.GameObjects.Container {
this.tween = this.scene.tweens.add({
targets: this,
x: (this.scene.game.canvas.width / 6) - (this.bg.width - 5),
- duration: 500,
+ duration: 500 / Math.pow(2, pokemon.scene.expGainsSpeed),
ease: 'Sine.easeOut',
onComplete: () => {
this.tween = null;
diff --git a/src/ui/party-ui-handler.ts b/src/ui/party-ui-handler.ts
index 834b994a070..c6f32869f8b 100644
--- a/src/ui/party-ui-handler.ts
+++ b/src/ui/party-ui-handler.ts
@@ -15,6 +15,7 @@ import PokemonIconAnimHandler, { PokemonIconAnimMode } from "./pokemon-icon-anim
import { pokemonEvolutions } from "../data/pokemon-evolutions";
import { addWindow } from "./ui-theme";
import { SpeciesFormChangeItemTrigger } from "../data/pokemon-forms";
+import { getVariantTint } from "#app/data/variant";
const defaultMessage = 'Choose a Pokémon.';
@@ -899,9 +900,10 @@ class PartySlot extends Phaser.GameObjects.Container {
}
if (this.pokemon.isShiny()) {
- const shinyStar = this.scene.add.image(0, 0, 'shiny_star');
+ const shinyStar = this.scene.add.image(0, 0, 'shiny_star_small');
shinyStar.setOrigin(0, 0);
- shinyStar.setPositionRelative(slotName, -8, 2);
+ shinyStar.setPositionRelative(slotName, -9, 3);
+ shinyStar.setTint(getVariantTint(this.pokemon.getVariant()));
slotInfoContainer.add(shinyStar);
}
diff --git a/src/ui/pokemon-info-container.ts b/src/ui/pokemon-info-container.ts
index f2921e1240b..f8a39beac6c 100644
--- a/src/ui/pokemon-info-container.ts
+++ b/src/ui/pokemon-info-container.ts
@@ -8,6 +8,7 @@ import { addWindow } from "./ui-theme";
import { getNatureName } from "../data/nature";
import * as Utils from "../utils";
import { Type } from "../data/type";
+import { getVariantTint } from "#app/data/variant";
export default class PokemonInfoContainer extends Phaser.GameObjects.Container {
private pokemonGenderLabelText: Phaser.GameObjects.Text;
@@ -16,6 +17,7 @@ export default class PokemonInfoContainer extends Phaser.GameObjects.Container {
private pokemonAbilityText: Phaser.GameObjects.Text;
private pokemonNatureLabelText: Phaser.GameObjects.Text;
private pokemonNatureText: BBCodeText;
+ private pokemonShinyIcon: Phaser.GameObjects.Image;
private pokemonMovesContainer: Phaser.GameObjects.Container;
private pokemonMovesContainers: Phaser.GameObjects.Container[];
private pokemonMoveBgs: Phaser.GameObjects.NineSlice[];
@@ -80,32 +82,38 @@ export default class PokemonInfoContainer extends Phaser.GameObjects.Container {
this.add(infoBg);
this.add(this.statsContainer);
- this.pokemonGenderLabelText = addTextObject(this.scene, -18, 20, 'Gender:', TextStyle.WINDOW, { fontSize: '64px' });
+ this.pokemonGenderLabelText = addTextObject(this.scene, -18, 18, 'Gender:', TextStyle.WINDOW, { fontSize: '64px' });
this.pokemonGenderLabelText.setOrigin(1, 0);
this.pokemonGenderLabelText.setVisible(false);
this.add(this.pokemonGenderLabelText);
- this.pokemonGenderText = addTextObject(this.scene, -14, 20, '', TextStyle.WINDOW, { fontSize: '64px' });
+ this.pokemonGenderText = addTextObject(this.scene, -14, 18, '', TextStyle.WINDOW, { fontSize: '64px' });
this.pokemonGenderText.setOrigin(0, 0);
this.pokemonGenderText.setVisible(false);
this.add(this.pokemonGenderText);
- this.pokemonAbilityLabelText = addTextObject(this.scene, -18, 30, 'Ability:', TextStyle.WINDOW, { fontSize: '64px' });
+ this.pokemonAbilityLabelText = addTextObject(this.scene, -18, 28, 'Ability:', TextStyle.WINDOW, { fontSize: '64px' });
this.pokemonAbilityLabelText.setOrigin(1, 0);
this.add(this.pokemonAbilityLabelText);
- this.pokemonAbilityText = addTextObject(this.scene, -14, 30, '', TextStyle.WINDOW, { fontSize: '64px' });
+ this.pokemonAbilityText = addTextObject(this.scene, -14, 28, '', TextStyle.WINDOW, { fontSize: '64px' });
this.pokemonAbilityText.setOrigin(0, 0);
this.add(this.pokemonAbilityText);
- this.pokemonNatureLabelText = addTextObject(this.scene, -18, 40, 'Nature:', TextStyle.WINDOW, { fontSize: '64px' });
+ this.pokemonNatureLabelText = addTextObject(this.scene, -18, 38, 'Nature:', TextStyle.WINDOW, { fontSize: '64px' });
this.pokemonNatureLabelText.setOrigin(1, 0);
this.add(this.pokemonNatureLabelText);
- this.pokemonNatureText = addBBCodeTextObject(this.scene, -14, 40, '', TextStyle.WINDOW, { fontSize: '64px', lineSpacing: 3, maxLines: 2 });
+ this.pokemonNatureText = addBBCodeTextObject(this.scene, -14, 38, '', TextStyle.WINDOW, { fontSize: '64px', lineSpacing: 3, maxLines: 2 });
this.pokemonNatureText.setOrigin(0, 0);
this.add(this.pokemonNatureText);
+ this.pokemonShinyIcon = this.scene.add.image(-43.5, 48.5, 'shiny_star');
+ this.pokemonShinyIcon.setOrigin(0, 0);
+ this.pokemonShinyIcon.setScale(0.75);
+ this.pokemonShinyIcon.setInteractive(new Phaser.Geom.Rectangle(0, 0, 12, 15), Phaser.Geom.Rectangle.Contains);
+ this.add(this.pokemonShinyIcon);
+
this.setVisible(false);
}
@@ -128,6 +136,13 @@ export default class PokemonInfoContainer extends Phaser.GameObjects.Container {
this.pokemonNatureText.setText(getNatureName(pokemon.getNature(), true, false, false, this.scene.uiTheme));
+ this.pokemonShinyIcon.setTint(getVariantTint(pokemon.getVariant()));
+ this.pokemonShinyIcon.setVisible(pokemon.isShiny());
+ if (this.pokemonShinyIcon.visible) {
+ this.pokemonShinyIcon.on('pointerover', () => (this.scene as BattleScene).ui.showTooltip(null, `Shiny${pokemon.getVariant() ? ` (${pokemon.getVariant() === 2 ? 'Epic' : 'Rare'})` : ''}`, true));
+ this.pokemonShinyIcon.on('pointerout', () => (this.scene as BattleScene).ui.hideTooltip());
+ }
+
const originalIvs: integer[] = this.scene.gameData.dexData[pokemon.species.speciesId].caughtAttr
? this.scene.gameData.dexData[pokemon.species.speciesId].ivs
: null;
@@ -186,6 +201,7 @@ export default class PokemonInfoContainer extends Phaser.GameObjects.Container {
x: this.initialX,
onComplete: () => {
this.setVisible(false);
+ (this.scene as BattleScene).ui.hideTooltip();
resolve();
}
});
diff --git a/src/ui/registration-form-ui-handler.ts b/src/ui/registration-form-ui-handler.ts
index c1cc79f6939..d15df22bd85 100644
--- a/src/ui/registration-form-ui-handler.ts
+++ b/src/ui/registration-form-ui-handler.ts
@@ -2,6 +2,7 @@ import { FormModalUiHandler } from "./form-modal-ui-handler";
import { ModalConfig } from "./modal-ui-handler";
import * as Utils from "../utils";
import { Mode } from "./ui";
+import { TextStyle, addTextObject } from "./text";
export default class RegistrationFormUiHandler extends FormModalUiHandler {
getModalTitle(config?: ModalConfig): string {
@@ -20,6 +21,10 @@ export default class RegistrationFormUiHandler extends FormModalUiHandler {
return [ 0, 0, 48, 0 ];
}
+ getButtonTopMargin(): number {
+ return 8;
+ }
+
getButtonLabels(config?: ModalConfig): string[] {
return [ 'Register', 'Back to Login' ];
}
@@ -40,6 +45,14 @@ export default class RegistrationFormUiHandler extends FormModalUiHandler {
return super.getReadableErrorMessage(error);
}
+ setup(): void {
+ super.setup();
+
+ const label = addTextObject(this.scene, 10, 87, 'By registering, you confirm you are of 13 years of age or older.', TextStyle.TOOLTIP_CONTENT, { fontSize: '42px' });
+
+ this.modalContainer.add(label);
+ }
+
show(args: any[]): boolean {
if (super.show(args)) {
const config = args[0] as ModalConfig;
@@ -60,11 +73,15 @@ export default class RegistrationFormUiHandler extends FormModalUiHandler {
return onFail(this.getReadableErrorMessage('invalid password'));
if (this.inputs[1].text !== this.inputs[2].text)
return onFail('Password must match confirm password');
- Utils.apiPost('account/register', JSON.stringify({ username: this.inputs[0].text, password: this.inputs[1].text }))
+ const contentType = 'application/x-www-form-urlencoded';
+ const headers = {
+ 'Content-Type': contentType,
+ };
+ fetch(`${Utils.apiUrl}/account/register`, { method: 'POST', headers: headers, body: `username=${encodeURIComponent(this.inputs[0].text)}&password=${encodeURIComponent(this.inputs[1].text)}` })
.then(response => response.text())
.then(response => {
if (!response) {
- Utils.apiPost('account/login', JSON.stringify({ username: this.inputs[0].text, password: this.inputs[1].text }))
+ fetch(`${Utils.apiUrl}/account/login`, { method: 'POST', headers: headers, body: `username=${encodeURIComponent(this.inputs[0].text)}&password=${encodeURIComponent(this.inputs[1].text)}` })
.then(response => {
if (!response.ok)
return response.text();
diff --git a/src/ui/save-slot-select-ui-handler.ts b/src/ui/save-slot-select-ui-handler.ts
index 054bb1ab9f9..21865045141 100644
--- a/src/ui/save-slot-select-ui-handler.ts
+++ b/src/ui/save-slot-select-ui-handler.ts
@@ -114,8 +114,10 @@ export default class SaveSlotSelectUiHandler extends MessageUiHandler {
ui.showText(null, 0);
}, false, 0, 19, 2000);
});
- } else
+ } else if (this.sessionSlots[this.cursor].hasData === false)
saveAndCallback();
+ else
+ return false;
break;
}
success = true;
@@ -210,7 +212,6 @@ class SessionSlot extends Phaser.GameObjects.Container {
super(scene, 0, slotId * 56);
this.slotId = slotId;
- this.hasData = false;
this.setup();
}
@@ -282,6 +283,7 @@ class SessionSlot extends Phaser.GameObjects.Container {
return new Promise(resolve => {
this.scene.gameData.getSession(this.slotId).then(async sessionData => {
if (!sessionData) {
+ this.hasData = false;
this.loadingLabel.setText('Empty');
resolve(false);
return;
diff --git a/src/ui/session-reload-modal-ui-handler.ts b/src/ui/session-reload-modal-ui-handler.ts
new file mode 100644
index 00000000000..fdcd9b2c206
--- /dev/null
+++ b/src/ui/session-reload-modal-ui-handler.ts
@@ -0,0 +1,47 @@
+import BattleScene from "../battle-scene";
+import { ModalConfig, ModalUiHandler } from "./modal-ui-handler";
+import { addTextObject, TextStyle } from "./text";
+import { Mode } from "./ui";
+
+export default class SessionReloadModalUiHandler extends ModalUiHandler {
+ constructor(scene: BattleScene, mode?: Mode) {
+ super(scene, mode);
+ }
+
+ getModalTitle(): string {
+ return '';
+ }
+
+ getWidth(): number {
+ return 160;
+ }
+
+ getHeight(): number {
+ return 32;
+ }
+
+ getMargin(): [number, number, number, number] {
+ return [ 0, 0, 48, 0 ];
+ }
+
+ getButtonLabels(): string[] {
+ return [ ];
+ }
+
+ setup(): void {
+ super.setup();
+
+ const label = addTextObject(this.scene, this.getWidth() / 2, this.getHeight() / 2, 'Your session is out of date.\nYour data will be reloaded…', TextStyle.WINDOW, { fontSize: '48px', align: 'center' });
+ label.setOrigin(0.5, 0.5);
+
+ this.modalContainer.add(label);
+ }
+
+ show(args: any[]): boolean {
+ const config: ModalConfig = {
+ buttonActions: []
+ };
+
+ return super.show([ config ]);
+ }
+}
\ No newline at end of file
diff --git a/src/ui/settings-ui-handler.ts b/src/ui/settings-ui-handler.ts
index ce8a7542d89..8f43b377d21 100644
--- a/src/ui/settings-ui-handler.ts
+++ b/src/ui/settings-ui-handler.ts
@@ -22,11 +22,13 @@ export default class SettingsUiHandler extends UiHandler {
private cursorObj: Phaser.GameObjects.NineSlice;
private reloadRequired: boolean;
+ private reloadI18n: boolean;
constructor(scene: BattleScene, mode?: Mode) {
super(scene, mode);
this.reloadRequired = false;
+ this.reloadI18n = false;
}
setup() {
@@ -197,8 +199,11 @@ export default class SettingsUiHandler extends UiHandler {
if (save) {
this.scene.gameData.saveSetting(setting, cursor)
- if (reloadSettings.includes(setting))
+ if (reloadSettings.includes(setting)) {
this.reloadRequired = true;
+ if (setting === Setting.Language)
+ this.reloadI18n = true;
+ }
}
return true;
@@ -234,7 +239,7 @@ export default class SettingsUiHandler extends UiHandler {
this.eraseCursor();
if (this.reloadRequired) {
this.reloadRequired = false;
- this.scene.reset(true);
+ this.scene.reset(true, false, true);
}
}
diff --git a/src/ui/starter-select-ui-handler.ts b/src/ui/starter-select-ui-handler.ts
index 7521cbbc6bb..fc1d76e7e0c 100644
--- a/src/ui/starter-select-ui-handler.ts
+++ b/src/ui/starter-select-ui-handler.ts
@@ -8,7 +8,7 @@ import { Gender, getGenderColor, getGenderSymbol } from "../data/gender";
import { allAbilities } from "../data/ability";
import { GameModes, gameModes } from "../game-mode";
import { GrowthRate, getGrowthRateColor } from "../data/exp";
-import { DexAttr, DexAttrProps, DexEntry, Passive as PassiveAttr, StarterFormMoveData, StarterMoveset } from "../system/game-data";
+import { AbilityAttr, DexAttr, DexAttrProps, DexEntry, Passive as PassiveAttr, StarterFormMoveData, StarterMoveset } from "../system/game-data";
import * as Utils from "../utils";
import PokemonIconAnimHandler, { PokemonIconAnimMode } from "./pokemon-icon-anim-handler";
import { StatsContainer } from "./stats-container";
@@ -26,14 +26,15 @@ import { TitlePhase } from "../phases";
import { argbFromRgba } from "@material/material-color-utilities";
import { OptionSelectItem } from "./abstact-option-select-ui-handler";
import { pokemonPrevolutions } from "#app/data/pokemon-evolutions";
+import { Variant, getVariantTint } from "#app/data/variant";
export type StarterSelectCallback = (starters: Starter[]) => void;
export interface Starter {
species: PokemonSpecies;
dexAttr: bigint;
+ abilityIndex: integer,
passive: boolean;
- variant: integer;
nature: Nature;
moveset?: StarterMoveset;
pokerus: boolean;
@@ -128,6 +129,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
private genMode: boolean;
private statsMode: boolean;
private dexAttrCursor: bigint = 0n;
+ private abilityCursor: integer = -1;
private natureCursor: integer = -1;
private genCursor: integer = 0;
private genScrollCursor: integer = 0;
@@ -141,6 +143,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
private pokerusGens: integer[] = [];
private pokerusCursors: integer[] = [];
private starterAttr: bigint[] = [];
+ private starterAbilityIndexes: integer[] = [];
private starterNatures: Nature[] = [];
private starterMovesets: StarterMoveset[] = [];
private speciesStarterDexEntry: DexEntry;
@@ -150,6 +153,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
private canCycleGender: boolean;
private canCycleAbility: boolean;
private canCycleNature: boolean;
+ private canCycleVariant: boolean;
private value: integer = 0;
private assetLoadCancelled: Utils.BooleanHolder;
@@ -162,7 +166,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
private valueLimitLabel: Phaser.GameObjects.Text;
private startCursorObj: Phaser.GameObjects.NineSlice;
private starterValueLabels: Phaser.GameObjects.Text[];
- private shinyIcons: Phaser.GameObjects.Image[];
+ private shinyIcons: Phaser.GameObjects.Image[][];
private hiddenAbilityIcons: Phaser.GameObjects.Image[];
private iconAnimHandler: PokemonIconAnimHandler;
@@ -170,6 +174,8 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
private starterSelectCallback: StarterSelectCallback;
private gameMode: GameModes;
+ protected blockInput: boolean = false;
+
constructor(scene: BattleScene) {
super(scene, Mode.STARTER_SELECT);
}
@@ -336,14 +342,14 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
starterSpecies.push(species.speciesId);
this.speciesLoaded.set(species.speciesId, false);
this.genSpecies[g].push(species);
- const defaultDexAttr = this.scene.gameData.getSpeciesDefaultDexAttr(species);
+ const defaultDexAttr = this.scene.gameData.getSpeciesDefaultDexAttr(species, false, true);
const defaultProps = this.scene.gameData.getSpeciesDexAttrProps(species, defaultDexAttr);
const x = (s % 9) * 18;
const y = Math.floor(s / 9) * 18;
- const icon = this.scene.add.sprite(x - 2, y + 2, species.getIconAtlasKey(defaultProps.formIndex));
+ const icon = this.scene.add.sprite(x - 2, y + 2, species.getIconAtlasKey(defaultProps.formIndex, defaultProps.shiny, defaultProps.variant));
icon.setScale(0.5);
icon.setOrigin(0, 0);
- icon.setFrame(species.getIconId(defaultProps.female, defaultProps.formIndex, defaultProps.shiny));
+ icon.setFrame(species.getIconId(defaultProps.female, defaultProps.formIndex, defaultProps.shiny, defaultProps.variant));
icon.setTint(0);
this.starterSelectGenIconContainers[g].add(icon);
this.iconAnimHandler.addOrUpdate(icon, PokemonIconAnimMode.NONE);
@@ -372,15 +378,19 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
return ret;
});
- this.shinyIcons = new Array(81).fill(null).map((_, i) => {
- const x = (i % 9) * 18;
+ const getShinyStar = (i: integer, v: integer): Phaser.GameObjects.Image => {
+ const x = (i % 9) * 18 - v * 3;
const y = Math.floor(i / 9) * 18;
- const ret = this.scene.add.image(x + 163, y + 11, 'shiny_star');
+ const ret = this.scene.add.image(x + 163, y + 11, 'shiny_star_small');
ret.setOrigin(0, 0);
ret.setScale(0.5);
ret.setVisible(false);
this.starterSelectContainer.add(ret);
return ret;
+ }
+
+ this.shinyIcons = new Array(81).fill(null).map((_, i) => {
+ return new Array(3).fill(null).map((_, v) => getShinyStar(i, v));
});
this.hiddenAbilityIcons = new Array(81).fill(null).map((_, i) => {
@@ -395,6 +405,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
});
this.pokemonSprite = this.scene.add.sprite(53, 63, `pkmn__sub`);
+ this.pokemonSprite.setPipeline(this.scene.spritePipeline, { tone: [ 0.0, 0.0, 0.0, 0.0 ], ignoreTimeTint: true });
this.starterSelectContainer.add(this.pokemonSprite);
this.type1Icon = this.scene.add.sprite(8, 98, 'types');
@@ -614,6 +625,9 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
}
processInput(button: Button): boolean {
+ if (this.blockInput)
+ return false;
+
const ui = this.getUi();
let success = false;
@@ -633,6 +647,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
success = true;
this.updateInstructions();
} else {
+ this.blockInput = true;
this.scene.clearPhaseQueue();
this.scene.pushPhase(new TitlePhase(this.scene));
this.scene.getCurrentPhase().end();
@@ -709,11 +724,12 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
cursorObj.setVisible(true);
cursorObj.setPosition(this.cursorObj.x, this.cursorObj.y);
const props = this.scene.gameData.getSpeciesDexAttrProps(species, this.dexAttrCursor);
- this.starterIcons[this.starterCursors.length].setTexture(species.getIconAtlasKey(props.formIndex));
- this.starterIcons[this.starterCursors.length].setFrame(species.getIconId(props.female, props.formIndex, props.shiny));
+ this.starterIcons[this.starterCursors.length].setTexture(species.getIconAtlasKey(props.formIndex, props.shiny, props.variant));
+ this.starterIcons[this.starterCursors.length].setFrame(species.getIconId(props.female, props.formIndex, props.shiny, props.variant));
this.starterGens.push(this.getGenCursorWithScroll());
this.starterCursors.push(this.cursor);
this.starterAttr.push(this.dexAttrCursor);
+ this.starterAbilityIndexes.push(this.abilityCursor);
this.starterNatures.push(this.natureCursor as unknown as Nature);
this.starterMovesets.push(this.starterMoveset.slice(0) as StarterMoveset);
if (this.speciesLoaded.get(species.speciesId))
@@ -808,7 +824,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
handler: () => {
starterData.passiveAttr |= PassiveAttr.ENABLED;
ui.setMode(Mode.STARTER_SELECT);
- this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, undefined);
+ this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, undefined, undefined);
return true;
}
});
@@ -818,7 +834,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
handler: () => {
starterData.passiveAttr ^= PassiveAttr.ENABLED;
ui.setMode(Mode.STARTER_SELECT);
- this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, undefined);
+ this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, undefined, undefined);
return true;
}
});
@@ -840,7 +856,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
return this.scene.reset(true);
});
ui.setMode(Mode.STARTER_SELECT);
- this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, undefined);
+ this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, undefined, undefined);
return true;
}
return false;
@@ -917,7 +933,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
switch (button) {
case Button.CYCLE_SHINY:
if (this.canCycleShiny) {
- this.setSpeciesDetails(this.lastSpecies, !props.shiny, undefined, undefined, undefined, undefined);
+ this.setSpeciesDetails(this.lastSpecies, !props.shiny, undefined, undefined, props.shiny ? 0 : undefined, undefined, undefined);
if (this.dexAttrCursor & DexAttr.SHINY)
this.scene.playSound('sparkle');
else
@@ -933,34 +949,35 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
if (this.speciesStarterDexEntry.caughtAttr & this.scene.gameData.getFormAttr(newFormIndex))
break;
} while (newFormIndex !== props.formIndex);
- this.setSpeciesDetails(this.lastSpecies, undefined, newFormIndex, undefined, undefined, undefined);
+ this.setSpeciesDetails(this.lastSpecies, undefined, newFormIndex, undefined, undefined, undefined, undefined);
success = true;
}
break;
case Button.CYCLE_GENDER:
if (this.canCycleGender) {
- this.setSpeciesDetails(this.lastSpecies, undefined, undefined, !props.female, undefined, undefined);
+ this.setSpeciesDetails(this.lastSpecies, undefined, undefined, !props.female, undefined, undefined, undefined);
success = true;
}
break;
case Button.CYCLE_ABILITY:
if (this.canCycleAbility) {
const abilityCount = this.lastSpecies.getAbilityCount();
- let newAbilityIndex = props.abilityIndex;
+ const abilityAttr = this.scene.gameData.starterData[this.lastSpecies.speciesId].abilityAttr;
+ let newAbilityIndex = this.abilityCursor;
do {
newAbilityIndex = (newAbilityIndex + 1) % abilityCount;
if (!newAbilityIndex) {
- if (this.speciesStarterDexEntry.caughtAttr & DexAttr.ABILITY_1)
+ if (abilityAttr & AbilityAttr.ABILITY_1)
break;
} else if (newAbilityIndex === 1) {
- if (this.speciesStarterDexEntry.caughtAttr & (this.lastSpecies.ability2 ? DexAttr.ABILITY_2 : DexAttr.ABILITY_HIDDEN))
+ if (abilityAttr & (this.lastSpecies.ability2 ? AbilityAttr.ABILITY_2 : AbilityAttr.ABILITY_HIDDEN))
break;
} else {
- if (this.speciesStarterDexEntry.caughtAttr & DexAttr.ABILITY_HIDDEN)
+ if (abilityAttr & AbilityAttr.ABILITY_HIDDEN)
break;
}
- } while (newAbilityIndex !== props.abilityIndex);
- this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, newAbilityIndex, undefined);
+ } while (newAbilityIndex !== this.abilityCursor);
+ this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, newAbilityIndex, undefined);
success = true;
}
break;
@@ -969,7 +986,27 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
const natures = this.scene.gameData.getNaturesForAttr(this.speciesStarterDexEntry.natureAttr);
const natureIndex = natures.indexOf(this.natureCursor);
const newNature = natures[natureIndex < natures.length - 1 ? natureIndex + 1 : 0];
- this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, newNature);
+ this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, undefined, newNature, undefined);
+ success = true;
+ }
+ break;
+ case Button.CYCLE_VARIANT:
+ if (this.canCycleVariant) {
+ let newVariant = props.variant;
+ do {
+ newVariant = (newVariant + 1) % 3;
+ if (!newVariant) {
+ if (this.speciesStarterDexEntry.caughtAttr & DexAttr.DEFAULT_VARIANT)
+ break;
+ } else if (newVariant === 1) {
+ if (this.speciesStarterDexEntry.caughtAttr & DexAttr.VARIANT_2)
+ break;
+ } else {
+ if (this.speciesStarterDexEntry.caughtAttr & DexAttr.VARIANT_3)
+ break;
+ }
+ } while (newVariant !== props.variant);
+ this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, newVariant, undefined, undefined);
success = true;
}
break;
@@ -1037,7 +1074,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
}
} else
this.scene.gameData.starterData[speciesId].moveset = this.starterMoveset.slice(0) as StarterMoveset;
- this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, undefined, false);
+ this.setSpeciesDetails(this.lastSpecies, undefined, undefined, undefined, undefined, undefined, undefined, false);
}
updateInstructions(): void {
@@ -1054,6 +1091,8 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
cycleInstructionLines.push('E: Cycle Ability');
if (this.canCycleNature)
cycleInstructionLines.push('N: Cycle Nature');
+ if (this.canCycleVariant)
+ cycleInstructionLines.push('V: Cycle Variant');
}
if (cycleInstructionLines.length > 2) {
@@ -1117,8 +1156,16 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
if (slotVisible)
this.updateStarterValueLabel(s);
this.starterValueLabels[s].setVisible(slotVisible);
- this.shinyIcons[s].setVisible(slotVisible && !!this.scene.gameData.dexData[speciesId].caughtAttr && !!(this.scene.gameData.dexData[speciesId].caughtAttr & DexAttr.SHINY));
- this.hiddenAbilityIcons[s].setVisible(slotVisible && !!this.scene.gameData.dexData[speciesId].caughtAttr && !!(this.scene.gameData.dexData[speciesId].caughtAttr & DexAttr.ABILITY_HIDDEN));
+ const speciesVariants = speciesId && this.scene.gameData.dexData[speciesId].caughtAttr & DexAttr.SHINY
+ ? [ DexAttr.DEFAULT_VARIANT, DexAttr.VARIANT_2, DexAttr.VARIANT_3 ].filter(v => !!(this.scene.gameData.dexData[speciesId].caughtAttr & v))
+ : [];
+ for (let v = 0; v < 3; v++) {
+ const hasVariant = speciesVariants.length > v;
+ this.shinyIcons[s][v].setVisible(slotVisible && hasVariant);
+ if (hasVariant)
+ this.shinyIcons[s][v].setTint(getVariantTint(speciesVariants[v] === DexAttr.DEFAULT_VARIANT ? 0 : speciesVariants[v] === DexAttr.VARIANT_2 ? 1 : 2));
+ }
+ this.hiddenAbilityIcons[s].setVisible(slotVisible && !!this.scene.gameData.dexData[speciesId].caughtAttr && !!(this.scene.gameData.starterData[speciesId].abilityAttr & 4));
}
} else {
changed = super.setCursor(cursor);
@@ -1171,7 +1218,8 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
setSpecies(species: PokemonSpecies) {
this.speciesStarterDexEntry = species ? this.scene.gameData.dexData[species.speciesId] : null;
- this.dexAttrCursor = species ? this.scene.gameData.getSpeciesDefaultDexAttr(species) : 0n;
+ this.dexAttrCursor = species ? this.scene.gameData.getSpeciesDefaultDexAttr(species, false, true) : 0n;
+ this.abilityCursor = species ? this.scene.gameData.getStarterSpeciesDefaultAbilityIndex(species) : 0;
this.natureCursor = species ? this.scene.gameData.getSpeciesDefaultNature(species) : 0;
if (this.statsMode) {
@@ -1185,10 +1233,10 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
}
if (this.lastSpecies) {
- const dexAttr = this.scene.gameData.getSpeciesDefaultDexAttr(this.lastSpecies);
+ const dexAttr = this.scene.gameData.getSpeciesDefaultDexAttr(this.lastSpecies, false, true);
const props = this.scene.gameData.getSpeciesDexAttrProps(this.lastSpecies, dexAttr);
const lastSpeciesIcon = (this.starterSelectGenIconContainers[this.lastSpecies.generation - 1].getAt(this.genSpecies[this.lastSpecies.generation - 1].indexOf(this.lastSpecies)) as Phaser.GameObjects.Sprite);
- lastSpeciesIcon.setFrame(this.lastSpecies.getIconId(props.female, props.formIndex, props.shiny));
+ lastSpeciesIcon.setTexture(this.lastSpecies.getIconAtlasKey(props.formIndex, props.shiny, props.variant), this.lastSpecies.getIconId(props.female, props.formIndex, props.shiny, props.variant));
this.iconAnimHandler.addOrUpdate(lastSpeciesIcon, PokemonIconAnimMode.NONE);
}
@@ -1241,13 +1289,14 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
if (starterIndex > -1) {
props = this.scene.gameData.getSpeciesDexAttrProps(species, this.starterAttr[starterIndex]);
- this.setSpeciesDetails(species, props.shiny, props.formIndex, props.female, props.abilityIndex, this.starterNatures[starterIndex]);
+ this.setSpeciesDetails(species, props.shiny, props.formIndex, props.female, props.variant, this.starterAbilityIndexes[starterIndex], this.starterNatures[starterIndex]);
} else {
- const defaultDexAttr = this.scene.gameData.getSpeciesDefaultDexAttr(species);
+ const defaultDexAttr = this.scene.gameData.getSpeciesDefaultDexAttr(species, false, true);
+ const defaultAbilityIndex = this.scene.gameData.getStarterSpeciesDefaultAbilityIndex(species);
const defaultNature = this.scene.gameData.getSpeciesDefaultNature(species);
props = this.scene.gameData.getSpeciesDexAttrProps(species, defaultDexAttr);
- this.setSpeciesDetails(species, props.shiny, props.formIndex, props.female, props.abilityIndex, defaultNature);
+ this.setSpeciesDetails(species, props.shiny, props.formIndex, props.female, props.variant, defaultAbilityIndex, defaultNature);
}
const speciesForm = getPokemonSpeciesForm(species.speciesId, props.formIndex);
@@ -1270,11 +1319,12 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
this.pokemonCandyOverlayIcon.setVisible(false);
this.pokemonCandyCountText.setVisible(false);
- const defaultDexAttr = this.scene.gameData.getSpeciesDefaultDexAttr(species, true);
+ const defaultDexAttr = this.scene.gameData.getSpeciesDefaultDexAttr(species, true, true);
+ const defaultAbilityIndex = this.scene.gameData.getStarterSpeciesDefaultAbilityIndex(species);
const defaultNature = this.scene.gameData.getSpeciesDefaultNature(species);
const props = this.scene.gameData.getSpeciesDexAttrProps(species, defaultDexAttr);
- this.setSpeciesDetails(species, props.shiny, props.formIndex, props.female, props.abilityIndex, defaultNature, true);
+ this.setSpeciesDetails(species, props.shiny, props.formIndex, props.female, props.variant, defaultAbilityIndex, defaultNature, true);
this.pokemonSprite.setTint(0x808080);
}
} else {
@@ -1293,22 +1343,32 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
this.pokemonCandyOverlayIcon.setVisible(false);
this.pokemonCandyCountText.setVisible(false);
- this.setSpeciesDetails(species, false, 0, false, 0, 0);
+ this.setSpeciesDetails(species, false, 0, false, 0, 0, 0);
this.pokemonSprite.clearTint();
}
}
- setSpeciesDetails(species: PokemonSpecies, shiny: boolean, formIndex: integer, female: boolean, abilityIndex: integer, natureIndex: integer, forSeen: boolean = false): void {
+ setSpeciesDetails(species: PokemonSpecies, shiny: boolean, formIndex: integer, female: boolean, variant: Variant, abilityIndex: integer, natureIndex: integer, forSeen: boolean = false): void {
const oldProps = species ? this.scene.gameData.getSpeciesDexAttrProps(species, this.dexAttrCursor) : null;
+ const oldAbilityIndex = this.abilityCursor > -1 ? this.abilityCursor : this.scene.gameData.getStarterSpeciesDefaultAbilityIndex(species);
const oldNatureIndex = this.natureCursor > -1 ? this.natureCursor : this.scene.gameData.getSpeciesDefaultNature(species);
this.dexAttrCursor = 0n;
+ this.abilityCursor = -1;
this.natureCursor = -1;
+ if (species?.forms?.find(f => f.formKey === 'female')) {
+ if (female !== undefined)
+ formIndex = female ? 1 : 0;
+ else if (formIndex !== undefined)
+ female = formIndex === 1;
+ }
+
if (species) {
this.dexAttrCursor |= (shiny !== undefined ? !shiny : !(shiny = oldProps.shiny)) ? DexAttr.NON_SHINY : DexAttr.SHINY;
this.dexAttrCursor |= (female !== undefined ? !female : !(female = oldProps.female)) ? DexAttr.MALE : DexAttr.FEMALE;
- this.dexAttrCursor |= (abilityIndex !== undefined ? !abilityIndex : !(abilityIndex = oldProps.abilityIndex)) ? DexAttr.ABILITY_1 : species.ability2 && abilityIndex === 1 ? DexAttr.ABILITY_2 : DexAttr.ABILITY_HIDDEN;
+ this.dexAttrCursor |= (variant !== undefined ? !variant : !(variant = oldProps.variant)) ? DexAttr.DEFAULT_VARIANT : variant === 1 ? DexAttr.VARIANT_2 : DexAttr.VARIANT_3;
this.dexAttrCursor |= this.scene.gameData.getFormAttr(formIndex !== undefined ? formIndex : (formIndex = oldProps.formIndex));
+ this.abilityCursor = abilityIndex !== undefined ? abilityIndex : (abilityIndex = oldAbilityIndex);
this.natureCursor = natureIndex !== undefined ? natureIndex : (natureIndex = oldNatureIndex);
}
@@ -1324,8 +1384,10 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
if (species) {
const dexEntry = this.scene.gameData.dexData[species.speciesId];
+ const abilityAttr = this.scene.gameData.starterData[species.speciesId].abilityAttr;
if (!dexEntry.caughtAttr) {
- const props = this.scene.gameData.getSpeciesDexAttrProps(species, this.scene.gameData.getSpeciesDefaultDexAttr(species, forSeen));
+ const props = this.scene.gameData.getSpeciesDexAttrProps(species, this.scene.gameData.getSpeciesDefaultDexAttr(species, forSeen, !forSeen));
+ const defaultAbilityIndex = this.scene.gameData.getStarterSpeciesDefaultAbilityIndex(species);
const defaultNature = this.scene.gameData.getSpeciesDefaultNature(species);
if (shiny === undefined || shiny !== props.shiny)
shiny = props.shiny;
@@ -1333,8 +1395,10 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
formIndex = props.formIndex;
if (female === undefined || female !== props.female)
female = props.female;
- if (abilityIndex === undefined || abilityIndex !== props.abilityIndex)
- abilityIndex = props.abilityIndex;
+ if (variant === undefined || variant !== props.variant)
+ variant = props.variant;
+ if (abilityIndex === undefined || abilityIndex !== defaultAbilityIndex)
+ abilityIndex = defaultAbilityIndex;
if (natureIndex === undefined || natureIndex !== defaultNature)
natureIndex = defaultNature;
}
@@ -1357,29 +1421,35 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
if (starterIndex > -1) {
this.starterAttr[starterIndex] = this.dexAttrCursor;
+ this.starterAbilityIndexes[starterIndex] = this.abilityCursor;
this.starterNatures[starterIndex] = this.natureCursor;
}
const assetLoadCancelled = new Utils.BooleanHolder(false);
this.assetLoadCancelled = assetLoadCancelled;
- species.loadAssets(this.scene, female, formIndex, shiny, true).then(() => {
+ species.loadAssets(this.scene, female, formIndex, shiny, variant, true).then(() => {
if (assetLoadCancelled.value)
return;
this.assetLoadCancelled = null;
this.speciesLoaded.set(species.speciesId, true);
- this.pokemonSprite.play(species.getSpriteKey(female, formIndex, shiny));
+ this.pokemonSprite.play(species.getSpriteKey(female, formIndex, shiny, variant));
+ this.pokemonSprite.setPipelineData('shiny', shiny);
+ this.pokemonSprite.setPipelineData('variant', variant);
+ this.pokemonSprite.setPipelineData('spriteKey', species.getSpriteKey(female, formIndex, shiny, variant));
this.pokemonSprite.setVisible(!this.statsMode);
});
- (this.starterSelectGenIconContainers[this.getGenCursorWithScroll()].getAt(this.cursor) as Phaser.GameObjects.Sprite).setFrame(species.getIconId(female, formIndex, shiny));
+ (this.starterSelectGenIconContainers[this.getGenCursorWithScroll()].getAt(this.cursor) as Phaser.GameObjects.Sprite)
+ .setTexture(species.getIconAtlasKey(formIndex, shiny, variant), species.getIconId(female, formIndex, shiny, variant));
this.canCycleShiny = !!(dexEntry.caughtAttr & DexAttr.NON_SHINY && dexEntry.caughtAttr & DexAttr.SHINY);
this.canCycleGender = !!(dexEntry.caughtAttr & DexAttr.MALE && dexEntry.caughtAttr & DexAttr.FEMALE);
- this.canCycleAbility = [ dexEntry.caughtAttr & DexAttr.ABILITY_1, dexEntry.caughtAttr & DexAttr.ABILITY_2, dexEntry.caughtAttr & DexAttr.ABILITY_HIDDEN ].filter(a => a).length > 1;
+ this.canCycleAbility = [ abilityAttr & AbilityAttr.ABILITY_1, (abilityAttr & AbilityAttr.ABILITY_2) && species.ability2, abilityAttr & AbilityAttr.ABILITY_HIDDEN ].filter(a => a).length > 1;
this.canCycleForm = species.forms.filter(f => !f.formKey || !pokemonFormChanges[species.speciesId]?.find(fc => fc.formKey))
- .map((_, f) => dexEntry.caughtAttr & this.scene.gameData.getFormAttr(f)).filter(a => a).length > 1;
+ .map((_, f) => dexEntry.caughtAttr & this.scene.gameData.getFormAttr(f)).filter(f => f).length > 1;
this.canCycleNature = this.scene.gameData.getNaturesForAttr(dexEntry.natureAttr).length > 1;
+ this.canCycleVariant = shiny && [ dexEntry.caughtAttr & DexAttr.DEFAULT_VARIANT, dexEntry.caughtAttr & DexAttr.VARIANT_2, dexEntry.caughtAttr & DexAttr.VARIANT_3].filter(v => v).length > 1;
}
if (dexEntry.caughtAttr && species.malePercent !== null) {
@@ -1493,6 +1563,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
this.starterGens.pop();
this.starterCursors.pop();
this.starterAttr.pop();
+ this.starterAbilityIndexes.pop();
this.starterNatures.pop();
this.starterMovesets.pop();
this.starterCursorObjs[this.starterCursors.length].setVisible(false);
@@ -1576,8 +1647,8 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
return {
species: starterSpecies,
dexAttr: thisObj.starterAttr[i],
+ abilityIndex: thisObj.starterAbilityIndexes[i],
passive: !(thisObj.scene.gameData.starterData[starterSpecies.speciesId].passiveAttr ^ (PassiveAttr.ENABLED | PassiveAttr.UNLOCKED)),
- variant: 0,
nature: thisObj.starterNatures[i] as Nature,
moveset: thisObj.starterMovesets[i],
pokerus: !![ 0, 1, 2 ].filter(n => thisObj.pokerusGens[n] === starterSpecies.generation - 1 && thisObj.pokerusCursors[n] === thisObj.genSpecies[starterSpecies.generation - 1].indexOf(starterSpecies)).length
@@ -1624,6 +1695,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
super.clear();
this.cursor = -1;
this.starterSelectContainer.setVisible(false);
+ this.blockInput = false;
while (this.starterCursors.length)
this.popStarter();
diff --git a/src/ui/summary-ui-handler.ts b/src/ui/summary-ui-handler.ts
index 327ed996e6c..0fdd7606cd6 100644
--- a/src/ui/summary-ui-handler.ts
+++ b/src/ui/summary-ui-handler.ts
@@ -16,6 +16,7 @@ import { getBiomeName } from "../data/biomes";
import { Nature, getNatureStatMultiplier } from "../data/nature";
import { loggedInUser } from "../account";
import { PlayerGender } from "../system/game-data";
+import { getVariantTint } from "#app/data/variant";
enum Page {
PROFILE,
@@ -41,7 +42,7 @@ export default class SummaryUiHandler extends UiHandler {
private pokeball: Phaser.GameObjects.Sprite;
private levelText: Phaser.GameObjects.Text;
private genderText: Phaser.GameObjects.Text;
- private shinyStar: Phaser.GameObjects.Image;
+ private shinyIcon: Phaser.GameObjects.Image;
private statusContainer: Phaser.GameObjects.Container;
private status: Phaser.GameObjects.Image;
private summaryPageContainer: Phaser.GameObjects.Container;
@@ -116,6 +117,13 @@ export default class SummaryUiHandler extends UiHandler {
this.splicedIcon.setScale(0.75);
this.splicedIcon.setInteractive(new Phaser.Geom.Rectangle(0, 0, 12, 15), Phaser.Geom.Rectangle.Contains);
this.summaryContainer.add(this.splicedIcon);
+
+ this.shinyIcon = this.scene.add.image(0, -54, 'shiny_star');
+ this.shinyIcon.setVisible(false);
+ this.shinyIcon.setOrigin(0, 0);
+ this.shinyIcon.setScale(0.75);
+ this.shinyIcon.setInteractive(new Phaser.Geom.Rectangle(0, 0, 12, 15), Phaser.Geom.Rectangle.Contains);
+ this.summaryContainer.add(this.shinyIcon);
this.pokeball = this.scene.add.sprite(6, -19, 'pb');
this.pokeball.setOrigin(0, 1);
@@ -129,10 +137,7 @@ export default class SummaryUiHandler extends UiHandler {
this.genderText.setOrigin(0, 1);
this.summaryContainer.add(this.genderText);
- this.shinyStar = this.scene.add.image(96, -19, 'shiny_star');
- this.shinyStar.setOrigin(0, 1);
- this.shinyStar.setVisible(false);
- this.summaryContainer.add(this.shinyStar);
+
this.statusContainer = this.scene.add.container(-106, -16);
@@ -217,8 +222,11 @@ export default class SummaryUiHandler extends UiHandler {
this.numberText.setShadowColor(this.getTextColor(!this.pokemon.isShiny() ? TextStyle.SUMMARY : TextStyle.SUMMARY_GOLD, true));
this.pokemonSprite.play(this.pokemon.getSpriteKey(true));
- this.pokemonSprite.pipelineData['teraColor'] = getTypeRgb(this.pokemon.getTeraType());
- this.pokemonSprite.pipelineData['ignoreTimeTint'] = true;
+ this.pokemonSprite.setPipelineData('teraColor', getTypeRgb(this.pokemon.getTeraType()));
+ this.pokemonSprite.setPipelineData('ignoreTimeTint', true);
+ this.pokemonSprite.setPipelineData('spriteKey', this.pokemon.getSpriteKey());
+ this.pokemonSprite.setPipelineData('shiny', this.pokemon.shiny);
+ this.pokemonSprite.setPipelineData('variant', this.pokemon.variant);
[ 'spriteColors', 'fusionSpriteColors' ].map(k => {
delete this.pokemonSprite.pipelineData[`${k}Base`];
if (this.pokemon.summonData?.speciesForm)
@@ -235,6 +243,14 @@ export default class SummaryUiHandler extends UiHandler {
this.splicedIcon.on('pointerover', () => (this.scene as BattleScene).ui.showTooltip(null, `${this.pokemon.species.getName(this.pokemon.formIndex)}/${this.pokemon.fusionSpecies.getName(this.pokemon.fusionFormIndex)}`, true));
this.splicedIcon.on('pointerout', () => (this.scene as BattleScene).ui.hideTooltip());
}
+
+ this.shinyIcon.setPositionRelative(this.nameText, this.nameText.displayWidth + (this.splicedIcon.visible ? this.splicedIcon.displayWidth + 1 : 0) + 1, 3);
+ this.shinyIcon.setTint(getVariantTint(this.pokemon.getVariant()));
+ this.shinyIcon.setVisible(this.pokemon.isShiny());
+ if (this.shinyIcon.visible) {
+ this.shinyIcon.on('pointerover', () => (this.scene as BattleScene).ui.showTooltip(null, `Shiny${this.pokemon.getVariant() ? ` (${this.pokemon.getVariant() === 2 ? 'Epic' : 'Rare'})` : ''}`, true));
+ this.shinyIcon.on('pointerout', () => (this.scene as BattleScene).ui.hideTooltip());
+ }
this.pokeball.setFrame(getPokeballAtlasKey(this.pokemon.pokeball));
this.levelText.setText(this.pokemon.level.toString());
@@ -242,9 +258,6 @@ export default class SummaryUiHandler extends UiHandler {
this.genderText.setColor(getGenderColor(this.pokemon.getGender(true)));
this.genderText.setShadowColor(getGenderColor(this.pokemon.getGender(true), true));
- this.shinyStar.setX(96 - (this.genderText.text ? 10 : 0));
- this.shinyStar.setVisible(this.pokemon.isShiny());
-
switch (this.summaryUiMode) {
case SummaryUiMode.DEFAULT:
const page = args.length < 2 ? Page.PROFILE : args[2] as Page;
diff --git a/src/ui/ui.ts b/src/ui/ui.ts
index 422a0ab3e10..6e20b2cb8b8 100644
--- a/src/ui/ui.ts
+++ b/src/ui/ui.ts
@@ -11,7 +11,6 @@ import BallUiHandler from './ball-ui-handler';
import SummaryUiHandler from './summary-ui-handler';
import StarterSelectUiHandler from './starter-select-ui-handler';
import EvolutionSceneHandler from './evolution-scene-handler';
-import BiomeSelectUiHandler from './biome-select-ui-handler';
import TargetSelectUiHandler from './target-select-ui-handler';
import SettingsUiHandler from './settings-ui-handler';
import { TextStyle, addTextObject } from './text';
@@ -34,6 +33,8 @@ import SaveSlotSelectUiHandler from './save-slot-select-ui-handler';
import TitleUiHandler from './title-ui-handler';
import SavingIconHandler from './saving-icon-handler';
import UnavailableModalUiHandler from './unavailable-modal-ui-handler';
+import OutdatedModalUiHandler from './outdated-modal-ui-handler';
+import SessionReloadModalUiHandler from './session-reload-modal-ui-handler';
export enum Mode {
MESSAGE,
@@ -46,7 +47,6 @@ export enum Mode {
SAVE_SLOT,
PARTY,
SUMMARY,
- BIOME_SELECT,
STARTER_SELECT,
EVOLUTION_SCENE,
EGG_HATCH_SCENE,
@@ -63,7 +63,9 @@ export enum Mode {
LOGIN_FORM,
REGISTRATION_FORM,
LOADING,
- UNAVAILABLE
+ SESSION_RELOAD,
+ UNAVAILABLE,
+ OUTDATED
};
const transitionModes = [
@@ -90,7 +92,9 @@ const noTransitionModes = [
Mode.LOGIN_FORM,
Mode.REGISTRATION_FORM,
Mode.LOADING,
- Mode.UNAVAILABLE
+ Mode.SESSION_RELOAD,
+ Mode.UNAVAILABLE,
+ Mode.OUTDATED
];
export default class UI extends Phaser.GameObjects.Container {
@@ -124,7 +128,6 @@ export default class UI extends Phaser.GameObjects.Container {
new SaveSlotSelectUiHandler(scene),
new PartyUiHandler(scene),
new SummaryUiHandler(scene),
- new BiomeSelectUiHandler(scene),
new StarterSelectUiHandler(scene),
new EvolutionSceneHandler(scene),
new EggHatchSceneHandler(scene),
@@ -141,7 +144,9 @@ export default class UI extends Phaser.GameObjects.Container {
new LoginFormUiHandler(scene),
new RegistrationFormUiHandler(scene),
new LoadingModalUiHandler(scene),
- new UnavailableModalUiHandler(scene)
+ new SessionReloadModalUiHandler(scene),
+ new UnavailableModalUiHandler(scene),
+ new OutdatedModalUiHandler(scene)
];
}
diff --git a/src/utils.ts b/src/utils.ts
index 13b06714032..3cbbfd84263 100644
--- a/src/utils.ts
+++ b/src/utils.ts
@@ -233,11 +233,15 @@ export function getCookie(cName: string): string {
return '';
}
-export function apiFetch(path: string): Promise {
+export function apiFetch(path: string, authed: boolean = false): Promise {
return new Promise((resolve, reject) => {
- const sId = getCookie(sessionIdKey);
- const headers = sId ? { 'Authorization': sId } : {};
- fetch(`${apiUrl}/${path}`, { headers: headers })
+ const request = {};
+ if (authed) {
+ const sId = getCookie(sessionIdKey);
+ if (sId)
+ request['headers'] = { 'Authorization': sId };
+ }
+ fetch(`${apiUrl}/${path}`, request)
.then(response => resolve(response))
.catch(err => reject(err));
});
@@ -321,4 +325,8 @@ export function rgbHexToRgba(hex: string) {
b: parseInt(color[3], 16),
a: 255
};
+}
+
+export function rgbaToInt(rgba: integer[]): integer {
+ return (rgba[0] << 24) + (rgba[1] << 16) + (rgba[2] << 8) + rgba[3];
}
\ No newline at end of file