diff --git a/public/images/pokemon/exp/back/1001.json b/public/images/pokemon/exp/back/1001.json index 7547fbd93bd..e8b2776127c 100644 --- a/public/images/pokemon/exp/back/1001.json +++ b/public/images/pokemon/exp/back/1001.json @@ -1,272 +1,140 @@ { - "textures": [ - { - "image": "1001.png", - "format": "RGBA8888", - "size": { - "w": 237, - "h": 237 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 79, - "h": 79 - }, - "frame": { - "x": 0, - "y": 0, - "w": 79, - "h": 79 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 79, - "h": 78 - }, - "frame": { - "x": 79, - "y": 0, - "w": 79, - "h": 78 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 79, - "h": 78 - }, - "frame": { - "x": 79, - "y": 0, - "w": 79, - "h": 78 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 79, - "h": 76 - }, - "frame": { - "x": 158, - "y": 0, - "w": 79, - "h": 76 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 79, - "h": 76 - }, - "frame": { - "x": 158, - "y": 0, - "w": 79, - "h": 76 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 79, - "h": 75 - }, - "frame": { - "x": 158, - "y": 76, - "w": 79, - "h": 75 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 79, - "h": 75 - }, - "frame": { - "x": 158, - "y": 76, - "w": 79, - "h": 75 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 5, - "w": 79, - "h": 74 - }, - "frame": { - "x": 79, - "y": 78, - "w": 79, - "h": 74 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 5, - "w": 79, - "h": 74 - }, - "frame": { - "x": 79, - "y": 78, - "w": 79, - "h": 74 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 79, - "h": 73 - }, - "frame": { - "x": 0, - "y": 79, - "w": 79, - "h": 73 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 79, - "h": 73 - }, - "frame": { - "x": 0, - "y": 79, - "w": 79, - "h": 73 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 7, - "w": 79, - "h": 72 - }, - "frame": { - "x": 158, - "y": 151, - "w": 79, - "h": 72 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:2873276355a5ff8fe57d616764a11cb5:5516cfd39964108d480df461b020785f:c8a3fc07f857e38a4f887e43523aab92$" + "textures":[ + { + "image": "1001.png", + "format": "RGBA8888", + "size": { "w": 161, "h": 157 }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 79, "h": 79 }, + "frame": { "x": 80, "y": 78, "w": 79, "h": 79 } + }, + { + "filename": "0002.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 79, "h": 79 }, + "frame": { "x": 80, "y": 78, "w": 79, "h": 79 } + }, + { + "filename": "0003.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 79, "h": 79 }, + "frame": { "x": 80, "y": 78, "w": 79, "h": 79 } + }, + { + "filename": "0004.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 79, "h": 79 }, + "frame": { "x": 80, "y": 78, "w": 79, "h": 79 } + }, + { + "filename": "0005.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 80, "h": 78 }, + "frame": { "x": 0, "y": 79, "w": 80, "h": 78 } + }, + { + "filename": "0006.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 80, "h": 78 }, + "frame": { "x": 0, "y": 79, "w": 80, "h": 78 } + }, + { + "filename": "0007.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 80, "h": 78 }, + "frame": { "x": 0, "y": 79, "w": 80, "h": 78 } + }, + { + "filename": "0008.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 80, "h": 78 }, + "frame": { "x": 0, "y": 79, "w": 80, "h": 78 } + }, + { + "filename": "0009.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 81, "h": 78 }, + "frame": { "x": 80, "y": 0, "w": 81, "h": 78 } + }, + { + "filename": "0010.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 81, "h": 78 }, + "frame": { "x": 80, "y": 0, "w": 81, "h": 78 } + }, + { + "filename": "0011.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 81, "h": 78 }, + "frame": { "x": 80, "y": 0, "w": 81, "h": 78 } + }, + { + "filename": "0012.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 81, "h": 78 }, + "frame": { "x": 80, "y": 0, "w": 81, "h": 78 } + }, + { + "filename": "0013.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 80, "h": 79 }, + "frame": { "x": 0, "y": 0, "w": 80, "h": 79 } + }, + { + "filename": "0014.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 80, "h": 79 }, + "frame": { "x": 0, "y": 0, "w": 80, "h": 79 } + }, + { + "filename": "0015.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 80, "h": 79 }, + "frame": { "x": 0, "y": 0, "w": 80, "h": 79 } + }, + { + "filename": "0016.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 80, "h": 79 }, + "frame": { "x": 0, "y": 0, "w": 80, "h": 79 } + } + ]}], + "meta": {"app": "https://www.aseprite.org/","version": "1.3.7-x64" } } diff --git a/public/images/pokemon/exp/back/1001.png b/public/images/pokemon/exp/back/1001.png index 606028b4d16..7eead83b578 100644 Binary files a/public/images/pokemon/exp/back/1001.png and b/public/images/pokemon/exp/back/1001.png differ diff --git a/public/images/pokemon/exp/back/911.png b/public/images/pokemon/exp/back/911.png index 04010c67444..a15676954fc 100644 Binary files a/public/images/pokemon/exp/back/911.png and b/public/images/pokemon/exp/back/911.png differ diff --git a/public/images/pokemon/exp/back/shiny/1001.json b/public/images/pokemon/exp/back/shiny/1001.json index 1ea21ec6995..cf2dd09815d 100644 --- a/public/images/pokemon/exp/back/shiny/1001.json +++ b/public/images/pokemon/exp/back/shiny/1001.json @@ -1,272 +1,140 @@ { - "textures": [ - { - "image": "1001.png", - "format": "RGBA8888", - "size": { - "w": 237, - "h": 237 - }, - "scale": 1, - "frames": [ - { - "filename": "0001.png", - "rotated": false, - "trimmed": false, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 0, - "w": 79, - "h": 79 - }, - "frame": { - "x": 0, - "y": 0, - "w": 79, - "h": 79 - } - }, - { - "filename": "0002.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 79, - "h": 78 - }, - "frame": { - "x": 79, - "y": 0, - "w": 79, - "h": 78 - } - }, - { - "filename": "0012.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 1, - "w": 79, - "h": 78 - }, - "frame": { - "x": 79, - "y": 0, - "w": 79, - "h": 78 - } - }, - { - "filename": "0003.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 79, - "h": 76 - }, - "frame": { - "x": 158, - "y": 0, - "w": 79, - "h": 76 - } - }, - { - "filename": "0011.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 3, - "w": 79, - "h": 76 - }, - "frame": { - "x": 158, - "y": 0, - "w": 79, - "h": 76 - } - }, - { - "filename": "0004.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 79, - "h": 75 - }, - "frame": { - "x": 158, - "y": 76, - "w": 79, - "h": 75 - } - }, - { - "filename": "0010.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 4, - "w": 79, - "h": 75 - }, - "frame": { - "x": 158, - "y": 76, - "w": 79, - "h": 75 - } - }, - { - "filename": "0005.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 5, - "w": 79, - "h": 74 - }, - "frame": { - "x": 79, - "y": 78, - "w": 79, - "h": 74 - } - }, - { - "filename": "0009.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 5, - "w": 79, - "h": 74 - }, - "frame": { - "x": 79, - "y": 78, - "w": 79, - "h": 74 - } - }, - { - "filename": "0006.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 79, - "h": 73 - }, - "frame": { - "x": 0, - "y": 79, - "w": 79, - "h": 73 - } - }, - { - "filename": "0008.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 6, - "w": 79, - "h": 73 - }, - "frame": { - "x": 0, - "y": 79, - "w": 79, - "h": 73 - } - }, - { - "filename": "0007.png", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 79, - "h": 79 - }, - "spriteSourceSize": { - "x": 0, - "y": 7, - "w": 79, - "h": 72 - }, - "frame": { - "x": 158, - "y": 151, - "w": 79, - "h": 72 - } - } - ] - } - ], - "meta": { - "app": "https://www.codeandweb.com/texturepacker", - "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:83b74b0673ef1ae8346efab60ae89872:f76c930177bf7a296d3f47eb6294ae4f:c8a3fc07f857e38a4f887e43523aab92$" + "textures":[ + { + "image": "1001.png", + "format": "RGBA8888", + "size": { "w": 161, "h": 157 }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 79, "h": 79 }, + "frame": { "x": 80, "y": 78, "w": 79, "h": 79 } + }, + { + "filename": "0002.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 79, "h": 79 }, + "frame": { "x": 80, "y": 78, "w": 79, "h": 79 } + }, + { + "filename": "0003.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 79, "h": 79 }, + "frame": { "x": 80, "y": 78, "w": 79, "h": 79 } + }, + { + "filename": "0004.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 79, "h": 79 }, + "frame": { "x": 80, "y": 78, "w": 79, "h": 79 } + }, + { + "filename": "0005.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 80, "h": 78 }, + "frame": { "x": 0, "y": 79, "w": 80, "h": 78 } + }, + { + "filename": "0006.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 80, "h": 78 }, + "frame": { "x": 0, "y": 79, "w": 80, "h": 78 } + }, + { + "filename": "0007.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 80, "h": 78 }, + "frame": { "x": 0, "y": 79, "w": 80, "h": 78 } + }, + { + "filename": "0008.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 80, "h": 78 }, + "frame": { "x": 0, "y": 79, "w": 80, "h": 78 } + }, + { + "filename": "0009.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 81, "h": 78 }, + "frame": { "x": 80, "y": 0, "w": 81, "h": 78 } + }, + { + "filename": "0010.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 81, "h": 78 }, + "frame": { "x": 80, "y": 0, "w": 81, "h": 78 } + }, + { + "filename": "0011.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 81, "h": 78 }, + "frame": { "x": 80, "y": 0, "w": 81, "h": 78 } + }, + { + "filename": "0012.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 1, "w": 81, "h": 78 }, + "frame": { "x": 80, "y": 0, "w": 81, "h": 78 } + }, + { + "filename": "0013.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 80, "h": 79 }, + "frame": { "x": 0, "y": 0, "w": 80, "h": 79 } + }, + { + "filename": "0014.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 80, "h": 79 }, + "frame": { "x": 0, "y": 0, "w": 80, "h": 79 } + }, + { + "filename": "0015.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 80, "h": 79 }, + "frame": { "x": 0, "y": 0, "w": 80, "h": 79 } + }, + { + "filename": "0016.png", + "rotated": false, + "trimmed": true, + "sourceSize": { "w": 81, "h": 79 }, + "spriteSourceSize": { "x": 0, "y": 0, "w": 80, "h": 79 }, + "frame": { "x": 0, "y": 0, "w": 80, "h": 79 } + } + ]}], + "meta": {"app": "https://www.aseprite.org/","version": "1.3.7-x64" } } diff --git a/public/images/pokemon/exp/back/shiny/1001.png b/public/images/pokemon/exp/back/shiny/1001.png index 6d04c70dbb8..2fd3e5fecd9 100644 Binary files a/public/images/pokemon/exp/back/shiny/1001.png and b/public/images/pokemon/exp/back/shiny/1001.png differ diff --git a/public/images/pokemon/exp/back/shiny/911.png b/public/images/pokemon/exp/back/shiny/911.png index 46b513ba014..948f8a3ae12 100644 Binary files a/public/images/pokemon/exp/back/shiny/911.png and b/public/images/pokemon/exp/back/shiny/911.png differ diff --git a/public/images/pokemon/icons/4/494.png b/public/images/pokemon/icons/5/494.png similarity index 100% rename from public/images/pokemon/icons/4/494.png rename to public/images/pokemon/icons/5/494.png diff --git a/public/images/pokemon/icons/4/494s.png b/public/images/pokemon/icons/5/494s.png similarity index 100% rename from public/images/pokemon/icons/4/494s.png rename to public/images/pokemon/icons/5/494s.png diff --git a/public/images/pokemon/icons/9/1012-artisan.png b/public/images/pokemon/icons/9/1012-artisan.png new file mode 100644 index 00000000000..96a215e47de Binary files /dev/null and b/public/images/pokemon/icons/9/1012-artisan.png differ diff --git a/public/images/pokemon/icons/9/1012s-artisan.png b/public/images/pokemon/icons/9/1012s-artisan.png new file mode 100644 index 00000000000..43d0f32a0c4 Binary files /dev/null and b/public/images/pokemon/icons/9/1012s-artisan.png differ diff --git a/public/images/pokemon/icons/9/1013-masterpiece.png b/public/images/pokemon/icons/9/1013-masterpiece.png new file mode 100644 index 00000000000..7f5ee1fddd1 Binary files /dev/null and b/public/images/pokemon/icons/9/1013-masterpiece.png differ diff --git a/public/images/pokemon/icons/9/1013s-masterpiece.png b/public/images/pokemon/icons/9/1013s-masterpiece.png new file mode 100644 index 00000000000..85edbb60ae0 Binary files /dev/null and b/public/images/pokemon/icons/9/1013s-masterpiece.png differ diff --git a/public/images/pokemon/icons/variant/6/354-mega_2.png b/public/images/pokemon/icons/variant/3/354-mega_2.png similarity index 100% rename from public/images/pokemon/icons/variant/6/354-mega_2.png rename to public/images/pokemon/icons/variant/3/354-mega_2.png diff --git a/public/images/pokemon/icons/variant/6/354-mega_3.png b/public/images/pokemon/icons/variant/3/354-mega_3.png similarity index 100% rename from public/images/pokemon/icons/variant/6/354-mega_3.png rename to public/images/pokemon/icons/variant/3/354-mega_3.png diff --git a/public/images/pokemon/icons/variant/4/494_2.png b/public/images/pokemon/icons/variant/5/494_2.png similarity index 100% rename from public/images/pokemon/icons/variant/4/494_2.png rename to public/images/pokemon/icons/variant/5/494_2.png diff --git a/public/images/pokemon/icons/variant/4/494_3.png b/public/images/pokemon/icons/variant/5/494_3.png similarity index 100% rename from public/images/pokemon/icons/variant/4/494_3.png rename to public/images/pokemon/icons/variant/5/494_3.png diff --git a/public/images/pokemon/icons/variant/6/742_2.png b/public/images/pokemon/icons/variant/7/742_2.png similarity index 100% rename from public/images/pokemon/icons/variant/6/742_2.png rename to public/images/pokemon/icons/variant/7/742_2.png diff --git a/public/images/pokemon/icons/variant/6/742_3.png b/public/images/pokemon/icons/variant/7/742_3.png similarity index 100% rename from public/images/pokemon/icons/variant/6/742_3.png rename to public/images/pokemon/icons/variant/7/742_3.png diff --git a/public/images/pokemon/icons/variant/6/743_2.png b/public/images/pokemon/icons/variant/7/743_2.png similarity index 100% rename from public/images/pokemon/icons/variant/6/743_2.png rename to public/images/pokemon/icons/variant/7/743_2.png diff --git a/public/images/pokemon/icons/variant/6/743_3.png b/public/images/pokemon/icons/variant/7/743_3.png similarity index 100% rename from public/images/pokemon/icons/variant/6/743_3.png rename to public/images/pokemon/icons/variant/7/743_3.png diff --git a/public/images/pokemon/icons/variant/6/777_2.png b/public/images/pokemon/icons/variant/7/777_2.png similarity index 100% rename from public/images/pokemon/icons/variant/6/777_2.png rename to public/images/pokemon/icons/variant/7/777_2.png diff --git a/public/images/pokemon/icons/variant/6/777_3.png b/public/images/pokemon/icons/variant/7/777_3.png similarity index 100% rename from public/images/pokemon/icons/variant/6/777_3.png rename to public/images/pokemon/icons/variant/7/777_3.png diff --git a/public/images/pokemon/icons/variant/7/778-busted_2.png b/public/images/pokemon/icons/variant/7/778-busted_2.png new file mode 100644 index 00000000000..4ee05ae0a64 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/778-busted_2.png differ diff --git a/public/images/pokemon/icons/variant/7/778-busted_3.png b/public/images/pokemon/icons/variant/7/778-busted_3.png new file mode 100644 index 00000000000..a6c987989e1 Binary files /dev/null and b/public/images/pokemon/icons/variant/7/778-busted_3.png differ diff --git a/public/images/pokemon/icons/variant/6/779_2.png b/public/images/pokemon/icons/variant/7/779_2.png similarity index 100% rename from public/images/pokemon/icons/variant/6/779_2.png rename to public/images/pokemon/icons/variant/7/779_2.png diff --git a/public/images/pokemon/icons/variant/6/779_3.png b/public/images/pokemon/icons/variant/7/779_3.png similarity index 100% rename from public/images/pokemon/icons/variant/6/779_3.png rename to public/images/pokemon/icons/variant/7/779_3.png diff --git a/public/images/pokemon_icons_4.json b/public/images/pokemon_icons_4.json index baa804fa2a0..bc32a16f02c 100644 --- a/public/images/pokemon_icons_4.json +++ b/public/images/pokemon_icons_4.json @@ -4,8 +4,8 @@ "image": "pokemon_icons_4.png", "format": "RGBA8888", "size": { - "w": 252, - "h": 663 + "w": 250, + "h": 665 }, "scale": 1, "frames": [ @@ -682,7 +682,7 @@ } }, { - "filename": "399", + "filename": "415", "rotated": false, "trimmed": true, "sourceSize": { @@ -690,16 +690,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 10, - "y": 12, - "w": 20, - "h": 16 + "x": 9, + "y": 9, + "w": 25, + "h": 18 }, "frame": { "x": 0, "y": 647, - "w": 20, - "h": 16 + "w": 25, + "h": 18 } }, { @@ -829,7 +829,7 @@ } }, { - "filename": "438", + "filename": "415s", "rotated": false, "trimmed": true, "sourceSize": { @@ -837,37 +837,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 14, - "y": 8, - "w": 12, - "h": 20 + "x": 9, + "y": 9, + "w": 25, + "h": 18 }, "frame": { - "x": 240, - "y": 23, - "w": 12, - "h": 20 - } - }, - { - "filename": "399s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 12, - "w": 20, - "h": 16 - }, - "frame": { - "x": 20, + "x": 25, "y": 647, - "w": 20, - "h": 16 + "w": 25, + "h": 18 } }, { @@ -1459,7 +1438,7 @@ } }, { - "filename": "462", + "filename": "479-mow", "rotated": false, "trimmed": true, "sourceSize": { @@ -1467,16 +1446,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 26, - "h": 24 + "x": 8, + "y": 5, + "w": 24, + "h": 25 }, "frame": { "x": 226, "y": 94, - "w": 26, - "h": 24 + "w": 24, + "h": 25 } }, { @@ -1501,7 +1480,7 @@ } }, { - "filename": "462s", + "filename": "479s-mow", "rotated": false, "trimmed": true, "sourceSize": { @@ -1509,20 +1488,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 6, - "y": 4, - "w": 26, - "h": 24 + "x": 8, + "y": 5, + "w": 24, + "h": 25 }, "frame": { "x": 226, - "y": 118, - "w": 26, - "h": 24 + "y": 119, + "w": 24, + "h": 25 } }, { - "filename": "482", + "filename": "426", "rotated": false, "trimmed": true, "sourceSize": { @@ -1530,20 +1509,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 10, + "x": 8, "y": 4, - "w": 26, + "w": 24, "h": 24 }, "frame": { "x": 226, - "y": 142, - "w": 26, + "y": 144, + "w": 24, "h": 24 } }, { - "filename": "450", + "filename": "450-f", "rotated": false, "trimmed": true, "sourceSize": { @@ -1563,27 +1542,6 @@ "h": 20 } }, - { - "filename": "482s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 4, - "w": 26, - "h": 24 - }, - "frame": { - "x": 226, - "y": 166, - "w": 26, - "h": 24 - } - }, { "filename": "469", "rotated": false, @@ -1732,7 +1690,7 @@ } }, { - "filename": "411", + "filename": "462", "rotated": false, "trimmed": true, "sourceSize": { @@ -1740,37 +1698,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 7, - "y": 5, + "x": 6, + "y": 4, "w": 26, - "h": 23 + "h": 24 }, "frame": { "x": 172, "y": 150, "w": 26, - "h": 23 - } - }, - { - "filename": "479-wash", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 28, - "h": 22 - }, - "frame": { - "x": 198, - "y": 168, - "w": 28, - "h": 22 + "h": 24 } }, { @@ -2131,7 +2068,7 @@ } }, { - "filename": "411s", + "filename": "411", "rotated": false, "trimmed": true, "sourceSize": { @@ -2215,7 +2152,7 @@ } }, { - "filename": "479-mow", + "filename": "462s", "rotated": false, "trimmed": true, "sourceSize": { @@ -2223,62 +2160,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 24, - "h": 25 + "x": 6, + "y": 4, + "w": 26, + "h": 24 }, "frame": { "x": 56, "y": 353, - "w": 24, - "h": 25 + "w": 26, + "h": 24 } }, { - "filename": "479s-mow", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 24, - "h": 25 - }, - "frame": { - "x": 28, - "y": 454, - "w": 24, - "h": 25 - } - }, - { - "filename": "395s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 3, - "w": 23, - "h": 25 - }, - "frame": { - "x": 28, - "y": 479, - "w": 23, - "h": 25 - } - }, - { - "filename": "398", + "filename": "482", "rotated": false, "trimmed": true, "sourceSize": { @@ -2288,58 +2183,58 @@ "spriteSourceSize": { "x": 10, "y": 4, - "w": 23, - "h": 25 - }, - "frame": { - "x": 28, - "y": 504, - "w": 23, - "h": 25 - } - }, - { - "filename": "398s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 4, - "w": 23, - "h": 25 - }, - "frame": { - "x": 28, - "y": 529, - "w": 23, - "h": 25 - } - }, - { - "filename": "426", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 24, + "w": 26, "h": 24 }, "frame": { "x": 56, - "y": 378, - "w": 24, + "y": 377, + "w": 26, "h": 24 } }, + { + "filename": "482s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 4, + "w": 26, + "h": 24 + }, + "frame": { + "x": 28, + "y": 454, + "w": 26, + "h": 24 + } + }, + { + "filename": "411s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 5, + "w": 26, + "h": 23 + }, + "frame": { + "x": 28, + "y": 478, + "w": 26, + "h": 23 + } + }, { "filename": "455", "rotated": false, @@ -2355,8 +2250,8 @@ "h": 23 }, "frame": { - "x": 53, - "y": 402, + "x": 28, + "y": 501, "w": 27, "h": 23 } @@ -2376,119 +2271,14 @@ "h": 23 }, "frame": { - "x": 53, - "y": 425, + "x": 28, + "y": 524, "w": 27, "h": 23 } }, { - "filename": "426s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 28, - "y": 554, - "w": 24, - "h": 24 - } - }, - { - "filename": "409", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 25, - "h": 23 - }, - "frame": { - "x": 28, - "y": 578, - "w": 25, - "h": 23 - } - }, - { - "filename": "409s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 25, - "h": 23 - }, - "frame": { - "x": 28, - "y": 601, - "w": 25, - "h": 23 - } - }, - { - "filename": "466", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 5, - "w": 26, - "h": 23 - }, - "frame": { - "x": 28, - "y": 624, - "w": 26, - "h": 23 - } - }, - { - "filename": "492-land", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 12, - "w": 18, - "h": 16 - }, - "frame": { - "x": 40, - "y": 647, - "w": 18, - "h": 16 - } - }, - { - "filename": "416", + "filename": "471", "rotated": false, "trimmed": true, "sourceSize": { @@ -2497,15 +2287,78 @@ }, "spriteSourceSize": { "x": 6, - "y": 6, - "w": 26, - "h": 21 + "y": 5, + "w": 27, + "h": 23 }, "frame": { - "x": 172, - "y": 173, - "w": 26, - "h": 21 + "x": 28, + "y": 547, + "w": 27, + "h": 23 + } + }, + { + "filename": "471s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 5, + "w": 27, + "h": 23 + }, + "frame": { + "x": 28, + "y": 570, + "w": 27, + "h": 23 + } + }, + { + "filename": "464", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 27, + "h": 22 + }, + "frame": { + "x": 28, + "y": 593, + "w": 27, + "h": 22 + } + }, + { + "filename": "464s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 27, + "h": 22 + }, + "frame": { + "x": 28, + "y": 615, + "w": 27, + "h": 22 } }, { @@ -2635,7 +2488,7 @@ } }, { - "filename": "471", + "filename": "479-wash", "rotated": false, "trimmed": true, "sourceSize": { @@ -2643,58 +2496,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 27, - "h": 23 - }, - "frame": { - "x": 141, - "y": 218, - "w": 27, - "h": 23 - } - }, - { - "filename": "471s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 27, - "h": 23 - }, - "frame": { - "x": 112, - "y": 262, - "w": 27, - "h": 23 - } - }, - { - "filename": "437", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, + "x": 8, "y": 6, - "w": 27, - "h": 21 + "w": 28, + "h": 22 }, "frame": { - "x": 141, - "y": 241, - "w": 27, - "h": 21 + "x": 170, + "y": 174, + "w": 28, + "h": 22 } }, { @@ -2712,14 +2523,35 @@ "h": 22 }, "frame": { - "x": 139, - "y": 262, + "x": 198, + "y": 168, "w": 28, "h": 22 } }, { - "filename": "464", + "filename": "426s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 4, + "w": 24, + "h": 24 + }, + "frame": { + "x": 226, + "y": 168, + "w": 24, + "h": 24 + } + }, + { + "filename": "466", "rotated": false, "trimmed": true, "sourceSize": { @@ -2728,19 +2560,187 @@ }, "spriteSourceSize": { "x": 7, + "y": 5, + "w": 26, + "h": 23 + }, + "frame": { + "x": 141, + "y": 218, + "w": 26, + "h": 23 + } + }, + { + "filename": "466s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 5, + "w": 26, + "h": 23 + }, + "frame": { + "x": 112, + "y": 262, + "w": 26, + "h": 23 + } + }, + { + "filename": "473", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, "y": 6, "w": 27, "h": 22 }, "frame": { "x": 170, - "y": 194, + "y": 196, "w": 27, "h": 22 } }, { - "filename": "450-f", + "filename": "473s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 27, + "h": 22 + }, + "frame": { + "x": 167, + "y": 218, + "w": 27, + "h": 22 + } + }, + { + "filename": "416", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 26, + "h": 21 + }, + "frame": { + "x": 141, + "y": 241, + "w": 26, + "h": 21 + } + }, + { + "filename": "409", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 5, + "w": 25, + "h": 23 + }, + "frame": { + "x": 138, + "y": 262, + "w": 25, + "h": 23 + } + }, + { + "filename": "428", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 167, + "y": 240, + "w": 26, + "h": 22 + } + }, + { + "filename": "409s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 5, + "w": 25, + "h": 23 + }, + "frame": { + "x": 163, + "y": 262, + "w": 25, + "h": 23 + } + }, + { + "filename": "429", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 2, + "w": 19, + "h": 28 + }, + "frame": { + "x": 50, + "y": 637, + "w": 19, + "h": 28 + } + }, + { + "filename": "450", "rotated": false, "trimmed": true, "sourceSize": { @@ -2761,448 +2761,7 @@ } }, { - "filename": "464s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 27, - "h": 22 - }, - "frame": { - "x": 81, - "y": 308, - "w": 27, - "h": 22 - } - }, - { - "filename": "466s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 5, - "w": 26, - "h": 23 - }, - "frame": { - "x": 81, - "y": 330, - "w": 26, - "h": 23 - } - }, - { - "filename": "473", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 27, - "h": 22 - }, - "frame": { - "x": 80, - "y": 353, - "w": 27, - "h": 22 - } - }, - { - "filename": "473s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 27, - "h": 22 - }, - "frame": { - "x": 80, - "y": 375, - "w": 27, - "h": 22 - } - }, - { - "filename": "428", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 80, - "y": 397, - "w": 26, - "h": 22 - } - }, - { - "filename": "428s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 80, - "y": 419, - "w": 26, - "h": 22 - } - }, - { - "filename": "416s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 26, - "h": 21 - }, - "frame": { - "x": 80, - "y": 441, - "w": 26, - "h": 21 - } - }, - { - "filename": "437s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 27, - "h": 21 - }, - "frame": { - "x": 53, - "y": 448, - "w": 27, - "h": 21 - } - }, - { - "filename": "450s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 28, - "h": 20 - }, - "frame": { - "x": 52, - "y": 469, - "w": 28, - "h": 20 - } - }, - { - "filename": "430", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 80, - "y": 462, - "w": 26, - "h": 22 - } - }, - { - "filename": "430s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 51, - "y": 489, - "w": 26, - "h": 22 - } - }, - { - "filename": "431", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 51, - "y": 511, - "w": 26, - "h": 22 - } - }, - { - "filename": "479-fan", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 26, - "h": 21 - }, - "frame": { - "x": 51, - "y": 533, - "w": 26, - "h": 21 - } - }, - { - "filename": "413-sandy", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 24, - "h": 23 - }, - "frame": { - "x": 52, - "y": 554, - "w": 24, - "h": 23 - } - }, - { - "filename": "429", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 2, - "w": 19, - "h": 28 - }, - "frame": { - "x": 53, - "y": 577, - "w": 19, - "h": 28 - } - }, - { - "filename": "408", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 9, - "w": 21, - "h": 19 - }, - "frame": { - "x": 53, - "y": 605, - "w": 21, - "h": 19 - } - }, - { - "filename": "391", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 22, - "h": 23 - }, - "frame": { - "x": 54, - "y": 624, - "w": 22, - "h": 23 - } - }, - { - "filename": "492s-land", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 12, - "w": 18, - "h": 16 - }, - "frame": { - "x": 58, - "y": 647, - "w": 18, - "h": 16 - } - }, - { - "filename": "429s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 2, - "w": 19, - "h": 28 - }, - "frame": { - "x": 72, - "y": 577, - "w": 19, - "h": 28 - } - }, - { - "filename": "391s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 22, - "h": 23 - }, - "frame": { - "x": 76, - "y": 554, - "w": 22, - "h": 23 - } - }, - { - "filename": "408s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 9, - "w": 21, - "h": 19 - }, - "frame": { - "x": 74, - "y": 605, - "w": 21, - "h": 19 - } - }, - { - "filename": "475", + "filename": "395s", "rotated": false, "trimmed": true, "sourceSize": { @@ -3212,13 +2771,76 @@ "spriteSourceSize": { "x": 10, "y": 3, - "w": 22, + "w": 23, "h": 25 }, "frame": { - "x": 76, - "y": 624, - "w": 22, + "x": 81, + "y": 308, + "w": 23, + "h": 25 + } + }, + { + "filename": "414", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 7, + "w": 25, + "h": 20 + }, + "frame": { + "x": 81, + "y": 333, + "w": 25, + "h": 20 + } + }, + { + "filename": "398", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 4, + "w": 23, + "h": 25 + }, + "frame": { + "x": 82, + "y": 353, + "w": 23, + "h": 25 + } + }, + { + "filename": "398s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 4, + "w": 23, + "h": 25 + }, + "frame": { + "x": 82, + "y": 378, + "w": 23, "h": 25 } }, @@ -3244,7 +2866,7 @@ } }, { - "filename": "431s", + "filename": "413-sandy", "rotated": false, "trimmed": true, "sourceSize": { @@ -3252,15 +2874,57 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 26, - "h": 22 + "x": 9, + "y": 5, + "w": 24, + "h": 23 }, "frame": { "x": 226, - "y": 190, - "w": 26, + "y": 192, + "w": 24, + "h": 23 + } + }, + { + "filename": "450s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 28, + "h": 20 + }, + "frame": { + "x": 197, + "y": 210, + "w": 28, + "h": 20 + } + }, + { + "filename": "467", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 225, + "y": 215, + "w": 25, "h": 22 } }, @@ -3279,159 +2943,12 @@ "h": 19 }, "frame": { - "x": 197, - "y": 210, + "x": 194, + "y": 230, "w": 28, "h": 19 } }, - { - "filename": "434", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 9, - "w": 26, - "h": 19 - }, - "frame": { - "x": 225, - "y": 212, - "w": 26, - "h": 19 - } - }, - { - "filename": "475s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 3, - "w": 22, - "h": 25 - }, - "frame": { - "x": 91, - "y": 577, - "w": 22, - "h": 25 - } - }, - { - "filename": "387s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 6, - "w": 18, - "h": 22 - }, - "frame": { - "x": 95, - "y": 602, - "w": 18, - "h": 22 - } - }, - { - "filename": "402", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 4, - "w": 20, - "h": 24 - }, - "frame": { - "x": 98, - "y": 624, - "w": 20, - "h": 24 - } - }, - { - "filename": "434s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 9, - "w": 26, - "h": 19 - }, - "frame": { - "x": 80, - "y": 484, - "w": 26, - "h": 19 - } - }, - { - "filename": "480", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 77, - "y": 503, - "w": 26, - "h": 22 - } - }, - { - "filename": "480s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 77, - "y": 525, - "w": 26, - "h": 22 - } - }, { "filename": "468s", "rotated": false, @@ -3447,14 +2964,77 @@ "h": 19 }, "frame": { - "x": 112, - "y": 285, + "x": 222, + "y": 237, "w": 28, "h": 19 } }, { - "filename": "479s-fan", + "filename": "437", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 27, + "h": 21 + }, + "frame": { + "x": 193, + "y": 249, + "w": 27, + "h": 21 + } + }, + { + "filename": "437s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 27, + "h": 21 + }, + "frame": { + "x": 220, + "y": 256, + "w": 27, + "h": 21 + } + }, + { + "filename": "416s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 26, + "h": 21 + }, + "frame": { + "x": 188, + "y": 270, + "w": 26, + "h": 21 + } + }, + { + "filename": "428s", "rotated": false, "trimmed": true, "sourceSize": { @@ -3463,19 +3043,19 @@ }, "spriteSourceSize": { "x": 8, - "y": 7, + "y": 6, "w": 26, - "h": 21 + "h": 22 }, "frame": { - "x": 140, - "y": 284, + "x": 214, + "y": 277, "w": 26, - "h": 21 + "h": 22 } }, { - "filename": "414", + "filename": "475", "rotated": false, "trimmed": true, "sourceSize": { @@ -3484,57 +3064,15 @@ }, "spriteSourceSize": { "x": 10, - "y": 7, - "w": 25, - "h": 20 + "y": 3, + "w": 22, + "h": 25 }, "frame": { - "x": 111, - "y": 304, - "w": 25, - "h": 20 - } - }, - { - "filename": "414s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 7, - "w": 25, - "h": 20 - }, - "frame": { - "x": 136, - "y": 305, - "w": 25, - "h": 20 - } - }, - { - "filename": "415", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 9, - "w": 25, - "h": 18 - }, - "frame": { - "x": 108, - "y": 324, - "w": 25, - "h": 18 + "x": 104, + "y": 308, + "w": 22, + "h": 25 } }, { @@ -3552,12 +3090,243 @@ "h": 23 }, "frame": { - "x": 107, - "y": 342, + "x": 112, + "y": 285, "w": 24, "h": 23 } }, + { + "filename": "430", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 136, + "y": 285, + "w": 26, + "h": 22 + } + }, + { + "filename": "430s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 162, + "y": 285, + "w": 26, + "h": 22 + } + }, + { + "filename": "431", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 188, + "y": 291, + "w": 26, + "h": 22 + } + }, + { + "filename": "388", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 7, + "w": 22, + "h": 21 + }, + "frame": { + "x": 106, + "y": 333, + "w": 22, + "h": 21 + } + }, + { + "filename": "429s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 2, + "w": 19, + "h": 28 + }, + "frame": { + "x": 105, + "y": 354, + "w": 19, + "h": 28 + } + }, + { + "filename": "388s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 7, + "w": 22, + "h": 21 + }, + "frame": { + "x": 105, + "y": 382, + "w": 22, + "h": 21 + } + }, + { + "filename": "431s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 214, + "y": 299, + "w": 26, + "h": 22 + } + }, + { + "filename": "475s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 3, + "w": 22, + "h": 25 + }, + "frame": { + "x": 126, + "y": 308, + "w": 22, + "h": 25 + } + }, + { + "filename": "480", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 148, + "y": 307, + "w": 26, + "h": 22 + } + }, + { + "filename": "391", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 22, + "h": 23 + }, + "frame": { + "x": 128, + "y": 333, + "w": 22, + "h": 23 + } + }, + { + "filename": "480s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 124, + "y": 356, + "w": 26, + "h": 22 + } + }, { "filename": "476", "rotated": false, @@ -3573,138 +3342,12 @@ "h": 23 }, "frame": { - "x": 107, - "y": 365, + "x": 150, + "y": 329, "w": 24, "h": 23 } }, - { - "filename": "415s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 9, - "w": 25, - "h": 18 - }, - "frame": { - "x": 133, - "y": 325, - "w": 25, - "h": 18 - } - }, - { - "filename": "467", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 131, - "y": 343, - "w": 25, - "h": 22 - } - }, - { - "filename": "467s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 131, - "y": 365, - "w": 25, - "h": 22 - } - }, - { - "filename": "403", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 7, - "w": 24, - "h": 21 - }, - "frame": { - "x": 107, - "y": 388, - "w": 24, - "h": 21 - } - }, - { - "filename": "470", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 131, - "y": 387, - "w": 25, - "h": 22 - } - }, - { - "filename": "470s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 106, - "y": 409, - "w": 25, - "h": 22 - } - }, { "filename": "476s", "rotated": false, @@ -3720,8 +3363,8 @@ "h": 23 }, "frame": { - "x": 106, - "y": 431, + "x": 150, + "y": 352, "w": 24, "h": 23 } @@ -3741,8 +3384,8 @@ "h": 23 }, "frame": { - "x": 106, - "y": 454, + "x": 127, + "y": 378, "w": 23, "h": 23 } @@ -3762,12 +3405,222 @@ "h": 23 }, "frame": { - "x": 106, - "y": 477, + "x": 150, + "y": 375, "w": 23, "h": 23 } }, + { + "filename": "439", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 14, + "h": 21 + }, + "frame": { + "x": 174, + "y": 307, + "w": 14, + "h": 21 + } + }, + { + "filename": "434", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 9, + "w": 26, + "h": 19 + }, + "frame": { + "x": 188, + "y": 313, + "w": 26, + "h": 19 + } + }, + { + "filename": "439s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 14, + "h": 21 + }, + "frame": { + "x": 174, + "y": 328, + "w": 14, + "h": 21 + } + }, + { + "filename": "434s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 9, + "w": 26, + "h": 19 + }, + "frame": { + "x": 188, + "y": 332, + "w": 26, + "h": 19 + } + }, + { + "filename": "467s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 214, + "y": 321, + "w": 25, + "h": 22 + } + }, + { + "filename": "440", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 9, + "w": 14, + "h": 19 + }, + "frame": { + "x": 174, + "y": 349, + "w": 14, + "h": 19 + } + }, + { + "filename": "479-fan", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 26, + "h": 21 + }, + "frame": { + "x": 188, + "y": 351, + "w": 26, + "h": 21 + } + }, + { + "filename": "470", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 214, + "y": 343, + "w": 25, + "h": 22 + } + }, + { + "filename": "414s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 7, + "w": 25, + "h": 20 + }, + "frame": { + "x": 214, + "y": 365, + "w": 25, + "h": 20 + } + }, + { + "filename": "479s-fan", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 26, + "h": 21 + }, + "frame": { + "x": 56, + "y": 401, + "w": 26, + "h": 21 + } + }, { "filename": "419", "rotated": false, @@ -3783,14 +3636,14 @@ "h": 21 }, "frame": { - "x": 131, - "y": 409, + "x": 82, + "y": 403, "w": 25, "h": 21 } }, { - "filename": "402s", + "filename": "470s", "rotated": false, "trimmed": true, "sourceSize": { @@ -3798,20 +3651,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 10, - "y": 4, - "w": 20, - "h": 24 + "x": 8, + "y": 6, + "w": 25, + "h": 22 }, "frame": { - "x": 103, - "y": 503, - "w": 20, - "h": 24 + "x": 53, + "y": 422, + "w": 25, + "h": 22 } }, { - "filename": "388", + "filename": "391s", "rotated": false, "trimmed": true, "sourceSize": { @@ -3820,141 +3673,15 @@ }, "spriteSourceSize": { "x": 9, - "y": 7, - "w": 22, - "h": 21 - }, - "frame": { - "x": 103, - "y": 527, - "w": 22, - "h": 21 - } - }, - { - "filename": "419s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 7, - "w": 25, - "h": 21 - }, - "frame": { - "x": 98, - "y": 548, - "w": 25, - "h": 21 - } - }, - { - "filename": "448-mega", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 4, - "w": 19, - "h": 24 - }, - "frame": { - "x": 123, - "y": 500, - "w": 19, - "h": 24 - } - }, - { - "filename": "448s-mega", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 4, - "w": 19, - "h": 24 - }, - "frame": { - "x": 125, - "y": 524, - "w": 19, - "h": 24 - } - }, - { - "filename": "388s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 7, - "w": 22, - "h": 21 - }, - "frame": { - "x": 123, - "y": 548, - "w": 22, - "h": 21 - } - }, - { - "filename": "451", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, "y": 6, - "w": 24, - "h": 22 + "w": 22, + "h": 23 }, "frame": { - "x": 113, - "y": 569, - "w": 24, - "h": 22 - } - }, - { - "filename": "451s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 24, - "h": 22 - }, - "frame": { - "x": 113, - "y": 591, - "w": 24, - "h": 22 + "x": 107, + "y": 403, + "w": 22, + "h": 23 } }, { @@ -3972,8 +3699,8 @@ "h": 23 }, "frame": { - "x": 137, - "y": 569, + "x": 129, + "y": 401, "w": 22, "h": 23 } @@ -3993,14 +3720,14 @@ "h": 23 }, "frame": { - "x": 137, - "y": 592, + "x": 151, + "y": 398, "w": 22, "h": 23 } }, { - "filename": "390", + "filename": "419s", "rotated": false, "trimmed": true, "sourceSize": { @@ -4008,20 +3735,62 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, + "x": 10, + "y": 7, + "w": 25, + "h": 21 + }, + "frame": { + "x": 78, + "y": 424, + "w": 25, + "h": 21 + } + }, + { + "filename": "403", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 7, + "w": 24, + "h": 21 + }, + "frame": { + "x": 103, + "y": 426, + "w": 24, + "h": 21 + } + }, + { + "filename": "451", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, "y": 6, - "w": 19, + "w": 24, "h": 22 }, "frame": { - "x": 118, - "y": 613, - "w": 19, + "x": 54, + "y": 444, + "w": 24, "h": 22 } }, { - "filename": "400", + "filename": "451s", "rotated": false, "trimmed": true, "sourceSize": { @@ -4029,57 +3798,15 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, + "x": 7, "y": 6, - "w": 22, + "w": 24, "h": 22 }, "frame": { - "x": 137, - "y": 615, - "w": 22, - "h": 22 - } - }, - { - "filename": "390s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 6, - "w": 19, - "h": 22 - }, - "frame": { - "x": 118, - "y": 635, - "w": 19, - "h": 22 - } - }, - { - "filename": "400s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 6, - "w": 22, - "h": 22 - }, - "frame": { - "x": 137, - "y": 637, - "w": 22, + "x": 54, + "y": 466, + "w": 24, "h": 22 } }, @@ -4098,159 +3825,12 @@ "h": 21 }, "frame": { - "x": 170, - "y": 216, + "x": 78, + "y": 445, "w": 24, "h": 21 } }, - { - "filename": "413-plant", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 22, - "h": 23 - }, - "frame": { - "x": 168, - "y": 237, - "w": 22, - "h": 23 - } - }, - { - "filename": "449", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 10, - "w": 24, - "h": 18 - }, - "frame": { - "x": 194, - "y": 229, - "w": 24, - "h": 18 - } - }, - { - "filename": "449-f", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 10, - "w": 24, - "h": 18 - }, - "frame": { - "x": 218, - "y": 231, - "w": 24, - "h": 18 - } - }, - { - "filename": "449s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 10, - "w": 24, - "h": 18 - }, - "frame": { - "x": 190, - "y": 247, - "w": 24, - "h": 18 - } - }, - { - "filename": "449s-f", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 10, - "w": 24, - "h": 18 - }, - "frame": { - "x": 214, - "y": 249, - "w": 24, - "h": 18 - } - }, - { - "filename": "439", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 14, - "h": 21 - }, - "frame": { - "x": 238, - "y": 249, - "w": 14, - "h": 21 - } - }, - { - "filename": "413s-plant", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 22, - "h": 23 - }, - "frame": { - "x": 168, - "y": 260, - "w": 22, - "h": 23 - } - }, { "filename": "423-east", "rotated": false, @@ -4266,8 +3846,8 @@ "h": 22 }, "frame": { - "x": 190, - "y": 265, + "x": 78, + "y": 466, "w": 23, "h": 22 } @@ -4287,33 +3867,12 @@ "h": 22 }, "frame": { - "x": 213, - "y": 267, + "x": 102, + "y": 447, "w": 23, "h": 22 } }, - { - "filename": "412-trash", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 5, - "w": 16, - "h": 23 - }, - "frame": { - "x": 236, - "y": 270, - "w": 16, - "h": 23 - } - }, { "filename": "423s-east", "rotated": false, @@ -4329,14 +3888,14 @@ "h": 22 }, "frame": { - "x": 167, - "y": 283, + "x": 101, + "y": 469, "w": 23, "h": 22 } }, { - "filename": "423s-west", + "filename": "413-plant", "rotated": false, "trimmed": true, "sourceSize": { @@ -4344,62 +3903,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 190, - "y": 287, - "w": 23, - "h": 22 - } - }, - { - "filename": "432", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 23, - "h": 21 - }, - "frame": { - "x": 213, - "y": 289, - "w": 23, - "h": 21 - } - }, - { - "filename": "412s-trash", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, + "x": 9, "y": 5, - "w": 16, + "w": 22, "h": 23 }, "frame": { - "x": 236, - "y": 293, - "w": 16, + "x": 55, + "y": 488, + "w": 22, "h": 23 } }, { - "filename": "432s", + "filename": "413s-plant", "rotated": false, "trimmed": true, "sourceSize": { @@ -4407,37 +3924,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 23, - "h": 21 + "x": 9, + "y": 5, + "w": 22, + "h": 23 }, "frame": { - "x": 161, - "y": 305, - "w": 23, - "h": 21 - } - }, - { - "filename": "433", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 23, - "h": 19 - }, - "frame": { - "x": 158, - "y": 326, - "w": 23, - "h": 19 + "x": 77, + "y": 488, + "w": 22, + "h": 23 } }, { @@ -4455,8 +3951,8 @@ "h": 23 }, "frame": { - "x": 156, - "y": 345, + "x": 55, + "y": 511, "w": 22, "h": 23 } @@ -4476,12 +3972,33 @@ "h": 23 }, "frame": { - "x": 156, - "y": 368, + "x": 77, + "y": 511, "w": 22, "h": 23 } }, + { + "filename": "423s-west", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 23, + "h": 22 + }, + "frame": { + "x": 55, + "y": 534, + "w": 23, + "h": 22 + } + }, { "filename": "457", "rotated": false, @@ -4497,75 +4014,12 @@ "h": 23 }, "frame": { - "x": 156, - "y": 391, + "x": 55, + "y": 556, "w": 22, "h": 23 } }, - { - "filename": "433s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 23, - "h": 19 - }, - "frame": { - "x": 156, - "y": 414, - "w": 23, - "h": 19 - } - }, - { - "filename": "444", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 23, - "h": 21 - }, - "frame": { - "x": 184, - "y": 309, - "w": 23, - "h": 21 - } - }, - { - "filename": "444s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 23, - "h": 21 - }, - "frame": { - "x": 207, - "y": 310, - "w": 23, - "h": 21 - } - }, { "filename": "457s", "rotated": false, @@ -4581,33 +4035,12 @@ "h": 23 }, "frame": { - "x": 230, - "y": 316, + "x": 55, + "y": 579, "w": 22, "h": 23 } }, - { - "filename": "489", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 11, - "w": 23, - "h": 17 - }, - "frame": { - "x": 181, - "y": 330, - "w": 23, - "h": 17 - } - }, { "filename": "463", "rotated": false, @@ -4623,12 +4056,33 @@ "h": 23 }, "frame": { - "x": 178, - "y": 347, + "x": 55, + "y": 602, "w": 22, "h": 23 } }, + { + "filename": "400", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 6, + "w": 22, + "h": 22 + }, + "frame": { + "x": 78, + "y": 534, + "w": 22, + "h": 22 + } + }, { "filename": "463s", "rotated": false, @@ -4644,14 +4098,77 @@ "h": 23 }, "frame": { - "x": 178, - "y": 370, + "x": 77, + "y": 556, "w": 22, "h": 23 } }, { - "filename": "474", + "filename": "400s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 6, + "w": 22, + "h": 22 + }, + "frame": { + "x": 77, + "y": 579, + "w": 22, + "h": 22 + } + }, + { + "filename": "402", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 4, + "w": 20, + "h": 24 + }, + "frame": { + "x": 77, + "y": 601, + "w": 20, + "h": 24 + } + }, + { + "filename": "402s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 4, + "w": 20, + "h": 24 + }, + "frame": { + "x": 99, + "y": 491, + "w": 20, + "h": 24 + } + }, + { + "filename": "408", "rotated": false, "trimmed": true, "sourceSize": { @@ -4660,15 +4177,15 @@ }, "spriteSourceSize": { "x": 9, - "y": 6, + "y": 9, "w": 21, - "h": 21 + "h": 19 }, "frame": { - "x": 178, - "y": 393, + "x": 99, + "y": 515, "w": 21, - "h": 21 + "h": 19 } }, { @@ -4686,33 +4203,12 @@ "h": 22 }, "frame": { - "x": 179, - "y": 414, + "x": 100, + "y": 534, "w": 20, "h": 22 } }, - { - "filename": "489s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 11, - "w": 23, - "h": 17 - }, - "frame": { - "x": 204, - "y": 331, - "w": 23, - "h": 17 - } - }, { "filename": "460", "rotated": false, @@ -4728,8 +4224,8 @@ "h": 23 }, "frame": { - "x": 200, - "y": 348, + "x": 99, + "y": 556, "w": 21, "h": 23 } @@ -4749,12 +4245,117 @@ "h": 22 }, "frame": { - "x": 200, - "y": 371, + "x": 99, + "y": 579, "w": 21, "h": 22 } }, + { + "filename": "432", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 23, + "h": 21 + }, + "frame": { + "x": 97, + "y": 601, + "w": 23, + "h": 21 + } + }, + { + "filename": "432s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 23, + "h": 21 + }, + "frame": { + "x": 69, + "y": 625, + "w": 23, + "h": 21 + } + }, + { + "filename": "433", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 23, + "h": 19 + }, + "frame": { + "x": 69, + "y": 646, + "w": 23, + "h": 19 + } + }, + { + "filename": "448-mega", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 4, + "w": 19, + "h": 24 + }, + "frame": { + "x": 119, + "y": 491, + "w": 19, + "h": 24 + } + }, + { + "filename": "448s-mega", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 4, + "w": 19, + "h": 24 + }, + "frame": { + "x": 120, + "y": 515, + "w": 19, + "h": 24 + } + }, { "filename": "460s", "rotated": false, @@ -4770,285 +4371,12 @@ "h": 23 }, "frame": { - "x": 199, - "y": 393, + "x": 120, + "y": 539, "w": 21, "h": 23 } }, - { - "filename": "418", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 21, - "h": 20 - }, - "frame": { - "x": 199, - "y": 416, - "w": 21, - "h": 20 - } - }, - { - "filename": "412-sandy", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 5, - "w": 15, - "h": 23 - }, - "frame": { - "x": 221, - "y": 348, - "w": 15, - "h": 23 - } - }, - { - "filename": "478", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 16, - "h": 22 - }, - "frame": { - "x": 236, - "y": 339, - "w": 16, - "h": 22 - } - }, - { - "filename": "478s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 16, - "h": 22 - }, - "frame": { - "x": 236, - "y": 361, - "w": 16, - "h": 22 - } - }, - { - "filename": "412s-sandy", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 5, - "w": 15, - "h": 23 - }, - "frame": { - "x": 221, - "y": 371, - "w": 15, - "h": 23 - } - }, - { - "filename": "448", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 7, - "w": 16, - "h": 21 - }, - "frame": { - "x": 236, - "y": 383, - "w": 16, - "h": 21 - } - }, - { - "filename": "448s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 7, - "w": 16, - "h": 21 - }, - "frame": { - "x": 220, - "y": 394, - "w": 16, - "h": 21 - } - }, - { - "filename": "421-overcast", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 8, - "w": 16, - "h": 20 - }, - "frame": { - "x": 236, - "y": 404, - "w": 16, - "h": 20 - } - }, - { - "filename": "421s-overcast", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 8, - "w": 16, - "h": 20 - }, - "frame": { - "x": 220, - "y": 415, - "w": 16, - "h": 20 - } - }, - { - "filename": "425", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 15, - "h": 22 - }, - "frame": { - "x": 236, - "y": 424, - "w": 15, - "h": 22 - } - }, - { - "filename": "394", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 6, - "w": 17, - "h": 22 - }, - "frame": { - "x": 129, - "y": 454, - "w": 17, - "h": 22 - } - }, - { - "filename": "394s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 6, - "w": 17, - "h": 22 - }, - "frame": { - "x": 129, - "y": 476, - "w": 17, - "h": 22 - } - }, - { - "filename": "421-sunshine", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 7, - "w": 20, - "h": 21 - }, - "frame": { - "x": 130, - "y": 433, - "w": 20, - "h": 21 - } - }, { "filename": "454s", "rotated": false, @@ -5064,8 +4392,8 @@ "h": 22 }, "frame": { - "x": 150, - "y": 433, + "x": 120, + "y": 562, "w": 21, "h": 22 } @@ -5085,14 +4413,77 @@ "h": 22 }, "frame": { - "x": 146, - "y": 455, + "x": 120, + "y": 584, "w": 21, "h": 22 } }, { - "filename": "474s", + "filename": "387s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 124, + "y": 469, + "w": 18, + "h": 22 + } + }, + { + "filename": "390", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 6, + "w": 19, + "h": 22 + }, + "frame": { + "x": 125, + "y": 447, + "w": 19, + "h": 22 + } + }, + { + "filename": "421-sunshine", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 7, + "w": 20, + "h": 21 + }, + "frame": { + "x": 127, + "y": 426, + "w": 20, + "h": 21 + } + }, + { + "filename": "408s", "rotated": false, "trimmed": true, "sourceSize": { @@ -5101,19 +4492,19 @@ }, "spriteSourceSize": { "x": 9, - "y": 6, + "y": 9, "w": 21, - "h": 21 + "h": 19 }, "frame": { - "x": 146, - "y": 477, + "x": 120, + "y": 606, "w": 21, - "h": 21 + "h": 19 } }, { - "filename": "492s-sky", + "filename": "433s", "rotated": false, "trimmed": true, "sourceSize": { @@ -5121,20 +4512,41 @@ "h": 30 }, "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 21, - "h": 22 + "x": 12, + "y": 9, + "w": 23, + "h": 19 }, "frame": { - "x": 142, - "y": 498, - "w": 21, - "h": 22 + "x": 97, + "y": 622, + "w": 23, + "h": 19 } }, { - "filename": "407s", + "filename": "444", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 23, + "h": 21 + }, + "frame": { + "x": 92, + "y": 641, + "w": 23, + "h": 21 + } + }, + { + "filename": "418", "rotated": false, "trimmed": true, "sourceSize": { @@ -5143,36 +4555,15 @@ }, "spriteSourceSize": { "x": 10, - "y": 6, - "w": 20, - "h": 22 + "y": 8, + "w": 21, + "h": 20 }, "frame": { - "x": 144, - "y": 520, - "w": 20, - "h": 22 - } - }, - { - "filename": "441", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 20, - "h": 22 - }, - "frame": { - "x": 145, - "y": 542, - "w": 20, - "h": 22 + "x": 120, + "y": 625, + "w": 21, + "h": 20 } }, { @@ -5190,8 +4581,8 @@ "h": 20 }, "frame": { - "x": 171, - "y": 436, + "x": 115, + "y": 645, "w": 22, "h": 20 } @@ -5211,14 +4602,14 @@ "h": 20 }, "frame": { - "x": 193, - "y": 436, + "x": 137, + "y": 645, "w": 22, "h": 20 } }, { - "filename": "441s", + "filename": "412-sandy", "rotated": false, "trimmed": true, "sourceSize": { @@ -5226,104 +4617,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 20, - "h": 22 + "x": 13, + "y": 5, + "w": 15, + "h": 23 }, "frame": { - "x": 167, - "y": 456, - "w": 20, - "h": 22 + "x": 138, + "y": 491, + "w": 15, + "h": 23 } }, { - "filename": "418s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 21, - "h": 20 - }, - "frame": { - "x": 187, - "y": 456, - "w": 21, - "h": 20 - } - }, - { - "filename": "410", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 20, - "h": 20 - }, - "frame": { - "x": 167, - "y": 478, - "w": 20, - "h": 20 - } - }, - { - "filename": "461", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 19, - "h": 22 - }, - "frame": { - "x": 163, - "y": 498, - "w": 19, - "h": 22 - } - }, - { - "filename": "421s-sunshine", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 7, - "w": 20, - "h": 21 - }, - "frame": { - "x": 187, - "y": 476, - "w": 20, - "h": 21 - } - }, - { - "filename": "427", + "filename": "412-trash", "rotated": false, "trimmed": true, "sourceSize": { @@ -5332,14 +4639,119 @@ }, "spriteSourceSize": { "x": 12, + "y": 5, + "w": 16, + "h": 23 + }, + "frame": { + "x": 139, + "y": 514, + "w": 16, + "h": 23 + } + }, + { + "filename": "390s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, "y": 6, - "w": 18, + "w": 19, "h": 22 }, "frame": { - "x": 164, - "y": 520, - "w": 18, + "x": 142, + "y": 469, + "w": 19, + "h": 22 + } + }, + { + "filename": "394", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 6, + "w": 17, + "h": 22 + }, + "frame": { + "x": 144, + "y": 447, + "w": 17, + "h": 22 + } + }, + { + "filename": "412s-sandy", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 5, + "w": 15, + "h": 23 + }, + "frame": { + "x": 147, + "y": 424, + "w": 15, + "h": 23 + } + }, + { + "filename": "412s-trash", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 5, + "w": 16, + "h": 23 + }, + "frame": { + "x": 141, + "y": 537, + "w": 16, + "h": 23 + } + }, + { + "filename": "394s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 6, + "w": 17, + "h": 22 + }, + "frame": { + "x": 141, + "y": 560, + "w": 17, "h": 22 } }, @@ -5358,138 +4770,12 @@ "h": 22 }, "frame": { - "x": 165, - "y": 542, + "x": 141, + "y": 582, "w": 17, "h": 22 } }, - { - "filename": "442", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 21, - "h": 20 - }, - "frame": { - "x": 159, - "y": 564, - "w": 21, - "h": 20 - } - }, - { - "filename": "442s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 21, - "h": 20 - }, - "frame": { - "x": 159, - "y": 584, - "w": 21, - "h": 20 - } - }, - { - "filename": "459", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 21, - "h": 20 - }, - "frame": { - "x": 159, - "y": 604, - "w": 21, - "h": 20 - } - }, - { - "filename": "459s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 21, - "h": 20 - }, - "frame": { - "x": 159, - "y": 624, - "w": 21, - "h": 20 - } - }, - { - "filename": "443", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 9, - "w": 19, - "h": 19 - }, - "frame": { - "x": 159, - "y": 644, - "w": 19, - "h": 19 - } - }, - { - "filename": "443s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 9, - "w": 19, - "h": 19 - }, - "frame": { - "x": 178, - "y": 644, - "w": 19, - "h": 19 - } - }, { "filename": "401s", "rotated": false, @@ -5505,14 +4791,35 @@ "h": 22 }, "frame": { - "x": 208, - "y": 456, + "x": 141, + "y": 604, "w": 17, "h": 22 } }, { - "filename": "410s", + "filename": "443", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 9, + "w": 19, + "h": 19 + }, + "frame": { + "x": 141, + "y": 626, + "w": 19, + "h": 19 + } + }, + { + "filename": "418s", "rotated": false, "trimmed": true, "sourceSize": { @@ -5522,18 +4829,18 @@ "spriteSourceSize": { "x": 10, "y": 8, - "w": 20, + "w": 21, "h": 20 }, "frame": { - "x": 207, - "y": 478, - "w": 20, + "x": 159, + "y": 645, + "w": 21, "h": 20 } }, { - "filename": "422-east", + "filename": "407s", "rotated": false, "trimmed": true, "sourceSize": { @@ -5541,20 +4848,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, - "y": 8, - "w": 19, - "h": 20 + "x": 10, + "y": 6, + "w": 20, + "h": 22 }, "frame": { - "x": 215, - "y": 436, - "w": 19, - "h": 20 + "x": 153, + "y": 491, + "w": 20, + "h": 22 } }, { - "filename": "427s", + "filename": "427", "rotated": false, "trimmed": true, "sourceSize": { @@ -5568,8 +4875,8 @@ "h": 22 }, "frame": { - "x": 234, - "y": 446, + "x": 155, + "y": 513, "w": 18, "h": 22 } @@ -5589,8 +4896,8 @@ "h": 22 }, "frame": { - "x": 182, - "y": 498, + "x": 157, + "y": 535, "w": 17, "h": 22 } @@ -5610,14 +4917,35 @@ "h": 22 }, "frame": { - "x": 182, - "y": 520, + "x": 158, + "y": 557, "w": 17, "h": 22 } }, { - "filename": "461s", + "filename": "427s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 158, + "y": 579, + "w": 18, + "h": 22 + } + }, + { + "filename": "441", "rotated": false, "trimmed": true, "sourceSize": { @@ -5627,18 +4955,18 @@ "spriteSourceSize": { "x": 10, "y": 6, - "w": 19, + "w": 20, "h": 22 }, "frame": { - "x": 182, - "y": 542, - "w": 19, + "x": 158, + "y": 601, + "w": 20, "h": 22 } }, { - "filename": "494", + "filename": "441s", "rotated": false, "trimmed": true, "sourceSize": { @@ -5646,62 +4974,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, + "x": 10, "y": 6, - "w": 18, + "w": 20, "h": 22 }, "frame": { - "x": 180, - "y": 564, - "w": 18, + "x": 160, + "y": 623, + "w": 20, "h": 22 } }, { - "filename": "494s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 6, - "w": 18, - "h": 22 - }, - "frame": { - "x": 180, - "y": 586, - "w": 18, - "h": 22 - } - }, - { - "filename": "422s-east", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 180, - "y": 608, - "w": 19, - "h": 20 - } - }, - { - "filename": "436", + "filename": "425", "rotated": false, "trimmed": true, "sourceSize": { @@ -5710,19 +4996,19 @@ }, "spriteSourceSize": { "x": 13, - "y": 12, - "w": 13, - "h": 16 + "y": 7, + "w": 15, + "h": 22 }, "frame": { - "x": 180, - "y": 628, - "w": 13, - "h": 16 + "x": 162, + "y": 421, + "w": 15, + "h": 22 } }, { - "filename": "456", + "filename": "440s", "rotated": false, "trimmed": true, "sourceSize": { @@ -5730,20 +5016,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, + "x": 13, "y": 9, - "w": 20, - "h": 18 + "w": 14, + "h": 19 }, "frame": { - "x": 199, - "y": 498, - "w": 20, - "h": 18 + "x": 174, + "y": 368, + "w": 14, + "h": 19 } }, { - "filename": "456s", + "filename": "449-f", "rotated": false, "trimmed": true, "sourceSize": { @@ -5751,15 +5037,15 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, - "y": 9, - "w": 20, + "x": 8, + "y": 10, + "w": 24, "h": 18 }, "frame": { - "x": 199, - "y": 516, - "w": 20, + "x": 188, + "y": 372, + "w": 24, "h": 18 } }, @@ -5778,12 +5064,369 @@ "h": 22 }, "frame": { - "x": 219, - "y": 498, + "x": 173, + "y": 387, "w": 15, "h": 22 } }, + { + "filename": "444s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 23, + "h": 21 + }, + "frame": { + "x": 188, + "y": 390, + "w": 23, + "h": 21 + } + }, + { + "filename": "449", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 10, + "w": 24, + "h": 18 + }, + "frame": { + "x": 212, + "y": 385, + "w": 24, + "h": 18 + } + }, + { + "filename": "446", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 9, + "w": 14, + "h": 19 + }, + "frame": { + "x": 236, + "y": 385, + "w": 14, + "h": 19 + } + }, + { + "filename": "449s-f", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 10, + "w": 24, + "h": 18 + }, + "frame": { + "x": 211, + "y": 403, + "w": 24, + "h": 18 + } + }, + { + "filename": "446s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 9, + "w": 14, + "h": 19 + }, + "frame": { + "x": 235, + "y": 404, + "w": 14, + "h": 19 + } + }, + { + "filename": "461", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 19, + "h": 22 + }, + "frame": { + "x": 161, + "y": 447, + "w": 19, + "h": 22 + } + }, + { + "filename": "461s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 19, + "h": 22 + }, + "frame": { + "x": 161, + "y": 469, + "w": 19, + "h": 22 + } + }, + { + "filename": "478", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 16, + "h": 22 + }, + "frame": { + "x": 173, + "y": 491, + "w": 16, + "h": 22 + } + }, + { + "filename": "478s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 16, + "h": 22 + }, + "frame": { + "x": 173, + "y": 513, + "w": 16, + "h": 22 + } + }, + { + "filename": "492s-sky", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 21, + "h": 22 + }, + "frame": { + "x": 174, + "y": 535, + "w": 21, + "h": 22 + } + }, + { + "filename": "421s-sunshine", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 7, + "w": 20, + "h": 21 + }, + "frame": { + "x": 175, + "y": 557, + "w": 20, + "h": 21 + } + }, + { + "filename": "474", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 21, + "h": 21 + }, + "frame": { + "x": 176, + "y": 578, + "w": 21, + "h": 21 + } + }, + { + "filename": "474s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 21, + "h": 21 + }, + "frame": { + "x": 178, + "y": 599, + "w": 21, + "h": 21 + } + }, + { + "filename": "410", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 20, + "h": 20 + }, + "frame": { + "x": 180, + "y": 620, + "w": 20, + "h": 20 + } + }, + { + "filename": "410s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 20, + "h": 20 + }, + "frame": { + "x": 180, + "y": 640, + "w": 20, + "h": 20 + } + }, + { + "filename": "421-overcast", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 8, + "w": 16, + "h": 20 + }, + "frame": { + "x": 195, + "y": 411, + "w": 16, + "h": 20 + } + }, + { + "filename": "449s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 10, + "w": 24, + "h": 18 + }, + "frame": { + "x": 211, + "y": 421, + "w": 24, + "h": 18 + } + }, { "filename": "420", "rotated": false, @@ -5799,8 +5442,8 @@ "h": 18 }, "frame": { - "x": 234, - "y": 468, + "x": 177, + "y": 411, "w": 18, "h": 18 } @@ -5820,12 +5463,117 @@ "h": 18 }, "frame": { - "x": 234, - "y": 486, + "x": 177, + "y": 429, "w": 18, "h": 18 } }, + { + "filename": "421s-overcast", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 8, + "w": 16, + "h": 20 + }, + "frame": { + "x": 195, + "y": 431, + "w": 16, + "h": 20 + } + }, + { + "filename": "489", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 11, + "w": 23, + "h": 17 + }, + "frame": { + "x": 211, + "y": 439, + "w": 23, + "h": 17 + } + }, + { + "filename": "448", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 7, + "w": 16, + "h": 21 + }, + "frame": { + "x": 234, + "y": 439, + "w": 16, + "h": 21 + } + }, + { + "filename": "436", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 12, + "w": 13, + "h": 16 + }, + "frame": { + "x": 235, + "y": 423, + "w": 13, + "h": 16 + } + }, + { + "filename": "393", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 9, + "w": 13, + "h": 19 + }, + "frame": { + "x": 180, + "y": 447, + "w": 13, + "h": 19 + } + }, { "filename": "447", "rotated": false, @@ -5841,12 +5589,327 @@ "h": 18 }, "frame": { - "x": 234, - "y": 504, + "x": 193, + "y": 451, "w": 18, "h": 18 } }, + { + "filename": "489s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 11, + "w": 23, + "h": 17 + }, + "frame": { + "x": 211, + "y": 456, + "w": 23, + "h": 17 + } + }, + { + "filename": "448s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 7, + "w": 16, + "h": 21 + }, + "frame": { + "x": 234, + "y": 460, + "w": 16, + "h": 21 + } + }, + { + "filename": "393s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 9, + "w": 13, + "h": 19 + }, + "frame": { + "x": 180, + "y": 466, + "w": 13, + "h": 19 + } + }, + { + "filename": "447s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 10, + "w": 18, + "h": 18 + }, + "frame": { + "x": 193, + "y": 469, + "w": 18, + "h": 18 + } + }, + { + "filename": "442", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 21, + "h": 20 + }, + "frame": { + "x": 211, + "y": 473, + "w": 21, + "h": 20 + } + }, + { + "filename": "492-land", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 12, + "w": 18, + "h": 16 + }, + "frame": { + "x": 232, + "y": 481, + "w": 18, + "h": 16 + } + }, + { + "filename": "442s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 21, + "h": 20 + }, + "frame": { + "x": 189, + "y": 487, + "w": 21, + "h": 20 + } + }, + { + "filename": "459", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 21, + "h": 20 + }, + "frame": { + "x": 189, + "y": 507, + "w": 21, + "h": 20 + } + }, + { + "filename": "459s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 21, + "h": 20 + }, + "frame": { + "x": 210, + "y": 493, + "w": 21, + "h": 20 + } + }, + { + "filename": "422-east", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 231, + "y": 497, + "w": 19, + "h": 20 + } + }, + { + "filename": "399", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 12, + "w": 20, + "h": 16 + }, + "frame": { + "x": 210, + "y": 513, + "w": 20, + "h": 16 + } + }, + { + "filename": "456", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 9, + "w": 20, + "h": 18 + }, + "frame": { + "x": 230, + "y": 517, + "w": 20, + "h": 18 + } + }, + { + "filename": "438", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 8, + "w": 12, + "h": 20 + }, + "frame": { + "x": 195, + "y": 527, + "w": 12, + "h": 20 + } + }, + { + "filename": "456s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 9, + "w": 20, + "h": 18 + }, + "frame": { + "x": 207, + "y": 529, + "w": 20, + "h": 18 + } + }, + { + "filename": "422s-east", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 195, + "y": 547, + "w": 19, + "h": 20 + } + }, { "filename": "422-west", "rotated": false, @@ -5862,14 +5925,14 @@ "h": 20 }, "frame": { - "x": 201, - "y": 534, + "x": 214, + "y": 547, "w": 17, "h": 20 } }, { - "filename": "439s", + "filename": "443s", "rotated": false, "trimmed": true, "sourceSize": { @@ -5877,16 +5940,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 14, - "h": 21 + "x": 11, + "y": 9, + "w": 19, + "h": 19 }, "frame": { - "x": 219, - "y": 520, - "w": 14, - "h": 21 + "x": 231, + "y": 535, + "w": 19, + "h": 19 } }, { @@ -5904,8 +5967,8 @@ "h": 18 }, "frame": { - "x": 233, - "y": 522, + "x": 231, + "y": 554, "w": 19, "h": 18 } @@ -5925,12 +5988,54 @@ "h": 18 }, "frame": { - "x": 233, - "y": 540, + "x": 197, + "y": 567, "w": 19, "h": 18 } }, + { + "filename": "406", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 10, + "w": 12, + "h": 18 + }, + "frame": { + "x": 216, + "y": 567, + "w": 12, + "h": 18 + } + }, + { + "filename": "399s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 12, + "w": 20, + "h": 16 + }, + "frame": { + "x": 228, + "y": 572, + "w": 20, + "h": 16 + } + }, { "filename": "422s-west", "rotated": false, @@ -5946,12 +6051,33 @@ "h": 20 }, "frame": { - "x": 201, - "y": 554, + "x": 199, + "y": 585, "w": 17, "h": 20 } }, + { + "filename": "438s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 8, + "w": 12, + "h": 20 + }, + "frame": { + "x": 216, + "y": 585, + "w": 12, + "h": 20 + } + }, { "filename": "458", "rotated": false, @@ -5967,8 +6093,8 @@ "h": 17 }, "frame": { - "x": 198, - "y": 574, + "x": 228, + "y": 588, "w": 20, "h": 17 } @@ -5988,96 +6114,12 @@ "h": 17 }, "frame": { - "x": 198, - "y": 591, + "x": 200, + "y": 605, "w": 20, "h": 17 } }, - { - "filename": "447s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 10, - "w": 18, - "h": 18 - }, - "frame": { - "x": 199, - "y": 608, - "w": 18, - "h": 18 - } - }, - { - "filename": "440", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 9, - "w": 14, - "h": 19 - }, - "frame": { - "x": 218, - "y": 541, - "w": 14, - "h": 19 - } - }, - { - "filename": "440s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 9, - "w": 14, - "h": 19 - }, - "frame": { - "x": 218, - "y": 560, - "w": 14, - "h": 19 - } - }, - { - "filename": "446", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 9, - "w": 14, - "h": 19 - }, - "frame": { - "x": 218, - "y": 579, - "w": 14, - "h": 19 - } - }, { "filename": "453", "rotated": false, @@ -6093,8 +6135,8 @@ "h": 17 }, "frame": { - "x": 232, - "y": 558, + "x": 200, + "y": 622, "w": 17, "h": 17 } @@ -6114,8 +6156,8 @@ "h": 17 }, "frame": { - "x": 232, - "y": 575, + "x": 220, + "y": 605, "w": 17, "h": 17 } @@ -6135,14 +6177,14 @@ "h": 16 }, "frame": { - "x": 193, - "y": 628, + "x": 237, + "y": 605, "w": 13, "h": 16 } }, { - "filename": "446s", + "filename": "492s-land", "rotated": false, "trimmed": true, "sourceSize": { @@ -6150,100 +6192,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 13, - "y": 9, - "w": 14, - "h": 19 + "x": 12, + "y": 12, + "w": 18, + "h": 16 }, "frame": { - "x": 197, - "y": 644, - "w": 14, - "h": 19 - } - }, - { - "filename": "406", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 12, - "h": 18 - }, - "frame": { - "x": 206, - "y": 626, - "w": 12, - "h": 18 - } - }, - { - "filename": "393", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 9, - "w": 13, - "h": 19 - }, - "frame": { - "x": 211, - "y": 644, - "w": 13, - "h": 19 - } - }, - { - "filename": "393s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 9, - "w": 13, - "h": 19 - }, - "frame": { - "x": 218, - "y": 598, - "w": 13, - "h": 19 - } - }, - { - "filename": "438s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 8, - "w": 12, - "h": 20 - }, - "frame": { - "x": 218, - "y": 617, - "w": 12, - "h": 20 + "x": 217, + "y": 622, + "w": 18, + "h": 16 } }, { @@ -6261,8 +6219,8 @@ "h": 18 }, "frame": { - "x": 231, - "y": 598, + "x": 200, + "y": 639, "w": 12, "h": 18 } @@ -6273,6 +6231,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:d81cce65ebf0d5fbab1f9b7dbc080d4a:2eeffac5a7c6cd09ee563c646d89e345:3f74c54ad2b3085ce7282c3466535f4a$" + "smartupdate": "$TexturePacker:SmartUpdate:840d25653028f4586676114238d98794:576800da918eeca99e7b1b1a0d84af42:3f74c54ad2b3085ce7282c3466535f4a$" } } diff --git a/public/images/pokemon_icons_4.png b/public/images/pokemon_icons_4.png index 5dcfffb5579..9a3fb2cefa9 100644 Binary files a/public/images/pokemon_icons_4.png and b/public/images/pokemon_icons_4.png differ diff --git a/public/images/pokemon_icons_4v.json b/public/images/pokemon_icons_4v.json index 48c1519d88a..44bced3adc7 100644 --- a/public/images/pokemon_icons_4v.json +++ b/public/images/pokemon_icons_4v.json @@ -4,8 +4,8 @@ "image": "pokemon_icons_4v.png", "format": "RGBA8888", "size": { - "w": 124, - "h": 660 + "w": 123, + "h": 656 }, "scale": 1, "frames": [ @@ -135,6 +135,27 @@ "h": 25 } }, + { + "filename": "445_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 29, + "h": 22 + }, + "frame": { + "x": 94, + "y": 0, + "w": 29, + "h": 22 + } + }, { "filename": "445-mega_3", "rotated": false, @@ -150,12 +171,33 @@ "h": 25 }, "frame": { - "x": 94, - "y": 0, + "x": 0, + "y": 81, "w": 30, "h": 25 } }, + { + "filename": "445_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 29, + "h": 22 + }, + "frame": { + "x": 94, + "y": 22, + "w": 29, + "h": 22 + } + }, { "filename": "487-altered_2", "rotated": false, @@ -171,12 +213,33 @@ "h": 24 }, "frame": { - "x": 0, - "y": 81, + "x": 64, + "y": 25, "w": 30, "h": 24 } }, + { + "filename": "445_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 29, + "h": 22 + }, + "frame": { + "x": 94, + "y": 44, + "w": 29, + "h": 22 + } + }, { "filename": "487-altered_3", "rotated": false, @@ -193,53 +256,11 @@ }, "frame": { "x": 0, - "y": 105, + "y": 106, "w": 30, "h": 24 } }, - { - "filename": "472_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 4, - "y": 6, - "w": 31, - "h": 22 - }, - "frame": { - "x": 64, - "y": 25, - "w": 31, - "h": 22 - } - }, - { - "filename": "445_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 29, - "h": 22 - }, - "frame": { - "x": 95, - "y": 25, - "w": 29, - "h": 22 - } - }, { "filename": "487-origin_2", "rotated": false, @@ -256,7 +277,7 @@ }, "frame": { "x": 0, - "y": 129, + "y": 130, "w": 28, "h": 25 } @@ -277,7 +298,7 @@ }, "frame": { "x": 0, - "y": 154, + "y": 155, "w": 28, "h": 25 } @@ -298,7 +319,7 @@ }, "frame": { "x": 0, - "y": 179, + "y": 180, "w": 28, "h": 23 } @@ -319,7 +340,7 @@ }, "frame": { "x": 0, - "y": 202, + "y": 203, "w": 28, "h": 23 } @@ -340,7 +361,7 @@ }, "frame": { "x": 0, - "y": 225, + "y": 226, "w": 25, "h": 26 } @@ -361,7 +382,7 @@ }, "frame": { "x": 0, - "y": 251, + "y": 252, "w": 25, "h": 26 } @@ -382,7 +403,7 @@ }, "frame": { "x": 0, - "y": 277, + "y": 278, "w": 25, "h": 26 } @@ -403,7 +424,7 @@ }, "frame": { "x": 0, - "y": 303, + "y": 304, "w": 25, "h": 26 } @@ -424,7 +445,7 @@ }, "frame": { "x": 0, - "y": 329, + "y": 330, "w": 26, "h": 24 } @@ -445,7 +466,7 @@ }, "frame": { "x": 0, - "y": 353, + "y": 354, "w": 26, "h": 24 } @@ -466,7 +487,7 @@ }, "frame": { "x": 0, - "y": 377, + "y": 378, "w": 26, "h": 24 } @@ -487,7 +508,7 @@ }, "frame": { "x": 0, - "y": 401, + "y": 402, "w": 26, "h": 24 } @@ -508,7 +529,7 @@ }, "frame": { "x": 0, - "y": 425, + "y": 426, "w": 26, "h": 24 } @@ -529,7 +550,7 @@ }, "frame": { "x": 0, - "y": 449, + "y": 450, "w": 26, "h": 23 } @@ -550,7 +571,7 @@ }, "frame": { "x": 0, - "y": 472, + "y": 473, "w": 26, "h": 23 } @@ -571,7 +592,7 @@ }, "frame": { "x": 0, - "y": 495, + "y": 496, "w": 26, "h": 23 } @@ -592,7 +613,7 @@ }, "frame": { "x": 0, - "y": 518, + "y": 519, "w": 27, "h": 23 } @@ -613,7 +634,7 @@ }, "frame": { "x": 0, - "y": 541, + "y": 542, "w": 27, "h": 23 } @@ -634,13 +655,55 @@ }, "frame": { "x": 0, - "y": 564, + "y": 565, "w": 27, "h": 23 } }, { - "filename": "445_2", + "filename": "464_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 27, + "h": 22 + }, + "frame": { + "x": 0, + "y": 588, + "w": 27, + "h": 22 + } + }, + { + "filename": "464_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 27, + "h": 22 + }, + "frame": { + "x": 0, + "y": 610, + "w": 27, + "h": 22 + } + }, + { + "filename": "426_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -649,19 +712,19 @@ }, "spriteSourceSize": { "x": 8, - "y": 6, - "w": 29, - "h": 22 + "y": 4, + "w": 24, + "h": 24 }, "frame": { "x": 0, - "y": 587, - "w": 29, - "h": 22 + "y": 632, + "w": 24, + "h": 24 } }, { - "filename": "445_3", + "filename": "426_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -670,36 +733,15 @@ }, "spriteSourceSize": { "x": 8, - "y": 6, - "w": 29, - "h": 22 + "y": 4, + "w": 24, + "h": 24 }, "frame": { - "x": 0, - "y": 609, - "w": 29, - "h": 22 - } - }, - { - "filename": "465_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 29, - "h": 22 - }, - "frame": { - "x": 0, - "y": 631, - "w": 29, - "h": 22 + "x": 24, + "y": 632, + "w": 24, + "h": 24 } }, { @@ -724,49 +766,7 @@ } }, { - "filename": "485_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 5, - "y": 8, - "w": 33, - "h": 20 - }, - "frame": { - "x": 64, - "y": 47, - "w": 33, - "h": 20 - } - }, - { - "filename": "464_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 27, - "h": 22 - }, - "frame": { - "x": 97, - "y": 47, - "w": 27, - "h": 22 - } - }, - { - "filename": "472_3", + "filename": "472_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -786,6 +786,69 @@ "h": 22 } }, + { + "filename": "472_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 4, + "y": 6, + "w": 31, + "h": 22 + }, + "frame": { + "x": 30, + "y": 90, + "w": 31, + "h": 22 + } + }, + { + "filename": "485_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 5, + "y": 8, + "w": 33, + "h": 20 + }, + "frame": { + "x": 30, + "y": 112, + "w": 33, + "h": 20 + } + }, + { + "filename": "465_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 29, + "h": 22 + }, + "frame": { + "x": 28, + "y": 132, + "w": 29, + "h": 22 + } + }, { "filename": "465_3", "rotated": false, @@ -801,8 +864,8 @@ "h": 22 }, "frame": { - "x": 30, - "y": 90, + "x": 28, + "y": 154, "w": 29, "h": 22 } @@ -822,8 +885,8 @@ "h": 22 }, "frame": { - "x": 30, - "y": 112, + "x": 28, + "y": 176, "w": 29, "h": 22 } @@ -844,7 +907,7 @@ }, "frame": { "x": 28, - "y": 134, + "y": 198, "w": 29, "h": 22 } @@ -864,558 +927,12 @@ "h": 22 }, "frame": { - "x": 28, - "y": 156, + "x": 64, + "y": 49, "w": 29, "h": 22 } }, - { - "filename": "464_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 27, - "h": 22 - }, - "frame": { - "x": 28, - "y": 178, - "w": 27, - "h": 22 - } - }, - { - "filename": "426_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 28, - "y": 200, - "w": 24, - "h": 24 - } - }, - { - "filename": "429_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 2, - "w": 19, - "h": 28 - }, - "frame": { - "x": 25, - "y": 225, - "w": 19, - "h": 28 - } - }, - { - "filename": "429_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 2, - "w": 19, - "h": 28 - }, - "frame": { - "x": 25, - "y": 253, - "w": 19, - "h": 28 - } - }, - { - "filename": "429_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 2, - "w": 19, - "h": 28 - }, - "frame": { - "x": 25, - "y": 281, - "w": 19, - "h": 28 - } - }, - { - "filename": "414_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 7, - "w": 25, - "h": 20 - }, - "frame": { - "x": 25, - "y": 309, - "w": 25, - "h": 20 - } - }, - { - "filename": "426_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 24, - "h": 24 - }, - "frame": { - "x": 26, - "y": 329, - "w": 24, - "h": 24 - } - }, - { - "filename": "413-sandy_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 24, - "h": 23 - }, - "frame": { - "x": 26, - "y": 353, - "w": 24, - "h": 23 - } - }, - { - "filename": "413-sandy_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 24, - "h": 23 - }, - "frame": { - "x": 26, - "y": 376, - "w": 24, - "h": 23 - } - }, - { - "filename": "413-sandy_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 24, - "h": 23 - }, - "frame": { - "x": 26, - "y": 399, - "w": 24, - "h": 23 - } - }, - { - "filename": "475_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 3, - "w": 22, - "h": 25 - }, - "frame": { - "x": 26, - "y": 422, - "w": 22, - "h": 25 - } - }, - { - "filename": "475_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 3, - "w": 22, - "h": 25 - }, - "frame": { - "x": 26, - "y": 447, - "w": 22, - "h": 25 - } - }, - { - "filename": "413-plant_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 22, - "h": 23 - }, - "frame": { - "x": 26, - "y": 472, - "w": 22, - "h": 23 - } - }, - { - "filename": "413-plant_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 22, - "h": 23 - }, - "frame": { - "x": 26, - "y": 495, - "w": 22, - "h": 23 - } - }, - { - "filename": "402_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 4, - "w": 20, - "h": 24 - }, - "frame": { - "x": 27, - "y": 518, - "w": 20, - "h": 24 - } - }, - { - "filename": "402_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 4, - "w": 20, - "h": 24 - }, - "frame": { - "x": 27, - "y": 542, - "w": 20, - "h": 24 - } - }, - { - "filename": "388_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 7, - "w": 22, - "h": 21 - }, - "frame": { - "x": 27, - "y": 566, - "w": 22, - "h": 21 - } - }, - { - "filename": "413-plant_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 22, - "h": 23 - }, - "frame": { - "x": 29, - "y": 587, - "w": 22, - "h": 23 - } - }, - { - "filename": "413-trash_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 5, - "w": 23, - "h": 23 - }, - "frame": { - "x": 29, - "y": 610, - "w": 23, - "h": 23 - } - }, - { - "filename": "413-trash_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 5, - "w": 23, - "h": 23 - }, - "frame": { - "x": 29, - "y": 633, - "w": 23, - "h": 23 - } - }, - { - "filename": "448-mega_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 4, - "w": 19, - "h": 24 - }, - "frame": { - "x": 44, - "y": 224, - "w": 19, - "h": 24 - } - }, - { - "filename": "448-mega_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 4, - "w": 19, - "h": 24 - }, - "frame": { - "x": 44, - "y": 248, - "w": 19, - "h": 24 - } - }, - { - "filename": "448-mega_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 4, - "w": 19, - "h": 24 - }, - "frame": { - "x": 44, - "y": 272, - "w": 19, - "h": 24 - } - }, - { - "filename": "468_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 28, - "h": 19 - }, - "frame": { - "x": 64, - "y": 67, - "w": 28, - "h": 19 - } - }, - { - "filename": "468_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 28, - "h": 19 - }, - "frame": { - "x": 92, - "y": 69, - "w": 28, - "h": 19 - } - }, - { - "filename": "468_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 28, - "h": 19 - }, - "frame": { - "x": 61, - "y": 86, - "w": 28, - "h": 19 - } - }, { "filename": "428_2", "rotated": false, @@ -1431,8 +948,50 @@ "h": 22 }, "frame": { - "x": 59, - "y": 105, + "x": 61, + "y": 71, + "w": 26, + "h": 22 + } + }, + { + "filename": "468_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 28, + "h": 19 + }, + "frame": { + "x": 61, + "y": 93, + "w": 28, + "h": 19 + } + }, + { + "filename": "428_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 63, + "y": 112, "w": 26, "h": 22 } @@ -1452,8 +1011,8 @@ "h": 21 }, "frame": { - "x": 89, - "y": 88, + "x": 57, + "y": 134, "w": 27, "h": 21 } @@ -1473,54 +1032,12 @@ "h": 21 }, "frame": { - "x": 85, - "y": 109, + "x": 57, + "y": 155, "w": 27, "h": 21 } }, - { - "filename": "406_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 12, - "h": 18 - }, - "frame": { - "x": 112, - "y": 109, - "w": 12, - "h": 18 - } - }, - { - "filename": "428_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 59, - "y": 127, - "w": 26, - "h": 22 - } - }, { "filename": "480_1", "rotated": false, @@ -1537,7 +1054,7 @@ }, "frame": { "x": 57, - "y": 149, + "y": 176, "w": 26, "h": 22 } @@ -1557,12 +1074,54 @@ "h": 22 }, "frame": { - "x": 85, - "y": 130, + "x": 57, + "y": 198, "w": 26, "h": 22 } }, + { + "filename": "468_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 28, + "h": 19 + }, + "frame": { + "x": 28, + "y": 220, + "w": 28, + "h": 19 + } + }, + { + "filename": "468_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 28, + "h": 19 + }, + "frame": { + "x": 56, + "y": 220, + "w": 28, + "h": 19 + } + }, { "filename": "480_3", "rotated": false, @@ -1578,14 +1137,14 @@ "h": 22 }, "frame": { - "x": 83, - "y": 152, + "x": 25, + "y": 239, "w": 26, "h": 22 } }, { - "filename": "412-sandy_1", + "filename": "413-sandy_1", "rotated": false, "trimmed": true, "sourceSize": { @@ -1593,20 +1152,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 13, + "x": 9, "y": 5, - "w": 15, + "w": 24, "h": 23 }, "frame": { - "x": 109, - "y": 152, - "w": 15, + "x": 25, + "y": 261, + "w": 24, "h": 23 } }, { - "filename": "406_3", + "filename": "413-sandy_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -1614,20 +1173,41 @@ "h": 30 }, "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 12, - "h": 18 + "x": 9, + "y": 5, + "w": 24, + "h": 23 }, "frame": { - "x": 112, - "y": 127, - "w": 12, - "h": 18 + "x": 25, + "y": 284, + "w": 24, + "h": 23 } }, { - "filename": "414_3", + "filename": "413-sandy_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 5, + "w": 24, + "h": 23 + }, + "frame": { + "x": 25, + "y": 307, + "w": 24, + "h": 23 + } + }, + { + "filename": "429_1", "rotated": false, "trimmed": true, "sourceSize": { @@ -1636,15 +1216,57 @@ }, "spriteSourceSize": { "x": 10, - "y": 7, - "w": 25, - "h": 20 + "y": 2, + "w": 19, + "h": 28 }, "frame": { - "x": 57, - "y": 171, - "w": 25, - "h": 20 + "x": 26, + "y": 330, + "w": 19, + "h": 28 + } + }, + { + "filename": "429_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 2, + "w": 19, + "h": 28 + }, + "frame": { + "x": 26, + "y": 358, + "w": 19, + "h": 28 + } + }, + { + "filename": "429_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 2, + "w": 19, + "h": 28 + }, + "frame": { + "x": 26, + "y": 386, + "w": 19, + "h": 28 } }, { @@ -1662,33 +1284,12 @@ "h": 22 }, "frame": { - "x": 82, - "y": 174, + "x": 51, + "y": 239, "w": 25, "h": 22 } }, - { - "filename": "401_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 5, - "w": 17, - "h": 22 - }, - "frame": { - "x": 107, - "y": 175, - "w": 17, - "h": 22 - } - }, { "filename": "470_2", "rotated": false, @@ -1704,8 +1305,8 @@ "h": 22 }, "frame": { - "x": 55, - "y": 191, + "x": 49, + "y": 261, "w": 25, "h": 22 } @@ -1725,14 +1326,14 @@ "h": 22 }, "frame": { - "x": 80, - "y": 196, + "x": 49, + "y": 283, "w": 25, "h": 22 } }, { - "filename": "461_2", + "filename": "475_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -1741,19 +1342,19 @@ }, "spriteSourceSize": { "x": 10, - "y": 6, - "w": 19, - "h": 22 + "y": 3, + "w": 22, + "h": 25 }, "frame": { - "x": 105, - "y": 197, - "w": 19, - "h": 22 + "x": 49, + "y": 305, + "w": 22, + "h": 25 } }, { - "filename": "401_3", + "filename": "475_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -1761,16 +1362,163 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, - "y": 5, - "w": 17, - "h": 22 + "x": 10, + "y": 3, + "w": 22, + "h": 25 }, "frame": { - "x": 63, - "y": 213, - "w": 17, - "h": 22 + "x": 45, + "y": 330, + "w": 22, + "h": 25 + } + }, + { + "filename": "413-plant_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 5, + "w": 22, + "h": 23 + }, + "frame": { + "x": 45, + "y": 355, + "w": 22, + "h": 23 + } + }, + { + "filename": "413-plant_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 5, + "w": 22, + "h": 23 + }, + "frame": { + "x": 45, + "y": 378, + "w": 22, + "h": 23 + } + }, + { + "filename": "402_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 4, + "w": 20, + "h": 24 + }, + "frame": { + "x": 26, + "y": 414, + "w": 20, + "h": 24 + } + }, + { + "filename": "402_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 4, + "w": 20, + "h": 24 + }, + "frame": { + "x": 26, + "y": 438, + "w": 20, + "h": 24 + } + }, + { + "filename": "413-plant_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 5, + "w": 22, + "h": 23 + }, + "frame": { + "x": 26, + "y": 462, + "w": 22, + "h": 23 + } + }, + { + "filename": "413-trash_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 5, + "w": 23, + "h": 23 + }, + "frame": { + "x": 26, + "y": 485, + "w": 23, + "h": 23 + } + }, + { + "filename": "413-trash_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 5, + "w": 23, + "h": 23 + }, + "frame": { + "x": 27, + "y": 508, + "w": 23, + "h": 23 } }, { @@ -1788,96 +1536,12 @@ "h": 23 }, "frame": { - "x": 63, - "y": 235, + "x": 27, + "y": 531, "w": 23, "h": 23 } }, - { - "filename": "489_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 11, - "w": 23, - "h": 17 - }, - "frame": { - "x": 80, - "y": 218, - "w": 23, - "h": 17 - } - }, - { - "filename": "454_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 21, - "h": 22 - }, - "frame": { - "x": 103, - "y": 219, - "w": 21, - "h": 22 - } - }, - { - "filename": "412-plant_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 17, - "h": 22 - }, - "frame": { - "x": 86, - "y": 235, - "w": 17, - "h": 22 - } - }, - { - "filename": "454_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 21, - "h": 22 - }, - "frame": { - "x": 103, - "y": 241, - "w": 21, - "h": 22 - } - }, { "filename": "423-east_1", "rotated": false, @@ -1893,54 +1557,12 @@ "h": 22 }, "frame": { - "x": 63, - "y": 258, + "x": 27, + "y": 554, "w": 23, "h": 22 } }, - { - "filename": "412-plant_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 17, - "h": 22 - }, - "frame": { - "x": 86, - "y": 257, - "w": 17, - "h": 22 - } - }, - { - "filename": "492-sky_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 21, - "h": 22 - }, - "frame": { - "x": 103, - "y": 263, - "w": 21, - "h": 22 - } - }, { "filename": "423-east_2", "rotated": false, @@ -1956,138 +1578,12 @@ "h": 22 }, "frame": { - "x": 63, - "y": 280, + "x": 27, + "y": 576, "w": 23, "h": 22 } }, - { - "filename": "412-plant_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 17, - "h": 22 - }, - "frame": { - "x": 86, - "y": 279, - "w": 17, - "h": 22 - } - }, - { - "filename": "492-sky_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 21, - "h": 22 - }, - "frame": { - "x": 103, - "y": 285, - "w": 21, - "h": 22 - } - }, - { - "filename": "412-sandy_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 5, - "w": 15, - "h": 23 - }, - "frame": { - "x": 48, - "y": 422, - "w": 15, - "h": 23 - } - }, - { - "filename": "412-sandy_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 5, - "w": 15, - "h": 23 - }, - "frame": { - "x": 48, - "y": 445, - "w": 15, - "h": 23 - } - }, - { - "filename": "412-trash_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 5, - "w": 16, - "h": 23 - }, - "frame": { - "x": 48, - "y": 468, - "w": 16, - "h": 23 - } - }, - { - "filename": "412-trash_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 5, - "w": 16, - "h": 23 - }, - "frame": { - "x": 48, - "y": 491, - "w": 16, - "h": 23 - } - }, { "filename": "423-east_3", "rotated": false, @@ -2103,117 +1599,12 @@ "h": 22 }, "frame": { - "x": 50, - "y": 302, + "x": 27, + "y": 598, "w": 23, "h": 22 } }, - { - "filename": "423-west_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 50, - "y": 324, - "w": 23, - "h": 22 - } - }, - { - "filename": "423-west_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 50, - "y": 346, - "w": 23, - "h": 22 - } - }, - { - "filename": "423-west_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 50, - "y": 368, - "w": 23, - "h": 22 - } - }, - { - "filename": "400_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 6, - "w": 22, - "h": 22 - }, - "frame": { - "x": 50, - "y": 390, - "w": 22, - "h": 22 - } - }, - { - "filename": "412-trash_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 5, - "w": 16, - "h": 23 - }, - "frame": { - "x": 73, - "y": 302, - "w": 16, - "h": 23 - } - }, { "filename": "387_2", "rotated": false, @@ -2229,8 +1620,8 @@ "h": 22 }, "frame": { - "x": 73, - "y": 325, + "x": 87, + "y": 71, "w": 18, "h": 22 } @@ -2250,14 +1641,119 @@ "h": 22 }, "frame": { - "x": 73, - "y": 347, + "x": 105, + "y": 66, "w": 18, "h": 22 } }, { - "filename": "388_3", + "filename": "427_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 105, + "y": 88, + "w": 18, + "h": 22 + } + }, + { + "filename": "412-trash_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 5, + "w": 16, + "h": 23 + }, + "frame": { + "x": 89, + "y": 93, + "w": 16, + "h": 23 + } + }, + { + "filename": "427_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 105, + "y": 110, + "w": 18, + "h": 22 + } + }, + { + "filename": "412-trash_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 5, + "w": 16, + "h": 23 + }, + "frame": { + "x": 89, + "y": 116, + "w": 16, + "h": 23 + } + }, + { + "filename": "447_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 10, + "w": 18, + "h": 18 + }, + "frame": { + "x": 105, + "y": 132, + "w": 18, + "h": 18 + } + }, + { + "filename": "454_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -2266,40 +1762,19 @@ }, "spriteSourceSize": { "x": 9, - "y": 7, - "w": 22, - "h": 21 - }, - "frame": { - "x": 73, - "y": 369, - "w": 22, - "h": 21 - } - }, - { - "filename": "400_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, "y": 6, - "w": 22, + "w": 21, "h": 22 }, "frame": { - "x": 72, - "y": 390, - "w": 22, + "x": 84, + "y": 139, + "w": 21, "h": 22 } }, { - "filename": "440_1", + "filename": "447_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -2307,16 +1782,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 13, - "y": 9, - "w": 14, - "h": 19 + "x": 12, + "y": 10, + "w": 18, + "h": 18 }, "frame": { - "x": 89, - "y": 301, - "w": 14, - "h": 19 + "x": 105, + "y": 150, + "w": 18, + "h": 18 } }, { @@ -2334,12 +1809,390 @@ "h": 20 }, "frame": { - "x": 103, - "y": 307, + "x": 84, + "y": 161, "w": 21, "h": 20 } }, + { + "filename": "447_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 10, + "w": 18, + "h": 18 + }, + "frame": { + "x": 105, + "y": 168, + "w": 18, + "h": 18 + } + }, + { + "filename": "400_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 6, + "w": 22, + "h": 22 + }, + "frame": { + "x": 83, + "y": 181, + "w": 22, + "h": 22 + } + }, + { + "filename": "492-land_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 12, + "w": 18, + "h": 16 + }, + "frame": { + "x": 105, + "y": 186, + "w": 18, + "h": 16 + } + }, + { + "filename": "489_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 11, + "w": 23, + "h": 17 + }, + "frame": { + "x": 83, + "y": 203, + "w": 23, + "h": 17 + } + }, + { + "filename": "401_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 5, + "w": 17, + "h": 22 + }, + "frame": { + "x": 106, + "y": 202, + "w": 17, + "h": 22 + } + }, + { + "filename": "388_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 7, + "w": 22, + "h": 21 + }, + "frame": { + "x": 84, + "y": 220, + "w": 22, + "h": 21 + } + }, + { + "filename": "401_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 5, + "w": 17, + "h": 22 + }, + "frame": { + "x": 106, + "y": 224, + "w": 17, + "h": 22 + } + }, + { + "filename": "414_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 7, + "w": 25, + "h": 20 + }, + "frame": { + "x": 76, + "y": 241, + "w": 25, + "h": 20 + } + }, + { + "filename": "400_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 6, + "w": 22, + "h": 22 + }, + "frame": { + "x": 101, + "y": 246, + "w": 22, + "h": 22 + } + }, + { + "filename": "414_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 7, + "w": 25, + "h": 20 + }, + "frame": { + "x": 74, + "y": 261, + "w": 25, + "h": 20 + } + }, + { + "filename": "423-west_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 23, + "h": 22 + }, + "frame": { + "x": 74, + "y": 281, + "w": 23, + "h": 22 + } + }, + { + "filename": "423-west_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 23, + "h": 22 + }, + "frame": { + "x": 99, + "y": 268, + "w": 23, + "h": 22 + } + }, + { + "filename": "423-west_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 23, + "h": 22 + }, + "frame": { + "x": 97, + "y": 290, + "w": 23, + "h": 22 + } + }, + { + "filename": "433_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 23, + "h": 19 + }, + "frame": { + "x": 74, + "y": 303, + "w": 23, + "h": 19 + } + }, + { + "filename": "433_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 23, + "h": 19 + }, + "frame": { + "x": 97, + "y": 312, + "w": 23, + "h": 19 + } + }, + { + "filename": "448-mega_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 4, + "w": 19, + "h": 24 + }, + "frame": { + "x": 46, + "y": 401, + "w": 19, + "h": 24 + } + }, + { + "filename": "448-mega_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 4, + "w": 19, + "h": 24 + }, + "frame": { + "x": 46, + "y": 425, + "w": 19, + "h": 24 + } + }, + { + "filename": "433_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 23, + "h": 19 + }, + "frame": { + "x": 71, + "y": 322, + "w": 23, + "h": 19 + } + }, { "filename": "444_1", "rotated": false, @@ -2355,8 +2208,8 @@ "h": 21 }, "frame": { - "x": 63, - "y": 412, + "x": 67, + "y": 341, "w": 23, "h": 21 } @@ -2376,8 +2229,8 @@ "h": 21 }, "frame": { - "x": 63, - "y": 433, + "x": 67, + "y": 362, "w": 23, "h": 21 } @@ -2397,14 +2250,35 @@ "h": 21 }, "frame": { - "x": 91, - "y": 327, + "x": 67, + "y": 383, "w": 23, "h": 21 } }, { - "filename": "433_1", + "filename": "388_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 7, + "w": 22, + "h": 21 + }, + "frame": { + "x": 65, + "y": 404, + "w": 22, + "h": 21 + } + }, + { + "filename": "448-mega_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -2413,15 +2287,36 @@ }, "spriteSourceSize": { "x": 12, - "y": 9, - "w": 23, - "h": 19 + "y": 4, + "w": 19, + "h": 24 }, "frame": { - "x": 91, - "y": 348, - "w": 23, - "h": 19 + "x": 65, + "y": 425, + "w": 19, + "h": 24 + } + }, + { + "filename": "454_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 21, + "h": 22 + }, + "frame": { + "x": 48, + "y": 449, + "w": 21, + "h": 22 } }, { @@ -2439,14 +2334,14 @@ "h": 22 }, "frame": { - "x": 95, - "y": 367, + "x": 69, + "y": 449, "w": 20, "h": 22 } }, { - "filename": "407_3", + "filename": "489_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -2454,18 +2349,102 @@ "h": 30 }, "spriteSourceSize": { - "x": 10, + "x": 11, + "y": 11, + "w": 23, + "h": 17 + }, + "frame": { + "x": 94, + "y": 331, + "w": 23, + "h": 17 + } + }, + { + "filename": "492-sky_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, "y": 6, - "w": 20, + "w": 21, "h": 22 }, "frame": { - "x": 86, - "y": 412, - "w": 20, + "x": 90, + "y": 348, + "w": 21, "h": 22 } }, + { + "filename": "492-sky_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 21, + "h": 22 + }, + "frame": { + "x": 90, + "y": 370, + "w": 21, + "h": 22 + } + }, + { + "filename": "406_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 10, + "w": 12, + "h": 18 + }, + "frame": { + "x": 111, + "y": 348, + "w": 12, + "h": 18 + } + }, + { + "filename": "406_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 10, + "w": 12, + "h": 18 + }, + "frame": { + "x": 111, + "y": 366, + "w": 12, + "h": 18 + } + }, { "filename": "442_3", "rotated": false, @@ -2481,14 +2460,14 @@ "h": 20 }, "frame": { - "x": 86, - "y": 434, + "x": 90, + "y": 392, "w": 21, "h": 20 } }, { - "filename": "425_2", + "filename": "489_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -2496,121 +2475,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 15, - "h": 22 + "x": 11, + "y": 11, + "w": 23, + "h": 17 }, "frame": { - "x": 94, - "y": 390, - "w": 15, - "h": 22 - } - }, - { - "filename": "425_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 15, - "h": 22 - }, - "frame": { - "x": 109, - "y": 389, - "w": 15, - "h": 22 - } - }, - { - "filename": "427_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 18, - "h": 22 - }, - "frame": { - "x": 106, + "x": 87, "y": 412, - "w": 18, - "h": 22 - } - }, - { - "filename": "422-west_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 8, - "w": 17, - "h": 20 - }, - "frame": { - "x": 107, - "y": 434, - "w": 17, - "h": 20 - } - }, - { - "filename": "433_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, "w": 23, - "h": 19 - }, - "frame": { - "x": 64, - "y": 454, - "w": 23, - "h": 19 - } - }, - { - "filename": "433_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 23, - "h": 19 - }, - "frame": { - "x": 64, - "y": 473, - "w": 23, - "h": 19 + "h": 17 } }, { @@ -2628,12 +2502,117 @@ "h": 20 }, "frame": { - "x": 87, - "y": 454, + "x": 84, + "y": 429, "w": 22, "h": 20 } }, + { + "filename": "412-plant_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 17, + "h": 22 + }, + "frame": { + "x": 106, + "y": 429, + "w": 17, + "h": 22 + } + }, + { + "filename": "412-plant_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 17, + "h": 22 + }, + "frame": { + "x": 89, + "y": 449, + "w": 17, + "h": 22 + } + }, + { + "filename": "412-plant_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 17, + "h": 22 + }, + "frame": { + "x": 106, + "y": 451, + "w": 17, + "h": 22 + } + }, + { + "filename": "436_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 12, + "w": 13, + "h": 16 + }, + "frame": { + "x": 110, + "y": 412, + "w": 13, + "h": 16 + } + }, + { + "filename": "407_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 20, + "h": 22 + }, + "frame": { + "x": 49, + "y": 471, + "w": 20, + "h": 22 + } + }, { "filename": "490_2", "rotated": false, @@ -2649,12 +2628,75 @@ "h": 20 }, "frame": { - "x": 64, - "y": 492, + "x": 69, + "y": 471, "w": 22, "h": 20 } }, + { + "filename": "412-sandy_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 5, + "w": 15, + "h": 23 + }, + "frame": { + "x": 91, + "y": 471, + "w": 15, + "h": 23 + } + }, + { + "filename": "422-west_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 8, + "w": 17, + "h": 20 + }, + "frame": { + "x": 106, + "y": 473, + "w": 17, + "h": 20 + } + }, + { + "filename": "422-west_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 8, + "w": 17, + "h": 20 + }, + "frame": { + "x": 106, + "y": 493, + "w": 17, + "h": 20 + } + }, { "filename": "490_3", "rotated": false, @@ -2670,14 +2712,14 @@ "h": 20 }, "frame": { - "x": 87, - "y": 474, + "x": 69, + "y": 491, "w": 22, "h": 20 } }, { - "filename": "489_2", + "filename": "412-sandy_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -2685,20 +2727,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, - "y": 11, - "w": 23, - "h": 17 + "x": 13, + "y": 5, + "w": 15, + "h": 23 }, "frame": { - "x": 86, + "x": 91, "y": 494, - "w": 23, - "h": 17 + "w": 15, + "h": 23 } }, { - "filename": "440_2", + "filename": "461_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -2706,104 +2748,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 13, - "y": 9, - "w": 14, - "h": 19 - }, - "frame": { - "x": 109, - "y": 454, - "w": 14, - "h": 19 - } - }, - { - "filename": "440_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 9, - "w": 14, - "h": 19 - }, - "frame": { - "x": 109, - "y": 473, - "w": 14, - "h": 19 - } - }, - { - "filename": "436_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 12, - "w": 13, - "h": 16 - }, - "frame": { - "x": 109, - "y": 492, - "w": 13, - "h": 16 - } - }, - { - "filename": "489_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 11, - "w": 23, - "h": 17 - }, - "frame": { - "x": 64, - "y": 512, - "w": 23, - "h": 17 - } - }, - { - "filename": "422-east_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 8, + "x": 10, + "y": 6, "w": 19, - "h": 20 + "h": 22 }, "frame": { - "x": 87, - "y": 511, + "x": 50, + "y": 493, "w": 19, - "h": 20 + "h": 22 } }, { - "filename": "427_3", + "filename": "422-west_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -2812,36 +2770,15 @@ }, "spriteSourceSize": { "x": 12, - "y": 6, - "w": 18, - "h": 22 + "y": 8, + "w": 17, + "h": 20 }, "frame": { "x": 106, - "y": 511, - "w": 18, - "h": 22 - } - }, - { - "filename": "448_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 7, - "w": 16, - "h": 21 - }, - "frame": { - "x": 48, - "y": 514, - "w": 16, - "h": 21 + "y": 513, + "w": 17, + "h": 20 } }, { @@ -2859,14 +2796,35 @@ "h": 22 }, "frame": { - "x": 47, - "y": 535, + "x": 50, + "y": 515, "w": 19, "h": 22 } }, { - "filename": "494_2", + "filename": "412-trash_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 5, + "w": 16, + "h": 23 + }, + "frame": { + "x": 69, + "y": 511, + "w": 16, + "h": 23 + } + }, + { + "filename": "422-east_1", "rotated": false, "trimmed": true, "sourceSize": { @@ -2875,15 +2833,15 @@ }, "spriteSourceSize": { "x": 11, - "y": 6, - "w": 18, - "h": 22 + "y": 8, + "w": 19, + "h": 20 }, "frame": { - "x": 66, - "y": 529, - "w": 18, - "h": 22 + "x": 50, + "y": 537, + "w": 19, + "h": 20 } }, { @@ -2901,8 +2859,8 @@ "h": 20 }, "frame": { - "x": 84, - "y": 531, + "x": 50, + "y": 557, "w": 19, "h": 20 } @@ -2922,14 +2880,14 @@ "h": 20 }, "frame": { - "x": 103, - "y": 533, + "x": 50, + "y": 577, "w": 19, "h": 20 } }, { - "filename": "494_3", + "filename": "412-sandy_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -2937,16 +2895,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, - "y": 6, - "w": 18, - "h": 22 + "x": 13, + "y": 5, + "w": 15, + "h": 23 }, "frame": { - "x": 49, - "y": 557, - "w": 18, - "h": 22 + "x": 69, + "y": 534, + "w": 15, + "h": 23 } }, { @@ -2964,14 +2922,14 @@ "h": 19 }, "frame": { - "x": 67, - "y": 551, + "x": 50, + "y": 597, "w": 19, "h": 19 } }, { - "filename": "422-west_2", + "filename": "425_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -2979,16 +2937,58 @@ "h": 30 }, "spriteSourceSize": { - "x": 12, - "y": 8, - "w": 17, - "h": 20 + "x": 13, + "y": 7, + "w": 15, + "h": 22 }, "frame": { - "x": 86, - "y": 551, - "w": 17, - "h": 20 + "x": 69, + "y": 557, + "w": 15, + "h": 22 + } + }, + { + "filename": "425_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 15, + "h": 22 + }, + "frame": { + "x": 69, + "y": 579, + "w": 15, + "h": 22 + } + }, + { + "filename": "458_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 10, + "w": 20, + "h": 17 + }, + "frame": { + "x": 85, + "y": 517, + "w": 20, + "h": 17 } }, { @@ -3006,7 +3006,28 @@ "h": 19 }, "frame": { - "x": 103, + "x": 84, + "y": 534, + "w": 19, + "h": 19 + } + }, + { + "filename": "443_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 9, + "w": 19, + "h": 19 + }, + "frame": { + "x": 84, "y": 553, "w": 19, "h": 19 @@ -3027,14 +3048,14 @@ "h": 22 }, "frame": { - "x": 51, - "y": 579, + "x": 84, + "y": 572, "w": 16, "h": 22 } }, { - "filename": "443_3", + "filename": "458_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -3042,79 +3063,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, - "y": 9, - "w": 19, - "h": 19 - }, - "frame": { - "x": 67, - "y": 570, - "w": 19, - "h": 19 - } - }, - { - "filename": "422-west_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 8, - "w": 17, - "h": 20 - }, - "frame": { - "x": 86, - "y": 571, - "w": 17, - "h": 20 - } - }, - { - "filename": "447_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, + "x": 10, "y": 10, - "w": 18, - "h": 18 + "w": 20, + "h": 17 }, "frame": { "x": 103, - "y": 572, - "w": 18, - "h": 18 - } - }, - { - "filename": "447_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 10, - "w": 18, - "h": 18 - }, - "frame": { - "x": 67, - "y": 589, - "w": 18, - "h": 18 + "y": 534, + "w": 20, + "h": 17 } }, { @@ -3132,14 +3090,35 @@ "h": 16 }, "frame": { - "x": 85, - "y": 591, + "x": 103, + "y": 551, "w": 20, "h": 16 } }, { - "filename": "447_3", + "filename": "399_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 12, + "w": 20, + "h": 16 + }, + "frame": { + "x": 103, + "y": 567, + "w": 20, + "h": 16 + } + }, + { + "filename": "448_1", "rotated": false, "trimmed": true, "sourceSize": { @@ -3148,36 +3127,15 @@ }, "spriteSourceSize": { "x": 12, - "y": 10, - "w": 18, - "h": 18 + "y": 7, + "w": 16, + "h": 21 }, "frame": { - "x": 105, - "y": 590, - "w": 18, - "h": 18 - } - }, - { - "filename": "436_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 12, - "w": 13, - "h": 16 - }, - "frame": { - "x": 52, + "x": 69, "y": 601, - "w": 13, - "h": 16 + "w": 16, + "h": 21 } }, { @@ -3195,8 +3153,8 @@ "h": 22 }, "frame": { - "x": 52, - "y": 617, + "x": 85, + "y": 594, "w": 16, "h": 22 } @@ -3216,8 +3174,8 @@ "h": 21 }, "frame": { - "x": 52, - "y": 639, + "x": 101, + "y": 583, "w": 16, "h": 21 } @@ -3237,14 +3195,14 @@ "h": 21 }, "frame": { - "x": 68, - "y": 607, + "x": 101, + "y": 604, "w": 16, "h": 21 } }, { - "filename": "458_2", + "filename": "492-land_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -3252,37 +3210,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 10, - "y": 10, - "w": 20, - "h": 17 + "x": 12, + "y": 12, + "w": 18, + "h": 16 }, "frame": { - "x": 84, - "y": 607, - "w": 20, - "h": 17 - } - }, - { - "filename": "458_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 10, - "w": 20, - "h": 17 - }, - "frame": { - "x": 104, - "y": 608, - "w": 20, - "h": 17 + "x": 50, + "y": 616, + "w": 18, + "h": 16 } }, { @@ -3300,8 +3237,8 @@ "h": 17 }, "frame": { - "x": 68, - "y": 628, + "x": 48, + "y": 632, "w": 17, "h": 17 } @@ -3321,14 +3258,14 @@ "h": 17 }, "frame": { - "x": 85, - "y": 624, + "x": 68, + "y": 622, "w": 17, "h": 17 } }, { - "filename": "399_3", + "filename": "440_1", "rotated": false, "trimmed": true, "sourceSize": { @@ -3336,41 +3273,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 10, - "y": 12, - "w": 20, - "h": 16 - }, - "frame": { - "x": 102, - "y": 625, - "w": 20, - "h": 16 - } - }, - { - "filename": "492-land_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 12, - "w": 18, - "h": 16 + "x": 13, + "y": 9, + "w": 14, + "h": 19 }, "frame": { "x": 85, - "y": 641, - "w": 18, - "h": 16 + "y": 616, + "w": 14, + "h": 19 } }, { - "filename": "492-land_3", + "filename": "440_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -3378,15 +3294,57 @@ "h": 30 }, "spriteSourceSize": { - "x": 12, + "x": 13, + "y": 9, + "w": 14, + "h": 19 + }, + "frame": { + "x": 99, + "y": 625, + "w": 14, + "h": 19 + } + }, + { + "filename": "440_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 9, + "w": 14, + "h": 19 + }, + "frame": { + "x": 85, + "y": 635, + "w": 14, + "h": 19 + } + }, + { + "filename": "436_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, "y": 12, - "w": 18, + "w": 13, "h": 16 }, "frame": { - "x": 103, - "y": 641, - "w": 18, + "x": 65, + "y": 639, + "w": 13, "h": 16 } } @@ -3396,6 +3354,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:8d567785b198c5a2f6892242773436c5:1a0706846c40b2345d9ac32977f8c2e5:ebc3f8ec5b2480b298192d752b6e57dc$" + "smartupdate": "$TexturePacker:SmartUpdate:ff9a4f796b02d3e2c7977d3c3d76a7b8:eabe987f61ff488162814a018b9b9c12:ebc3f8ec5b2480b298192d752b6e57dc$" } } diff --git a/public/images/pokemon_icons_4v.png b/public/images/pokemon_icons_4v.png index eaf8d009ca8..9f2a9ac1f19 100644 Binary files a/public/images/pokemon_icons_4v.png and b/public/images/pokemon_icons_4v.png differ diff --git a/public/images/pokemon_icons_5.json b/public/images/pokemon_icons_5.json index fdbba6575e7..685ce770889 100644 --- a/public/images/pokemon_icons_5.json +++ b/public/images/pokemon_icons_5.json @@ -4,8 +4,8 @@ "image": "pokemon_icons_5.png", "format": "RGBA8888", "size": { - "w": 256, - "h": 681 + "w": 245, + "h": 713 }, "scale": 1, "frames": [ @@ -324,6 +324,27 @@ "h": 27 } }, + { + "filename": "640", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 2, + "w": 21, + "h": 26 + }, + "frame": { + "x": 224, + "y": 0, + "w": 21, + "h": 26 + } + }, { "filename": "644s", "rotated": false, @@ -345,27 +366,6 @@ "h": 27 } }, - { - "filename": "645-incarnate", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 4, - "y": 2, - "w": 31, - "h": 26 - }, - "frame": { - "x": 224, - "y": 0, - "w": 31, - "h": 26 - } - }, { "filename": "641-incarnate", "rotated": false, @@ -409,7 +409,7 @@ } }, { - "filename": "645s-incarnate", + "filename": "645-incarnate", "rotated": false, "trimmed": true, "sourceSize": { @@ -430,7 +430,7 @@ } }, { - "filename": "646", + "filename": "645s-incarnate", "rotated": false, "trimmed": true, "sourceSize": { @@ -451,7 +451,7 @@ } }, { - "filename": "646s", + "filename": "646", "rotated": false, "trimmed": true, "sourceSize": { @@ -471,6 +471,27 @@ "h": 26 } }, + { + "filename": "646s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 4, + "y": 2, + "w": 31, + "h": 26 + }, + "frame": { + "x": 0, + "y": 352, + "w": 31, + "h": 26 + } + }, { "filename": "534", "rotated": false, @@ -487,7 +508,7 @@ }, "frame": { "x": 0, - "y": 352, + "y": 378, "w": 31, "h": 25 } @@ -508,7 +529,7 @@ }, "frame": { "x": 0, - "y": 377, + "y": 403, "w": 31, "h": 25 } @@ -529,7 +550,7 @@ }, "frame": { "x": 0, - "y": 402, + "y": 428, "w": 30, "h": 25 } @@ -550,7 +571,7 @@ }, "frame": { "x": 0, - "y": 427, + "y": 453, "w": 30, "h": 25 } @@ -571,7 +592,7 @@ }, "frame": { "x": 0, - "y": 452, + "y": 478, "w": 30, "h": 25 } @@ -592,7 +613,7 @@ }, "frame": { "x": 0, - "y": 477, + "y": 503, "w": 30, "h": 25 } @@ -613,7 +634,7 @@ }, "frame": { "x": 0, - "y": 502, + "y": 528, "w": 27, "h": 28 } @@ -634,7 +655,7 @@ }, "frame": { "x": 0, - "y": 530, + "y": 556, "w": 27, "h": 28 } @@ -655,7 +676,7 @@ }, "frame": { "x": 0, - "y": 558, + "y": 584, "w": 28, "h": 25 } @@ -676,7 +697,7 @@ }, "frame": { "x": 0, - "y": 583, + "y": 609, "w": 28, "h": 25 } @@ -697,7 +718,7 @@ }, "frame": { "x": 0, - "y": 608, + "y": 634, "w": 29, "h": 25 } @@ -718,13 +739,13 @@ }, "frame": { "x": 0, - "y": 633, + "y": 659, "w": 29, "h": 25 } }, { - "filename": "503", + "filename": "635", "rotated": false, "trimmed": true, "sourceSize": { @@ -732,20 +753,41 @@ "h": 30 }, "spriteSourceSize": { - "x": 5, - "y": 5, - "w": 31, - "h": 23 + "x": 6, + "y": 3, + "w": 29, + "h": 25 }, "frame": { "x": 0, - "y": 658, - "w": 31, - "h": 23 + "y": 684, + "w": 29, + "h": 25 } }, { - "filename": "503s", + "filename": "640s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 2, + "w": 21, + "h": 26 + }, + "frame": { + "x": 224, + "y": 26, + "w": 21, + "h": 26 + } + }, + { + "filename": "503", "rotated": false, "trimmed": true, "sourceSize": { @@ -766,7 +808,7 @@ } }, { - "filename": "569", + "filename": "503s", "rotated": false, "trimmed": true, "sourceSize": { @@ -775,36 +817,15 @@ }, "spriteSourceSize": { "x": 5, - "y": 6, - "w": 30, - "h": 22 + "y": 5, + "w": 31, + "h": 23 }, "frame": { "x": 33, "y": 81, - "w": 30, - "h": 22 - } - }, - { - "filename": "635", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 29, - "h": 25 - }, - "frame": { - "x": 32, - "y": 103, - "w": 29, - "h": 25 + "w": 31, + "h": 23 } }, { @@ -823,11 +844,32 @@ }, "frame": { "x": 32, - "y": 128, + "y": 104, "w": 29, "h": 25 } }, + { + "filename": "609", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 5, + "w": 29, + "h": 23 + }, + "frame": { + "x": 32, + "y": 129, + "w": 29, + "h": 23 + } + }, { "filename": "530", "rotated": false, @@ -844,11 +886,32 @@ }, "frame": { "x": 32, - "y": 153, + "y": 152, "w": 29, "h": 22 } }, + { + "filename": "569", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 30, + "h": 22 + }, + "frame": { + "x": 30, + "y": 174, + "w": 30, + "h": 22 + } + }, { "filename": "569s", "rotated": false, @@ -865,7 +928,7 @@ }, "frame": { "x": 30, - "y": 175, + "y": 196, "w": 30, "h": 22 } @@ -886,7 +949,7 @@ }, "frame": { "x": 30, - "y": 197, + "y": 218, "w": 30, "h": 22 } @@ -907,53 +970,11 @@ }, "frame": { "x": 30, - "y": 219, + "y": 240, "w": 30, "h": 22 } }, - { - "filename": "598", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 30, - "h": 22 - }, - "frame": { - "x": 30, - "y": 241, - "w": 30, - "h": 22 - } - }, - { - "filename": "609", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 29, - "h": 23 - }, - "frame": { - "x": 31, - "y": 263, - "w": 29, - "h": 23 - } - }, { "filename": "609s", "rotated": false, @@ -970,7 +991,7 @@ }, "frame": { "x": 31, - "y": 286, + "y": 262, "w": 29, "h": 23 } @@ -991,7 +1012,7 @@ }, "frame": { "x": 31, - "y": 309, + "y": 285, "w": 29, "h": 22 } @@ -1012,7 +1033,7 @@ }, "frame": { "x": 31, - "y": 331, + "y": 307, "w": 27, "h": 24 } @@ -1033,11 +1054,53 @@ }, "frame": { "x": 31, - "y": 355, + "y": 331, "w": 27, "h": 24 } }, + { + "filename": "623", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 3, + "w": 26, + "h": 25 + }, + "frame": { + "x": 31, + "y": 355, + "w": 26, + "h": 25 + } + }, + { + "filename": "623s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 3, + "w": 26, + "h": 25 + }, + "frame": { + "x": 31, + "y": 380, + "w": 26, + "h": 25 + } + }, { "filename": "508", "rotated": false, @@ -1054,7 +1117,7 @@ }, "frame": { "x": 31, - "y": 379, + "y": 405, "w": 27, "h": 23 } @@ -1075,7 +1138,7 @@ }, "frame": { "x": 30, - "y": 402, + "y": 428, "w": 28, "h": 23 } @@ -1096,7 +1159,7 @@ }, "frame": { "x": 30, - "y": 425, + "y": 451, "w": 28, "h": 23 } @@ -1117,7 +1180,7 @@ }, "frame": { "x": 30, - "y": 448, + "y": 474, "w": 28, "h": 23 } @@ -1138,7 +1201,7 @@ }, "frame": { "x": 30, - "y": 471, + "y": 497, "w": 28, "h": 23 } @@ -1159,13 +1222,13 @@ }, "frame": { "x": 30, - "y": 494, + "y": 520, "w": 28, "h": 22 } }, { - "filename": "598s", + "filename": "598", "rotated": false, "trimmed": true, "sourceSize": { @@ -1180,7 +1243,7 @@ }, "frame": { "x": 27, - "y": 516, + "y": 542, "w": 30, "h": 22 } @@ -1201,13 +1264,13 @@ }, "frame": { "x": 27, - "y": 538, + "y": 564, "w": 29, "h": 20 } }, { - "filename": "623", + "filename": "497s", "rotated": false, "trimmed": true, "sourceSize": { @@ -1216,19 +1279,19 @@ }, "spriteSourceSize": { "x": 6, - "y": 3, - "w": 26, - "h": 25 + "y": 6, + "w": 28, + "h": 22 }, "frame": { "x": 28, - "y": 558, - "w": 26, - "h": 25 + "y": 584, + "w": 28, + "h": 22 } }, { - "filename": "623s", + "filename": "508s", "rotated": false, "trimmed": true, "sourceSize": { @@ -1236,16 +1299,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 26, - "h": 25 + "x": 7, + "y": 5, + "w": 27, + "h": 23 }, "frame": { "x": 28, - "y": 583, - "w": 26, - "h": 25 + "y": 606, + "w": 27, + "h": 23 } }, { @@ -1264,7 +1327,7 @@ }, "frame": { "x": 29, - "y": 608, + "y": 629, "w": 25, "h": 25 } @@ -1285,13 +1348,13 @@ }, "frame": { "x": 29, - "y": 633, + "y": 654, "w": 25, "h": 25 } }, { - "filename": "508s", + "filename": "586-autumn", "rotated": false, "trimmed": true, "sourceSize": { @@ -1300,15 +1363,15 @@ }, "spriteSourceSize": { "x": 7, - "y": 5, - "w": 27, - "h": 23 + "y": 3, + "w": 25, + "h": 25 }, "frame": { - "x": 31, - "y": 658, - "w": 27, - "h": 23 + "x": 29, + "y": 679, + "w": 25, + "h": 25 } }, { @@ -1354,7 +1417,7 @@ } }, { - "filename": "604", + "filename": "598s", "rotated": false, "trimmed": true, "sourceSize": { @@ -1375,7 +1438,7 @@ } }, { - "filename": "604s", + "filename": "604", "rotated": false, "trimmed": true, "sourceSize": { @@ -1396,7 +1459,7 @@ } }, { - "filename": "647-resolute", + "filename": "604s", "rotated": false, "trimmed": true, "sourceSize": { @@ -1405,7 +1468,7 @@ }, "spriteSourceSize": { "x": 5, - "y": 6, + "y": 7, "w": 30, "h": 22 }, @@ -1417,7 +1480,7 @@ } }, { - "filename": "647s-resolute", + "filename": "647-resolute", "rotated": false, "trimmed": true, "sourceSize": { @@ -1437,6 +1500,27 @@ "h": 22 } }, + { + "filename": "647s-resolute", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 5, + "y": 6, + "w": 30, + "h": 22 + }, + "frame": { + "x": 101, + "y": 49, + "w": 30, + "h": 22 + } + }, { "filename": "545", "rotated": false, @@ -1452,7 +1536,7 @@ "h": 22 }, "frame": { - "x": 101, + "x": 131, "y": 49, "w": 29, "h": 22 @@ -1473,7 +1557,7 @@ "h": 22 }, "frame": { - "x": 130, + "x": 160, "y": 49, "w": 29, "h": 22 @@ -1494,12 +1578,33 @@ "h": 22 }, "frame": { - "x": 159, + "x": 189, "y": 49, "w": 29, "h": 22 } }, + { + "filename": "523", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 5, + "w": 27, + "h": 23 + }, + "frame": { + "x": 218, + "y": 52, + "w": 27, + "h": 23 + } + }, { "filename": "571s", "rotated": false, @@ -1515,35 +1620,14 @@ "h": 22 }, "frame": { - "x": 188, - "y": 49, + "x": 99, + "y": 71, "w": 29, "h": 22 } }, { - "filename": "639s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 5, - "y": 8, - "w": 29, - "h": 20 - }, - "frame": { - "x": 99, - "y": 71, - "w": 29, - "h": 20 - } - }, - { - "filename": "497s", + "filename": "593", "rotated": false, "trimmed": true, "sourceSize": { @@ -1564,7 +1648,7 @@ } }, { - "filename": "593", + "filename": "593s", "rotated": false, "trimmed": true, "sourceSize": { @@ -1585,7 +1669,7 @@ } }, { - "filename": "593s", + "filename": "596", "rotated": false, "trimmed": true, "sourceSize": { @@ -1605,6 +1689,27 @@ "h": 22 } }, + { + "filename": "639s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 5, + "y": 8, + "w": 29, + "h": 20 + }, + "frame": { + "x": 212, + "y": 75, + "w": 29, + "h": 20 + } + }, { "filename": "537", "rotated": false, @@ -1621,7 +1726,7 @@ }, "frame": { "x": 98, - "y": 91, + "y": 93, "w": 28, "h": 21 } @@ -1648,7 +1753,7 @@ } }, { - "filename": "596", + "filename": "596s", "rotated": false, "trimmed": true, "sourceSize": { @@ -1669,7 +1774,7 @@ } }, { - "filename": "596s", + "filename": "523s", "rotated": false, "trimmed": true, "sourceSize": { @@ -1677,16 +1782,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 28, - "h": 22 + "x": 7, + "y": 5, + "w": 27, + "h": 23 }, "frame": { "x": 182, "y": 93, - "w": 28, - "h": 22 + "w": 27, + "h": 23 } }, { @@ -1704,8 +1809,8 @@ "h": 20 }, "frame": { - "x": 224, - "y": 26, + "x": 209, + "y": 95, "w": 28, "h": 20 } @@ -1725,75 +1830,12 @@ "h": 20 }, "frame": { - "x": 222, - "y": 46, + "x": 64, + "y": 98, "w": 28, "h": 20 } }, - { - "filename": "531-mega", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 2, - "w": 22, - "h": 26 - }, - "frame": { - "x": 58, - "y": 331, - "w": 22, - "h": 26 - } - }, - { - "filename": "531s-mega", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 2, - "w": 22, - "h": 26 - }, - "frame": { - "x": 58, - "y": 357, - "w": 22, - "h": 26 - } - }, - { - "filename": "586-autumn", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 3, - "w": 25, - "h": 25 - }, - "frame": { - "x": 58, - "y": 383, - "w": 25, - "h": 25 - } - }, { "filename": "586s-autumn", "rotated": false, @@ -1809,8 +1851,8 @@ "h": 25 }, "frame": { - "x": 58, - "y": 408, + "x": 61, + "y": 118, "w": 25, "h": 25 } @@ -1830,29 +1872,8 @@ "h": 24 }, "frame": { - "x": 58, - "y": 433, - "w": 26, - "h": 24 - } - }, - { - "filename": "612s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 4, - "w": 26, - "h": 24 - }, - "frame": { - "x": 58, - "y": 457, + "x": 61, + "y": 143, "w": 26, "h": 24 } @@ -1872,12 +1893,33 @@ "h": 23 }, "frame": { - "x": 58, - "y": 481, + "x": 61, + "y": 167, "w": 26, "h": 23 } }, + { + "filename": "612s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 4, + "w": 26, + "h": 24 + }, + "frame": { + "x": 60, + "y": 190, + "w": 26, + "h": 24 + } + }, { "filename": "510s", "rotated": false, @@ -1893,138 +1935,12 @@ "h": 23 }, "frame": { - "x": 58, - "y": 504, + "x": 60, + "y": 214, "w": 26, "h": 23 } }, - { - "filename": "523", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 5, - "w": 27, - "h": 23 - }, - "frame": { - "x": 57, - "y": 527, - "w": 27, - "h": 23 - } - }, - { - "filename": "631", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 28, - "h": 20 - }, - "frame": { - "x": 56, - "y": 550, - "w": 28, - "h": 20 - } - }, - { - "filename": "523s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 5, - "w": 27, - "h": 23 - }, - "frame": { - "x": 54, - "y": 570, - "w": 27, - "h": 23 - } - }, - { - "filename": "621", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 27, - "h": 23 - }, - "frame": { - "x": 54, - "y": 593, - "w": 27, - "h": 23 - } - }, - { - "filename": "621s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 27, - "h": 23 - }, - "frame": { - "x": 54, - "y": 616, - "w": 27, - "h": 23 - } - }, - { - "filename": "600", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 5, - "y": 9, - "w": 27, - "h": 19 - }, - "frame": { - "x": 54, - "y": 639, - "w": 27, - "h": 19 - } - }, { "filename": "584", "rotated": false, @@ -2040,96 +1956,12 @@ "h": 23 }, "frame": { - "x": 58, - "y": 658, + "x": 60, + "y": 237, "w": 26, "h": 23 } }, - { - "filename": "498", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 10, - "w": 18, - "h": 18 - }, - "frame": { - "x": 80, - "y": 98, - "w": 18, - "h": 18 - } - }, - { - "filename": "502", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 5, - "w": 19, - "h": 23 - }, - "frame": { - "x": 61, - "y": 103, - "w": 19, - "h": 23 - } - }, - { - "filename": "640", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 2, - "w": 21, - "h": 26 - }, - "frame": { - "x": 61, - "y": 126, - "w": 21, - "h": 26 - } - }, - { - "filename": "556", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 23, - "h": 23 - }, - "frame": { - "x": 61, - "y": 152, - "w": 23, - "h": 23 - } - }, { "filename": "584s", "rotated": false, @@ -2146,13 +1978,13 @@ }, "frame": { "x": 60, - "y": 175, + "y": 260, "w": 26, "h": 23 } }, { - "filename": "514", + "filename": "621", "rotated": false, "trimmed": true, "sourceSize": { @@ -2160,20 +1992,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 26, - "h": 22 + "x": 6, + "y": 5, + "w": 27, + "h": 23 }, "frame": { "x": 60, - "y": 198, - "w": 26, - "h": 22 + "y": 283, + "w": 27, + "h": 23 } }, { - "filename": "514s", + "filename": "638", "rotated": false, "trimmed": true, "sourceSize": { @@ -2181,16 +2013,79 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 26, - "h": 22 + "x": 10, + "y": 3, + "w": 20, + "h": 25 }, "frame": { - "x": 60, - "y": 220, - "w": 26, - "h": 22 + "x": 86, + "y": 118, + "w": 20, + "h": 25 + } + }, + { + "filename": "621s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 5, + "w": 27, + "h": 23 + }, + "frame": { + "x": 106, + "y": 114, + "w": 27, + "h": 23 + } + }, + { + "filename": "531-mega", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 2, + "w": 22, + "h": 26 + }, + "frame": { + "x": 87, + "y": 143, + "w": 22, + "h": 26 + } + }, + { + "filename": "561", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 5, + "w": 21, + "h": 23 + }, + "frame": { + "x": 133, + "y": 114, + "w": 21, + "h": 23 } }, { @@ -2208,8 +2103,8 @@ "h": 22 }, "frame": { - "x": 60, - "y": 242, + "x": 154, + "y": 115, "w": 27, "h": 22 } @@ -2229,119 +2124,14 @@ "h": 22 }, "frame": { - "x": 60, - "y": 264, - "w": 27, - "h": 22 - } - }, - { - "filename": "634", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 60, - "y": 286, - "w": 26, - "h": 22 - } - }, - { - "filename": "556s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 5, - "w": 23, - "h": 23 - }, - "frame": { - "x": 60, - "y": 308, - "w": 23, - "h": 23 - } - }, - { - "filename": "631s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 8, - "w": 28, - "h": 20 - }, - "frame": { - "x": 98, - "y": 112, - "w": 28, - "h": 20 - } - }, - { - "filename": "600s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 5, - "y": 9, - "w": 27, - "h": 19 - }, - "frame": { - "x": 126, - "y": 114, - "w": 27, - "h": 19 - } - }, - { - "filename": "630", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 16, - "h": 22 - }, - "frame": { - "x": 82, + "x": 181, "y": 116, - "w": 16, + "w": 27, "h": 22 } }, { - "filename": "567", + "filename": "499", "rotated": false, "trimmed": true, "sourceSize": { @@ -2349,20 +2139,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, + "x": 10, "y": 7, - "w": 26, + "w": 23, "h": 21 }, "frame": { - "x": 153, - "y": 115, - "w": 26, + "x": 87, + "y": 169, + "w": 23, "h": 21 } }, { - "filename": "567s", + "filename": "531s-mega", "rotated": false, "trimmed": true, "sourceSize": { @@ -2370,78 +2160,15 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 26, - "h": 21 - }, - "frame": { - "x": 179, - "y": 115, - "w": 26, - "h": 21 - } - }, - { - "filename": "543", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 14, - "w": 18, - "h": 14 - }, - "frame": { - "x": 82, - "y": 138, - "w": 18, - "h": 14 - } - }, - { - "filename": "502s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 5, - "w": 19, - "h": 23 - }, - "frame": { - "x": 84, - "y": 152, - "w": 19, - "h": 23 - } - }, - { - "filename": "640s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, + "x": 10, "y": 2, - "w": 21, + "w": 22, "h": 26 }, "frame": { "x": 86, - "y": 175, - "w": 21, + "y": 190, + "w": 22, "h": 26 } }, @@ -2461,13 +2188,13 @@ }, "frame": { "x": 86, - "y": 201, + "y": 216, "w": 23, "h": 24 } }, { - "filename": "528", + "filename": "586-summer", "rotated": false, "trimmed": true, "sourceSize": { @@ -2475,20 +2202,104 @@ "h": 30 }, "spriteSourceSize": { - "x": 9, - "y": 8, + "x": 8, + "y": 4, "w": 23, - "h": 20 + "h": 24 }, "frame": { - "x": 100, - "y": 132, + "x": 86, + "y": 240, "w": 23, - "h": 20 + "h": 24 } }, { - "filename": "521", + "filename": "532", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 9, + "w": 24, + "h": 19 + }, + "frame": { + "x": 86, + "y": 264, + "w": 24, + "h": 19 + } + }, + { + "filename": "556", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 5, + "w": 23, + "h": 23 + }, + "frame": { + "x": 87, + "y": 283, + "w": 23, + "h": 23 + } + }, + { + "filename": "514", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 109, + "y": 137, + "w": 26, + "h": 22 + } + }, + { + "filename": "514s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 135, + "y": 137, + "w": 26, + "h": 22 + } + }, + { + "filename": "505", "rotated": false, "trimmed": true, "sourceSize": { @@ -2497,19 +2308,19 @@ }, "spriteSourceSize": { "x": 10, - "y": 5, + "y": 6, "w": 20, - "h": 23 + "h": 22 }, "frame": { - "x": 103, - "y": 152, + "x": 161, + "y": 137, "w": 20, - "h": 23 + "h": 22 } }, { - "filename": "634s", + "filename": "567", "rotated": false, "trimmed": true, "sourceSize": { @@ -2517,16 +2328,121 @@ "h": 30 }, "spriteSourceSize": { - "x": 7, - "y": 6, + "x": 8, + "y": 7, "w": 26, - "h": 22 + "h": 21 }, "frame": { - "x": 123, - "y": 133, + "x": 181, + "y": 138, "w": 26, - "h": 22 + "h": 21 + } + }, + { + "filename": "631", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 28, + "h": 20 + }, + "frame": { + "x": 110, + "y": 159, + "w": 28, + "h": 20 + } + }, + { + "filename": "631s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 8, + "w": 28, + "h": 20 + }, + "frame": { + "x": 138, + "y": 159, + "w": 28, + "h": 20 + } + }, + { + "filename": "567s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 26, + "h": 21 + }, + "frame": { + "x": 166, + "y": 159, + "w": 26, + "h": 21 + } + }, + { + "filename": "600", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 5, + "y": 9, + "w": 27, + "h": 19 + }, + "frame": { + "x": 110, + "y": 179, + "w": 27, + "h": 19 + } + }, + { + "filename": "600s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 5, + "y": 9, + "w": 27, + "h": 19 + }, + "frame": { + "x": 137, + "y": 179, + "w": 27, + "h": 19 } }, { @@ -2544,14 +2460,14 @@ "h": 21 }, "frame": { - "x": 123, - "y": 155, + "x": 164, + "y": 180, "w": 26, "h": 21 } }, { - "filename": "637", + "filename": "568", "rotated": false, "trimmed": true, "sourceSize": { @@ -2559,20 +2475,41 @@ "h": 30 }, "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 26, - "h": 22 + "x": 9, + "y": 10, + "w": 21, + "h": 18 }, "frame": { - "x": 149, - "y": 136, - "w": 26, - "h": 22 + "x": 108, + "y": 198, + "w": 21, + "h": 18 } }, { - "filename": "637s", + "filename": "638s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 3, + "w": 20, + "h": 25 + }, + "frame": { + "x": 109, + "y": 216, + "w": 20, + "h": 25 + } + }, + { + "filename": "634", "rotated": false, "trimmed": true, "sourceSize": { @@ -2586,8 +2523,8 @@ "h": 22 }, "frame": { - "x": 175, - "y": 136, + "x": 129, + "y": 198, "w": 26, "h": 22 } @@ -2607,14 +2544,14 @@ "h": 21 }, "frame": { - "x": 149, - "y": 158, + "x": 129, + "y": 220, "w": 26, "h": 21 } }, { - "filename": "552", + "filename": "634s", "rotated": false, "trimmed": true, "sourceSize": { @@ -2622,100 +2559,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 25, - "h": 21 + "x": 7, + "y": 6, + "w": 26, + "h": 22 }, "frame": { - "x": 175, - "y": 158, - "w": 25, - "h": 21 - } - }, - { - "filename": "529", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 11, - "w": 21, - "h": 17 - }, - "frame": { - "x": 86, - "y": 225, - "w": 21, - "h": 17 - } - }, - { - "filename": "638", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 3, - "w": 20, - "h": 25 - }, - "frame": { - "x": 87, - "y": 242, - "w": 20, - "h": 25 - } - }, - { - "filename": "496", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 22, - "h": 20 - }, - "frame": { - "x": 87, - "y": 267, - "w": 22, - "h": 20 - } - }, - { - "filename": "499", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 7, - "w": 23, - "h": 21 - }, - "frame": { - "x": 86, - "y": 287, - "w": 23, - "h": 21 + "x": 109, + "y": 241, + "w": 26, + "h": 22 } }, { @@ -2733,35 +2586,14 @@ "h": 22 }, "frame": { - "x": 83, - "y": 308, + "x": 110, + "y": 263, "w": 25, "h": 22 } }, { - "filename": "630s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 16, - "h": 22 - }, - "frame": { - "x": 107, - "y": 175, - "w": 16, - "h": 22 - } - }, - { - "filename": "552s", + "filename": "552", "rotated": false, "trimmed": true, "sourceSize": { @@ -2775,180 +2607,12 @@ "h": 21 }, "frame": { - "x": 123, - "y": 176, + "x": 110, + "y": 285, "w": 25, "h": 21 } }, - { - "filename": "565s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 109, - "y": 197, - "w": 25, - "h": 22 - } - }, - { - "filename": "611", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 25, - "h": 21 - }, - "frame": { - "x": 148, - "y": 179, - "w": 25, - "h": 21 - } - }, - { - "filename": "611s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 25, - "h": 21 - }, - "frame": { - "x": 173, - "y": 179, - "w": 25, - "h": 21 - } - }, - { - "filename": "542", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 14, - "h": 21 - }, - "frame": { - "x": 134, - "y": 197, - "w": 14, - "h": 21 - } - }, - { - "filename": "620", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 148, - "y": 200, - "w": 25, - "h": 22 - } - }, - { - "filename": "620s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 173, - "y": 200, - "w": 25, - "h": 22 - } - }, - { - "filename": "628", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 10, - "w": 25, - "h": 19 - }, - "frame": { - "x": 109, - "y": 219, - "w": 25, - "h": 19 - } - }, - { - "filename": "586-summer", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 4, - "w": 23, - "h": 24 - }, - "frame": { - "x": 107, - "y": 238, - "w": 23, - "h": 24 - } - }, { "filename": "586-winter", "rotated": false, @@ -2964,222 +2628,12 @@ "h": 24 }, "frame": { - "x": 109, - "y": 262, + "x": 135, + "y": 241, "w": 23, "h": 24 } }, - { - "filename": "518", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 109, - "y": 286, - "w": 23, - "h": 22 - } - }, - { - "filename": "647-ordinary", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 108, - "y": 308, - "w": 25, - "h": 22 - } - }, - { - "filename": "542s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 14, - "h": 21 - }, - "frame": { - "x": 134, - "y": 218, - "w": 14, - "h": 21 - } - }, - { - "filename": "628s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 10, - "w": 25, - "h": 19 - }, - "frame": { - "x": 148, - "y": 222, - "w": 25, - "h": 19 - } - }, - { - "filename": "647s-ordinary", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 173, - "y": 222, - "w": 25, - "h": 22 - } - }, - { - "filename": "585-autumn", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 18, - "h": 22 - }, - "frame": { - "x": 130, - "y": 239, - "w": 18, - "h": 22 - } - }, - { - "filename": "516", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 24, - "h": 21 - }, - "frame": { - "x": 148, - "y": 241, - "w": 24, - "h": 21 - } - }, - { - "filename": "516s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 24, - "h": 21 - }, - "frame": { - "x": 172, - "y": 244, - "w": 24, - "h": 21 - } - }, - { - "filename": "648-pirouette", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 5, - "w": 15, - "h": 23 - }, - "frame": { - "x": 132, - "y": 261, - "w": 15, - "h": 23 - } - }, - { - "filename": "518s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 147, - "y": 262, - "w": 23, - "h": 22 - } - }, { "filename": "586s-spring", "rotated": false, @@ -3195,14 +2649,56 @@ "h": 24 }, "frame": { - "x": 132, - "y": 284, + "x": 135, + "y": 265, "w": 23, "h": 24 } }, { - "filename": "531", + "filename": "499s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 7, + "w": 23, + "h": 21 + }, + "frame": { + "x": 135, + "y": 289, + "w": 23, + "h": 21 + } + }, + { + "filename": "637", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 155, + "y": 201, + "w": 26, + "h": 22 + } + }, + { + "filename": "568s", "rotated": false, "trimmed": true, "sourceSize": { @@ -3211,78 +2707,15 @@ }, "spriteSourceSize": { "x": 9, - "y": 6, - "w": 22, - "h": 22 - }, - "frame": { - "x": 133, - "y": 308, - "w": 22, - "h": 22 - } - }, - { - "filename": "525", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 24, - "h": 21 - }, - "frame": { - "x": 170, - "y": 265, - "w": 24, - "h": 21 - } - }, - { - "filename": "648s-pirouette", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 5, - "w": 15, - "h": 23 + "y": 10, + "w": 21, + "h": 18 }, "frame": { "x": 155, - "y": 284, - "w": 15, - "h": 23 - } - }, - { - "filename": "525s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 24, - "h": 21 - }, - "frame": { - "x": 170, - "y": 286, - "w": 24, - "h": 21 + "y": 223, + "w": 21, + "h": 18 } }, { @@ -3300,8 +2733,8 @@ "h": 24 }, "frame": { - "x": 155, - "y": 307, + "x": 158, + "y": 241, "w": 23, "h": 24 } @@ -3321,14 +2754,98 @@ "h": 24 }, "frame": { - "x": 178, - "y": 307, + "x": 158, + "y": 265, "w": 23, "h": 24 } }, { - "filename": "638s", + "filename": "516", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 24, + "h": 21 + }, + "frame": { + "x": 158, + "y": 289, + "w": 24, + "h": 21 + } + }, + { + "filename": "494", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 192, + "y": 159, + "w": 18, + "h": 22 + } + }, + { + "filename": "496", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 22, + "h": 20 + }, + "frame": { + "x": 190, + "y": 181, + "w": 22, + "h": 20 + } + }, + { + "filename": "637s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 181, + "y": 201, + "w": 26, + "h": 22 + } + }, + { + "filename": "504", "rotated": false, "trimmed": true, "sourceSize": { @@ -3337,15 +2854,15 @@ }, "spriteSourceSize": { "x": 10, - "y": 3, + "y": 10, "w": 20, - "h": 25 + "h": 18 }, "frame": { - "x": 81, - "y": 570, + "x": 176, + "y": 223, "w": 20, - "h": 25 + "h": 18 } }, { @@ -3363,8 +2880,8 @@ "h": 24 }, "frame": { - "x": 81, - "y": 595, + "x": 181, + "y": 241, "w": 23, "h": 24 } @@ -3384,14 +2901,161 @@ "h": 24 }, "frame": { - "x": 81, - "y": 619, + "x": 181, + "y": 265, "w": 23, "h": 24 } }, { - "filename": "564", + "filename": "516s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 24, + "h": 21 + }, + "frame": { + "x": 182, + "y": 289, + "w": 24, + "h": 21 + } + }, + { + "filename": "498", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 10, + "w": 18, + "h": 18 + }, + "frame": { + "x": 196, + "y": 223, + "w": 18, + "h": 18 + } + }, + { + "filename": "494s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 207, + "y": 201, + "w": 18, + "h": 22 + } + }, + { + "filename": "521", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 5, + "w": 20, + "h": 23 + }, + "frame": { + "x": 225, + "y": 115, + "w": 20, + "h": 23 + } + }, + { + "filename": "522", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 17, + "h": 22 + }, + "frame": { + "x": 208, + "y": 116, + "w": 17, + "h": 22 + } + }, + { + "filename": "552s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 25, + "h": 21 + }, + "frame": { + "x": 207, + "y": 138, + "w": 25, + "h": 21 + } + }, + { + "filename": "594", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 6, + "w": 13, + "h": 22 + }, + "frame": { + "x": 232, + "y": 138, + "w": 13, + "h": 22 + } + }, + { + "filename": "531", "rotated": false, "trimmed": true, "sourceSize": { @@ -3400,19 +3064,103 @@ }, "spriteSourceSize": { "x": 9, - "y": 13, - "w": 23, - "h": 15 + "y": 6, + "w": 22, + "h": 22 }, "frame": { - "x": 81, - "y": 643, - "w": 23, - "h": 15 + "x": 210, + "y": 159, + "w": 22, + "h": 22 } }, { - "filename": "561", + "filename": "594s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 6, + "w": 13, + "h": 22 + }, + "frame": { + "x": 232, + "y": 160, + "w": 13, + "h": 22 + } + }, + { + "filename": "513", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 8, + "w": 20, + "h": 20 + }, + "frame": { + "x": 212, + "y": 181, + "w": 20, + "h": 20 + } + }, + { + "filename": "521s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 5, + "w": 20, + "h": 23 + }, + "frame": { + "x": 225, + "y": 201, + "w": 20, + "h": 23 + } + }, + { + "filename": "605", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 9, + "w": 13, + "h": 19 + }, + "frame": { + "x": 232, + "y": 182, + "w": 13, + "h": 19 + } + }, + { + "filename": "625", "rotated": false, "trimmed": true, "sourceSize": { @@ -3422,18 +3170,123 @@ "spriteSourceSize": { "x": 9, "y": 5, - "w": 21, + "w": 22, + "h": 24 + }, + "frame": { + "x": 204, + "y": 241, + "w": 22, + "h": 24 + } + }, + { + "filename": "502", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 5, + "w": 19, "h": 23 }, "frame": { - "x": 84, - "y": 658, - "w": 21, + "x": 226, + "y": 224, + "w": 19, "h": 23 } }, { - "filename": "505", + "filename": "502s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 5, + "w": 19, + "h": 23 + }, + "frame": { + "x": 226, + "y": 247, + "w": 19, + "h": 23 + } + }, + { + "filename": "625s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 5, + "w": 22, + "h": 24 + }, + "frame": { + "x": 204, + "y": 265, + "w": 22, + "h": 24 + } + }, + { + "filename": "520", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 226, + "y": 270, + "w": 19, + "h": 20 + } + }, + { + "filename": "588", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 11, + "w": 12, + "h": 17 + }, + "frame": { + "x": 214, + "y": 224, + "w": 12, + "h": 17 + } + }, + { + "filename": "505s", "rotated": false, "trimmed": true, "sourceSize": { @@ -3447,14 +3300,77 @@ "h": 22 }, "frame": { - "x": 212, - "y": 71, + "x": 206, + "y": 289, "w": 20, "h": 22 } }, { - "filename": "573", + "filename": "520s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 226, + "y": 290, + "w": 19, + "h": 20 + } + }, + { + "filename": "592-f", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 226, + "y": 310, + "w": 19, + "h": 20 + } + }, + { + "filename": "565s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 60, + "y": 306, + "w": 25, + "h": 22 + } + }, + { + "filename": "620", "rotated": false, "trimmed": true, "sourceSize": { @@ -3463,19 +3379,124 @@ }, "spriteSourceSize": { "x": 8, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 85, + "y": 306, + "w": 25, + "h": 22 + } + }, + { + "filename": "620s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 110, + "y": 306, + "w": 25, + "h": 22 + } + }, + { + "filename": "647-ordinary", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 58, + "y": 328, + "w": 25, + "h": 22 + } + }, + { + "filename": "647s-ordinary", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 83, + "y": 328, + "w": 25, + "h": 22 + } + }, + { + "filename": "611", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, "y": 7, - "w": 24, + "w": 25, "h": 21 }, "frame": { - "x": 232, - "y": 66, - "w": 24, + "x": 108, + "y": 328, + "w": 25, "h": 21 } }, { - "filename": "573s", + "filename": "611s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 25, + "h": 21 + }, + "frame": { + "x": 135, + "y": 310, + "w": 25, + "h": 21 + } + }, + { + "filename": "525", "rotated": false, "trimmed": true, "sourceSize": { @@ -3489,8 +3510,8 @@ "h": 21 }, "frame": { - "x": 232, - "y": 87, + "x": 160, + "y": 310, "w": 24, "h": 21 } @@ -3510,14 +3531,14 @@ "h": 22 }, "frame": { - "x": 210, - "y": 93, + "x": 184, + "y": 310, "w": 22, "h": 22 } }, { - "filename": "532", + "filename": "511", "rotated": false, "trimmed": true, "sourceSize": { @@ -3525,20 +3546,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, - "y": 9, - "w": 24, - "h": 19 + "x": 11, + "y": 7, + "w": 20, + "h": 21 }, "frame": { - "x": 232, - "y": 108, - "w": 24, - "h": 19 + "x": 206, + "y": 311, + "w": 20, + "h": 21 } }, { - "filename": "499s", + "filename": "592", "rotated": false, "trimmed": true, "sourceSize": { @@ -3547,122 +3568,143 @@ }, "spriteSourceSize": { "x": 10, - "y": 7, - "w": 23, - "h": 21 - }, - "frame": { - "x": 205, - "y": 115, - "w": 23, - "h": 21 - } - }, - { - "filename": "555", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 201, - "y": 136, - "w": 23, - "h": 22 - } - }, - { - "filename": "555s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 200, - "y": 158, - "w": 23, - "h": 22 - } - }, - { - "filename": "625", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 22, - "h": 24 - }, - "frame": { - "x": 198, - "y": 180, - "w": 22, - "h": 24 - } - }, - { - "filename": "625s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 22, - "h": 24 - }, - "frame": { - "x": 198, - "y": 204, - "w": 22, - "h": 24 - } - }, - { - "filename": "496s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, "y": 8, - "w": 22, + "w": 19, "h": 20 }, "frame": { - "x": 198, - "y": 228, - "w": 22, + "x": 226, + "y": 330, + "w": 19, "h": 20 } }, + { + "filename": "628", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 10, + "w": 25, + "h": 19 + }, + "frame": { + "x": 133, + "y": 331, + "w": 25, + "h": 19 + } + }, + { + "filename": "628s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 10, + "w": 25, + "h": 19 + }, + "frame": { + "x": 158, + "y": 331, + "w": 25, + "h": 19 + } + }, + { + "filename": "525s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 24, + "h": 21 + }, + "frame": { + "x": 183, + "y": 332, + "w": 24, + "h": 21 + } + }, + { + "filename": "592s-f", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 207, + "y": 332, + "w": 19, + "h": 20 + } + }, + { + "filename": "592s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 226, + "y": 350, + "w": 19, + "h": 20 + } + }, + { + "filename": "608", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 10, + "w": 19, + "h": 18 + }, + "frame": { + "x": 207, + "y": 352, + "w": 19, + "h": 18 + } + }, { "filename": "532s", "rotated": false, @@ -3678,14 +3720,14 @@ "h": 19 }, "frame": { - "x": 196, - "y": 248, + "x": 58, + "y": 350, "w": 24, "h": 19 } }, { - "filename": "649", + "filename": "556s", "rotated": false, "trimmed": true, "sourceSize": { @@ -3695,18 +3737,18 @@ "spriteSourceSize": { "x": 8, "y": 5, - "w": 22, - "h": 24 + "w": 23, + "h": 23 }, "frame": { - "x": 194, - "y": 267, - "w": 22, - "h": 24 + "x": 57, + "y": 369, + "w": 23, + "h": 23 } }, { - "filename": "544", + "filename": "573", "rotated": false, "trimmed": true, "sourceSize": { @@ -3714,16 +3756,37 @@ "h": 30 }, "spriteSourceSize": { - "x": 9, - "y": 12, - "w": 22, - "h": 16 + "x": 8, + "y": 7, + "w": 24, + "h": 21 }, "frame": { - "x": 194, - "y": 291, - "w": 22, - "h": 16 + "x": 82, + "y": 350, + "w": 24, + "h": 21 + } + }, + { + "filename": "573s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 24, + "h": 21 + }, + "frame": { + "x": 80, + "y": 371, + "w": 24, + "h": 21 } }, { @@ -3741,75 +3804,12 @@ "h": 24 }, "frame": { - "x": 201, - "y": 307, + "x": 58, + "y": 392, "w": 22, "h": 24 } }, - { - "filename": "632", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 12, - "w": 24, - "h": 16 - }, - "frame": { - "x": 228, - "y": 127, - "w": 24, - "h": 16 - } - }, - { - "filename": "632s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 12, - "w": 24, - "h": 16 - }, - "frame": { - "x": 224, - "y": 143, - "w": 24, - "h": 16 - } - }, - { - "filename": "614", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 223, - "y": 159, - "w": 23, - "h": 22 - } - }, { "filename": "649-chill", "rotated": false, @@ -3825,33 +3825,12 @@ "h": 24 }, "frame": { - "x": 220, - "y": 181, + "x": 58, + "y": 416, "w": 22, "h": 24 } }, - { - "filename": "648-aria", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 14, - "h": 21 - }, - "frame": { - "x": 242, - "y": 181, - "w": 14, - "h": 21 - } - }, { "filename": "649-douse", "rotated": false, @@ -3867,33 +3846,12 @@ "h": 24 }, "frame": { - "x": 220, - "y": 205, + "x": 80, + "y": 392, "w": 22, "h": 24 } }, - { - "filename": "648s-aria", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 14, - "h": 21 - }, - "frame": { - "x": 242, - "y": 202, - "w": 14, - "h": 21 - } - }, { "filename": "649-shock", "rotated": false, @@ -3909,98 +3867,14 @@ "h": 24 }, "frame": { - "x": 220, - "y": 229, + "x": 58, + "y": 440, "w": 22, "h": 24 } }, { - "filename": "624", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 8, - "w": 14, - "h": 20 - }, - "frame": { - "x": 242, - "y": 223, - "w": 14, - "h": 20 - } - }, - { - "filename": "624s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 8, - "w": 14, - "h": 20 - }, - "frame": { - "x": 242, - "y": 243, - "w": 14, - "h": 20 - } - }, - { - "filename": "539", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 22, - "h": 22 - }, - "frame": { - "x": 220, - "y": 253, - "w": 22, - "h": 22 - } - }, - { - "filename": "574", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 10, - "w": 14, - "h": 18 - }, - "frame": { - "x": 242, - "y": 263, - "w": 14, - "h": 18 - } - }, - { - "filename": "649s", + "filename": "649", "rotated": false, "trimmed": true, "sourceSize": { @@ -4014,117 +3888,12 @@ "h": 24 }, "frame": { - "x": 216, - "y": 275, + "x": 80, + "y": 416, "w": 22, "h": 24 } }, - { - "filename": "585-spring", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 18, - "h": 22 - }, - "frame": { - "x": 238, - "y": 281, - "w": 18, - "h": 22 - } - }, - { - "filename": "606", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 15, - "h": 22 - }, - "frame": { - "x": 223, - "y": 299, - "w": 15, - "h": 22 - } - }, - { - "filename": "585-summer", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 18, - "h": 22 - }, - "frame": { - "x": 238, - "y": 303, - "w": 18, - "h": 22 - } - }, - { - "filename": "517", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 14, - "w": 15, - "h": 14 - }, - "frame": { - "x": 223, - "y": 321, - "w": 15, - "h": 14 - } - }, - { - "filename": "585-winter", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 18, - "h": 22 - }, - "frame": { - "x": 238, - "y": 325, - "w": 18, - "h": 22 - } - }, { "filename": "649s-burn", "rotated": false, @@ -4140,8 +3909,8 @@ "h": 24 }, "frame": { - "x": 80, - "y": 331, + "x": 58, + "y": 464, "w": 22, "h": 24 } @@ -4162,7 +3931,7 @@ }, "frame": { "x": 80, - "y": 355, + "y": 440, "w": 22, "h": 24 } @@ -4182,8 +3951,8 @@ "h": 24 }, "frame": { - "x": 102, - "y": 330, + "x": 58, + "y": 488, "w": 22, "h": 24 } @@ -4203,12 +3972,180 @@ "h": 24 }, "frame": { - "x": 124, - "y": 330, + "x": 80, + "y": 464, "w": 22, "h": 24 } }, + { + "filename": "649s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 5, + "w": 22, + "h": 24 + }, + "frame": { + "x": 58, + "y": 512, + "w": 22, + "h": 24 + } + }, + { + "filename": "518", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 23, + "h": 22 + }, + "frame": { + "x": 80, + "y": 488, + "w": 23, + "h": 22 + } + }, + { + "filename": "518s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 23, + "h": 22 + }, + "frame": { + "x": 80, + "y": 510, + "w": 23, + "h": 22 + } + }, + { + "filename": "496s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 22, + "h": 20 + }, + "frame": { + "x": 58, + "y": 536, + "w": 22, + "h": 20 + } + }, + { + "filename": "555", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 23, + "h": 22 + }, + "frame": { + "x": 80, + "y": 532, + "w": 23, + "h": 22 + } + }, + { + "filename": "528", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 23, + "h": 20 + }, + "frame": { + "x": 57, + "y": 556, + "w": 23, + "h": 20 + } + }, + { + "filename": "555s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 23, + "h": 22 + }, + "frame": { + "x": 80, + "y": 554, + "w": 23, + "h": 22 + } + }, + { + "filename": "614", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 23, + "h": 22 + }, + "frame": { + "x": 56, + "y": 576, + "w": 23, + "h": 22 + } + }, { "filename": "614s", "rotated": false, @@ -4224,14 +4161,35 @@ "h": 22 }, "frame": { - "x": 102, - "y": 354, + "x": 79, + "y": 576, "w": 23, "h": 22 } }, { - "filename": "507", + "filename": "632", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 12, + "w": 24, + "h": 16 + }, + "frame": { + "x": 56, + "y": 598, + "w": 24, + "h": 16 + } + }, + { + "filename": "528s", "rotated": false, "trimmed": true, "sourceSize": { @@ -4240,59 +4198,59 @@ }, "spriteSourceSize": { "x": 9, + "y": 8, + "w": 23, + "h": 20 + }, + "frame": { + "x": 80, + "y": 598, + "w": 23, + "h": 20 + } + }, + { + "filename": "632s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 12, + "w": 24, + "h": 16 + }, + "frame": { + "x": 55, + "y": 614, + "w": 24, + "h": 16 + } + }, + { + "filename": "539", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, "y": 6, - "w": 21, + "w": 22, "h": 22 }, "frame": { - "x": 125, - "y": 354, - "w": 21, + "x": 54, + "y": 630, + "w": 22, "h": 22 } }, - { - "filename": "521s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 5, - "w": 20, - "h": 23 - }, - "frame": { - "x": 83, - "y": 379, - "w": 20, - "h": 23 - } - }, - { - "filename": "561s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 5, - "w": 21, - "h": 23 - }, - "frame": { - "x": 83, - "y": 402, - "w": 21, - "h": 23 - } - }, { "filename": "539s", "rotated": false, @@ -4308,12 +4266,96 @@ "h": 22 }, "frame": { - "x": 103, - "y": 376, + "x": 54, + "y": 652, "w": 22, "h": 22 } }, + { + "filename": "561s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 5, + "w": 21, + "h": 23 + }, + "frame": { + "x": 54, + "y": 674, + "w": 21, + "h": 23 + } + }, + { + "filename": "544", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 22, + "h": 16 + }, + "frame": { + "x": 54, + "y": 697, + "w": 22, + "h": 16 + } + }, + { + "filename": "564", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 13, + "w": 23, + "h": 15 + }, + "frame": { + "x": 79, + "y": 618, + "w": 23, + "h": 15 + } + }, + { + "filename": "507", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, + "w": 21, + "h": 22 + }, + "frame": { + "x": 76, + "y": 633, + "w": 21, + "h": 22 + } + }, { "filename": "507s", "rotated": false, @@ -4329,12 +4371,159 @@ "h": 22 }, "frame": { - "x": 125, - "y": 376, + "x": 76, + "y": 655, "w": 21, "h": 22 } }, + { + "filename": "575", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 22, + "h": 20 + }, + "frame": { + "x": 75, + "y": 677, + "w": 22, + "h": 20 + } + }, + { + "filename": "544s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 22, + "h": 16 + }, + "frame": { + "x": 76, + "y": 697, + "w": 22, + "h": 16 + } + }, + { + "filename": "648-pirouette", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 5, + "w": 15, + "h": 23 + }, + "frame": { + "x": 97, + "y": 633, + "w": 15, + "h": 23 + } + }, + { + "filename": "648s-pirouette", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 5, + "w": 15, + "h": 23 + }, + "frame": { + "x": 97, + "y": 656, + "w": 15, + "h": 23 + } + }, + { + "filename": "498s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 10, + "w": 18, + "h": 18 + }, + "frame": { + "x": 97, + "y": 679, + "w": 18, + "h": 18 + } + }, + { + "filename": "551", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 13, + "w": 22, + "h": 16 + }, + "frame": { + "x": 98, + "y": 697, + "w": 22, + "h": 16 + } + }, + { + "filename": "527", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 13, + "w": 20, + "h": 15 + }, + "frame": { + "x": 102, + "y": 618, + "w": 20, + "h": 15 + } + }, { "filename": "509", "rotated": false, @@ -4350,8 +4539,8 @@ "h": 22 }, "frame": { - "x": 104, - "y": 398, + "x": 112, + "y": 633, "w": 21, "h": 22 } @@ -4371,14 +4560,14 @@ "h": 22 }, "frame": { - "x": 125, - "y": 398, + "x": 112, + "y": 655, "w": 21, "h": 22 } }, { - "filename": "505s", + "filename": "513s", "rotated": false, "trimmed": true, "sourceSize": { @@ -4386,20 +4575,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 10, - "y": 6, + "x": 11, + "y": 8, "w": 20, - "h": 22 + "h": 20 }, "frame": { - "x": 84, - "y": 425, + "x": 115, + "y": 677, "w": 20, - "h": 22 + "h": 20 } }, { - "filename": "528s", + "filename": "551s", "rotated": false, "trimmed": true, "sourceSize": { @@ -4407,16 +4596,37 @@ "h": 30 }, "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 23, - "h": 20 + "x": 8, + "y": 13, + "w": 22, + "h": 16 }, "frame": { - "x": 104, - "y": 420, - "w": 23, - "h": 20 + "x": 120, + "y": 697, + "w": 22, + "h": 16 + } + }, + { + "filename": "522s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 17, + "h": 22 + }, + "frame": { + "x": 102, + "y": 392, + "w": 17, + "h": 22 } }, { @@ -4434,8 +4644,8 @@ "h": 22 }, "frame": { - "x": 84, - "y": 447, + "x": 102, + "y": 414, "w": 21, "h": 22 } @@ -4455,8 +4665,8 @@ "h": 22 }, "frame": { - "x": 84, - "y": 469, + "x": 102, + "y": 436, "w": 21, "h": 22 } @@ -4476,12 +4686,33 @@ "h": 21 }, "frame": { - "x": 84, - "y": 491, + "x": 102, + "y": 458, "w": 21, "h": 21 } }, + { + "filename": "511s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 7, + "w": 20, + "h": 21 + }, + "frame": { + "x": 104, + "y": 371, + "w": 20, + "h": 21 + } + }, { "filename": "515s", "rotated": false, @@ -4497,138 +4728,12 @@ "h": 21 }, "frame": { - "x": 84, - "y": 512, + "x": 106, + "y": 350, "w": 21, "h": 21 } }, - { - "filename": "576", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 20, - "h": 22 - }, - "frame": { - "x": 84, - "y": 533, - "w": 20, - "h": 22 - } - }, - { - "filename": "527", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 13, - "w": 20, - "h": 15 - }, - "frame": { - "x": 84, - "y": 555, - "w": 20, - "h": 15 - } - }, - { - "filename": "511", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 7, - "w": 20, - "h": 21 - }, - "frame": { - "x": 127, - "y": 420, - "w": 20, - "h": 21 - } - }, - { - "filename": "575", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 22, - "h": 20 - }, - "frame": { - "x": 105, - "y": 440, - "w": 22, - "h": 20 - } - }, - { - "filename": "575s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 22, - "h": 20 - }, - "frame": { - "x": 105, - "y": 460, - "w": 22, - "h": 20 - } - }, - { - "filename": "576s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 20, - "h": 22 - }, - "frame": { - "x": 127, - "y": 441, - "w": 20, - "h": 22 - } - }, { "filename": "587", "rotated": false, @@ -4644,8 +4749,8 @@ "h": 20 }, "frame": { - "x": 105, - "y": 480, + "x": 127, + "y": 350, "w": 23, "h": 20 } @@ -4665,14 +4770,14 @@ "h": 20 }, "frame": { - "x": 105, - "y": 500, + "x": 150, + "y": 350, "w": 23, "h": 20 } }, { - "filename": "495", + "filename": "576", "rotated": false, "trimmed": true, "sourceSize": { @@ -4681,15 +4786,36 @@ }, "spriteSourceSize": { "x": 10, - "y": 11, + "y": 6, "w": 20, - "h": 17 + "h": 22 }, "frame": { - "x": 127, - "y": 463, + "x": 103, + "y": 479, "w": 20, - "h": 17 + "h": 22 + } + }, + { + "filename": "576s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 20, + "h": 22 + }, + "frame": { + "x": 103, + "y": 501, + "w": 20, + "h": 22 } }, { @@ -4707,180 +4833,12 @@ "h": 22 }, "frame": { - "x": 128, - "y": 480, + "x": 103, + "y": 523, "w": 20, "h": 22 } }, - { - "filename": "504", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 10, - "w": 20, - "h": 18 - }, - "frame": { - "x": 128, - "y": 502, - "w": 20, - "h": 18 - } - }, - { - "filename": "564s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 13, - "w": 23, - "h": 15 - }, - "frame": { - "x": 105, - "y": 520, - "w": 23, - "h": 15 - } - }, - { - "filename": "617", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 23, - "h": 20 - }, - "frame": { - "x": 104, - "y": 535, - "w": 23, - "h": 20 - } - }, - { - "filename": "617s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 23, - "h": 20 - }, - "frame": { - "x": 104, - "y": 555, - "w": 23, - "h": 20 - } - }, - { - "filename": "513", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 8, - "w": 20, - "h": 20 - }, - "frame": { - "x": 101, - "y": 575, - "w": 20, - "h": 20 - } - }, - { - "filename": "522", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 17, - "h": 22 - }, - "frame": { - "x": 104, - "y": 595, - "w": 17, - "h": 22 - } - }, - { - "filename": "522s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 17, - "h": 22 - }, - "frame": { - "x": 104, - "y": 617, - "w": 17, - "h": 22 - } - }, - { - "filename": "572", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 9, - "w": 22, - "h": 19 - }, - "frame": { - "x": 104, - "y": 639, - "w": 22, - "h": 19 - } - }, { "filename": "591s", "rotated": false, @@ -4896,14 +4854,14 @@ "h": 22 }, "frame": { - "x": 105, - "y": 658, + "x": 103, + "y": 545, "w": 20, "h": 22 } }, { - "filename": "495s", + "filename": "585-autumn", "rotated": false, "trimmed": true, "sourceSize": { @@ -4912,99 +4870,15 @@ }, "spriteSourceSize": { "x": 10, - "y": 11, - "w": 20, - "h": 17 + "y": 6, + "w": 18, + "h": 22 }, "frame": { - "x": 128, - "y": 520, - "w": 20, - "h": 17 - } - }, - { - "filename": "511s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 7, - "w": 20, - "h": 21 - }, - "frame": { - "x": 127, - "y": 537, - "w": 20, - "h": 21 - } - }, - { - "filename": "504s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 10, - "w": 20, - "h": 18 - }, - "frame": { - "x": 127, - "y": 558, - "w": 20, - "h": 18 - } - }, - { - "filename": "560", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 7, - "w": 20, - "h": 21 - }, - "frame": { - "x": 121, - "y": 576, - "w": 20, - "h": 21 - } - }, - { - "filename": "560s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 7, - "w": 20, - "h": 21 - }, - "frame": { - "x": 121, - "y": 597, - "w": 20, - "h": 21 + "x": 119, + "y": 392, + "w": 18, + "h": 22 } }, { @@ -5022,14 +4896,14 @@ "h": 21 }, "frame": { - "x": 121, - "y": 618, + "x": 124, + "y": 371, "w": 18, "h": 21 } }, { - "filename": "513s", + "filename": "617", "rotated": false, "trimmed": true, "sourceSize": { @@ -5037,18 +4911,81 @@ "h": 30 }, "spriteSourceSize": { - "x": 11, + "x": 9, "y": 8, - "w": 20, + "w": 23, "h": 20 }, "frame": { - "x": 126, - "y": 639, - "w": 20, + "x": 142, + "y": 370, + "w": 23, "h": 20 } }, + { + "filename": "585-spring", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 123, + "y": 414, + "w": 18, + "h": 22 + } + }, + { + "filename": "585-summer", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 123, + "y": 436, + "w": 18, + "h": 22 + } + }, + { + "filename": "585-winter", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 123, + "y": 458, + "w": 18, + "h": 22 + } + }, { "filename": "585s-autumn", "rotated": false, @@ -5064,8 +5001,8 @@ "h": 22 }, "frame": { - "x": 125, - "y": 659, + "x": 123, + "y": 480, "w": 18, "h": 22 } @@ -5085,12 +5022,432 @@ "h": 22 }, "frame": { - "x": 143, - "y": 659, + "x": 123, + "y": 502, "w": 18, "h": 22 } }, + { + "filename": "585s-summer", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 123, + "y": 524, + "w": 18, + "h": 22 + } + }, + { + "filename": "521s-f", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 7, + "w": 18, + "h": 21 + }, + "frame": { + "x": 123, + "y": 546, + "w": 18, + "h": 21 + } + }, + { + "filename": "564s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 13, + "w": 23, + "h": 15 + }, + "frame": { + "x": 103, + "y": 567, + "w": 23, + "h": 15 + } + }, + { + "filename": "562", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 22, + "h": 16 + }, + "frame": { + "x": 102, + "y": 582, + "w": 22, + "h": 16 + } + }, + { + "filename": "575s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 22, + "h": 20 + }, + "frame": { + "x": 103, + "y": 598, + "w": 22, + "h": 20 + } + }, + { + "filename": "585s-winter", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 6, + "w": 18, + "h": 22 + }, + "frame": { + "x": 137, + "y": 392, + "w": 18, + "h": 22 + } + }, + { + "filename": "606", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 15, + "h": 22 + }, + "frame": { + "x": 141, + "y": 414, + "w": 15, + "h": 22 + } + }, + { + "filename": "606s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 15, + "h": 22 + }, + "frame": { + "x": 141, + "y": 436, + "w": 15, + "h": 22 + } + }, + { + "filename": "630", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 16, + "h": 22 + }, + "frame": { + "x": 141, + "y": 458, + "w": 16, + "h": 22 + } + }, + { + "filename": "630s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 16, + "h": 22 + }, + "frame": { + "x": 141, + "y": 480, + "w": 16, + "h": 22 + } + }, + { + "filename": "549", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 7, + "w": 17, + "h": 21 + }, + "frame": { + "x": 141, + "y": 502, + "w": 17, + "h": 21 + } + }, + { + "filename": "549s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 7, + "w": 17, + "h": 21 + }, + "frame": { + "x": 141, + "y": 523, + "w": 17, + "h": 21 + } + }, + { + "filename": "560", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 7, + "w": 20, + "h": 21 + }, + "frame": { + "x": 141, + "y": 544, + "w": 20, + "h": 21 + } + }, + { + "filename": "495", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 11, + "w": 20, + "h": 17 + }, + "frame": { + "x": 126, + "y": 567, + "w": 20, + "h": 17 + } + }, + { + "filename": "546", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 14, + "w": 21, + "h": 14 + }, + "frame": { + "x": 124, + "y": 584, + "w": 21, + "h": 14 + } + }, + { + "filename": "560s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 7, + "w": 20, + "h": 21 + }, + "frame": { + "x": 125, + "y": 598, + "w": 20, + "h": 21 + } + }, + { + "filename": "546s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 14, + "w": 21, + "h": 14 + }, + "frame": { + "x": 122, + "y": 619, + "w": 21, + "h": 14 + } + }, + { + "filename": "572", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 9, + "w": 22, + "h": 19 + }, + "frame": { + "x": 146, + "y": 565, + "w": 22, + "h": 19 + } + }, + { + "filename": "617s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 23, + "h": 20 + }, + "frame": { + "x": 145, + "y": 584, + "w": 23, + "h": 20 + } + }, + { + "filename": "562s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 22, + "h": 16 + }, + "frame": { + "x": 145, + "y": 604, + "w": 22, + "h": 16 + } + }, { "filename": "572s", "rotated": false, @@ -5106,8 +5463,8 @@ "h": 19 }, "frame": { - "x": 146, - "y": 331, + "x": 143, + "y": 620, "w": 22, "h": 19 } @@ -5127,8 +5484,8 @@ "h": 19 }, "frame": { - "x": 146, - "y": 350, + "x": 133, + "y": 639, "w": 22, "h": 19 } @@ -5148,14 +5505,14 @@ "h": 19 }, "frame": { - "x": 168, - "y": 331, + "x": 133, + "y": 658, "w": 22, "h": 19 } }, { - "filename": "585s-summer", + "filename": "615", "rotated": false, "trimmed": true, "sourceSize": { @@ -5164,19 +5521,61 @@ }, "spriteSourceSize": { "x": 10, - "y": 6, - "w": 18, - "h": 22 + "y": 8, + "w": 19, + "h": 20 }, "frame": { - "x": 146, - "y": 369, - "w": 18, - "h": 22 + "x": 135, + "y": 677, + "w": 19, + "h": 20 } }, { - "filename": "585s-winter", + "filename": "599", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 11, + "w": 22, + "h": 16 + }, + "frame": { + "x": 142, + "y": 697, + "w": 22, + "h": 16 + } + }, + { + "filename": "542", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 14, + "h": 21 + }, + "frame": { + "x": 155, + "y": 639, + "w": 14, + "h": 21 + } + }, + { + "filename": "495s", "rotated": false, "trimmed": true, "sourceSize": { @@ -5185,15 +5584,141 @@ }, "spriteSourceSize": { "x": 10, - "y": 6, - "w": 18, - "h": 22 + "y": 11, + "w": 20, + "h": 17 }, "frame": { - "x": 146, - "y": 391, + "x": 155, + "y": 660, + "w": 20, + "h": 17 + } + }, + { + "filename": "615s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 154, + "y": 677, + "w": 19, + "h": 20 + } + }, + { + "filename": "599s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 11, + "w": 22, + "h": 16 + }, + "frame": { + "x": 164, + "y": 697, + "w": 22, + "h": 16 + } + }, + { + "filename": "529", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 11, + "w": 21, + "h": 17 + }, + "frame": { + "x": 186, + "y": 353, + "w": 21, + "h": 17 + } + }, + { + "filename": "605s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 9, + "w": 13, + "h": 19 + }, + "frame": { + "x": 173, + "y": 353, + "w": 13, + "h": 19 + } + }, + { + "filename": "610", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 8, "w": 18, - "h": 22 + "h": 20 + }, + "frame": { + "x": 173, + "y": 677, + "w": 18, + "h": 20 + } + }, + { + "filename": "595", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 21, + "h": 16 + }, + "frame": { + "x": 186, + "y": 697, + "w": 21, + "h": 16 } }, { @@ -5211,8 +5736,8 @@ "h": 19 }, "frame": { - "x": 190, - "y": 331, + "x": 165, + "y": 372, "w": 21, "h": 19 } @@ -5232,621 +5757,12 @@ "h": 19 }, "frame": { - "x": 168, - "y": 350, + "x": 186, + "y": 370, "w": 21, "h": 19 } }, - { - "filename": "520", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 164, - "y": 369, - "w": 19, - "h": 20 - } - }, - { - "filename": "520s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 164, - "y": 389, - "w": 19, - "h": 20 - } - }, - { - "filename": "568", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 10, - "w": 21, - "h": 18 - }, - "frame": { - "x": 189, - "y": 350, - "w": 21, - "h": 18 - } - }, - { - "filename": "548", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 12, - "h": 18 - }, - "frame": { - "x": 211, - "y": 331, - "w": 12, - "h": 18 - } - }, - { - "filename": "517s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 14, - "w": 15, - "h": 14 - }, - "frame": { - "x": 223, - "y": 335, - "w": 15, - "h": 14 - } - }, - { - "filename": "521s-f", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 7, - "w": 18, - "h": 21 - }, - "frame": { - "x": 238, - "y": 347, - "w": 18, - "h": 21 - } - }, - { - "filename": "549", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 7, - "w": 17, - "h": 21 - }, - "frame": { - "x": 147, - "y": 413, - "w": 17, - "h": 21 - } - }, - { - "filename": "592", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 164, - "y": 409, - "w": 19, - "h": 20 - } - }, - { - "filename": "549s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 7, - "w": 17, - "h": 21 - }, - "frame": { - "x": 147, - "y": 434, - "w": 17, - "h": 21 - } - }, - { - "filename": "592-f", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 164, - "y": 429, - "w": 19, - "h": 20 - } - }, - { - "filename": "627", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 7, - "w": 17, - "h": 21 - }, - "frame": { - "x": 147, - "y": 455, - "w": 17, - "h": 21 - } - }, - { - "filename": "592s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 164, - "y": 449, - "w": 19, - "h": 20 - } - }, - { - "filename": "606s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 15, - "h": 22 - }, - "frame": { - "x": 148, - "y": 476, - "w": 15, - "h": 22 - } - }, - { - "filename": "583", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 7, - "w": 15, - "h": 21 - }, - "frame": { - "x": 148, - "y": 498, - "w": 15, - "h": 21 - } - }, - { - "filename": "498s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 10, - "w": 18, - "h": 18 - }, - "frame": { - "x": 148, - "y": 519, - "w": 18, - "h": 18 - } - }, - { - "filename": "592s-f", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 147, - "y": 537, - "w": 19, - "h": 20 - } - }, - { - "filename": "615", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 147, - "y": 557, - "w": 19, - "h": 20 - } - }, - { - "filename": "568s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 10, - "w": 21, - "h": 18 - }, - "frame": { - "x": 141, - "y": 577, - "w": 21, - "h": 18 - } - }, - { - "filename": "615s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 141, - "y": 595, - "w": 19, - "h": 20 - } - }, - { - "filename": "583s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 7, - "w": 15, - "h": 21 - }, - "frame": { - "x": 139, - "y": 618, - "w": 15, - "h": 21 - } - }, - { - "filename": "610", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 8, - "w": 18, - "h": 20 - }, - "frame": { - "x": 146, - "y": 639, - "w": 18, - "h": 20 - } - }, - { - "filename": "594", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 6, - "w": 13, - "h": 22 - }, - "frame": { - "x": 161, - "y": 659, - "w": 13, - "h": 22 - } - }, - { - "filename": "594s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 6, - "w": 13, - "h": 22 - }, - "frame": { - "x": 183, - "y": 369, - "w": 13, - "h": 22 - } - }, - { - "filename": "627s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 7, - "w": 17, - "h": 21 - }, - "frame": { - "x": 183, - "y": 391, - "w": 17, - "h": 21 - } - }, - { - "filename": "610s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 8, - "w": 18, - "h": 20 - }, - "frame": { - "x": 183, - "y": 412, - "w": 18, - "h": 20 - } - }, - { - "filename": "619", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 18, - "h": 19 - }, - "frame": { - "x": 183, - "y": 432, - "w": 18, - "h": 19 - } - }, - { - "filename": "506", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 10, - "w": 18, - "h": 18 - }, - "frame": { - "x": 183, - "y": 451, - "w": 18, - "h": 18 - } - }, - { - "filename": "633", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 8, - "w": 16, - "h": 20 - }, - "frame": { - "x": 196, - "y": 368, - "w": 16, - "h": 20 - } - }, - { - "filename": "544s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 12, - "w": 22, - "h": 16 - }, - "frame": { - "x": 164, - "y": 469, - "w": 22, - "h": 16 - } - }, { "filename": "636", "rotated": false, @@ -5862,14 +5778,14 @@ "h": 19 }, "frame": { - "x": 163, - "y": 485, + "x": 207, + "y": 370, "w": 20, "h": 19 } }, { - "filename": "527s", + "filename": "610s", "rotated": false, "trimmed": true, "sourceSize": { @@ -5877,37 +5793,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 10, - "y": 13, - "w": 20, - "h": 15 + "x": 11, + "y": 8, + "w": 18, + "h": 20 }, "frame": { - "x": 163, - "y": 504, - "w": 20, - "h": 15 - } - }, - { - "filename": "619s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, + "x": 227, + "y": 370, "w": 18, - "h": 19 - }, - "frame": { - "x": 166, - "y": 519, - "w": 18, - "h": 19 + "h": 20 } }, { @@ -5925,12 +5820,180 @@ "h": 19 }, "frame": { - "x": 166, - "y": 538, + "x": 155, + "y": 391, "w": 20, "h": 19 } }, + { + "filename": "627", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 7, + "w": 17, + "h": 21 + }, + "frame": { + "x": 156, + "y": 410, + "w": 17, + "h": 21 + } + }, + { + "filename": "627s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 7, + "w": 17, + "h": 21 + }, + "frame": { + "x": 156, + "y": 431, + "w": 17, + "h": 21 + } + }, + { + "filename": "542s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 14, + "h": 21 + }, + "frame": { + "x": 175, + "y": 391, + "w": 14, + "h": 21 + } + }, + { + "filename": "504s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 10, + "w": 20, + "h": 18 + }, + "frame": { + "x": 189, + "y": 389, + "w": 20, + "h": 18 + } + }, + { + "filename": "506", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 10, + "w": 18, + "h": 18 + }, + "frame": { + "x": 209, + "y": 389, + "w": 18, + "h": 18 + } + }, + { + "filename": "619", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 18, + "h": 19 + }, + "frame": { + "x": 227, + "y": 390, + "w": 18, + "h": 19 + } + }, + { + "filename": "583", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 7, + "w": 15, + "h": 21 + }, + "frame": { + "x": 173, + "y": 412, + "w": 15, + "h": 21 + } + }, + { + "filename": "578", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 16, + "h": 19 + }, + "frame": { + "x": 173, + "y": 433, + "w": 16, + "h": 19 + } + }, { "filename": "529s", "rotated": false, @@ -5946,75 +6009,12 @@ "h": 17 }, "frame": { - "x": 166, - "y": 557, + "x": 157, + "y": 452, "w": 21, "h": 17 } }, - { - "filename": "501", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 16, - "h": 18 - }, - "frame": { - "x": 186, - "y": 469, - "w": 16, - "h": 18 - } - }, - { - "filename": "608", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 10, - "w": 19, - "h": 18 - }, - "frame": { - "x": 183, - "y": 487, - "w": 19, - "h": 18 - } - }, - { - "filename": "546", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 14, - "w": 21, - "h": 14 - }, - "frame": { - "x": 183, - "y": 505, - "w": 21, - "h": 14 - } - }, { "filename": "555-zen", "rotated": false, @@ -6030,323 +6030,8 @@ "h": 17 }, "frame": { - "x": 184, - "y": 519, - "w": 20, - "h": 17 - } - }, - { - "filename": "506s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 10, - "w": 18, - "h": 18 - }, - "frame": { - "x": 186, - "y": 536, - "w": 18, - "h": 18 - } - }, - { - "filename": "633s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 8, - "w": 16, - "h": 20 - }, - "frame": { - "x": 187, - "y": 554, - "w": 16, - "h": 20 - } - }, - { - "filename": "578", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 16, - "h": 19 - }, - "frame": { - "x": 200, - "y": 388, - "w": 16, - "h": 19 - } - }, - { - "filename": "551", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 13, - "w": 22, - "h": 16 - }, - "frame": { - "x": 216, - "y": 349, - "w": 22, - "h": 16 - } - }, - { - "filename": "551s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 13, - "w": 22, - "h": 16 - }, - "frame": { - "x": 212, - "y": 365, - "w": 22, - "h": 16 - } - }, - { - "filename": "562", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 12, - "w": 22, - "h": 16 - }, - "frame": { - "x": 234, - "y": 368, - "w": 22, - "h": 16 - } - }, - { - "filename": "536", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 10, - "w": 18, - "h": 18 - }, - "frame": { - "x": 216, - "y": 381, - "w": 18, - "h": 18 - } - }, - { - "filename": "562s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 12, - "w": 22, - "h": 16 - }, - "frame": { - "x": 234, - "y": 384, - "w": 22, - "h": 16 - } - }, - { - "filename": "578s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 16, - "h": 19 - }, - "frame": { - "x": 201, - "y": 407, - "w": 16, - "h": 19 - } - }, - { - "filename": "580", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 16, - "h": 19 - }, - "frame": { - "x": 201, - "y": 426, - "w": 16, - "h": 19 - } - }, - { - "filename": "580s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 16, - "h": 19 - }, - "frame": { - "x": 201, - "y": 445, - "w": 16, - "h": 19 - } - }, - { - "filename": "501s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 16, - "h": 18 - }, - "frame": { - "x": 202, - "y": 464, - "w": 16, - "h": 18 - } - }, - { - "filename": "536s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 10, - "w": 18, - "h": 18 - }, - "frame": { - "x": 202, - "y": 482, - "w": 18, - "h": 18 - } - }, - { - "filename": "608s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 10, - "w": 19, - "h": 18 - }, - "frame": { - "x": 204, - "y": 500, - "w": 19, - "h": 18 - } - }, - { - "filename": "555s-zen", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 11, - "w": 20, - "h": 17 - }, - "frame": { - "x": 204, - "y": 518, + "x": 157, + "y": 469, "w": 20, "h": 17 } @@ -6366,12 +6051,222 @@ "h": 16 }, "frame": { - "x": 204, - "y": 535, + "x": 157, + "y": 486, "w": 20, "h": 16 } }, + { + "filename": "608s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 10, + "w": 19, + "h": 18 + }, + "frame": { + "x": 158, + "y": 502, + "w": 19, + "h": 18 + } + }, + { + "filename": "619s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 18, + "h": 19 + }, + "frame": { + "x": 158, + "y": 520, + "w": 18, + "h": 19 + } + }, + { + "filename": "583s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 7, + "w": 15, + "h": 21 + }, + "frame": { + "x": 161, + "y": 539, + "w": 15, + "h": 21 + } + }, + { + "filename": "501", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 10, + "w": 16, + "h": 18 + }, + "frame": { + "x": 178, + "y": 452, + "w": 16, + "h": 18 + } + }, + { + "filename": "633", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 8, + "w": 16, + "h": 20 + }, + "frame": { + "x": 177, + "y": 470, + "w": 16, + "h": 20 + } + }, + { + "filename": "633s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 8, + "w": 16, + "h": 20 + }, + "frame": { + "x": 177, + "y": 490, + "w": 16, + "h": 20 + } + }, + { + "filename": "501s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 10, + "w": 16, + "h": 18 + }, + "frame": { + "x": 177, + "y": 510, + "w": 16, + "h": 18 + } + }, + { + "filename": "506s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 10, + "w": 18, + "h": 18 + }, + "frame": { + "x": 176, + "y": 528, + "w": 18, + "h": 18 + } + }, + { + "filename": "527s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 13, + "w": 20, + "h": 15 + }, + "frame": { + "x": 176, + "y": 546, + "w": 20, + "h": 15 + } + }, + { + "filename": "566", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 13, + "w": 21, + "h": 15 + }, + "frame": { + "x": 189, + "y": 407, + "w": 21, + "h": 15 + } + }, { "filename": "554", "rotated": false, @@ -6387,35 +6282,14 @@ "h": 15 }, "frame": { - "x": 217, - "y": 399, + "x": 210, + "y": 407, "w": 17, "h": 15 } }, { - "filename": "599", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 11, - "w": 22, - "h": 16 - }, - "frame": { - "x": 234, - "y": 400, - "w": 22, - "h": 16 - } - }, - { - "filename": "554s", + "filename": "536", "rotated": false, "trimmed": true, "sourceSize": { @@ -6424,19 +6298,19 @@ }, "spriteSourceSize": { "x": 11, - "y": 13, - "w": 17, - "h": 15 + "y": 10, + "w": 18, + "h": 18 }, "frame": { - "x": 217, - "y": 414, - "w": 17, - "h": 15 + "x": 227, + "y": 409, + "w": 18, + "h": 18 } }, { - "filename": "599s", + "filename": "555s-zen", "rotated": false, "trimmed": true, "sourceSize": { @@ -6444,20 +6318,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 9, + "x": 10, "y": 11, - "w": 22, - "h": 16 + "w": 20, + "h": 17 }, "frame": { - "x": 234, - "y": 416, - "w": 22, - "h": 16 + "x": 189, + "y": 422, + "w": 20, + "h": 17 } }, { - "filename": "570", + "filename": "536s", "rotated": false, "trimmed": true, "sourceSize": { @@ -6465,16 +6339,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 12, - "y": 11, - "w": 16, - "h": 17 + "x": 11, + "y": 10, + "w": 18, + "h": 18 }, "frame": { - "x": 217, - "y": 429, - "w": 16, - "h": 17 + "x": 209, + "y": 422, + "w": 18, + "h": 18 } }, { @@ -6492,14 +6366,14 @@ "h": 18 }, "frame": { - "x": 217, - "y": 446, + "x": 227, + "y": 427, "w": 18, "h": 18 } }, { - "filename": "595", + "filename": "535", "rotated": false, "trimmed": true, "sourceSize": { @@ -6507,20 +6381,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 9, - "y": 12, - "w": 21, - "h": 16 + "x": 13, + "y": 15, + "w": 14, + "h": 13 }, "frame": { - "x": 235, - "y": 432, - "w": 21, - "h": 16 + "x": 189, + "y": 439, + "w": 14, + "h": 13 } }, { - "filename": "595s", + "filename": "548", "rotated": false, "trimmed": true, "sourceSize": { @@ -6528,15 +6402,78 @@ "h": 30 }, "spriteSourceSize": { - "x": 9, + "x": 14, + "y": 10, + "w": 12, + "h": 18 + }, + "frame": { + "x": 194, + "y": 452, + "w": 12, + "h": 18 + } + }, + { + "filename": "648-aria", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 14, + "h": 21 + }, + "frame": { + "x": 193, + "y": 470, + "w": 14, + "h": 21 + } + }, + { + "filename": "648s-aria", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 14, + "h": 21 + }, + "frame": { + "x": 193, + "y": 491, + "w": 14, + "h": 21 + } + }, + { + "filename": "519", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, "y": 12, - "w": 21, + "w": 16, "h": 16 }, "frame": { - "x": 235, - "y": 448, - "w": 21, + "x": 193, + "y": 512, + "w": 16, "h": 16 } }, @@ -6555,14 +6492,14 @@ "h": 18 }, "frame": { - "x": 218, - "y": 464, + "x": 194, + "y": 528, "w": 18, "h": 18 } }, { - "filename": "541s", + "filename": "519s", "rotated": false, "trimmed": true, "sourceSize": { @@ -6570,15 +6507,57 @@ "h": 30 }, "spriteSourceSize": { - "x": 10, + "x": 12, "y": 12, - "w": 20, + "w": 16, "h": 16 }, "frame": { - "x": 236, - "y": 464, - "w": 20, + "x": 196, + "y": 546, + "w": 16, + "h": 16 + } + }, + { + "filename": "595s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 21, + "h": 16 + }, + "frame": { + "x": 206, + "y": 440, + "w": 21, + "h": 16 + } + }, + { + "filename": "550-blue-striped", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 12, + "w": 18, + "h": 16 + }, + "frame": { + "x": 227, + "y": 445, + "w": 18, "h": 16 } }, @@ -6597,96 +6576,12 @@ "h": 14 }, "frame": { - "x": 236, - "y": 480, + "x": 206, + "y": 456, "w": 20, "h": 14 } }, - { - "filename": "570s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 11, - "w": 16, - "h": 17 - }, - "frame": { - "x": 220, - "y": 482, - "w": 16, - "h": 17 - } - }, - { - "filename": "618s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 14, - "w": 20, - "h": 14 - }, - "frame": { - "x": 236, - "y": 494, - "w": 20, - "h": 14 - } - }, - { - "filename": "605", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 9, - "w": 13, - "h": 19 - }, - "frame": { - "x": 223, - "y": 499, - "w": 13, - "h": 19 - } - }, - { - "filename": "605s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 9, - "w": 13, - "h": 19 - }, - "frame": { - "x": 224, - "y": 518, - "w": 13, - "h": 19 - } - }, { "filename": "557", "rotated": false, @@ -6702,8 +6597,8 @@ "h": 17 }, "frame": { - "x": 237, - "y": 508, + "x": 226, + "y": 461, "w": 19, "h": 17 } @@ -6723,56 +6618,14 @@ "h": 17 }, "frame": { - "x": 237, - "y": 525, + "x": 207, + "y": 470, "w": 19, "h": 17 } }, { - "filename": "607", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 13, - "h": 18 - }, - "frame": { - "x": 224, - "y": 537, - "w": 13, - "h": 18 - } - }, - { - "filename": "543s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 14, - "w": 18, - "h": 14 - }, - "frame": { - "x": 237, - "y": 542, - "w": 18, - "h": 14 - } - }, - { - "filename": "546s", + "filename": "541s", "rotated": false, "trimmed": true, "sourceSize": { @@ -6781,98 +6634,14 @@ }, "spriteSourceSize": { "x": 10, - "y": 14, - "w": 21, - "h": 14 - }, - "frame": { - "x": 166, - "y": 574, - "w": 21, - "h": 14 - } - }, - { - "filename": "519", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, "y": 12, - "w": 16, + "w": 20, "h": 16 }, "frame": { - "x": 187, - "y": 574, - "w": 16, - "h": 16 - } - }, - { - "filename": "566", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 13, - "w": 21, - "h": 15 - }, - "frame": { - "x": 162, - "y": 588, - "w": 21, - "h": 15 - } - }, - { - "filename": "566s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 13, - "w": 21, - "h": 15 - }, - "frame": { - "x": 160, - "y": 603, - "w": 21, - "h": 15 - } - }, - { - "filename": "550-blue-striped", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 12, - "w": 18, - "h": 16 - }, - "frame": { - "x": 154, - "y": 618, - "w": 18, + "x": 207, + "y": 487, + "w": 20, "h": 16 } }, @@ -6891,8 +6660,8 @@ "h": 16 }, "frame": { - "x": 183, - "y": 590, + "x": 227, + "y": 478, "w": 18, "h": 16 } @@ -6912,33 +6681,12 @@ "h": 16 }, "frame": { - "x": 181, - "y": 606, + "x": 227, + "y": 494, "w": 18, "h": 16 } }, - { - "filename": "548s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 12, - "h": 18 - }, - "frame": { - "x": 164, - "y": 634, - "w": 12, - "h": 18 - } - }, { "filename": "550s-blue-striped", "rotated": false, @@ -6954,8 +6702,8 @@ "h": 16 }, "frame": { - "x": 204, - "y": 551, + "x": 209, + "y": 503, "w": 18, "h": 16 } @@ -6975,8 +6723,8 @@ "h": 16 }, "frame": { - "x": 203, - "y": 567, + "x": 227, + "y": 510, "w": 18, "h": 16 } @@ -6996,8 +6744,8 @@ "h": 17 }, "frame": { - "x": 222, - "y": 555, + "x": 212, + "y": 519, "w": 15, "h": 17 } @@ -7017,75 +6765,12 @@ "h": 16 }, "frame": { - "x": 237, - "y": 556, + "x": 227, + "y": 526, "w": 18, "h": 16 } }, - { - "filename": "616", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 13, - "w": 18, - "h": 15 - }, - "frame": { - "x": 221, - "y": 572, - "w": 18, - "h": 15 - } - }, - { - "filename": "519s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 12, - "w": 16, - "h": 16 - }, - "frame": { - "x": 239, - "y": 572, - "w": 16, - "h": 16 - } - }, - { - "filename": "616s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 13, - "w": 18, - "h": 15 - }, - "frame": { - "x": 203, - "y": 583, - "w": 18, - "h": 15 - } - }, { "filename": "540s", "rotated": false, @@ -7101,12 +6786,138 @@ "h": 17 }, "frame": { - "x": 221, - "y": 587, + "x": 212, + "y": 536, "w": 15, "h": 17 } }, + { + "filename": "616", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 13, + "w": 18, + "h": 15 + }, + "frame": { + "x": 227, + "y": 542, + "w": 18, + "h": 15 + } + }, + { + "filename": "517", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 14, + "w": 15, + "h": 14 + }, + "frame": { + "x": 212, + "y": 553, + "w": 15, + "h": 14 + } + }, + { + "filename": "616s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 13, + "w": 18, + "h": 15 + }, + "frame": { + "x": 227, + "y": 557, + "w": 18, + "h": 15 + } + }, + { + "filename": "578s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 16, + "h": 19 + }, + "frame": { + "x": 165, + "y": 620, + "w": 16, + "h": 19 + } + }, + { + "filename": "624", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 8, + "w": 14, + "h": 20 + }, + "frame": { + "x": 169, + "y": 639, + "w": 14, + "h": 20 + } + }, + { + "filename": "574", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 10, + "w": 14, + "h": 18 + }, + "frame": { + "x": 175, + "y": 659, + "w": 14, + "h": 18 + } + }, { "filename": "559", "rotated": false, @@ -7122,12 +6933,327 @@ "h": 16 }, "frame": { - "x": 236, - "y": 588, + "x": 167, + "y": 604, "w": 15, "h": 16 } }, + { + "filename": "566s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 13, + "w": 21, + "h": 15 + }, + "frame": { + "x": 168, + "y": 561, + "w": 21, + "h": 15 + } + }, + { + "filename": "580", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 16, + "h": 19 + }, + "frame": { + "x": 168, + "y": 576, + "w": 16, + "h": 19 + } + }, + { + "filename": "618s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 14, + "w": 20, + "h": 14 + }, + "frame": { + "x": 189, + "y": 562, + "w": 20, + "h": 14 + } + }, + { + "filename": "580s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 16, + "h": 19 + }, + "frame": { + "x": 184, + "y": 576, + "w": 16, + "h": 19 + } + }, + { + "filename": "543", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 14, + "w": 18, + "h": 14 + }, + "frame": { + "x": 209, + "y": 567, + "w": 18, + "h": 14 + } + }, + { + "filename": "543s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 14, + "w": 18, + "h": 14 + }, + "frame": { + "x": 227, + "y": 572, + "w": 18, + "h": 14 + } + }, + { + "filename": "624s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 8, + "w": 14, + "h": 20 + }, + "frame": { + "x": 182, + "y": 595, + "w": 14, + "h": 20 + } + }, + { + "filename": "548s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 10, + "w": 12, + "h": 18 + }, + "frame": { + "x": 196, + "y": 595, + "w": 12, + "h": 18 + } + }, + { + "filename": "517s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 14, + "w": 15, + "h": 14 + }, + "frame": { + "x": 200, + "y": 581, + "w": 15, + "h": 14 + } + }, + { + "filename": "582", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 12, + "w": 12, + "h": 16 + }, + "frame": { + "x": 215, + "y": 581, + "w": 12, + "h": 16 + } + }, + { + "filename": "554s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 13, + "w": 17, + "h": 15 + }, + "frame": { + "x": 227, + "y": 586, + "w": 17, + "h": 15 + } + }, + { + "filename": "570", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 11, + "w": 16, + "h": 17 + }, + "frame": { + "x": 208, + "y": 597, + "w": 16, + "h": 17 + } + }, + { + "filename": "570s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 11, + "w": 16, + "h": 17 + }, + "frame": { + "x": 224, + "y": 601, + "w": 16, + "h": 17 + } + }, + { + "filename": "535s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 15, + "w": 14, + "h": 13 + }, + "frame": { + "x": 182, + "y": 615, + "w": 14, + "h": 13 + } + }, + { + "filename": "582s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 12, + "w": 12, + "h": 16 + }, + "frame": { + "x": 196, + "y": 613, + "w": 12, + "h": 16 + } + }, { "filename": "559s", "rotated": false, @@ -7143,8 +7269,8 @@ "h": 16 }, "frame": { - "x": 201, - "y": 598, + "x": 208, + "y": 614, "w": 15, "h": 16 } @@ -7164,73 +7290,31 @@ "h": 14 }, "frame": { - "x": 199, - "y": 614, - "w": 15, - "h": 14 - } - }, - { - "filename": "577s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 14, - "w": 15, - "h": 14 - }, - "frame": { - "x": 216, - "y": 604, - "w": 15, - "h": 14 - } - }, - { - "filename": "597", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 12, - "w": 15, - "h": 16 - }, - "frame": { - "x": 231, - "y": 604, - "w": 15, - "h": 16 - } - }, - { - "filename": "597s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 12, - "w": 15, - "h": 16 - }, - "frame": { - "x": 214, + "x": 223, "y": 618, "w": 15, - "h": 16 + "h": 14 + } + }, + { + "filename": "602", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 17, + "w": 14, + "h": 11 + }, + "frame": { + "x": 181, + "y": 628, + "w": 14, + "h": 11 } }, { @@ -7248,12 +7332,33 @@ "h": 18 }, "frame": { - "x": 229, - "y": 620, + "x": 183, + "y": 639, "w": 14, "h": 18 } }, + { + "filename": "607", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 10, + "w": 13, + "h": 18 + }, + "frame": { + "x": 189, + "y": 657, + "w": 13, + "h": 18 + } + }, { "filename": "607s", "rotated": false, @@ -7269,12 +7374,96 @@ "h": 18 }, "frame": { - "x": 243, - "y": 620, + "x": 191, + "y": 675, "w": 13, "h": 18 } }, + { + "filename": "524", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 15, + "y": 11, + "w": 11, + "h": 17 + }, + "frame": { + "x": 197, + "y": 629, + "w": 11, + "h": 17 + } + }, + { + "filename": "597", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 12, + "w": 15, + "h": 16 + }, + "frame": { + "x": 208, + "y": 630, + "w": 15, + "h": 16 + } + }, + { + "filename": "602s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 17, + "w": 14, + "h": 11 + }, + "frame": { + "x": 197, + "y": 646, + "w": 14, + "h": 11 + } + }, + { + "filename": "577s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 14, + "w": 15, + "h": 14 + }, + "frame": { + "x": 223, + "y": 632, + "w": 15, + "h": 14 + } + }, { "filename": "613", "rotated": false, @@ -7290,8 +7479,8 @@ "h": 18 }, "frame": { - "x": 176, - "y": 634, + "x": 202, + "y": 657, "w": 14, "h": 18 } @@ -7311,180 +7500,12 @@ "h": 18 }, "frame": { - "x": 174, - "y": 652, + "x": 204, + "y": 675, "w": 14, "h": 18 } }, - { - "filename": "602", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 17, - "w": 14, - "h": 11 - }, - "frame": { - "x": 174, - "y": 670, - "w": 14, - "h": 11 - } - }, - { - "filename": "524", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 15, - "y": 11, - "w": 11, - "h": 17 - }, - "frame": { - "x": 188, - "y": 652, - "w": 11, - "h": 17 - } - }, - { - "filename": "602s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 17, - "w": 14, - "h": 11 - }, - "frame": { - "x": 188, - "y": 669, - "w": 14, - "h": 11 - } - }, - { - "filename": "582", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 12, - "w": 12, - "h": 16 - }, - "frame": { - "x": 202, - "y": 628, - "w": 12, - "h": 16 - } - }, - { - "filename": "588", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 11, - "w": 12, - "h": 17 - }, - "frame": { - "x": 190, - "y": 628, - "w": 12, - "h": 17 - } - }, - { - "filename": "535", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 15, - "w": 14, - "h": 13 - }, - "frame": { - "x": 214, - "y": 634, - "w": 14, - "h": 13 - } - }, - { - "filename": "535s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 15, - "w": 14, - "h": 13 - }, - "frame": { - "x": 228, - "y": 638, - "w": 14, - "h": 13 - } - }, - { - "filename": "590", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 11, - "w": 14, - "h": 17 - }, - "frame": { - "x": 242, - "y": 638, - "w": 14, - "h": 17 - } - }, { "filename": "524s", "rotated": false, @@ -7500,12 +7521,75 @@ "h": 17 }, "frame": { - "x": 199, - "y": 651, + "x": 207, + "y": 693, "w": 11, "h": 17 } }, + { + "filename": "590", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 11, + "w": 14, + "h": 17 + }, + "frame": { + "x": 216, + "y": 646, + "w": 14, + "h": 17 + } + }, + { + "filename": "597s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 12, + "w": 15, + "h": 16 + }, + "frame": { + "x": 230, + "y": 646, + "w": 15, + "h": 16 + } + }, + { + "filename": "588s", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 11, + "w": 12, + "h": 17 + }, + "frame": { + "x": 218, + "y": 663, + "w": 12, + "h": 17 + } + }, { "filename": "590s", "rotated": false, @@ -7521,53 +7605,11 @@ "h": 17 }, "frame": { - "x": 210, - "y": 647, + "x": 230, + "y": 662, "w": 14, "h": 17 } - }, - { - "filename": "588s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 11, - "w": 12, - "h": 17 - }, - "frame": { - "x": 210, - "y": 664, - "w": 12, - "h": 17 - } - }, - { - "filename": "582s", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 12, - "w": 12, - "h": 16 - }, - "frame": { - "x": 224, - "y": 651, - "w": 12, - "h": 16 - } } ] } @@ -7575,6 +7617,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:4b1ede56fa38672ee5e2e5de6f39ff48:58f3f9bd48fa9481c3cd7a0cdebb3e00:20fe181c46701b46ac8f250d40b1bbc1$" + "smartupdate": "$TexturePacker:SmartUpdate:8a278d997d5726b88e2aaa301eb4e4e8:c33243967aadc5b2250e95b079396b1d:20fe181c46701b46ac8f250d40b1bbc1$" } } diff --git a/public/images/pokemon_icons_5.png b/public/images/pokemon_icons_5.png index e0a4ebef303..264120c7499 100644 Binary files a/public/images/pokemon_icons_5.png and b/public/images/pokemon_icons_5.png differ diff --git a/public/images/pokemon_icons_5v.json b/public/images/pokemon_icons_5v.json index 7f5356e7e2a..111cc3ab6ab 100644 --- a/public/images/pokemon_icons_5v.json +++ b/public/images/pokemon_icons_5v.json @@ -4,8 +4,8 @@ "image": "pokemon_icons_5v.png", "format": "RGBA8888", "size": { - "w": 127, - "h": 668 + "w": 123, + "h": 696 }, "scale": 1, "frames": [ @@ -135,6 +135,27 @@ "h": 26 } }, + { + "filename": "635_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 3, + "w": 29, + "h": 25 + }, + "frame": { + "x": 94, + "y": 0, + "w": 29, + "h": 25 + } + }, { "filename": "534_2", "rotated": false, @@ -171,8 +192,8 @@ "h": 25 }, "frame": { - "x": 94, - "y": 0, + "x": 0, + "y": 109, "w": 31, "h": 25 } @@ -214,7 +235,7 @@ }, "frame": { "x": 0, - "y": 109, + "y": 134, "w": 30, "h": 25 } @@ -235,11 +256,32 @@ }, "frame": { "x": 0, - "y": 134, + "y": 159, "w": 30, "h": 25 } }, + { + "filename": "635_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 3, + "w": 29, + "h": 25 + }, + "frame": { + "x": 94, + "y": 25, + "w": 29, + "h": 25 + } + }, { "filename": "645-therian_1", "rotated": false, @@ -256,137 +298,11 @@ }, "frame": { "x": 0, - "y": 159, + "y": 184, "w": 27, "h": 28 } }, - { - "filename": "635_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 29, - "h": 25 - }, - "frame": { - "x": 0, - "y": 187, - "w": 29, - "h": 25 - } - }, - { - "filename": "635_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 3, - "w": 29, - "h": 25 - }, - "frame": { - "x": 0, - "y": 212, - "w": 29, - "h": 25 - } - }, - { - "filename": "609_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 29, - "h": 23 - }, - "frame": { - "x": 0, - "y": 237, - "w": 29, - "h": 23 - } - }, - { - "filename": "609_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 5, - "w": 29, - "h": 23 - }, - "frame": { - "x": 0, - "y": 260, - "w": 29, - "h": 23 - } - }, - { - "filename": "530_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 29, - "h": 22 - }, - "frame": { - "x": 0, - "y": 283, - "w": 29, - "h": 22 - } - }, - { - "filename": "530_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 29, - "h": 22 - }, - "frame": { - "x": 0, - "y": 305, - "w": 29, - "h": 22 - } - }, { "filename": "533_2", "rotated": false, @@ -403,7 +319,7 @@ }, "frame": { "x": 0, - "y": 327, + "y": 212, "w": 27, "h": 24 } @@ -424,7 +340,7 @@ }, "frame": { "x": 0, - "y": 351, + "y": 236, "w": 27, "h": 24 } @@ -445,7 +361,7 @@ }, "frame": { "x": 0, - "y": 375, + "y": 260, "w": 26, "h": 25 } @@ -466,7 +382,7 @@ }, "frame": { "x": 0, - "y": 400, + "y": 285, "w": 26, "h": 25 } @@ -487,7 +403,7 @@ }, "frame": { "x": 0, - "y": 425, + "y": 310, "w": 25, "h": 25 } @@ -508,7 +424,7 @@ }, "frame": { "x": 0, - "y": 450, + "y": 335, "w": 26, "h": 24 } @@ -529,7 +445,7 @@ }, "frame": { "x": 0, - "y": 474, + "y": 359, "w": 26, "h": 24 } @@ -550,7 +466,7 @@ }, "frame": { "x": 0, - "y": 498, + "y": 383, "w": 28, "h": 23 } @@ -571,13 +487,55 @@ }, "frame": { "x": 0, - "y": 521, + "y": 406, "w": 28, "h": 23 } }, { - "filename": "497_2", + "filename": "609_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 5, + "w": 29, + "h": 23 + }, + "frame": { + "x": 0, + "y": 429, + "w": 29, + "h": 23 + } + }, + { + "filename": "609_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 5, + "w": 29, + "h": 23 + }, + "frame": { + "x": 0, + "y": 452, + "w": 29, + "h": 23 + } + }, + { + "filename": "530_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -587,18 +545,18 @@ "spriteSourceSize": { "x": 6, "y": 6, - "w": 28, + "w": 29, "h": 22 }, "frame": { "x": 0, - "y": 544, - "w": 28, + "y": 475, + "w": 29, "h": 22 } }, { - "filename": "497_3", + "filename": "530_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -608,13 +566,13 @@ "spriteSourceSize": { "x": 6, "y": 6, - "w": 28, + "w": 29, "h": 22 }, "frame": { "x": 0, - "y": 566, - "w": 28, + "y": 497, + "w": 29, "h": 22 } }, @@ -634,7 +592,7 @@ }, "frame": { "x": 0, - "y": 588, + "y": 519, "w": 29, "h": 22 } @@ -655,7 +613,7 @@ }, "frame": { "x": 0, - "y": 610, + "y": 541, "w": 29, "h": 22 } @@ -676,53 +634,11 @@ }, "frame": { "x": 0, - "y": 632, + "y": 563, "w": 30, "h": 22 } }, - { - "filename": "546_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 14, - "w": 21, - "h": 14 - }, - "frame": { - "x": 0, - "y": 654, - "w": 21, - "h": 14 - } - }, - { - "filename": "546_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 14, - "w": 21, - "h": 14 - }, - "frame": { - "x": 21, - "y": 654, - "w": 21, - "h": 14 - } - }, { "filename": "569_3", "rotated": false, @@ -738,33 +654,12 @@ "h": 22 }, "frame": { - "x": 32, - "y": 80, + "x": 0, + "y": 585, "w": 30, "h": 22 } }, - { - "filename": "579_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 30, - "h": 21 - }, - "frame": { - "x": 31, - "y": 102, - "w": 30, - "h": 21 - } - }, { "filename": "604_2", "rotated": false, @@ -780,96 +675,12 @@ "h": 22 }, "frame": { - "x": 30, - "y": 123, + "x": 0, + "y": 607, "w": 30, "h": 22 } }, - { - "filename": "579_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 30, - "h": 21 - }, - "frame": { - "x": 30, - "y": 145, - "w": 30, - "h": 21 - } - }, - { - "filename": "579_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 5, - "y": 7, - "w": 30, - "h": 21 - }, - "frame": { - "x": 27, - "y": 166, - "w": 30, - "h": 21 - } - }, - { - "filename": "571_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 29, - "h": 22 - }, - "frame": { - "x": 29, - "y": 187, - "w": 29, - "h": 22 - } - }, - { - "filename": "571_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 29, - "h": 22 - }, - "frame": { - "x": 29, - "y": 209, - "w": 29, - "h": 22 - } - }, { "filename": "604_3", "rotated": false, @@ -885,8 +696,8 @@ "h": 22 }, "frame": { - "x": 29, - "y": 231, + "x": 0, + "y": 629, "w": 30, "h": 22 } @@ -906,12 +717,75 @@ "h": 22 }, "frame": { - "x": 29, - "y": 253, + "x": 0, + "y": 651, "w": 30, "h": 22 } }, + { + "filename": "648-pirouette_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 5, + "w": 15, + "h": 23 + }, + "frame": { + "x": 0, + "y": 673, + "w": 15, + "h": 23 + } + }, + { + "filename": "648-pirouette_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 5, + "w": 15, + "h": 23 + }, + "frame": { + "x": 15, + "y": 673, + "w": 15, + "h": 23 + } + }, + { + "filename": "579_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 5, + "y": 7, + "w": 30, + "h": 21 + }, + "frame": { + "x": 32, + "y": 80, + "w": 30, + "h": 21 + } + }, { "filename": "647-resolute_3", "rotated": false, @@ -927,14 +801,98 @@ "h": 22 }, "frame": { - "x": 29, - "y": 275, + "x": 31, + "y": 101, "w": 30, "h": 22 } }, { - "filename": "593_2", + "filename": "579_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 5, + "y": 7, + "w": 30, + "h": 21 + }, + "frame": { + "x": 31, + "y": 123, + "w": 30, + "h": 21 + } + }, + { + "filename": "571_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 29, + "h": 22 + }, + "frame": { + "x": 30, + "y": 144, + "w": 29, + "h": 22 + } + }, + { + "filename": "571_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 29, + "h": 22 + }, + "frame": { + "x": 30, + "y": 166, + "w": 29, + "h": 22 + } + }, + { + "filename": "579_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 5, + "y": 7, + "w": 30, + "h": 21 + }, + "frame": { + "x": 27, + "y": 188, + "w": 30, + "h": 21 + } + }, + { + "filename": "497_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -948,8 +906,29 @@ "h": 22 }, "frame": { - "x": 29, - "y": 297, + "x": 27, + "y": 209, + "w": 28, + "h": 22 + } + }, + { + "filename": "497_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 28, + "h": 22 + }, + "frame": { + "x": 27, + "y": 231, "w": 28, "h": 22 } @@ -969,14 +948,14 @@ "h": 20 }, "frame": { - "x": 29, - "y": 319, + "x": 27, + "y": 253, "w": 28, "h": 20 } }, { - "filename": "593_3", + "filename": "593_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -990,8 +969,8 @@ "h": 22 }, "frame": { - "x": 27, - "y": 339, + "x": 26, + "y": 273, "w": 28, "h": 22 } @@ -1011,14 +990,14 @@ "h": 20 }, "frame": { - "x": 27, - "y": 361, + "x": 26, + "y": 295, "w": 28, "h": 20 } }, { - "filename": "596_2", + "filename": "496_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -1026,58 +1005,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 28, - "h": 22 - }, - "frame": { - "x": 26, - "y": 381, - "w": 28, - "h": 22 - } - }, - { - "filename": "596_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 6, - "y": 6, - "w": 28, - "h": 22 - }, - "frame": { - "x": 26, - "y": 403, - "w": 28, - "h": 22 - } - }, - { - "filename": "593-f_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 27, - "h": 22 + "x": 9, + "y": 8, + "w": 22, + "h": 20 }, "frame": { "x": 25, - "y": 425, - "w": 27, - "h": 22 + "y": 315, + "w": 22, + "h": 20 } }, { @@ -1096,13 +1033,13 @@ }, "frame": { "x": 26, - "y": 447, + "y": 335, "w": 22, "h": 26 } }, { - "filename": "586-spring_1", + "filename": "518_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -1111,15 +1048,15 @@ }, "spriteSourceSize": { "x": 9, - "y": 4, + "y": 6, "w": 23, - "h": 24 + "h": 22 }, "frame": { "x": 26, - "y": 473, + "y": 361, "w": 23, - "h": 24 + "h": 22 } }, { @@ -1138,11 +1075,32 @@ }, "frame": { "x": 28, - "y": 497, + "y": 383, "w": 22, "h": 26 } }, + { + "filename": "496_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 8, + "w": 22, + "h": 20 + }, + "frame": { + "x": 28, + "y": 409, + "w": 22, + "h": 20 + } + }, { "filename": "640_2", "rotated": false, @@ -1158,8 +1116,8 @@ "h": 26 }, "frame": { - "x": 28, - "y": 523, + "x": 29, + "y": 429, "w": 21, "h": 26 } @@ -1179,12 +1137,33 @@ "h": 26 }, "frame": { - "x": 28, - "y": 549, + "x": 29, + "y": 455, "w": 21, "h": 26 } }, + { + "filename": "586-spring_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 4, + "w": 23, + "h": 24 + }, + "frame": { + "x": 29, + "y": 481, + "w": 23, + "h": 24 + } + }, { "filename": "586-summer_1", "rotated": false, @@ -1201,7 +1180,7 @@ }, "frame": { "x": 29, - "y": 575, + "y": 505, "w": 23, "h": 24 } @@ -1222,7 +1201,7 @@ }, "frame": { "x": 29, - "y": 599, + "y": 529, "w": 23, "h": 24 } @@ -1243,263 +1222,11 @@ }, "frame": { "x": 30, - "y": 623, + "y": 553, "w": 22, "h": 24 } }, - { - "filename": "552_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 25, - "h": 21 - }, - "frame": { - "x": 42, - "y": 647, - "w": 25, - "h": 21 - } - }, - { - "filename": "593-f_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 27, - "h": 22 - }, - "frame": { - "x": 94, - "y": 25, - "w": 27, - "h": 22 - } - }, - { - "filename": "593-f_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 27, - "h": 22 - }, - "frame": { - "x": 67, - "y": 26, - "w": 27, - "h": 22 - } - }, - { - "filename": "634_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 62, - "y": 48, - "w": 26, - "h": 22 - } - }, - { - "filename": "634_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 6, - "w": 26, - "h": 22 - }, - "frame": { - "x": 62, - "y": 70, - "w": 26, - "h": 22 - } - }, - { - "filename": "552_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 7, - "w": 25, - "h": 21 - }, - "frame": { - "x": 62, - "y": 92, - "w": 25, - "h": 21 - } - }, - { - "filename": "611_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 25, - "h": 21 - }, - "frame": { - "x": 61, - "y": 113, - "w": 25, - "h": 21 - } - }, - { - "filename": "620_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 60, - "y": 134, - "w": 25, - "h": 22 - } - }, - { - "filename": "611_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 7, - "y": 7, - "w": 25, - "h": 21 - }, - "frame": { - "x": 60, - "y": 156, - "w": 25, - "h": 21 - } - }, - { - "filename": "620_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 58, - "y": 177, - "w": 25, - "h": 22 - } - }, - { - "filename": "647-ordinary_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 58, - "y": 199, - "w": 25, - "h": 22 - } - }, - { - "filename": "647-ordinary_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 6, - "w": 25, - "h": 22 - }, - "frame": { - "x": 59, - "y": 221, - "w": 25, - "h": 22 - } - }, { "filename": "649-burn_3", "rotated": false, @@ -1515,8 +1242,8 @@ "h": 24 }, "frame": { - "x": 59, - "y": 243, + "x": 30, + "y": 577, "w": 22, "h": 24 } @@ -1536,8 +1263,8 @@ "h": 24 }, "frame": { - "x": 59, - "y": 267, + "x": 30, + "y": 601, "w": 22, "h": 24 } @@ -1557,138 +1284,12 @@ "h": 24 }, "frame": { - "x": 88, - "y": 48, + "x": 30, + "y": 625, "w": 22, "h": 24 } }, - { - "filename": "549_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 7, - "w": 17, - "h": 21 - }, - "frame": { - "x": 110, - "y": 47, - "w": 17, - "h": 21 - } - }, - { - "filename": "496_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 8, - "w": 22, - "h": 20 - }, - "frame": { - "x": 88, - "y": 72, - "w": 22, - "h": 20 - } - }, - { - "filename": "549_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 7, - "w": 17, - "h": 21 - }, - "frame": { - "x": 110, - "y": 68, - "w": 17, - "h": 21 - } - }, - { - "filename": "518_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 87, - "y": 92, - "w": 23, - "h": 22 - } - }, - { - "filename": "518_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 23, - "h": 22 - }, - "frame": { - "x": 86, - "y": 114, - "w": 23, - "h": 22 - } - }, - { - "filename": "585-autumn_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 6, - "w": 18, - "h": 22 - }, - "frame": { - "x": 109, - "y": 114, - "w": 18, - "h": 22 - } - }, { "filename": "649-douse_2", "rotated": false, @@ -1704,56 +1305,14 @@ "h": 24 }, "frame": { - "x": 85, - "y": 136, + "x": 30, + "y": 649, "w": 22, "h": 24 } }, { - "filename": "560_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 7, - "w": 20, - "h": 21 - }, - "frame": { - "x": 107, - "y": 136, - "w": 20, - "h": 21 - } - }, - { - "filename": "560_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 7, - "w": 20, - "h": 21 - }, - "frame": { - "x": 107, - "y": 157, - "w": 20, - "h": 21 - } - }, - { - "filename": "496_3", + "filename": "518_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -1762,15 +1321,456 @@ }, "spriteSourceSize": { "x": 9, - "y": 8, - "w": 22, - "h": 20 + "y": 6, + "w": 23, + "h": 22 }, "frame": { - "x": 85, - "y": 160, + "x": 30, + "y": 673, + "w": 23, + "h": 22 + } + }, + { + "filename": "593_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 28, + "h": 22 + }, + "frame": { + "x": 63, + "y": 26, + "w": 28, + "h": 22 + } + }, + { + "filename": "596_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 28, + "h": 22 + }, + "frame": { + "x": 62, + "y": 48, + "w": 28, + "h": 22 + } + }, + { + "filename": "596_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 6, + "y": 6, + "w": 28, + "h": 22 + }, + "frame": { + "x": 62, + "y": 70, + "w": 28, + "h": 22 + } + }, + { + "filename": "593-f_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 27, + "h": 22 + }, + "frame": { + "x": 90, + "y": 50, + "w": 27, + "h": 22 + } + }, + { + "filename": "593-f_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 27, + "h": 22 + }, + "frame": { + "x": 90, + "y": 72, + "w": 27, + "h": 22 + } + }, + { + "filename": "593-f_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 27, + "h": 22 + }, + "frame": { + "x": 62, + "y": 92, + "w": 27, + "h": 22 + } + }, + { + "filename": "634_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 61, + "y": 114, + "w": 26, + "h": 22 + } + }, + { + "filename": "634_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 6, + "w": 26, + "h": 22 + }, + "frame": { + "x": 89, + "y": 94, + "w": 26, + "h": 22 + } + }, + { + "filename": "552_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 25, + "h": 21 + }, + "frame": { + "x": 87, + "y": 116, + "w": 25, + "h": 21 + } + }, + { + "filename": "552_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 7, + "w": 25, + "h": 21 + }, + "frame": { + "x": 61, + "y": 136, + "w": 25, + "h": 21 + } + }, + { + "filename": "620_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 59, + "y": 157, + "w": 25, + "h": 22 + } + }, + { + "filename": "611_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 25, + "h": 21 + }, + "frame": { + "x": 86, + "y": 137, + "w": 25, + "h": 21 + } + }, + { + "filename": "611_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 7, + "y": 7, + "w": 25, + "h": 21 + }, + "frame": { + "x": 84, + "y": 158, + "w": 25, + "h": 21 + } + }, + { + "filename": "542_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 14, + "h": 21 + }, + "frame": { + "x": 109, + "y": 158, + "w": 14, + "h": 21 + } + }, + { + "filename": "548_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 10, + "w": 12, + "h": 18 + }, + "frame": { + "x": 111, + "y": 137, + "w": 12, + "h": 18 + } + }, + { + "filename": "620_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 59, + "y": 179, + "w": 25, + "h": 22 + } + }, + { + "filename": "647-ordinary_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 84, + "y": 179, + "w": 25, + "h": 22 + } + }, + { + "filename": "542_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 14, + "h": 21 + }, + "frame": { + "x": 109, + "y": 179, + "w": 14, + "h": 21 + } + }, + { + "filename": "648-aria_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 14, + "h": 21 + }, + "frame": { + "x": 109, + "y": 200, + "w": 14, + "h": 21 + } + }, + { + "filename": "647-ordinary_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 6, + "w": 25, + "h": 22 + }, + "frame": { + "x": 57, + "y": 201, + "w": 25, + "h": 22 + } + }, + { + "filename": "531_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 6, "w": 22, - "h": 20 + "h": 22 + }, + "frame": { + "x": 82, + "y": 201, + "w": 22, + "h": 22 } }, { @@ -1788,8 +1788,8 @@ "h": 24 }, "frame": { - "x": 83, - "y": 180, + "x": 55, + "y": 223, "w": 22, "h": 24 } @@ -1809,54 +1809,12 @@ "h": 24 }, "frame": { - "x": 105, - "y": 180, + "x": 55, + "y": 247, "w": 22, "h": 24 } }, - { - "filename": "632_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 12, - "w": 24, - "h": 16 - }, - "frame": { - "x": 83, - "y": 204, - "w": 24, - "h": 16 - } - }, - { - "filename": "560_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 7, - "w": 20, - "h": 21 - }, - "frame": { - "x": 107, - "y": 204, - "w": 20, - "h": 21 - } - }, { "filename": "649-shock_3", "rotated": false, @@ -1872,33 +1830,12 @@ "h": 24 }, "frame": { - "x": 84, - "y": 220, + "x": 77, + "y": 223, "w": 22, "h": 24 } }, - { - "filename": "547_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 21, - "h": 22 - }, - "frame": { - "x": 106, - "y": 225, - "w": 21, - "h": 22 - } - }, { "filename": "649_2", "rotated": false, @@ -1914,8 +1851,8 @@ "h": 24 }, "frame": { - "x": 81, - "y": 244, + "x": 77, + "y": 247, "w": 22, "h": 24 } @@ -1935,8 +1872,8 @@ "h": 19 }, "frame": { - "x": 103, - "y": 247, + "x": 99, + "y": 223, "w": 24, "h": 19 } @@ -1956,12 +1893,54 @@ "h": 19 }, "frame": { - "x": 103, - "y": 266, + "x": 99, + "y": 242, "w": 24, "h": 19 } }, + { + "filename": "632_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 12, + "w": 24, + "h": 16 + }, + "frame": { + "x": 99, + "y": 261, + "w": 24, + "h": 16 + } + }, + { + "filename": "592-f_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 47, + "y": 315, + "w": 19, + "h": 20 + } + }, { "filename": "649_3", "rotated": false, @@ -1977,75 +1956,12 @@ "h": 24 }, "frame": { - "x": 81, - "y": 268, + "x": 48, + "y": 335, "w": 22, "h": 24 } }, - { - "filename": "632_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 8, - "y": 12, - "w": 24, - "h": 16 - }, - "frame": { - "x": 103, - "y": 285, - "w": 24, - "h": 16 - } - }, - { - "filename": "648-pirouette_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 5, - "w": 15, - "h": 23 - }, - "frame": { - "x": 110, - "y": 89, - "w": 15, - "h": 23 - } - }, - { - "filename": "531_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 6, - "w": 22, - "h": 22 - }, - "frame": { - "x": 59, - "y": 291, - "w": 22, - "h": 22 - } - }, { "filename": "531_3", "rotated": false, @@ -2061,8 +1977,8 @@ "h": 22 }, "frame": { - "x": 81, - "y": 292, + "x": 49, + "y": 359, "w": 22, "h": 22 } @@ -2082,8 +1998,8 @@ "h": 22 }, "frame": { - "x": 57, - "y": 313, + "x": 50, + "y": 381, "w": 22, "h": 22 } @@ -2103,14 +2019,14 @@ "h": 22 }, "frame": { - "x": 79, - "y": 314, + "x": 50, + "y": 403, "w": 22, "h": 22 } }, { - "filename": "544_2", + "filename": "547_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -2119,57 +2035,15 @@ }, "spriteSourceSize": { "x": 9, - "y": 12, - "w": 22, - "h": 16 + "y": 6, + "w": 21, + "h": 22 }, "frame": { - "x": 103, - "y": 301, - "w": 22, - "h": 16 - } - }, - { - "filename": "572_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 9, - "w": 22, - "h": 19 - }, - "frame": { - "x": 101, - "y": 317, - "w": 22, - "h": 19 - } - }, - { - "filename": "544_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 12, - "w": 22, - "h": 16 - }, - "frame": { - "x": 57, - "y": 335, - "w": 22, - "h": 16 + "x": 50, + "y": 425, + "w": 21, + "h": 22 } }, { @@ -2187,14 +2061,14 @@ "h": 22 }, "frame": { - "x": 55, - "y": 351, + "x": 50, + "y": 447, "w": 21, "h": 22 } }, { - "filename": "551_2", + "filename": "494_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -2202,20 +2076,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, - "y": 13, - "w": 22, - "h": 16 + "x": 11, + "y": 6, + "w": 18, + "h": 22 }, "frame": { - "x": 79, - "y": 336, - "w": 22, - "h": 16 + "x": 52, + "y": 469, + "w": 18, + "h": 22 } }, { - "filename": "551_3", + "filename": "494_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -2223,41 +2097,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 8, - "y": 13, - "w": 22, - "h": 16 + "x": 11, + "y": 6, + "w": 18, + "h": 22 }, "frame": { - "x": 101, - "y": 336, - "w": 22, - "h": 16 + "x": 52, + "y": 491, + "w": 18, + "h": 22 } }, { - "filename": "572_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 9, - "w": 22, - "h": 19 - }, - "frame": { - "x": 76, - "y": 352, - "w": 22, - "h": 19 - } - }, - { - "filename": "603_2", + "filename": "585-autumn_1", "rotated": false, "trimmed": true, "sourceSize": { @@ -2266,78 +2119,15 @@ }, "spriteSourceSize": { "x": 10, - "y": 9, - "w": 21, - "h": 19 + "y": 6, + "w": 18, + "h": 22 }, "frame": { - "x": 98, - "y": 352, - "w": 21, - "h": 19 - } - }, - { - "filename": "529_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 11, - "w": 21, - "h": 17 - }, - "frame": { - "x": 55, - "y": 373, - "w": 21, - "h": 17 - } - }, - { - "filename": "603_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 9, - "w": 21, - "h": 19 - }, - "frame": { - "x": 76, - "y": 371, - "w": 21, - "h": 19 - } - }, - { - "filename": "568_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 10, - "w": 21, - "h": 18 - }, - "frame": { - "x": 97, - "y": 371, - "w": 21, - "h": 18 + "x": 52, + "y": 513, + "w": 18, + "h": 22 } }, { @@ -2355,8 +2145,8 @@ "h": 22 }, "frame": { - "x": 54, - "y": 390, + "x": 52, + "y": 535, "w": 18, "h": 22 } @@ -2376,96 +2166,12 @@ "h": 22 }, "frame": { - "x": 72, - "y": 390, + "x": 52, + "y": 557, "w": 18, "h": 22 } }, - { - "filename": "562_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 12, - "w": 22, - "h": 16 - }, - "frame": { - "x": 54, - "y": 412, - "w": 22, - "h": 16 - } - }, - { - "filename": "568_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 10, - "w": 21, - "h": 18 - }, - "frame": { - "x": 52, - "y": 428, - "w": 21, - "h": 18 - } - }, - { - "filename": "495_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 11, - "w": 20, - "h": 17 - }, - "frame": { - "x": 76, - "y": 412, - "w": 20, - "h": 17 - } - }, - { - "filename": "529_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 11, - "w": 21, - "h": 17 - }, - "frame": { - "x": 73, - "y": 429, - "w": 21, - "h": 17 - } - }, { "filename": "585-winter_1", "rotated": false, @@ -2481,14 +2187,14 @@ "h": 22 }, "frame": { - "x": 90, - "y": 390, + "x": 52, + "y": 579, "w": 18, "h": 22 } }, { - "filename": "592-f_1", + "filename": "560_1", "rotated": false, "trimmed": true, "sourceSize": { @@ -2497,15 +2203,57 @@ }, "spriteSourceSize": { "x": 10, - "y": 8, - "w": 19, - "h": 20 + "y": 7, + "w": 20, + "h": 21 }, "frame": { - "x": 108, - "y": 389, - "w": 19, - "h": 20 + "x": 52, + "y": 601, + "w": 20, + "h": 21 + } + }, + { + "filename": "560_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 7, + "w": 20, + "h": 21 + }, + "frame": { + "x": 52, + "y": 622, + "w": 20, + "h": 21 + } + }, + { + "filename": "560_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 7, + "w": 20, + "h": 21 + }, + "frame": { + "x": 52, + "y": 643, + "w": 20, + "h": 21 } }, { @@ -2523,14 +2271,14 @@ "h": 20 }, "frame": { - "x": 108, - "y": 409, + "x": 53, + "y": 664, "w": 19, "h": 20 } }, { - "filename": "548_1", + "filename": "632_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -2538,20 +2286,20 @@ "h": 30 }, "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 12, - "h": 18 + "x": 8, + "y": 12, + "w": 24, + "h": 16 }, "frame": { - "x": 96, - "y": 412, - "w": 12, - "h": 18 + "x": 55, + "y": 271, + "w": 24, + "h": 16 } }, { - "filename": "592-f_3", + "filename": "495_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -2560,19 +2308,103 @@ }, "spriteSourceSize": { "x": 10, - "y": 8, - "w": 19, - "h": 20 + "y": 11, + "w": 20, + "h": 17 }, "frame": { - "x": 108, - "y": 429, - "w": 19, - "h": 20 + "x": 79, + "y": 271, + "w": 20, + "h": 17 } }, { - "filename": "542_2", + "filename": "572_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 9, + "w": 22, + "h": 19 + }, + "frame": { + "x": 54, + "y": 287, + "w": 22, + "h": 19 + } + }, + { + "filename": "572_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 9, + "w": 22, + "h": 19 + }, + "frame": { + "x": 76, + "y": 288, + "w": 22, + "h": 19 + } + }, + { + "filename": "544_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 22, + "h": 16 + }, + "frame": { + "x": 99, + "y": 277, + "w": 22, + "h": 16 + } + }, + { + "filename": "544_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 22, + "h": 16 + }, + "frame": { + "x": 98, + "y": 293, + "w": 22, + "h": 16 + } + }, + { + "filename": "602_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -2581,141 +2413,15 @@ }, "spriteSourceSize": { "x": 13, - "y": 7, + "y": 17, "w": 14, - "h": 21 + "h": 11 }, "frame": { - "x": 94, - "y": 430, + "x": 53, + "y": 684, "w": 14, - "h": 21 - } - }, - { - "filename": "592_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 108, - "y": 449, - "w": 19, - "h": 20 - } - }, - { - "filename": "648-pirouette_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 5, - "w": 15, - "h": 23 - }, - "frame": { - "x": 48, - "y": 447, - "w": 15, - "h": 23 - } - }, - { - "filename": "592_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 8, - "w": 19, - "h": 20 - }, - "frame": { - "x": 63, - "y": 446, - "w": 19, - "h": 20 - } - }, - { - "filename": "548_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 12, - "h": 18 - }, - "frame": { - "x": 82, - "y": 446, - "w": 12, - "h": 18 - } - }, - { - "filename": "542_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 14, - "h": 21 - }, - "frame": { - "x": 94, - "y": 451, - "w": 14, - "h": 21 - } - }, - { - "filename": "608_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 10, - "w": 19, - "h": 18 - }, - "frame": { - "x": 108, - "y": 469, - "w": 19, - "h": 18 + "h": 11 } }, { @@ -2733,8 +2439,197 @@ "h": 22 }, "frame": { - "x": 49, - "y": 470, + "x": 71, + "y": 425, + "w": 15, + "h": 22 + } + }, + { + "filename": "606_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 15, + "h": 22 + }, + "frame": { + "x": 71, + "y": 447, + "w": 15, + "h": 22 + } + }, + { + "filename": "549_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 7, + "w": 17, + "h": 21 + }, + "frame": { + "x": 70, + "y": 469, + "w": 17, + "h": 21 + } + }, + { + "filename": "549_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 7, + "w": 17, + "h": 21 + }, + "frame": { + "x": 70, + "y": 490, + "w": 17, + "h": 21 + } + }, + { + "filename": "592-f_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 70, + "y": 511, + "w": 19, + "h": 20 + } + }, + { + "filename": "592_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 70, + "y": 531, + "w": 19, + "h": 20 + } + }, + { + "filename": "592_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 8, + "w": 19, + "h": 20 + }, + "frame": { + "x": 70, + "y": 551, + "w": 19, + "h": 20 + } + }, + { + "filename": "603_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 9, + "w": 21, + "h": 19 + }, + "frame": { + "x": 70, + "y": 571, + "w": 21, + "h": 19 + } + }, + { + "filename": "602_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 17, + "w": 14, + "h": 11 + }, + "frame": { + "x": 70, + "y": 590, + "w": 14, + "h": 11 + } + }, + { + "filename": "606_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 6, + "w": 15, + "h": 22 + }, + "frame": { + "x": 72, + "y": 601, "w": 15, "h": 22 } @@ -2754,180 +2649,12 @@ "h": 20 }, "frame": { - "x": 64, - "y": 466, + "x": 72, + "y": 623, "w": 18, "h": 20 } }, - { - "filename": "548_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 14, - "y": 10, - "w": 12, - "h": 18 - }, - "frame": { - "x": 82, - "y": 464, - "w": 12, - "h": 18 - } - }, - { - "filename": "648-aria_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 14, - "h": 21 - }, - "frame": { - "x": 94, - "y": 472, - "w": 14, - "h": 21 - } - }, - { - "filename": "608_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 10, - "w": 19, - "h": 18 - }, - "frame": { - "x": 108, - "y": 487, - "w": 19, - "h": 18 - } - }, - { - "filename": "606_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 15, - "h": 22 - }, - "frame": { - "x": 50, - "y": 492, - "w": 15, - "h": 22 - } - }, - { - "filename": "606_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 6, - "w": 15, - "h": 22 - }, - "frame": { - "x": 65, - "y": 486, - "w": 15, - "h": 22 - } - }, - { - "filename": "648-aria_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 7, - "w": 14, - "h": 21 - }, - "frame": { - "x": 80, - "y": 486, - "w": 14, - "h": 21 - } - }, - { - "filename": "602_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 17, - "w": 14, - "h": 11 - }, - "frame": { - "x": 94, - "y": 493, - "w": 14, - "h": 11 - } - }, - { - "filename": "495_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 11, - "w": 20, - "h": 17 - }, - "frame": { - "x": 50, - "y": 514, - "w": 20, - "h": 17 - } - }, { "filename": "610_3", "rotated": false, @@ -2943,12 +2670,138 @@ "h": 20 }, "frame": { - "x": 49, - "y": 531, + "x": 72, + "y": 643, "w": 18, "h": 20 } }, + { + "filename": "603_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 9, + "w": 21, + "h": 19 + }, + "frame": { + "x": 72, + "y": 663, + "w": 21, + "h": 19 + } + }, + { + "filename": "546_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 14, + "w": 21, + "h": 14 + }, + "frame": { + "x": 72, + "y": 682, + "w": 21, + "h": 14 + } + }, + { + "filename": "568_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 10, + "w": 21, + "h": 18 + }, + "frame": { + "x": 66, + "y": 307, + "w": 21, + "h": 18 + } + }, + { + "filename": "551_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 13, + "w": 22, + "h": 16 + }, + "frame": { + "x": 87, + "y": 309, + "w": 22, + "h": 16 + } + }, + { + "filename": "648-aria_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 7, + "w": 14, + "h": 21 + }, + "frame": { + "x": 109, + "y": 309, + "w": 14, + "h": 21 + } + }, + { + "filename": "568_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 10, + "w": 21, + "h": 18 + }, + "frame": { + "x": 70, + "y": 325, + "w": 21, + "h": 18 + } + }, { "filename": "619_2", "rotated": false, @@ -2964,159 +2817,12 @@ "h": 19 }, "frame": { - "x": 49, - "y": 551, + "x": 91, + "y": 325, "w": 18, "h": 19 } }, - { - "filename": "633_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 8, - "w": 16, - "h": 20 - }, - "frame": { - "x": 52, - "y": 570, - "w": 16, - "h": 20 - } - }, - { - "filename": "633_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 8, - "w": 16, - "h": 20 - }, - "frame": { - "x": 52, - "y": 590, - "w": 16, - "h": 20 - } - }, - { - "filename": "578_1", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 16, - "h": 19 - }, - "frame": { - "x": 52, - "y": 610, - "w": 16, - "h": 19 - } - }, - { - "filename": "622_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 10, - "w": 18, - "h": 18 - }, - "frame": { - "x": 52, - "y": 629, - "w": 18, - "h": 18 - } - }, - { - "filename": "578_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 16, - "h": 19 - }, - "frame": { - "x": 70, - "y": 508, - "w": 16, - "h": 19 - } - }, - { - "filename": "578_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 9, - "w": 16, - "h": 19 - }, - "frame": { - "x": 86, - "y": 507, - "w": 16, - "h": 19 - } - }, - { - "filename": "562_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 12, - "w": 22, - "h": 16 - }, - "frame": { - "x": 102, - "y": 505, - "w": 22, - "h": 16 - } - }, { "filename": "595_2", "rotated": false, @@ -3132,14 +2838,14 @@ "h": 16 }, "frame": { - "x": 102, - "y": 521, + "x": 70, + "y": 343, "w": 21, "h": 16 } }, { - "filename": "570_2", + "filename": "495_3", "rotated": false, "trimmed": true, "sourceSize": { @@ -3147,36 +2853,15 @@ "h": 30 }, "spriteSourceSize": { - "x": 12, + "x": 10, "y": 11, - "w": 16, + "w": 20, "h": 17 }, "frame": { - "x": 86, - "y": 526, - "w": 16, - "h": 17 - } - }, - { - "filename": "570_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 12, - "y": 11, - "w": 16, - "h": 17 - }, - "frame": { - "x": 70, - "y": 527, - "w": 16, + "x": 71, + "y": 359, + "w": 20, "h": 17 } }, @@ -3195,159 +2880,12 @@ "h": 19 }, "frame": { - "x": 67, - "y": 544, + "x": 91, + "y": 344, "w": 18, "h": 19 } }, - { - "filename": "622_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 10, - "w": 18, - "h": 18 - }, - "frame": { - "x": 68, - "y": 563, - "w": 18, - "h": 18 - } - }, - { - "filename": "541_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 12, - "w": 20, - "h": 16 - }, - "frame": { - "x": 68, - "y": 581, - "w": 20, - "h": 16 - } - }, - { - "filename": "541_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 10, - "y": 12, - "w": 20, - "h": 16 - }, - "frame": { - "x": 68, - "y": 597, - "w": 20, - "h": 16 - } - }, - { - "filename": "595_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 9, - "y": 12, - "w": 21, - "h": 16 - }, - "frame": { - "x": 68, - "y": 613, - "w": 21, - "h": 16 - } - }, - { - "filename": "540_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 11, - "w": 15, - "h": 17 - }, - "frame": { - "x": 70, - "y": 629, - "w": 15, - "h": 17 - } - }, - { - "filename": "543_2", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 11, - "y": 14, - "w": 18, - "h": 14 - }, - "frame": { - "x": 102, - "y": 537, - "w": 18, - "h": 14 - } - }, - { - "filename": "602_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 17, - "w": 14, - "h": 11 - }, - "frame": { - "x": 88, - "y": 543, - "w": 14, - "h": 11 - } - }, { "filename": "605_1", "rotated": false, @@ -3363,12 +2901,96 @@ "h": 19 }, "frame": { - "x": 67, - "y": 647, + "x": 109, + "y": 330, "w": 13, "h": 19 } }, + { + "filename": "608_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 10, + "w": 19, + "h": 18 + }, + "frame": { + "x": 72, + "y": 376, + "w": 19, + "h": 18 + } + }, + { + "filename": "608_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 10, + "w": 19, + "h": 18 + }, + "frame": { + "x": 72, + "y": 394, + "w": 19, + "h": 18 + } + }, + { + "filename": "622_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 10, + "w": 18, + "h": 18 + }, + "frame": { + "x": 91, + "y": 363, + "w": 18, + "h": 18 + } + }, + { + "filename": "622_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 10, + "w": 18, + "h": 18 + }, + "frame": { + "x": 91, + "y": 381, + "w": 18, + "h": 18 + } + }, { "filename": "605_2", "rotated": false, @@ -3384,33 +3006,12 @@ "h": 19 }, "frame": { - "x": 80, - "y": 646, + "x": 109, + "y": 349, "w": 13, "h": 19 } }, - { - "filename": "540_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 11, - "w": 15, - "h": 17 - }, - "frame": { - "x": 85, - "y": 629, - "w": 15, - "h": 17 - } - }, { "filename": "605_3", "rotated": false, @@ -3426,12 +3027,327 @@ "h": 19 }, "frame": { - "x": 93, - "y": 646, + "x": 109, + "y": 368, "w": 13, "h": 19 } }, + { + "filename": "529_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 11, + "w": 21, + "h": 17 + }, + "frame": { + "x": 91, + "y": 399, + "w": 21, + "h": 17 + } + }, + { + "filename": "529_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 11, + "w": 21, + "h": 17 + }, + "frame": { + "x": 86, + "y": 416, + "w": 21, + "h": 17 + } + }, + { + "filename": "633_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 8, + "w": 16, + "h": 20 + }, + "frame": { + "x": 107, + "y": 416, + "w": 16, + "h": 20 + } + }, + { + "filename": "595_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 21, + "h": 16 + }, + "frame": { + "x": 86, + "y": 433, + "w": 21, + "h": 16 + } + }, + { + "filename": "633_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 8, + "w": 16, + "h": 20 + }, + "frame": { + "x": 107, + "y": 436, + "w": 16, + "h": 20 + } + }, + { + "filename": "546_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 14, + "w": 21, + "h": 14 + }, + "frame": { + "x": 86, + "y": 449, + "w": 21, + "h": 14 + } + }, + { + "filename": "578_1", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 16, + "h": 19 + }, + "frame": { + "x": 107, + "y": 456, + "w": 16, + "h": 19 + } + }, + { + "filename": "541_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 12, + "w": 20, + "h": 16 + }, + "frame": { + "x": 87, + "y": 463, + "w": 20, + "h": 16 + } + }, + { + "filename": "578_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 16, + "h": 19 + }, + "frame": { + "x": 107, + "y": 475, + "w": 16, + "h": 19 + } + }, + { + "filename": "541_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 10, + "y": 12, + "w": 20, + "h": 16 + }, + "frame": { + "x": 87, + "y": 479, + "w": 20, + "h": 16 + } + }, + { + "filename": "551_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 8, + "y": 13, + "w": 22, + "h": 16 + }, + "frame": { + "x": 87, + "y": 495, + "w": 22, + "h": 16 + } + }, + { + "filename": "562_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 22, + "h": 16 + }, + "frame": { + "x": 89, + "y": 511, + "w": 22, + "h": 16 + } + }, + { + "filename": "562_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 9, + "y": 12, + "w": 22, + "h": 16 + }, + "frame": { + "x": 89, + "y": 527, + "w": 22, + "h": 16 + } + }, + { + "filename": "578_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 9, + "w": 16, + "h": 19 + }, + "frame": { + "x": 89, + "y": 543, + "w": 16, + "h": 19 + } + }, + { + "filename": "543_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 11, + "y": 14, + "w": 18, + "h": 14 + }, + "frame": { + "x": 105, + "y": 543, + "w": 18, + "h": 14 + } + }, { "filename": "543_3", "rotated": false, @@ -3447,12 +3363,54 @@ "h": 14 }, "frame": { - "x": 102, - "y": 551, + "x": 105, + "y": 557, "w": 18, "h": 14 } }, + { + "filename": "548_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 10, + "w": 12, + "h": 18 + }, + "frame": { + "x": 111, + "y": 494, + "w": 12, + "h": 18 + } + }, + { + "filename": "548_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 14, + "y": 10, + "w": 12, + "h": 18 + }, + "frame": { + "x": 111, + "y": 512, + "w": 12, + "h": 18 + } + }, { "filename": "607_2", "rotated": false, @@ -3468,14 +3426,14 @@ "h": 18 }, "frame": { - "x": 89, - "y": 554, + "x": 91, + "y": 562, "w": 13, "h": 18 } }, { - "filename": "517_2", + "filename": "570_2", "rotated": false, "trimmed": true, "sourceSize": { @@ -3483,16 +3441,16 @@ "h": 30 }, "spriteSourceSize": { - "x": 13, - "y": 14, - "w": 15, - "h": 14 + "x": 12, + "y": 11, + "w": 16, + "h": 17 }, "frame": { - "x": 102, - "y": 565, - "w": 15, - "h": 14 + "x": 104, + "y": 571, + "w": 16, + "h": 17 } }, { @@ -3510,12 +3468,117 @@ "h": 18 }, "frame": { - "x": 88, - "y": 572, + "x": 91, + "y": 580, "w": 13, "h": 18 } }, + { + "filename": "570_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 12, + "y": 11, + "w": 16, + "h": 17 + }, + "frame": { + "x": 87, + "y": 598, + "w": 16, + "h": 17 + } + }, + { + "filename": "517_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 14, + "w": 15, + "h": 14 + }, + "frame": { + "x": 104, + "y": 588, + "w": 15, + "h": 14 + } + }, + { + "filename": "517_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 14, + "w": 15, + "h": 14 + }, + "frame": { + "x": 103, + "y": 602, + "w": 15, + "h": 14 + } + }, + { + "filename": "540_2", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 11, + "w": 15, + "h": 17 + }, + "frame": { + "x": 90, + "y": 616, + "w": 15, + "h": 17 + } + }, + { + "filename": "540_3", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 40, + "h": 30 + }, + "spriteSourceSize": { + "x": 13, + "y": 11, + "w": 15, + "h": 17 + }, + "frame": { + "x": 90, + "y": 633, + "w": 15, + "h": 17 + } + }, { "filename": "559_1", "rotated": false, @@ -3531,8 +3594,8 @@ "h": 16 }, "frame": { - "x": 88, - "y": 590, + "x": 105, + "y": 616, "w": 15, "h": 16 } @@ -3552,8 +3615,8 @@ "h": 16 }, "frame": { - "x": 89, - "y": 606, + "x": 105, + "y": 632, "w": 15, "h": 16 } @@ -3573,33 +3636,12 @@ "h": 16 }, "frame": { - "x": 103, - "y": 579, + "x": 105, + "y": 648, "w": 15, "h": 16 } }, - { - "filename": "517_3", - "rotated": false, - "trimmed": true, - "sourceSize": { - "w": 40, - "h": 30 - }, - "spriteSourceSize": { - "x": 13, - "y": 14, - "w": 15, - "h": 14 - }, - "frame": { - "x": 104, - "y": 595, - "w": 15, - "h": 14 - } - }, { "filename": "577_1", "rotated": false, @@ -3615,8 +3657,8 @@ "h": 14 }, "frame": { - "x": 104, - "y": 609, + "x": 93, + "y": 664, "w": 15, "h": 14 } @@ -3636,8 +3678,8 @@ "h": 14 }, "frame": { - "x": 100, - "y": 623, + "x": 108, + "y": 664, "w": 15, "h": 14 } @@ -3657,8 +3699,8 @@ "h": 14 }, "frame": { - "x": 106, - "y": 637, + "x": 93, + "y": 678, "w": 15, "h": 14 } @@ -3669,6 +3711,6 @@ "meta": { "app": "https://www.codeandweb.com/texturepacker", "version": "3.0", - "smartupdate": "$TexturePacker:SmartUpdate:018cb8e5f06a9ed9edd0bdc8721daa73:985d20f8fcceb349f1b7fba26ba674e8:f1931bc28ee7f32dba7543723757cf2a$" + "smartupdate": "$TexturePacker:SmartUpdate:982d6d8f8bd84ab35fcc0559c4fe5188:e14c2b4fa19e2d528ab6fda3d5a817e6:f1931bc28ee7f32dba7543723757cf2a$" } } diff --git a/public/images/pokemon_icons_5v.png b/public/images/pokemon_icons_5v.png index 0f4099b575f..d82ea5cc881 100644 Binary files a/public/images/pokemon_icons_5v.png and b/public/images/pokemon_icons_5v.png differ diff --git a/public/images/trainer/aqua_admin_f.json b/public/images/trainer/aqua_admin_f.json new file mode 100644 index 00000000000..35e6e43edc3 --- /dev/null +++ b/public/images/trainer/aqua_admin_f.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "aqua_admin_f.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:efd07ff3ed1e610150a4b8ca18974343:d9b85b9eb11182e9e4669e2bd8b08694:72b7b50231708a9486d5f315824e4df1$" + } +} diff --git a/public/images/trainer/aqua_admin_f.png b/public/images/trainer/aqua_admin_f.png new file mode 100644 index 00000000000..505dce1b110 Binary files /dev/null and b/public/images/trainer/aqua_admin_f.png differ diff --git a/public/images/trainer/aqua_admin_m.json b/public/images/trainer/aqua_admin_m.json new file mode 100644 index 00000000000..f52412623cc --- /dev/null +++ b/public/images/trainer/aqua_admin_m.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "aqua_admin_m.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:831f5748dad92911b10a1cb358ee2dae:a3bf81bbaa3b49cad5e0e549cf94563b:bb6befc9383c9c08837183ae2a7a80c1$" + } +} \ No newline at end of file diff --git a/public/images/trainer/aqua_admin_m.png b/public/images/trainer/aqua_admin_m.png new file mode 100644 index 00000000000..a4f7893e565 Binary files /dev/null and b/public/images/trainer/aqua_admin_m.png differ diff --git a/public/images/trainer/flare_admin_f.json b/public/images/trainer/flare_admin_f.json new file mode 100644 index 00000000000..1e39a3fcb03 --- /dev/null +++ b/public/images/trainer/flare_admin_f.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "flare_admin_f.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:831f5748dad92911b10a1cb358ee2dae:a3bf81bbaa3b49cad5e0e549cf94563b:bb6befc9383c9c08837183ae2a7a80c1$" + } +} \ No newline at end of file diff --git a/public/images/trainer/flare_admin_f.png b/public/images/trainer/flare_admin_f.png new file mode 100644 index 00000000000..14d8abdaa39 Binary files /dev/null and b/public/images/trainer/flare_admin_f.png differ diff --git a/public/images/trainer/flare_admin_m.json b/public/images/trainer/flare_admin_m.json new file mode 100644 index 00000000000..4228fac6af0 --- /dev/null +++ b/public/images/trainer/flare_admin_m.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "flare_admin_m.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:c30bf82452209a923f4becf13d275a9a:a6355b09f92c9c0388d0b919010f587f:0638dbf213f8a974eb5af76eb1e5ddeb$" + } +} diff --git a/public/images/trainer/flare_admin_m.png b/public/images/trainer/flare_admin_m.png new file mode 100644 index 00000000000..f431c20a479 Binary files /dev/null and b/public/images/trainer/flare_admin_m.png differ diff --git a/public/images/trainer/galactic_admin_f.json b/public/images/trainer/galactic_admin_f.json new file mode 100644 index 00000000000..eae1da8fff1 --- /dev/null +++ b/public/images/trainer/galactic_admin_f.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "galactic_admin_f.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:831f5748dad92911b10a1cb358ee2dae:a3bf81bbaa3b49cad5e0e549cf94563b:bb6befc9383c9c08837183ae2a7a80c1$" + } +} \ No newline at end of file diff --git a/public/images/trainer/galactic_admin_f.png b/public/images/trainer/galactic_admin_f.png new file mode 100644 index 00000000000..ca7af064bc8 Binary files /dev/null and b/public/images/trainer/galactic_admin_f.png differ diff --git a/public/images/trainer/galactic_admin_m.json b/public/images/trainer/galactic_admin_m.json new file mode 100644 index 00000000000..f404c2247e9 --- /dev/null +++ b/public/images/trainer/galactic_admin_m.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "galactic_admin_m.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:3012867f03f02c4ee67a8ab3ad5a000e:77a5f60f1adc158664b3b2ee17bf30fe:7e8259b5177c0a76e5d02d6bdc66affe$" + } +} diff --git a/public/images/trainer/galactic_admin_m.png b/public/images/trainer/galactic_admin_m.png new file mode 100644 index 00000000000..cb59227c7a7 Binary files /dev/null and b/public/images/trainer/galactic_admin_m.png differ diff --git a/public/images/trainer/magma_admin_f.json b/public/images/trainer/magma_admin_f.json new file mode 100644 index 00000000000..95e00803df4 --- /dev/null +++ b/public/images/trainer/magma_admin_f.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "magma_admin_f.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:831f5748dad92911b10a1cb358ee2dae:a3bf81bbaa3b49cad5e0e549cf94563b:bb6befc9383c9c08837183ae2a7a80c1$" + } +} \ No newline at end of file diff --git a/public/images/trainer/magma_admin_f.png b/public/images/trainer/magma_admin_f.png new file mode 100644 index 00000000000..979fe6ae837 Binary files /dev/null and b/public/images/trainer/magma_admin_f.png differ diff --git a/public/images/trainer/magma_admin_m.json b/public/images/trainer/magma_admin_m.json new file mode 100644 index 00000000000..977e911eb69 --- /dev/null +++ b/public/images/trainer/magma_admin_m.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "magma_admin_m.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:f63ad48affc076f60fae78992c96a2bf:80928b32710abcb28c07c6fc5a425d99:3b961d8852b62aaf24ceb2030c036515$" + } +} diff --git a/public/images/trainer/magma_admin_m.png b/public/images/trainer/magma_admin_m.png new file mode 100644 index 00000000000..93e3a17539d Binary files /dev/null and b/public/images/trainer/magma_admin_m.png differ diff --git a/public/images/trainer/plasma_sage.json b/public/images/trainer/plasma_sage.json new file mode 100644 index 00000000000..05e75141ec0 --- /dev/null +++ b/public/images/trainer/plasma_sage.json @@ -0,0 +1,2120 @@ +{ + "textures": [ + { + "image": "plasma_sage.png", + "format": "RGBA8888", + "size": { + "w": 250, + "h": 250 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 11, + "y": 1, + "w": 56, + "h": 79 + }, + "frame": { + "x": 1, + "y": 1, + "w": 56, + "h": 79 + } + }, + { + "filename": "0002.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 11, + "y": 1, + "w": 56, + "h": 79 + }, + "frame": { + "x": 1, + "y": 1, + "w": 56, + "h": 79 + } + }, + { + "filename": "0003.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 11, + "y": 1, + "w": 56, + "h": 79 + }, + "frame": { + "x": 1, + "y": 1, + "w": 56, + "h": 79 + } + }, + { + "filename": "0004.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 11, + "y": 1, + "w": 56, + "h": 79 + }, + "frame": { + "x": 1, + "y": 1, + "w": 56, + "h": 79 + } + }, + { + "filename": "0005.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 13, + "y": 2, + "w": 55, + "h": 78 + }, + "frame": { + "x": 1, + "y": 82, + "w": 55, + "h": 78 + } + }, + { + "filename": "0006.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 14, + "y": 2, + "w": 54, + "h": 78 + }, + "frame": { + "x": 59, + "y": 1, + "w": 54, + "h": 78 + } + }, + { + "filename": "0007.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 14, + "y": 2, + "w": 54, + "h": 78 + }, + "frame": { + "x": 59, + "y": 1, + "w": 54, + "h": 78 + } + }, + { + "filename": "0008.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 3, + "w": 53, + "h": 77 + }, + "frame": { + "x": 1, + "y": 162, + "w": 53, + "h": 77 + } + }, + { + "filename": "0009.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0010.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0011.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0012.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0013.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0014.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0015.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 16, + "y": 4, + "w": 53, + "h": 76 + }, + "frame": { + "x": 115, + "y": 1, + "w": 53, + "h": 76 + } + }, + { + "filename": "0016.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 20, + "y": 3, + "w": 49, + "h": 77 + }, + "frame": { + "x": 170, + "y": 1, + "w": 49, + "h": 77 + } + }, + { + "filename": "0017.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 20, + "y": 2, + "w": 47, + "h": 78 + }, + "frame": { + "x": 58, + "y": 82, + "w": 47, + "h": 78 + } + }, + { + "filename": "0018.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 56, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0019.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 56, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0020.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 107, + "y": 81, + "w": 46, + "h": 80 + } + }, + { + "filename": "0021.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 104, + "y": 163, + "w": 46, + "h": 80 + } + }, + { + "filename": "0022.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0023.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0024.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0025.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0026.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0027.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0028.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0029.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0030.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0031.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0032.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0033.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 155, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0034.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 203, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0035.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 203, + "y": 80, + "w": 46, + "h": 80 + } + }, + { + "filename": "0036.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 0, + "w": 46, + "h": 80 + }, + "frame": { + "x": 152, + "y": 163, + "w": 46, + "h": 80 + } + }, + { + "filename": "0037.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0038.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0039.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0040.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0041.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0042.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0043.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0044.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0045.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0046.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0047.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0048.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0049.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0050.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0051.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0052.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0053.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0054.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0055.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0056.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0057.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0058.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0059.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0060.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0061.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0062.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0063.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0064.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0065.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0066.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0067.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0068.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0069.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0070.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0071.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0072.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0073.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0074.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0075.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0076.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0077.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0078.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0079.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0080.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0081.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0082.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0083.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0084.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0085.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0086.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0087.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0088.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0089.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0090.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0091.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0092.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0093.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0094.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0095.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0096.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0097.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0098.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0099.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + }, + { + "filename": "0100.png", + "rotated": false, + "trimmed": true, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 21, + "y": 1, + "w": 46, + "h": 79 + }, + "frame": { + "x": 200, + "y": 162, + "w": 46, + "h": 79 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:98df2be457c75de554b8ce6c2f5ff582:93e2cb242dc211e2485f87e4db93af88:0c38bc008e5ede7b6331c02b8220846f$" + } +} \ No newline at end of file diff --git a/public/images/trainer/plasma_sage.png b/public/images/trainer/plasma_sage.png new file mode 100644 index 00000000000..6c866562989 Binary files /dev/null and b/public/images/trainer/plasma_sage.png differ diff --git a/public/images/trainer/rocket_admin_f.json b/public/images/trainer/rocket_admin_f.json new file mode 100644 index 00000000000..7c154785ba3 --- /dev/null +++ b/public/images/trainer/rocket_admin_f.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "rocket_admin_f.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:831f5748dad92911b10a1cb358ee2dae:a3bf81bbaa3b49cad5e0e549cf94563b:bb6befc9383c9c08837183ae2a7a80c1$" + } +} \ No newline at end of file diff --git a/public/images/trainer/rocket_admin_f.png b/public/images/trainer/rocket_admin_f.png new file mode 100644 index 00000000000..0244538d91e Binary files /dev/null and b/public/images/trainer/rocket_admin_f.png differ diff --git a/public/images/trainer/rocket_admin_m.json b/public/images/trainer/rocket_admin_m.json new file mode 100644 index 00000000000..a1ad82dd9a2 --- /dev/null +++ b/public/images/trainer/rocket_admin_m.json @@ -0,0 +1,41 @@ +{ + "textures": [ + { + "image": "rocket_admin_m.png", + "format": "RGBA8888", + "size": { + "w": 80, + "h": 80 + }, + "scale": 1, + "frames": [ + { + "filename": "0001.png", + "rotated": false, + "trimmed": false, + "sourceSize": { + "w": 80, + "h": 80 + }, + "spriteSourceSize": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + }, + "frame": { + "x": 0, + "y": 0, + "w": 80, + "h": 80 + } + } + ] + } + ], + "meta": { + "app": "https://www.codeandweb.com/texturepacker", + "version": "3.0", + "smartupdate": "$TexturePacker:SmartUpdate:831f5748dad92911b10a1cb358ee2dae:a3bf81bbaa3b49cad5e0e549cf94563b:bb6befc9383c9c08837183ae2a7a80c1$" + } +} diff --git a/public/images/trainer/rocket_admin_m.png b/public/images/trainer/rocket_admin_m.png new file mode 100644 index 00000000000..5dcc4ff286e Binary files /dev/null and b/public/images/trainer/rocket_admin_m.png differ diff --git a/src/battle.ts b/src/battle.ts index cbe6dee1a4a..e8a1323fc4c 100644 --- a/src/battle.ts +++ b/src/battle.ts @@ -464,7 +464,8 @@ export interface FixedBattleConfigs { /** * Youngster/Lass on 5 * Rival on 8, 55, 95, 145, 195 - * Evil team grunts on 35, 62, 64, 66, 112, 114 + * Evil team grunts on 35, 62, 64, and 112 + * Evil team admin on 66 and 114 * Evil leader on 115, 165 * E4 on 182, 184, 186, 188 * Champion on 190 @@ -485,13 +486,13 @@ export const classicFixedBattles: FixedBattleConfigs = { [64]: new FixedBattleConfig().setBattleType(BattleType.TRAINER).setSeedOffsetWave(35) .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_GRUNT, TrainerType.MAGMA_GRUNT, TrainerType.AQUA_GRUNT, TrainerType.GALACTIC_GRUNT, TrainerType.PLASMA_GRUNT, TrainerType.FLARE_GRUNT ], true)), [66]: new FixedBattleConfig().setBattleType(BattleType.TRAINER).setSeedOffsetWave(35) - .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_GRUNT, TrainerType.MAGMA_GRUNT, TrainerType.AQUA_GRUNT, TrainerType.GALACTIC_GRUNT, TrainerType.PLASMA_GRUNT, TrainerType.FLARE_GRUNT ], true)), + .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_ADMIN, TrainerType.MAGMA_ADMIN, TrainerType.AQUA_ADMIN, TrainerType.GALACTIC_ADMIN, TrainerType.PLASMA_SAGE, TrainerType.FLARE_ADMIN ], true)), [95]: new FixedBattleConfig().setBattleType(BattleType.TRAINER) .setGetTrainerFunc(scene => new Trainer(scene, TrainerType.RIVAL_4, scene.gameData.gender === PlayerGender.MALE ? TrainerVariant.FEMALE : TrainerVariant.DEFAULT)), [112]: new FixedBattleConfig().setBattleType(BattleType.TRAINER).setSeedOffsetWave(35) .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_GRUNT, TrainerType.MAGMA_GRUNT, TrainerType.AQUA_GRUNT, TrainerType.GALACTIC_GRUNT, TrainerType.PLASMA_GRUNT, TrainerType.FLARE_GRUNT ], true)), [114]: new FixedBattleConfig().setBattleType(BattleType.TRAINER).setSeedOffsetWave(35) - .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_GRUNT, TrainerType.MAGMA_GRUNT, TrainerType.AQUA_GRUNT, TrainerType.GALACTIC_GRUNT, TrainerType.PLASMA_GRUNT, TrainerType.FLARE_GRUNT ], true)), + .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_ADMIN, TrainerType.MAGMA_ADMIN, TrainerType.AQUA_ADMIN, TrainerType.GALACTIC_ADMIN, TrainerType.PLASMA_SAGE, TrainerType.FLARE_ADMIN ], true)), [115]: new FixedBattleConfig().setBattleType(BattleType.TRAINER).setSeedOffsetWave(35) .setGetTrainerFunc(getRandomTrainerFunc([ TrainerType.ROCKET_BOSS_GIOVANNI_1, TrainerType.MAXIE, TrainerType.ARCHIE, TrainerType.CYRUS, TrainerType.GHETSIS, TrainerType.LYSANDRE ])), [145]: new FixedBattleConfig().setBattleType(BattleType.TRAINER) diff --git a/src/data/battler-tags.ts b/src/data/battler-tags.ts index ce70240df8c..94df265ff5e 100644 --- a/src/data/battler-tags.ts +++ b/src/data/battler-tags.ts @@ -1747,7 +1747,7 @@ export function getBattlerTag(tagType: BattlerTagType, turnCount: number, source case BattlerTagType.RECEIVE_DOUBLE_DAMAGE: return new BattlerTag(tagType, BattlerTagLapseType.PRE_MOVE, 1, sourceMove); case BattlerTagType.BYPASS_SLEEP: - return new BattlerTag(BattlerTagType.BYPASS_SLEEP, BattlerTagLapseType.TURN_END, turnCount, sourceMove); + return new BattlerTag(tagType, BattlerTagLapseType.TURN_END, turnCount, sourceMove); case BattlerTagType.IGNORE_FLYING: return new GroundedTag(tagType, BattlerTagLapseType.CUSTOM, sourceMove); case BattlerTagType.ROOSTED: diff --git a/src/data/challenge.ts b/src/data/challenge.ts index 701183e1733..7bea68e36c7 100644 --- a/src/data/challenge.ts +++ b/src/data/challenge.ts @@ -406,14 +406,7 @@ export class SingleGenerationChallenge extends Challenge { } applyStarterChoice(pokemon: PokemonSpecies, valid: Utils.BooleanHolder, dexAttr: DexAttrProps, soft: boolean = false, checkEvolutions?: boolean): boolean { - /** - * We have special code below for victini because it is classed as a generation 4 pokemon in the code - * despite being a generation 5 pokemon. This is due to UI constraints, the starter select screen has - * no more room for pokemon so victini is put in the gen 4 section instead. This code just overrides the - * normal generation check to correctly treat victini as gen 5. - */ - const starterGeneration = pokemon.speciesId === Species.VICTINI ? 5 : pokemon.generation; - const generations = [starterGeneration]; + const generations = [pokemon.generation]; const checkPokemonEvolutions = checkEvolutions ?? true as boolean; if (soft) { const speciesToCheck = [pokemon.speciesId]; diff --git a/src/data/dialogue.ts b/src/data/dialogue.ts index ec3358b1a77..4386515c953 100644 --- a/src/data/dialogue.ts +++ b/src/data/dialogue.ts @@ -459,6 +459,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.ROCKET_ADMIN]: [ + { + encounter: [ + "dialogue:rocket_admin.encounter.1", + "dialogue:rocket_admin.encounter.2", + "dialogue:rocket_admin.encounter.3", + ], + victory: [ + "dialogue:rocket_admin.victory.1", + "dialogue:rocket_admin.victory.2", + "dialogue:rocket_admin.victory.3", + ] + } + ], [TrainerType.MAGMA_GRUNT]: [ { encounter: [ @@ -469,6 +483,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.MAGMA_ADMIN]: [ + { + encounter: [ + "dialogue:magma_admin.encounter.1", + "dialogue:magma_admin.encounter.2", + "dialogue:magma_admin.encounter.3", + ], + victory: [ + "dialogue:magma_admin.victory.1", + "dialogue:magma_admin.victory.2", + "dialogue:magma_admin.victory.3", + ] + } + ], [TrainerType.AQUA_GRUNT]: [ { encounter: [ @@ -479,6 +507,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.AQUA_ADMIN]: [ + { + encounter: [ + "dialogue:aqua_admin.encounter.1", + "dialogue:aqua_admin.encounter.2", + "dialogue:aqua_admin.encounter.3", + ], + victory: [ + "dialogue:aqua_admin.victory.1", + "dialogue:aqua_admin.victory.2", + "dialogue:aqua_admin.victory.3", + ] + } + ], [TrainerType.GALACTIC_GRUNT]: [ { encounter: [ @@ -489,6 +531,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.GALACTIC_ADMIN]: [ + { + encounter: [ + "dialogue:galactic_admin.encounter.1", + "dialogue:galactic_admin.encounter.2", + "dialogue:galactic_admin.encounter.3", + ], + victory: [ + "dialogue:galactic_admin.victory.1", + "dialogue:galactic_admin.victory.2", + "dialogue:galactic_admin.victory.3", + ] + } + ], [TrainerType.PLASMA_GRUNT]: [ { encounter: [ @@ -499,6 +555,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.PLASMA_SAGE]: [ + { + encounter: [ + "dialogue:plasma_sage.encounter.1", + "dialogue:plasma_sage.encounter.2", + "dialogue:plasma_sage.encounter.3", + ], + victory: [ + "dialogue:plasma_sage.victory.1", + "dialogue:plasma_sage.victory.2", + "dialogue:plasma_sage.victory.3", + ] + } + ], [TrainerType.FLARE_GRUNT]: [ { encounter: [ @@ -509,6 +579,20 @@ export const trainerTypeDialogue: TrainerTypeDialogue = { ] } ], + [TrainerType.FLARE_ADMIN]: [ + { + encounter: [ + "dialogue:flare_admin.encounter.1", + "dialogue:flare_admin.encounter.2", + "dialogue:flare_admin.encounter.3", + ], + victory: [ + "dialogue:flare_admin.victory.1", + "dialogue:flare_admin.victory.2", + "dialogue:flare_admin.victory.3", + ] + } + ], [TrainerType.ROCKET_BOSS_GIOVANNI_1]: [ { encounter: [ diff --git a/src/data/egg-moves.ts b/src/data/egg-moves.ts index 64e75113dbc..1f893a0c522 100644 --- a/src/data/egg-moves.ts +++ b/src/data/egg-moves.ts @@ -438,7 +438,7 @@ export const speciesEggMoves = { [Species.CHEWTLE]: [ Moves.FIRE_FANG, Moves.ACCELEROCK, Moves.SHELL_SMASH, Moves.FISHIOUS_REND ], [Species.YAMPER]: [ Moves.ICE_FANG, Moves.SWORDS_DANCE, Moves.THUNDER_FANG, Moves.ZIPPY_ZAP ], [Species.ROLYCOLY]: [ Moves.BITTER_BLADE, Moves.BODY_PRESS, Moves.BULK_UP, Moves.DIAMOND_STORM ], - [Species.APPLIN]: [ Moves.DRAGON_CHEER, Moves.DRAGON_HAMMER, Moves.FLOWER_TRICK, Moves.STRENGTH_SAP ], + [Species.APPLIN]: [ Moves.MATCHA_GOTCHA, Moves.DRAGON_HAMMER, Moves.FLOWER_TRICK, Moves.STRENGTH_SAP ], [Species.SILICOBRA]: [ Moves.SHORE_UP, Moves.SHED_TAIL, Moves.STONE_EDGE, Moves.PRECIPICE_BLADES ], [Species.CRAMORANT]: [ Moves.APPLE_ACID, Moves.SURF, Moves.SCORCHING_SANDS, Moves.OBLIVION_WING ], [Species.ARROKUDA]: [ Moves.SUPERCELL_SLAM, Moves.KNOCK_OFF, Moves.ICE_SPINNER, Moves.FILLET_AWAY ], diff --git a/src/data/move.ts b/src/data/move.ts index f90aef585d6..13282a1a3d1 100644 --- a/src/data/move.ts +++ b/src/data/move.ts @@ -2,7 +2,7 @@ import { ChargeAnim, MoveChargeAnim, initMoveAnim, loadMoveAnimAssets } from "./ import { BattleEndPhase, MoveEndPhase, MovePhase, NewBattlePhase, PartyStatusCurePhase, PokemonHealPhase, StatChangePhase, SwitchSummonPhase } from "../phases"; import { BattleStat, getBattleStatName } from "./battle-stat"; import { EncoreTag, HelpingHandTag, SemiInvulnerableTag, StockpilingTag, TypeBoostTag } from "./battler-tags"; -import { getPokemonMessage, getPokemonNameWithAffix } from "../messages"; +import { getPokemonNameWithAffix } from "../messages"; import Pokemon, { AttackMoveResult, EnemyPokemon, HitResult, MoveResult, PlayerPokemon, PokemonMove, TurnMove } from "../field/pokemon"; import { StatusEffect, getStatusEffectHealText, isNonVolatileStatusEffect, getNonVolatileStatusEffects} from "./status-effect"; import { getTypeResistances, Type } from "./type"; @@ -13,10 +13,9 @@ import { ArenaTagSide, ArenaTrapTag, WeakenMoveTypeTag } from "./arena-tag"; import { UnswappableAbilityAbAttr, UncopiableAbilityAbAttr, UnsuppressableAbilityAbAttr, BlockRecoilDamageAttr, BlockOneHitKOAbAttr, IgnoreContactAbAttr, MaxMultiHitAbAttr, applyAbAttrs, BlockNonDirectDamageAbAttr, applyPreSwitchOutAbAttrs, PreSwitchOutAbAttr, applyPostDefendAbAttrs, PostDefendContactApplyStatusEffectAbAttr, MoveAbilityBypassAbAttr, ReverseDrainAbAttr, FieldPreventExplosiveMovesAbAttr, ForceSwitchOutImmunityAbAttr, BlockItemTheftAbAttr, applyPostAttackAbAttrs, ConfusionOnStatusEffectAbAttr, HealFromBerryUseAbAttr, IgnoreProtectOnContactAbAttr, IgnoreMoveEffectsAbAttr, applyPreDefendAbAttrs, MoveEffectChanceMultiplierAbAttr, WonderSkinAbAttr, applyPreAttackAbAttrs, MoveTypeChangeAttr, UserFieldMoveTypePowerBoostAbAttr, FieldMoveTypePowerBoostAbAttr, AllyMoveCategoryPowerBoostAbAttr, VariableMovePowerAbAttr } from "./ability"; import { allAbilities } from "./ability"; import { PokemonHeldItemModifier, BerryModifier, PreserveBerryModifier, PokemonMoveAccuracyBoosterModifier, AttackTypeBoosterModifier, PokemonMultiHitModifier } from "../modifier/modifier"; -import { BattlerIndex } from "../battle"; +import { BattlerIndex, BattleType } from "../battle"; import { Stat } from "./pokemon-stat"; import { TerrainType } from "./terrain"; -import { SpeciesFormChangeActiveTrigger } from "./pokemon-forms"; import { ModifierPoolType } from "#app/modifier/modifier-type"; import { Command } from "../ui/command-ui-handler"; import i18next from "i18next"; @@ -1388,7 +1387,7 @@ export class HealAttr extends MoveEffectAttr { */ addHealPhase(target: Pokemon, healRatio: number) { target.scene.unshiftPhase(new PokemonHealPhase(target.scene, target.getBattlerIndex(), - Math.max(Math.floor(target.getMaxHp() * healRatio), 1), getPokemonMessage(target, " \nhad its HP restored."), true, !this.showAnim)); + Math.max(Math.floor(target.getMaxHp() * healRatio), 1), i18next.t("moveTriggers:healHp", {pokemonName: getPokemonNameWithAffix(target)}), true, !this.showAnim)); } getTargetBenefitScore(user: Pokemon, target: Pokemon, move: Move): integer { @@ -1482,7 +1481,7 @@ export class SacrificialFullRestoreAttr extends SacrificialAttr { const maxPartyMemberHp = user.scene.getParty().map(p => p.getMaxHp()).reduce((maxHp: integer, hp: integer) => Math.max(hp, maxHp), 0); user.scene.pushPhase(new PokemonHealPhase(user.scene, user.getBattlerIndex(), - maxPartyMemberHp, getPokemonMessage(user, "'s Healing Wish\nwas granted!"), true, false, false, true), true); + maxPartyMemberHp, i18next.t("moveTriggers:sacrificialFullRestore", {pokemonName: getPokemonNameWithAffix(user)}), true, false, false, true), true); return true; } @@ -1817,13 +1816,10 @@ export class MultiHitAttr extends MoveAttr { } case MultiHitType._2: return 2; - break; case MultiHitType._3: return 3; - break; case MultiHitType._10: return 10; - break; case MultiHitType.BEAT_UP: const party = user.isPlayer() ? user.scene.getParty() : user.scene.getEnemyParty(); // No status means the ally pokemon can contribute to Beat Up @@ -2631,36 +2627,15 @@ export class GrowthStatChangeAttr extends StatChangeAttr { } } -export class HalfHpStatMaxAttr extends StatChangeAttr { - constructor(stat: BattleStat) { - super(stat, 12, true, null, false); - } - - apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): Promise { - return new Promise(resolve => { - user.damageAndUpdate(Math.floor(user.getMaxHp() / 2), HitResult.OTHER, false, true); - user.updateInfo().then(() => { - const ret = super.apply(user, target, move, args); - user.scene.queueMessage(i18next.t("moveTriggers:cutOwnHpAndMaximizedStat", {pokemonName: getPokemonNameWithAffix(user), statName: getBattleStatName(this.stats[BattleStat.ATK])})); - resolve(ret); - }); - }); - } - - getCondition(): MoveConditionFunc { - return (user, target, move) => user.getHpRatio() > 0.5 && user.summonData.battleStats[this.stats[BattleStat.ATK]] < 6; - } - - // TODO: Add benefit score that considers HP cut -} - export class CutHpStatBoostAttr extends StatChangeAttr { private cutRatio: integer; + private messageCallback: ((user: Pokemon) => void) | undefined; - constructor(stat: BattleStat | BattleStat[], levels: integer, cutRatio: integer) { + constructor(stat: BattleStat | BattleStat[], levels: integer, cutRatio: integer, messageCallback?: ((user: Pokemon) => void) | undefined) { super(stat, levels, true, null, true); this.cutRatio = cutRatio; + this.messageCallback = messageCallback; } apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): Promise { @@ -2668,13 +2643,16 @@ export class CutHpStatBoostAttr extends StatChangeAttr { user.damageAndUpdate(Math.floor(user.getMaxHp() / this.cutRatio), HitResult.OTHER, false, true); user.updateInfo().then(() => { const ret = super.apply(user, target, move, args); + if (this.messageCallback) { + this.messageCallback(user); + } resolve(ret); }); }); } getCondition(): MoveConditionFunc { - return (user, target, move) => user.getHpRatio() > 1 / this.cutRatio; + return (user, target, move) => user.getHpRatio() > 1 / this.cutRatio && this.stats.some(s => user.summonData.battleStats[s] < 6); } } @@ -2712,7 +2690,7 @@ export class InvertStatsAttr extends MoveEffectAttr { target.updateInfo(); user.updateInfo(); - target.scene.queueMessage(getPokemonMessage(target, "'s stat changes\nwere all reversed!")); + target.scene.queueMessage(i18next.t("moveTriggers:invertStats", {pokemonName: getPokemonNameWithAffix(target)})); return true; } @@ -2730,7 +2708,7 @@ export class ResetStatsAttr extends MoveEffectAttr { target.updateInfo(); user.updateInfo(); - target.scene.queueMessage(getPokemonMessage(target, "'s stat changes\nwere eliminated!")); + target.scene.queueMessage(i18next.t("moveTriggers:resetStats", {pokemonName: getPokemonNameWithAffix(target)})); return true; } @@ -4138,7 +4116,7 @@ export class DisableMoveAttr extends MoveEffectAttr { target.summonData.disabledMove = disabledMove.moveId; target.summonData.disabledTurns = 4; - user.scene.queueMessage(getPokemonMessage(target, `'s ${disabledMove.getName()}\nwas disabled!`)); + user.scene.queueMessage(i18next.t("abilityTriggers:postDefendMoveDisable", { pokemonNameWithAffix: getPokemonNameWithAffix(target), moveName: disabledMove.getName()})); return true; } @@ -4445,7 +4423,7 @@ export class FaintCountdownAttr extends AddBattlerTagAttr { return false; } - user.scene.queueMessage(getPokemonMessage(target, `\nwill faint in ${this.turnCountMin - 1} turns.`)); + user.scene.queueMessage(i18next.t("moveTriggers:faintCountdown", {pokemonName: getPokemonNameWithAffix(target), turnCount: this.turnCountMin - 1})); return true; } @@ -4685,7 +4663,7 @@ export class SwapArenaTagsAttr extends MoveEffectAttr { } - user.scene.queueMessage( `${getPokemonNameWithAffix(user)} swapped the battle effects affecting each side of the field!`); + user.scene.queueMessage( i18next.t("moveTriggers:swapArenaTags", {pokemonName: getPokemonNameWithAffix(user)})); return true; } } @@ -4780,19 +4758,14 @@ export class ForceSwitchOutAttr extends MoveEffectAttr { if (switchOutTarget.hp > 0) { applyPreSwitchOutAbAttrs(PreSwitchOutAbAttr, switchOutTarget); // switchOut below sets the UI to select party(this is not a separate Phase), then adds a SwitchSummonPhase with selected 'mon - (switchOutTarget as PlayerPokemon).switchOut(this.batonPass, true).then(() => resolve(true)); + (switchOutTarget as PlayerPokemon).switchOut(this.batonPass).then(() => resolve(true)); } else { resolve(false); } return; - } else if (user.scene.currentBattle.battleType) { - // Switch out logic for the battle type - switchOutTarget.resetTurnData(); - switchOutTarget.resetSummonData(); - switchOutTarget.hideInfo(); - switchOutTarget.setVisible(false); - switchOutTarget.scene.field.remove(switchOutTarget); - user.scene.triggerPokemonFormChange(switchOutTarget, SpeciesFormChangeActiveTrigger, true); + } else if (user.scene.currentBattle.battleType !== BattleType.WILD) { + // Switch out logic for trainer battles + switchOutTarget.leaveField(!this.batonPass); if (switchOutTarget.hp > 0) { // for opponent switching out @@ -4917,7 +4890,7 @@ export class CopyTypeAttr extends MoveEffectAttr { user.summonData.types = target.getTypes(true); user.updateInfo(); - user.scene.queueMessage(getPokemonMessage(user, `'s type\nchanged to match ${getPokemonNameWithAffix(target)}'s!`)); + user.scene.queueMessage(i18next.t("moveTriggers:copyType", {pokemonName: getPokemonNameWithAffix(user), targetPokemonName: getPokemonNameWithAffix(target)})); return true; } @@ -5598,7 +5571,7 @@ export class SuppressAbilitiesAttr extends MoveEffectAttr { target.summonData.abilitySuppressed = true; - target.scene.queueMessage(getPokemonMessage(target, "'s ability\nwas suppressed!")); + target.scene.queueMessage(i18next.t("moveTriggers:suppressAbilities", {pokemonName: getPokemonNameWithAffix(target)})); return true; } @@ -6486,7 +6459,9 @@ export function initMoves() { new StatusMove(Moves.SWEET_KISS, Type.FAIRY, 75, 10, -1, 0, 2) .attr(ConfuseAttr), new SelfStatusMove(Moves.BELLY_DRUM, Type.NORMAL, -1, 10, -1, 0, 2) - .attr(HalfHpStatMaxAttr, BattleStat.ATK), + .attr(CutHpStatBoostAttr, [BattleStat.ATK], 12, 2, (user) => { + user.scene.queueMessage(i18next.t("moveTriggers:cutOwnHpAndMaximizedStat", {pokemonName: getPokemonNameWithAffix(user), statName: getBattleStatName(BattleStat.ATK)})); + }), new AttackMove(Moves.SLUDGE_BOMB, Type.POISON, MoveCategory.SPECIAL, 90, 100, 10, 30, 0, 2) .attr(StatusEffectAttr, StatusEffect.POISON) .ballBombMove(), @@ -6670,6 +6645,7 @@ export function initMoves() { .attr(StatChangeAttr, BattleStat.SPDEF, -1) .ballBombMove(), new AttackMove(Moves.FUTURE_SIGHT, Type.PSYCHIC, MoveCategory.SPECIAL, 120, 100, 10, -1, 0, 2) + .partial() .attr(DelayedAttackAttr, ArenaTagType.FUTURE_SIGHT, ChargeAnim.FUTURE_SIGHT_CHARGING, i18next.t("moveTriggers:foresawAnAttack", {pokemonName: "{USER}"})), new AttackMove(Moves.ROCK_SMASH, Type.FIGHTING, MoveCategory.PHYSICAL, 40, 100, 15, 50, 0, 2) .attr(StatChangeAttr, BattleStat.DEF, -1), @@ -6958,6 +6934,7 @@ export function initMoves() { .attr(ConfuseAttr) .pulseMove(), new AttackMove(Moves.DOOM_DESIRE, Type.STEEL, MoveCategory.SPECIAL, 140, 100, 5, -1, 0, 3) + .partial() .attr(DelayedAttackAttr, ArenaTagType.DOOM_DESIRE, ChargeAnim.DOOM_DESIRE_CHARGING, i18next.t("moveTriggers:choseDoomDesireAsDestiny", {pokemonName: "{USER}"})), new AttackMove(Moves.PSYCHO_BOOST, Type.PSYCHIC, MoveCategory.SPECIAL, 140, 90, 5, -1, 0, 3) .attr(StatChangeAttr, BattleStat.SPATK, -2, true), diff --git a/src/data/pokemon-evolutions.ts b/src/data/pokemon-evolutions.ts index 696cf006ad0..236d174492f 100644 --- a/src/data/pokemon-evolutions.ts +++ b/src/data/pokemon-evolutions.ts @@ -1145,6 +1145,11 @@ export const pokemonEvolutions: PokemonEvolutions = { new SpeciesEvolution(Species.PAWMOT, 32, null, null) ], [Species.TANDEMAUS]: [ + new SpeciesFormEvolution(Species.MAUSHOLD, "", "three", 25, null, new SpeciesEvolutionCondition(p => { + let ret = false; + p.scene.executeWithSeedOffset(() => ret = !Utils.randSeedInt(4), p.id); + return ret; + })), new SpeciesEvolution(Species.MAUSHOLD, 25, null, null) ], [Species.FIDOUGH]: [ diff --git a/src/data/pokemon-level-moves.ts b/src/data/pokemon-level-moves.ts index 2ba8ccdf463..b23c43ef215 100644 --- a/src/data/pokemon-level-moves.ts +++ b/src/data/pokemon-level-moves.ts @@ -17287,7 +17287,7 @@ export const pokemonSpeciesLevelMoves: PokemonSpeciesLevelMoves = { ], [Species.DIPPLIN]: [ [ EVOLVE_MOVE, Moves.DOUBLE_HIT ], - [ RELEARN_MOVE, Moves.INFESTATION ], + [ RELEARN_MOVE, Moves.DRAGON_CHEER ], // Custom [ 1, Moves.WITHDRAW ], [ 1, Moves.SWEET_SCENT ], [ 1, Moves.RECYCLE ], diff --git a/src/data/pokemon-species.ts b/src/data/pokemon-species.ts index 77134cca190..ac79b6223c0 100644 --- a/src/data/pokemon-species.ts +++ b/src/data/pokemon-species.ts @@ -301,7 +301,7 @@ export abstract class PokemonSpeciesForm { let variantDataIndex: integer|string = this.speciesId; const species = getPokemonSpecies(this.speciesId); if (species.forms.length > 0) { - formkey = species.forms[formIndex]?.formKey; + formkey = species.forms[formIndex]?.formSpriteKey; if (formkey) { variantDataIndex = `${this.speciesId}-${formkey}`; } @@ -1671,7 +1671,7 @@ 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, 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.VICTINI, 5, 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), @@ -2459,8 +2459,8 @@ export function initSpecies() { 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 PokemonForm("Family of Four", "four", 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 PokemonForm("Family of Three", "three", 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 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), @@ -2682,71 +2682,71 @@ export const speciesStarters = { [Species.BULBASAUR]: 3, [Species.CHARMANDER]: 3, [Species.SQUIRTLE]: 3, - [Species.CATERPIE]: 1, + [Species.CATERPIE]: 2, [Species.WEEDLE]: 1, - [Species.PIDGEY]: 2, + [Species.PIDGEY]: 1, [Species.RATTATA]: 1, - [Species.SPEAROW]: 2, + [Species.SPEAROW]: 1, [Species.EKANS]: 2, - [Species.PIKACHU]: 4, + [Species.PIKACHU]: 3, [Species.SANDSHREW]: 2, [Species.NIDORAN_F]: 3, [Species.NIDORAN_M]: 3, - [Species.CLEFAIRY]: 4, + [Species.CLEFAIRY]: 3, [Species.VULPIX]: 3, - [Species.JIGGLYPUFF]: 4, - [Species.ZUBAT]: 2, - [Species.ODDISH]: 2, - [Species.PARAS]: 1, + [Species.JIGGLYPUFF]: 2, + [Species.ZUBAT]: 3, + [Species.ODDISH]: 3, + [Species.PARAS]: 2, [Species.VENONAT]: 2, - [Species.DIGLETT]: 3, - [Species.MEOWTH]: 4, + [Species.DIGLETT]: 2, + [Species.MEOWTH]: 3, [Species.PSYDUCK]: 2, [Species.MANKEY]: 4, [Species.GROWLITHE]: 4, - [Species.POLIWAG]: 3, - [Species.ABRA]: 3, + [Species.POLIWAG]: 2, + [Species.ABRA]: 4, [Species.MACHOP]: 3, - [Species.BELLSPROUT]: 3, + [Species.BELLSPROUT]: 2, [Species.TENTACOOL]: 3, [Species.GEODUDE]: 3, - [Species.PONYTA]: 3, + [Species.PONYTA]: 2, [Species.SLOWPOKE]: 3, - [Species.MAGNEMITE]: 3, - [Species.FARFETCHD]: 4, - [Species.DODUO]: 4, - [Species.SEEL]: 3, - [Species.GRIMER]: 3, - [Species.SHELLDER]: 4, - [Species.GASTLY]: 3, - [Species.ONIX]: 4, - [Species.DROWZEE]: 3, - [Species.KRABBY]: 2, + [Species.MAGNEMITE]: 4, + [Species.FARFETCHD]: 2, + [Species.DODUO]: 3, + [Species.SEEL]: 1, + [Species.GRIMER]: 2, + [Species.SHELLDER]: 5, + [Species.GASTLY]: 4, + [Species.ONIX]: 3, + [Species.DROWZEE]: 2, + [Species.KRABBY]: 3, [Species.VOLTORB]: 2, - [Species.EXEGGCUTE]: 4, + [Species.EXEGGCUTE]: 3, [Species.CUBONE]: 3, - [Species.HITMONLEE]: 5, - [Species.HITMONCHAN]: 5, - [Species.LICKITUNG]: 5, - [Species.KOFFING]: 3, + [Species.HITMONLEE]: 4, + [Species.HITMONCHAN]: 4, + [Species.LICKITUNG]: 3, + [Species.KOFFING]: 2, [Species.RHYHORN]: 3, - [Species.CHANSEY]: 5, + [Species.CHANSEY]: 3, [Species.TANGELA]: 3, - [Species.KANGASKHAN]: 5, - [Species.HORSEA]: 4, - [Species.GOLDEEN]: 3, - [Species.STARYU]: 4, - [Species.MR_MIME]: 4, + [Species.KANGASKHAN]: 4, + [Species.HORSEA]: 3, + [Species.GOLDEEN]: 2, + [Species.STARYU]: 3, + [Species.MR_MIME]: 3, [Species.SCYTHER]: 5, - [Species.JYNX]: 4, - [Species.ELECTABUZZ]: 5, - [Species.MAGMAR]: 5, + [Species.JYNX]: 3, + [Species.ELECTABUZZ]: 4, + [Species.MAGMAR]: 4, [Species.PINSIR]: 4, - [Species.TAUROS]: 5, - [Species.MAGIKARP]: 3, - [Species.LAPRAS]: 5, + [Species.TAUROS]: 4, + [Species.MAGIKARP]: 4, + [Species.LAPRAS]: 4, [Species.DITTO]: 2, - [Species.EEVEE]: 4, + [Species.EEVEE]: 3, [Species.PORYGON]: 4, [Species.OMANYTE]: 3, [Species.KABUTO]: 3, @@ -2759,57 +2759,57 @@ export const speciesStarters = { [Species.MEWTWO]: 8, [Species.MEW]: 6, - [Species.CHIKORITA]: 3, + [Species.CHIKORITA]: 2, [Species.CYNDAQUIL]: 3, [Species.TOTODILE]: 3, [Species.SENTRET]: 1, - [Species.HOOTHOOT]: 1, + [Species.HOOTHOOT]: 2, [Species.LEDYBA]: 1, - [Species.SPINARAK]: 1, - [Species.CHINCHOU]: 3, - [Species.PICHU]: 3, - [Species.CLEFFA]: 3, - [Species.IGGLYBUFF]: 3, + [Species.SPINARAK]: 2, + [Species.CHINCHOU]: 2, + [Species.PICHU]: 2, + [Species.CLEFFA]: 2, + [Species.IGGLYBUFF]: 1, [Species.TOGEPI]: 3, [Species.NATU]: 2, - [Species.MAREEP]: 3, + [Species.MAREEP]: 2, [Species.MARILL]: 4, - [Species.SUDOWOODO]: 5, - [Species.HOPPIP]: 1, - [Species.AIPOM]: 3, + [Species.SUDOWOODO]: 3, + [Species.HOPPIP]: 2, + [Species.AIPOM]: 2, [Species.SUNKERN]: 1, [Species.YANMA]: 3, [Species.WOOPER]: 2, - [Species.MURKROW]: 4, - [Species.MISDREAVUS]: 3, + [Species.MURKROW]: 3, + [Species.MISDREAVUS]: 2, [Species.UNOWN]: 1, - [Species.WOBBUFFET]: 4, - [Species.GIRAFARIG]: 4, + [Species.WOBBUFFET]: 2, + [Species.GIRAFARIG]: 3, [Species.PINECO]: 2, - [Species.DUNSPARCE]: 4, - [Species.GLIGAR]: 4, - [Species.SNUBBULL]: 3, + [Species.DUNSPARCE]: 3, + [Species.GLIGAR]: 3, + [Species.SNUBBULL]: 2, [Species.QWILFISH]: 3, - [Species.SHUCKLE]: 4, + [Species.SHUCKLE]: 3, [Species.HERACROSS]: 5, [Species.SNEASEL]: 4, [Species.TEDDIURSA]: 4, [Species.SLUGMA]: 2, [Species.SWINUB]: 3, - [Species.CORSOLA]: 3, - [Species.REMORAID]: 3, - [Species.DELIBIRD]: 3, - [Species.MANTINE]: 4, - [Species.SKARMORY]: 5, - [Species.HOUNDOUR]: 4, + [Species.CORSOLA]: 2, + [Species.REMORAID]: 2, + [Species.DELIBIRD]: 2, + [Species.MANTINE]: 3, + [Species.SKARMORY]: 4, + [Species.HOUNDOUR]: 3, [Species.PHANPY]: 3, - [Species.STANTLER]: 4, - [Species.SMEARGLE]: 3, - [Species.TYROGUE]: 4, - [Species.SMOOCHUM]: 3, - [Species.ELEKID]: 4, - [Species.MAGBY]: 4, - [Species.MILTANK]: 5, + [Species.STANTLER]: 3, + [Species.SMEARGLE]: 1, + [Species.TYROGUE]: 2, + [Species.SMOOCHUM]: 2, + [Species.ELEKID]: 3, + [Species.MAGBY]: 3, + [Species.MILTANK]: 4, [Species.RAIKOU]: 6, [Species.ENTEI]: 6, [Species.SUICUNE]: 6, @@ -2825,62 +2825,62 @@ export const speciesStarters = { [Species.ZIGZAGOON]: 2, [Species.WURMPLE]: 1, [Species.LOTAD]: 3, - [Species.SEEDOT]: 3, + [Species.SEEDOT]: 2, [Species.TAILLOW]: 3, - [Species.WINGULL]: 3, + [Species.WINGULL]: 2, [Species.RALTS]: 3, [Species.SURSKIT]: 2, [Species.SHROOMISH]: 3, [Species.SLAKOTH]: 4, [Species.NINCADA]: 4, - [Species.WHISMUR]: 3, + [Species.WHISMUR]: 2, [Species.MAKUHITA]: 3, - [Species.AZURILL]: 3, - [Species.NOSEPASS]: 3, - [Species.SKITTY]: 3, - [Species.SABLEYE]: 3, - [Species.MAWILE]: 5, + [Species.AZURILL]: 4, + [Species.NOSEPASS]: 2, + [Species.SKITTY]: 1, + [Species.SABLEYE]: 2, + [Species.MAWILE]: 3, [Species.ARON]: 3, - [Species.MEDITITE]: 4, - [Species.ELECTRIKE]: 3, + [Species.MEDITITE]: 3, + [Species.ELECTRIKE]: 2, [Species.PLUSLE]: 2, [Species.MINUN]: 2, [Species.VOLBEAT]: 2, [Species.ILLUMISE]: 2, - [Species.ROSELIA]: 4, - [Species.GULPIN]: 3, + [Species.ROSELIA]: 3, + [Species.GULPIN]: 1, [Species.CARVANHA]: 3, - [Species.WAILMER]: 3, - [Species.NUMEL]: 3, - [Species.TORKOAL]: 4, - [Species.SPOINK]: 3, - [Species.SPINDA]: 2, - [Species.TRAPINCH]: 4, - [Species.CACNEA]: 3, - [Species.SWABLU]: 3, - [Species.ZANGOOSE]: 5, - [Species.SEVIPER]: 4, - [Species.LUNATONE]: 4, - [Species.SOLROCK]: 4, - [Species.BARBOACH]: 3, + [Species.WAILMER]: 2, + [Species.NUMEL]: 2, + [Species.TORKOAL]: 3, + [Species.SPOINK]: 2, + [Species.SPINDA]: 1, + [Species.TRAPINCH]: 3, + [Species.CACNEA]: 2, + [Species.SWABLU]: 2, + [Species.ZANGOOSE]: 4, + [Species.SEVIPER]: 3, + [Species.LUNATONE]: 3, + [Species.SOLROCK]: 3, + [Species.BARBOACH]: 2, [Species.CORPHISH]: 3, - [Species.BALTOY]: 3, + [Species.BALTOY]: 2, [Species.LILEEP]: 3, [Species.ANORITH]: 3, [Species.FEEBAS]: 4, - [Species.CASTFORM]: 2, - [Species.KECLEON]: 4, - [Species.SHUPPET]: 3, + [Species.CASTFORM]: 1, + [Species.KECLEON]: 2, + [Species.SHUPPET]: 2, [Species.DUSKULL]: 3, - [Species.TROPIUS]: 5, - [Species.CHIMECHO]: 4, - [Species.ABSOL]: 5, - [Species.WYNAUT]: 3, - [Species.SNORUNT]: 3, - [Species.SPHEAL]: 3, + [Species.TROPIUS]: 3, + [Species.CHIMECHO]: 3, + [Species.ABSOL]: 4, + [Species.WYNAUT]: 2, + [Species.SNORUNT]: 2, + [Species.SPHEAL]: 2, [Species.CLAMPERL]: 3, - [Species.RELICANTH]: 4, - [Species.LUVDISC]: 2, + [Species.RELICANTH]: 3, + [Species.LUVDISC]: 1, [Species.BAGON]: 4, [Species.BELDUM]: 4, [Species.REGIROCK]: 6, @@ -2898,39 +2898,39 @@ export const speciesStarters = { [Species.CHIMCHAR]: 3, [Species.PIPLUP]: 3, [Species.STARLY]: 3, - [Species.BIDOOF]: 2, + [Species.BIDOOF]: 3, [Species.KRICKETOT]: 1, - [Species.SHINX]: 3, + [Species.SHINX]: 2, [Species.BUDEW]: 3, [Species.CRANIDOS]: 3, [Species.SHIELDON]: 3, - [Species.BURMY]: 1, + [Species.BURMY]: 2, [Species.COMBEE]: 2, - [Species.PACHIRISU]: 3, - [Species.BUIZEL]: 3, - [Species.CHERUBI]: 3, + [Species.PACHIRISU]: 2, + [Species.BUIZEL]: 2, + [Species.CHERUBI]: 1, [Species.SHELLOS]: 3, - [Species.DRIFLOON]: 3, - [Species.BUNEARY]: 3, - [Species.GLAMEOW]: 3, - [Species.CHINGLING]: 3, - [Species.STUNKY]: 3, + [Species.DRIFLOON]: 2, + [Species.BUNEARY]: 2, + [Species.GLAMEOW]: 2, + [Species.CHINGLING]: 2, + [Species.STUNKY]: 2, [Species.BRONZOR]: 3, - [Species.BONSLY]: 4, - [Species.MIME_JR]: 3, - [Species.HAPPINY]: 4, - [Species.CHATOT]: 4, - [Species.SPIRITOMB]: 5, + [Species.BONSLY]: 2, + [Species.MIME_JR]: 2, + [Species.HAPPINY]: 2, + [Species.CHATOT]: 2, + [Species.SPIRITOMB]: 4, [Species.GIBLE]: 4, [Species.MUNCHLAX]: 4, - [Species.RIOLU]: 4, + [Species.RIOLU]: 3, [Species.HIPPOPOTAS]: 3, [Species.SKORUPI]: 3, - [Species.CROAGUNK]: 3, - [Species.CARNIVINE]: 4, - [Species.FINNEON]: 3, - [Species.MANTYKE]: 3, - [Species.SNOVER]: 3, + [Species.CROAGUNK]: 2, + [Species.CARNIVINE]: 2, + [Species.FINNEON]: 1, + [Species.MANTYKE]: 2, + [Species.SNOVER]: 2, [Species.ROTOM]: 5, [Species.UXIE]: 6, [Species.MESPRIT]: 6, @@ -2946,75 +2946,75 @@ export const speciesStarters = { [Species.DARKRAI]: 6, [Species.SHAYMIN]: 6, [Species.ARCEUS]: 9, - [Species.VICTINI]: 7, + [Species.VICTINI]: 7, [Species.SNIVY]: 3, [Species.TEPIG]: 3, [Species.OSHAWOTT]: 3, - [Species.PATRAT]: 2, + [Species.PATRAT]: 1, [Species.LILLIPUP]: 3, - [Species.PURRLOIN]: 3, - [Species.PANSAGE]: 3, - [Species.PANSEAR]: 3, - [Species.PANPOUR]: 3, - [Species.MUNNA]: 3, - [Species.PIDOVE]: 2, - [Species.BLITZLE]: 3, + [Species.PURRLOIN]: 2, + [Species.PANSAGE]: 2, + [Species.PANSEAR]: 2, + [Species.PANPOUR]: 2, + [Species.MUNNA]: 2, + [Species.PIDOVE]: 1, + [Species.BLITZLE]: 2, [Species.ROGGENROLA]: 3, [Species.WOOBAT]: 3, [Species.DRILBUR]: 4, - [Species.AUDINO]: 4, - [Species.TIMBURR]: 3, + [Species.AUDINO]: 3, + [Species.TIMBURR]: 4, [Species.TYMPOLE]: 3, - [Species.THROH]: 5, - [Species.SAWK]: 5, - [Species.SEWADDLE]: 3, + [Species.THROH]: 4, + [Species.SAWK]: 4, + [Species.SEWADDLE]: 2, [Species.VENIPEDE]: 3, [Species.COTTONEE]: 3, [Species.PETILIL]: 3, [Species.BASCULIN]: 4, - [Species.SANDILE]: 3, + [Species.SANDILE]: 4, [Species.DARUMAKA]: 4, - [Species.MARACTUS]: 4, - [Species.DWEBBLE]: 3, + [Species.MARACTUS]: 2, + [Species.DWEBBLE]: 2, [Species.SCRAGGY]: 3, - [Species.SIGILYPH]: 5, + [Species.SIGILYPH]: 4, [Species.YAMASK]: 3, - [Species.TIRTOUGA]: 4, - [Species.ARCHEN]: 4, - [Species.TRUBBISH]: 3, + [Species.TIRTOUGA]: 3, + [Species.ARCHEN]: 3, + [Species.TRUBBISH]: 2, [Species.ZORUA]: 3, [Species.MINCCINO]: 3, [Species.GOTHITA]: 3, - [Species.SOLOSIS]: 3, - [Species.DUCKLETT]: 3, + [Species.SOLOSIS]: 4, + [Species.DUCKLETT]: 2, [Species.VANILLITE]: 3, - [Species.DEERLING]: 3, - [Species.EMOLGA]: 3, + [Species.DEERLING]: 2, + [Species.EMOLGA]: 2, [Species.KARRABLAST]: 3, - [Species.FOONGUS]: 3, + [Species.FOONGUS]: 2, [Species.FRILLISH]: 3, [Species.ALOMOMOLA]: 4, [Species.JOLTIK]: 3, [Species.FERROSEED]: 3, [Species.KLINK]: 3, - [Species.TYNAMO]: 3, + [Species.TYNAMO]: 2, [Species.ELGYEM]: 3, [Species.LITWICK]: 3, [Species.AXEW]: 4, - [Species.CUBCHOO]: 3, - [Species.CRYOGONAL]: 5, - [Species.SHELMET]: 3, - [Species.STUNFISK]: 4, + [Species.CUBCHOO]: 2, + [Species.CRYOGONAL]: 4, + [Species.SHELMET]: 2, + [Species.STUNFISK]: 3, [Species.MIENFOO]: 3, - [Species.DRUDDIGON]: 5, + [Species.DRUDDIGON]: 4, [Species.GOLETT]: 3, [Species.PAWNIARD]: 4, - [Species.BOUFFALANT]: 5, + [Species.BOUFFALANT]: 4, [Species.RUFFLET]: 3, [Species.VULLABY]: 3, - [Species.HEATMOR]: 5, - [Species.DURANT]: 5, + [Species.HEATMOR]: 3, + [Species.DURANT]: 4, [Species.DEINO]: 4, [Species.LARVESTA]: 4, [Species.COBALION]: 6, @@ -3032,77 +3032,77 @@ export const speciesStarters = { [Species.CHESPIN]: 3, [Species.FENNEKIN]: 3, - [Species.FROAKIE]: 3, - [Species.BUNNELBY]: 2, + [Species.FROAKIE]: 4, + [Species.BUNNELBY]: 3, [Species.FLETCHLING]: 3, - [Species.SCATTERBUG]: 1, - [Species.LITLEO]: 3, + [Species.SCATTERBUG]: 2, + [Species.LITLEO]: 2, [Species.FLABEBE]: 3, - [Species.SKIDDO]: 3, + [Species.SKIDDO]: 2, [Species.PANCHAM]: 3, - [Species.FURFROU]: 4, - [Species.ESPURR]: 3, + [Species.FURFROU]: 3, + [Species.ESPURR]: 2, [Species.HONEDGE]: 4, - [Species.SPRITZEE]: 3, + [Species.SPRITZEE]: 2, [Species.SWIRLIX]: 3, [Species.INKAY]: 3, [Species.BINACLE]: 3, - [Species.SKRELP]: 3, + [Species.SKRELP]: 2, [Species.CLAUNCHER]: 3, [Species.HELIOPTILE]: 3, [Species.TYRUNT]: 3, [Species.AMAURA]: 3, [Species.HAWLUCHA]: 4, - [Species.DEDENNE]: 4, - [Species.CARBINK]: 4, + [Species.DEDENNE]: 2, + [Species.CARBINK]: 2, [Species.GOOMY]: 4, - [Species.KLEFKI]: 4, - [Species.PHANTUMP]: 3, - [Species.PUMPKABOO]: 3, + [Species.KLEFKI]: 3, + [Species.PHANTUMP]: 2, + [Species.PUMPKABOO]: 2, [Species.BERGMITE]: 3, - [Species.NOIBAT]: 4, + [Species.NOIBAT]: 3, [Species.XERNEAS]: 8, [Species.YVELTAL]: 8, [Species.ZYGARDE]: 8, [Species.DIANCIE]: 7, [Species.HOOPA]: 7, [Species.VOLCANION]: 6, - [Species.ETERNAL_FLOETTE]: 5, + [Species.ETERNAL_FLOETTE]: 4, [Species.ROWLET]: 3, [Species.LITTEN]: 3, - [Species.POPPLIO]: 3, - [Species.PIKIPEK]: 3, + [Species.POPPLIO]: 4, + [Species.PIKIPEK]: 2, [Species.YUNGOOS]: 2, - [Species.GRUBBIN]: 2, - [Species.CRABRAWLER]: 4, + [Species.GRUBBIN]: 3, + [Species.CRABRAWLER]: 3, [Species.ORICORIO]: 3, [Species.CUTIEFLY]: 3, [Species.ROCKRUFF]: 3, - [Species.WISHIWASHI]: 3, - [Species.MAREANIE]: 3, + [Species.WISHIWASHI]: 2, + [Species.MAREANIE]: 2, [Species.MUDBRAY]: 3, [Species.DEWPIDER]: 3, - [Species.FOMANTIS]: 3, - [Species.MORELULL]: 3, + [Species.FOMANTIS]: 2, + [Species.MORELULL]: 2, [Species.SALANDIT]: 3, [Species.STUFFUL]: 3, [Species.BOUNSWEET]: 3, [Species.COMFEY]: 4, - [Species.ORANGURU]: 5, - [Species.PASSIMIAN]: 5, + [Species.ORANGURU]: 4, + [Species.PASSIMIAN]: 4, [Species.WIMPOD]: 3, [Species.SANDYGAST]: 3, - [Species.PYUKUMUKU]: 3, + [Species.PYUKUMUKU]: 2, [Species.TYPE_NULL]: 5, - [Species.MINIOR]: 5, - [Species.KOMALA]: 5, - [Species.TURTONATOR]: 5, - [Species.TOGEDEMARU]: 4, - [Species.MIMIKYU]: 5, - [Species.BRUXISH]: 5, - [Species.DRAMPA]: 5, - [Species.DHELMISE]: 5, + [Species.MINIOR]: 4, + [Species.KOMALA]: 3, + [Species.TURTONATOR]: 4, + [Species.TOGEDEMARU]: 3, + [Species.MIMIKYU]: 4, + [Species.BRUXISH]: 4, + [Species.DRAMPA]: 4, + [Species.DHELMISE]: 4, [Species.JANGMO_O]: 4, [Species.TAPU_KOKO]: 6, [Species.TAPU_LELE]: 6, @@ -3124,49 +3124,49 @@ export const speciesStarters = { [Species.BLACEPHALON]: 7, [Species.ZERAORA]: 6, [Species.MELTAN]: 6, - [Species.ALOLA_RATTATA]: 2, - [Species.ALOLA_SANDSHREW]: 4, - [Species.ALOLA_VULPIX]: 4, - [Species.ALOLA_DIGLETT]: 3, - [Species.ALOLA_MEOWTH]: 4, + [Species.ALOLA_RATTATA]: 1, + [Species.ALOLA_SANDSHREW]: 2, + [Species.ALOLA_VULPIX]: 3, + [Species.ALOLA_DIGLETT]: 2, + [Species.ALOLA_MEOWTH]: 3, [Species.ALOLA_GEODUDE]: 3, [Species.ALOLA_GRIMER]: 3, - [Species.GROOKEY]: 3, - [Species.SCORBUNNY]: 3, - [Species.SOBBLE]: 3, + [Species.GROOKEY]: 4, + [Species.SCORBUNNY]: 4, + [Species.SOBBLE]: 4, [Species.SKWOVET]: 2, - [Species.ROOKIDEE]: 4, + [Species.ROOKIDEE]: 3, [Species.BLIPBUG]: 2, - [Species.NICKIT]: 3, - [Species.GOSSIFLEUR]: 3, - [Species.WOOLOO]: 3, + [Species.NICKIT]: 1, + [Species.GOSSIFLEUR]: 2, + [Species.WOOLOO]: 2, [Species.CHEWTLE]: 3, - [Species.YAMPER]: 3, + [Species.YAMPER]: 2, [Species.ROLYCOLY]: 3, - [Species.APPLIN]: 4, + [Species.APPLIN]: 3, [Species.SILICOBRA]: 3, [Species.CRAMORANT]: 3, [Species.ARROKUDA]: 3, [Species.TOXEL]: 3, [Species.SIZZLIPEDE]: 3, - [Species.CLOBBOPUS]: 3, + [Species.CLOBBOPUS]: 2, [Species.SINISTEA]: 3, - [Species.HATENNA]: 4, + [Species.HATENNA]: 3, [Species.IMPIDIMP]: 3, [Species.MILCERY]: 3, [Species.FALINKS]: 4, [Species.PINCURCHIN]: 3, [Species.SNOM]: 3, - [Species.STONJOURNER]: 4, - [Species.EISCUE]: 4, - [Species.INDEEDEE]: 3, + [Species.STONJOURNER]: 3, + [Species.EISCUE]: 3, + [Species.INDEEDEE]: 4, [Species.MORPEKO]: 3, - [Species.CUFANT]: 4, + [Species.CUFANT]: 3, [Species.DRACOZOLT]: 5, - [Species.ARCTOZOLT]: 5, + [Species.ARCTOZOLT]: 4, [Species.DRACOVISH]: 5, - [Species.ARCTOVISH]: 5, + [Species.ARCTOVISH]: 4, [Species.DURALUDON]: 5, [Species.DREEPY]: 4, [Species.ZACIAN]: 9, @@ -3179,67 +3179,67 @@ export const speciesStarters = { [Species.GLASTRIER]: 6, [Species.SPECTRIER]: 7, [Species.CALYREX]: 8, - [Species.GALAR_MEOWTH]: 4, - [Species.GALAR_PONYTA]: 4, + [Species.GALAR_MEOWTH]: 3, + [Species.GALAR_PONYTA]: 2, [Species.GALAR_SLOWPOKE]: 3, - [Species.GALAR_FARFETCHD]: 5, - [Species.GALAR_CORSOLA]: 4, + [Species.GALAR_FARFETCHD]: 3, + [Species.GALAR_CORSOLA]: 3, [Species.GALAR_ZIGZAGOON]: 3, [Species.GALAR_DARUMAKA]: 4, [Species.GALAR_YAMASK]: 3, - [Species.GALAR_STUNFISK]: 4, - [Species.GALAR_MR_MIME]: 5, + [Species.GALAR_STUNFISK]: 2, + [Species.GALAR_MR_MIME]: 3, [Species.GALAR_ARTICUNO]: 6, [Species.GALAR_ZAPDOS]: 6, [Species.GALAR_MOLTRES]: 6, [Species.HISUI_GROWLITHE]: 4, [Species.HISUI_VOLTORB]: 3, [Species.HISUI_QWILFISH]: 4, - [Species.HISUI_SNEASEL]: 4, - [Species.HISUI_ZORUA]: 4, + [Species.HISUI_SNEASEL]: 5, + [Species.HISUI_ZORUA]: 3, [Species.ENAMORUS]: 7, - [Species.SPRIGATITO]: 3, - [Species.FUECOCO]: 3, - [Species.QUAXLY]: 3, + [Species.SPRIGATITO]: 4, + [Species.FUECOCO]: 4, + [Species.QUAXLY]: 4, [Species.LECHONK]: 2, [Species.TAROUNTULA]: 1, [Species.NYMBLE]: 3, - [Species.PAWMI]: 3, + [Species.PAWMI]: 4, [Species.TANDEMAUS]: 4, - [Species.FIDOUGH]: 3, + [Species.FIDOUGH]: 2, [Species.SMOLIV]: 3, - [Species.SQUAWKABILLY]: 3, + [Species.SQUAWKABILLY]: 2, [Species.NACLI]: 4, [Species.CHARCADET]: 4, [Species.TADBULB]: 3, [Species.WATTREL]: 3, [Species.MASCHIFF]: 3, - [Species.SHROODLE]: 3, + [Species.SHROODLE]: 2, [Species.BRAMBLIN]: 3, [Species.TOEDSCOOL]: 3, - [Species.KLAWF]: 4, + [Species.KLAWF]: 3, [Species.CAPSAKID]: 3, - [Species.RELLOR]: 3, + [Species.RELLOR]: 2, [Species.FLITTLE]: 3, [Species.TINKATINK]: 4, - [Species.WIGLETT]: 3, + [Species.WIGLETT]: 2, [Species.BOMBIRDIER]: 3, - [Species.FINIZEN]: 4, + [Species.FINIZEN]: 3, [Species.VAROOM]: 4, - [Species.CYCLIZAR]: 5, + [Species.CYCLIZAR]: 4, [Species.ORTHWORM]: 4, [Species.GLIMMET]: 4, - [Species.GREAVARD]: 4, + [Species.GREAVARD]: 3, [Species.FLAMIGO]: 4, - [Species.CETODDLE]: 4, + [Species.CETODDLE]: 3, [Species.VELUZA]: 4, - [Species.DONDOZO]: 5, - [Species.TATSUGIRI]: 5, + [Species.DONDOZO]: 4, + [Species.TATSUGIRI]: 4, [Species.GREAT_TUSK]: 6, [Species.SCREAM_TAIL]: 6, [Species.BRUTE_BONNET]: 6, - [Species.FLUTTER_MANE]: 6, + [Species.FLUTTER_MANE]: 7, [Species.SLITHER_WING]: 6, [Species.SANDY_SHOCKS]: 6, [Species.IRON_TREADS]: 6, @@ -3273,7 +3273,7 @@ export const speciesStarters = { [Species.PECHARUNT]: 6, [Species.PALDEA_TAUROS]: 5, [Species.PALDEA_WOOPER]: 3, - [Species.BLOODMOON_URSALUNA]: 7, + [Species.BLOODMOON_URSALUNA]: 6, }; export const noStarterFormKeys: string[] = [ diff --git a/src/data/trainer-config.ts b/src/data/trainer-config.ts index 4f3481b27ac..2cc228a93cf 100644 --- a/src/data/trainer-config.ts +++ b/src/data/trainer-config.ts @@ -556,7 +556,7 @@ export class TrainerConfig { const nameForCall = this.name.toLowerCase().replace(/\s/g, "_"); this.name = i18next.t(`trainerNames:${nameForCall}`); this.setTitle(title); - this.setMoneyMultiplier(2.25); + this.setMoneyMultiplier(2.5); this.setBoss(); this.setStaticParty(); this.setBattleBgm("battle_plasma_boss"); @@ -1187,6 +1187,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.PORYGON, Species.ALOLA_RATTATA, Species.ALOLA_SANDSHREW, Species.ALOLA_MEOWTH, Species.ALOLA_GRIMER, Species.ALOLA_GEODUDE], [TrainerPoolTier.SUPER_RARE]: [Species.DRATINI, Species.LARVITAR] }), + [TrainerType.ROCKET_ADMIN]: new TrainerConfig(++t).setHasGenders().setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_rocket_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.RATTATA, Species.KOFFING, Species.EKANS, Species.GYARADOS, Species.TAUROS, Species.SCYTHER, Species.CUBONE, Species.GROWLITHE, Species.MURKROW, Species.GASTLY, Species.EXEGGCUTE, Species.VOLTORB], + [TrainerPoolTier.UNCOMMON]: [Species.PORYGON, Species.ALOLA_RATTATA, Species.ALOLA_SANDSHREW, Species.ALOLA_MEOWTH, Species.ALOLA_GRIMER, Species.ALOLA_GEODUDE], + [TrainerPoolTier.RARE]: [Species.DRATINI, Species.LARVITAR] + }), [TrainerType.MAGMA_GRUNT]: new TrainerConfig(++t).setHasGenders("Magma Grunt Female").setHasDouble("Magma Grunts").setMoneyMultiplier(1.0).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_aqua_magma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) .setSpeciesPools({ [TrainerPoolTier.COMMON]: [Species.SLUGMA, Species.POOCHYENA, Species.NUMEL, Species.ZIGZAGOON, Species.DIGLETT, Species.MAGBY, Species.TORKOAL, Species.BALTOY, Species.BARBOACH], @@ -1194,6 +1200,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.TRAPINCH, Species.HEATMOR], [TrainerPoolTier.SUPER_RARE]: [Species.TURTONATOR, Species.CHARCADET] }), + [TrainerType.MAGMA_ADMIN]: new TrainerConfig(++t).setHasGenders().setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_aqua_magma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.NUMEL, Species.POOCHYENA, Species.SLUGMA, Species.SOLROCK, Species.HIPPOPOTAS, Species.SANDACONDA, Species.PHANPY, Species.SWINUB, Species.GLIGAR], + [TrainerPoolTier.UNCOMMON]: [Species.TRAPINCH, Species.HEATMOR], + [TrainerPoolTier.RARE]: [Species.TURTONATOR, Species.CHARCADET] + }), [TrainerType.AQUA_GRUNT]: new TrainerConfig(++t).setHasGenders("Aqua Grunt Female").setHasDouble("Aqua Grunts").setMoneyMultiplier(1.0).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_aqua_magma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) .setSpeciesPools({ [TrainerPoolTier.COMMON]: [ Species.CARVANHA, Species.WAILMER, Species.ZIGZAGOON, Species.LOTAD, Species.CORPHISH, Species.SPHEAL ], @@ -1201,6 +1213,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.MANTINE, Species.BASCULEGION, Species.REMORAID, Species.ARROKUDA], [TrainerPoolTier.SUPER_RARE]: [Species.DONDOZO] }), + [TrainerType.AQUA_ADMIN]: new TrainerConfig(++t).setHasGenders().setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_aqua_magma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.CARVANHA, Species.CORPHISH, Species.ZIGZAGOON, Species.CLAMPERL, Species.CHINCHOU, Species.WOOPER, Species.WINGULL, Species.TENTACOOL, Species.QWILFISH ], + [TrainerPoolTier.UNCOMMON]: [Species.MANTINE, Species.BASCULEGION, Species.REMORAID, Species.ARROKUDA], + [TrainerPoolTier.RARE]: [Species.DONDOZO] + }), [TrainerType.GALACTIC_GRUNT]: new TrainerConfig(++t).setHasGenders("Galactic Grunt Female").setHasDouble("Galactic Grunts").setMoneyMultiplier(1.0).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_galactic_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) .setSpeciesPools({ [TrainerPoolTier.COMMON]: [ Species.GLAMEOW, Species.STUNKY, Species.CROAGUNK, Species.SHINX, Species.WURMPLE, Species.BRONZOR, Species.DRIFLOON, Species.BURMY], @@ -1208,6 +1226,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.HISUI_GROWLITHE, Species.HISUI_QWILFISH, Species.HISUI_SNEASEL], [TrainerPoolTier.SUPER_RARE]: [Species.HISUI_ZORUA, Species.HISUI_SLIGGOO] }), + [TrainerType.GALACTIC_ADMIN]: new TrainerConfig(++t).setHasGenders().setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_galactic_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.GLAMEOW, Species.STUNKY, Species.BRONZOR, Species.CARNIVINE, Species.GROWLITHE, Species.QWILFISH, Species.SNEASEL ], + [TrainerPoolTier.UNCOMMON]: [Species.HISUI_GROWLITHE, Species.HISUI_QWILFISH, Species.HISUI_SNEASEL], + [TrainerPoolTier.RARE]: [Species.HISUI_ZORUA, Species.HISUI_SLIGGOO] + }), [TrainerType.PLASMA_GRUNT]: new TrainerConfig(++t).setHasGenders("Plasma Grunt Female").setHasDouble("Plasma Grunts").setMoneyMultiplier(1.0).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_plasma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) .setSpeciesPools({ [TrainerPoolTier.COMMON]: [ Species.PATRAT, Species.LILLIPUP, Species.PURRLOIN, Species.SCRAFTY, Species.WOOBAT, Species.VANILLITE, Species.SANDILE, Species.TRUBBISH], @@ -1215,6 +1239,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.PAWNIARD, Species.VULLABY, Species.ZORUA, Species.DRILBUR, Species.KLINK], [TrainerPoolTier.SUPER_RARE]: [Species.DRUDDIGON, Species.BOUFFALANT, Species.AXEW, Species.DEINO, Species.DURANT] }), + [TrainerType.PLASMA_SAGE]: new TrainerConfig(++t).setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_plasma_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.SCRAFTY, Species.LILLIPUP, Species.PURRLOIN, Species.FRILLISH, Species.VENIPEDE, Species.GOLETT, Species.TIMBURR, Species.DARUMAKA, Species.AMOONGUSS], + [TrainerPoolTier.UNCOMMON]: [Species.PAWNIARD, Species.VULLABY, Species.ZORUA, Species.DRILBUR, Species.KLINK], + [TrainerPoolTier.RARE]: [Species.DRUDDIGON, Species.BOUFFALANT, Species.AXEW, Species.DEINO, Species.DURANT] + }), [TrainerType.FLARE_GRUNT]: new TrainerConfig(++t).setHasGenders("Flare Grunt Female").setHasDouble("Flare Grunts").setMoneyMultiplier(1.0).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_flare_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) .setSpeciesPools({ [TrainerPoolTier.COMMON]: [ Species.FLETCHLING, Species.LITLEO, Species.PONYTA, Species.INKAY, Species.HOUNDOUR, Species.SKORUPI, Species.SCRAFTY, Species.CROAGUNK], @@ -1222,6 +1252,12 @@ export const trainerConfigs: TrainerConfigs = { [TrainerPoolTier.RARE]: [Species.LITWICK, Species.SNEASEL, Species.PANCHAM, Species.PAWNIARD], [TrainerPoolTier.SUPER_RARE]: [Species.NOIVERN, Species.DRUDDIGON] }), + [TrainerType.FLARE_ADMIN]: new TrainerConfig(++t).setHasGenders().setMoneyMultiplier(1.5).setEncounterBgm(TrainerType.PLASMA_GRUNT).setBattleBgm("battle_plasma_grunt").setMixedBattleBgm("battle_flare_grunt").setVictoryBgm("victory_team_plasma").setPartyTemplateFunc(scene => getEvilGruntPartyTemplate(scene)) + .setSpeciesPools({ + [TrainerPoolTier.COMMON]: [ Species.FLETCHLING, Species.LITLEO, Species.INKAY, Species.HELIOPTILE, Species.ELECTRIKE, Species.SKRELP, Species.GULPIN, Species.PURRLOIN, Species.POOCHYENA, Species.SCATTERBUG], + [TrainerPoolTier.UNCOMMON]: [Species.LITWICK, Species.SNEASEL, Species.PANCHAM, Species.PAWNIARD], + [TrainerPoolTier.RARE]: [Species.NOIVERN, Species.DRUDDIGON] + }), [TrainerType.BROCK]: new TrainerConfig((t = TrainerType.BROCK)).initForGymLeader(signatureSpecies["BROCK"],true, Type.ROCK).setBattleBgm("battle_kanto_gym").setMixedBattleBgm("battle_kanto_gym"), [TrainerType.MISTY]: new TrainerConfig(++t).initForGymLeader(signatureSpecies["MISTY"],false, Type.WATER).setBattleBgm("battle_kanto_gym").setMixedBattleBgm("battle_kanto_gym"), [TrainerType.LT_SURGE]: new TrainerConfig(++t).initForGymLeader(signatureSpecies["LT_SURGE"],true, Type.ELECTRIC).setBattleBgm("battle_kanto_gym").setMixedBattleBgm("battle_kanto_gym"), diff --git a/src/enums/trainer-type.ts b/src/enums/trainer-type.ts index 6bd8f567acb..db0bf3a8d64 100644 --- a/src/enums/trainer-type.ts +++ b/src/enums/trainer-type.ts @@ -53,11 +53,17 @@ export enum TrainerType { WORKER, YOUNGSTER, ROCKET_GRUNT, + ROCKET_ADMIN, MAGMA_GRUNT, + MAGMA_ADMIN, AQUA_GRUNT, + AQUA_ADMIN, GALACTIC_GRUNT, + GALACTIC_ADMIN, PLASMA_GRUNT, + PLASMA_SAGE, FLARE_GRUNT, + FLARE_ADMIN, ROCKET_BOSS_GIOVANNI_1, ROCKET_BOSS_GIOVANNI_2, MAXIE, diff --git a/src/field/arena.ts b/src/field/arena.ts index efbcdcd6727..cb045cc76ac 100644 --- a/src/field/arena.ts +++ b/src/field/arena.ts @@ -639,9 +639,13 @@ export class Arena { } /** - * Clears terrain and arena tags when entering new biome or trainer battle. + * Clears weather, terrain and arena tags when entering new biome or trainer battle. */ resetArenaEffects(): void { + // Don't reset weather if a Biome's permanent weather is active + if (this.weather?.turnsLeft !== 0) { + this.trySetWeather(WeatherType.NONE, false); + } this.trySetTerrain(TerrainType.NONE, false, true); this.removeAllTags(); } diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index f2b0d02e245..1bd9f8db491 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -3161,6 +3161,23 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { return this.randSeedInt((max - min) + 1, min); } + /** + * Causes a Pokemon to leave the field (such as in preparation for a switch out/escape). + * @param clearEffects Indicates if effects should be cleared (true) or passed + * to the next pokemon, such as during a baton pass (false) + */ + leaveField(clearEffects: boolean = true) { + this.resetTurnData(); + if (clearEffects) { + this.resetSummonData(); + this.resetBattleData(); + } + this.hideInfo(); + this.setVisible(false); + this.scene.field.remove(this); + this.scene.triggerPokemonFormChange(this, SpeciesFormChangeActiveTrigger, true); + } + destroy(): void { this.battleInfo?.destroy(); super.destroy(); @@ -3272,25 +3289,21 @@ export class PlayerPokemon extends Pokemon { return true; } - switchOut(batonPass: boolean, removeFromField: boolean = false): Promise { + /** + * Causes this mon to leave the field (via {@linkcode leaveField}) and then + * opens the party switcher UI to switch a new mon in + * @param batonPass Indicates if this switch was caused by a baton pass (and + * thus should maintain active mon effects) + */ + switchOut(batonPass: boolean): Promise { return new Promise(resolve => { - this.resetTurnData(); - if (!batonPass) { - this.resetSummonData(); - } - this.hideInfo(); - this.setVisible(false); + this.leaveField(!batonPass); this.scene.ui.setMode(Mode.PARTY, PartyUiMode.FAINT_SWITCH, this.getFieldIndex(), (slotIndex: integer, option: PartyOption) => { if (slotIndex >= this.scene.currentBattle.getBattlerCount() && slotIndex < 6) { this.scene.prependToPhase(new SwitchSummonPhase(this.scene, this.getFieldIndex(), slotIndex, false, batonPass), MoveEndPhase); } - if (removeFromField) { - this.setVisible(false); - this.scene.field.remove(this); - this.scene.triggerPokemonFormChange(this, SpeciesFormChangeActiveTrigger, true); - } - this.scene.ui.setMode(Mode.MESSAGE).then(() => resolve()); + this.scene.ui.setMode(Mode.MESSAGE).then(resolve); }, PartyUiHandler.FilterNonFainted); }); } diff --git a/src/field/trainer.ts b/src/field/trainer.ts index 3e78afeae83..107dfbe6831 100644 --- a/src/field/trainer.ts +++ b/src/field/trainer.ts @@ -121,8 +121,8 @@ export default class Trainer extends Phaser.GameObjects.Container { // Determine the title to include based on the configuration and includeTitle flag. let title = includeTitle && this.config.title ? this.config.title : null; - - if (this.name === "" && name.toLowerCase().includes("grunt")) { + const evilTeamTitles = ["grunt", "admin", "sage"]; + if (this.name === "" && evilTeamTitles.some(t => name.toLocaleLowerCase().includes(t))) { // This is a evil team grunt so we localize it by only using the "name" as the title title = i18next.t(`trainerClasses:${name.toLowerCase().replace(/\s/g, "_")}`); console.log("Localized grunt name: " + title); diff --git a/src/locales/de/ability-trigger.ts b/src/locales/de/ability-trigger.ts index 88dc9f9f027..3c9586fb6f2 100644 --- a/src/locales/de/ability-trigger.ts +++ b/src/locales/de/ability-trigger.ts @@ -35,12 +35,12 @@ export const abilityTriggers: SimpleTranslationEntries = { "battlerTagImmunity": "{{abilityName}} von {{pokemonNameWithAffix}} verhindert {{battlerTagName}}!", "forewarn": "Vorwarnung von {{pokemonNameWithAffix}}: Konzentraion auf {{moveName}}!", "frisk": "{{pokemonNameWithAffix}} hat die Fähigkeit {{opponentAbilityName}} von {{opponentName}} erschnüffelt!", - "postWeatherLapseHeal": "{{abilityName}} von {{pokemonName}} füllte einige KP auf!", + "postWeatherLapseHeal": "{{abilityName}} von {{pokemonNameWithAffix}} füllte einige KP auf!", "postWeatherLapseDamage": "{{pokemonNameWithAffix}} wurde durch {{abilityName}} verletzt!", "postTurnLootCreateEatenBerry": "{{pokemonNameWithAffix}} hat {{berryName}} geerntet!", - "postTurnHeal": "{{abilityName}} von {{pokemonName}} füllte einige KP auf!", + "postTurnHeal": "{{abilityName}} von {{pokemonNameWithAffix}} füllte einige KP auf!", "fetchBall": "{{pokemonNameWithAffix}} hat einen {{pokeballName}} gefunden!", - "healFromBerryUse": "{{abilityName}} von {{pokemonName}} füllte einige KP auf!", + "healFromBerryUse": "{{abilityName}} von {{pokemonNameWithAffix}} füllte einige KP auf!", "arenaTrap": "{{abilityName}} von {{pokemonNameWithAffix}} verhindert den Tausch!", "postBattleLoot": "{{pokemonNameWithAffix}} hebt {{itemName}} auf!", "postFaintContactDamage": "{{abilityName}} von {{pokemonNameWithAffix}} schadet seinem Angreifer!", diff --git a/src/locales/de/dialogue.ts b/src/locales/de/dialogue.ts index 02c497b3182..57fd9071463 100644 --- a/src/locales/de/dialogue.ts +++ b/src/locales/de/dialogue.ts @@ -378,6 +378,19 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Das war mal wieder ein Schuss in den Ofen!" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? Du wagst es, dich Team Rocket zu widersetzen? Du wirst es bereuen.", + 2: "Du glaubst, du kannst uns aufhalten? Naiver Narr!", + 3: "Ich werde dir die wahre Macht von Team Rocket zeigen!" + }, + "victory": { + 1: "Nein! Verzeih mir, Giovanni!", + 2: "Wie konnte das geschehen?", + 3: "Urgh... Du warst zu stark..." + }, + }, + "firebreather": { "encounter": { 1: "Meine Flammen werden dich verschlingen!", @@ -410,6 +423,20 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Wie kann das sein? Ich bin Teil vom mächtigen Team Magma! Wir wollen doch nur die Welt verbessern…" }, }, + "magma_admin": { + "encounter": { + 1: `Hahaha! Du hast den ganzen weiten Weg auf dich genommen! Aber du bist zu spät! + $Unsere Mission ist schon fast abgeschlossen!`, + 2: `Du willst dich in Team Magmas Angelegenheiten einmischen? Du bist so süß, dass es ekelhaft ist! + $Ich werde dich ein für alle Mal erledigen!`, + 3: "Ich werde dir zeigen, was wahrer Schmerz ist! Mach dich bereit!", + }, + "victory": { + 1: "Hahaha! Ouch! Ich habe wohl verloren...", + 2: "Du bist ekelhaft stark!", + 3: "Da habe ich meine eigene Medizin zu schmecken bekommen!" + }, + }, "aqua_grunt": { "encounter": { 1: "Du willst dich also mit Team Aqua anlegen? Du traust dich ja was… Dich werfe ich über Bord!", @@ -418,6 +445,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Vielleicht sollte ich wohl lieber selber über die Planke gehen…", }, }, + "aqua_admin": { + "encounter": { + 1: "Ich bin eine Stufe über den Rüpeln, die du bisher gesehen hast. Ich werde dich pulverisieren!", + 2: "Hmmm? Wer ist das? Wer ist dieses verwöhnte Gör?", + 3: "Was machst du hier? Bist du uns gefolgt? Dann müssen wir dich wohl loswerden!" + }, + "victory": { + 1: "Also habe ich auch verloren...", + 2: "Ahhh?! War ich zu nachsichtig mit dir?!", + 3: "W-was war das?" + }, + }, "galactic_grunt": { "encounter": { 1: "Team Galaktik wird die Welt in eine bessere Welt verwandeln! Und du wirst uns nicht aufhalten!" @@ -426,6 +465,19 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Zyrus wird uns für diese Niederlage bestrafen…" }, }, + "galactic_admin": { + "encounter": { + 1: "Ich bin einer der Commander von Team Galaktik. Wir werden Zyrus' Traum verwirklichen!", + 2: `Alles, was sich Team Galaktik widersetzt, muss zerschlagen werden! + $Selbst der Gedanke an Widerstand wird nicht toleriert!`, + 3: "Was ist los? Sag mir nicht, dass du zitterst? Mach ich dir Angst? Gut so! Knie nieder!" + }, + "victory": { + 1: "Das kann nicht sein?! Ich habe verloren?! Du... du freches Gör!", + 2: "Du, mein Freund, bist stark! Aber widestand ist zwecklos! Team Galaktik wird siegen!", + 3: "Gegen ein Kind zu verlieren... Meine Unachtsamkeit wird mir nicht verziehen werden..." + }, + }, "plasma_grunt": { "encounter": { 1: "Pokémon sollten frei sein! Team Plasma wird sie befreien!" @@ -434,6 +486,19 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Wie konnte ich verlieren? Ich dachte, ich würde die Welt retten…" }, }, + "plasma_sage": { + "encounter": { + 1: "Du könntest eine Bedrohung für Team Plasma werden, also werden wir dich hier eliminieren!", + 2: "Oh, ernsthaft... Ich hatte nicht erwartet, kämpfen zu müssen!", + 3: `Du bist ein beeindruckender Trainer, dass du es so weit geschafft hast. + $Als Weiser von Team Plasma werde ich dich besiegen!` + }, + "victory": { + 1: "G-Cis...", + 2: "Es ist bitterkalt. Ich zittere. Ich leide.", + 3: "Hm. Du bist ein klügerer Trainer, als ich erwartet hatte. Ich bin beeindruckt." + }, + }, "flare_grunt": { "encounter": { 1: `Ich bin ein Mitglied von Team Flare! Das sieht man mir doch an. Mein Stil ist unverkennbar! @@ -443,6 +508,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Stil ist wohl doch nicht alles…" }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! Es wäre mir ein Vergnügen. Komm schon, kleiner Trainer! Zeig mir, was du drauf hast!", + 2: "Wir von Team Flare sind die einzigen, die die Schönheit der Welt wirklich schätzen!", + 3: "Ich habe auf dich gewartet! Lass mich ein wenig an dir forschen! Komm, lass uns beginnen!" + }, + "victory": { + 1: "Du bist ziemlich stark. Oh ja, sehr stark, in der Tat.", + 2: "Es scheint als hätte ich mich geirrt… Der Sieger steht fest.", + 3: "Wunderbar! Erstaunlich! Du hast enormes Geschick und dieser Mut!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: `Ich bin beeindruckt, du hast es bis hierher geschafft! @@ -476,7 +553,7 @@ export const PGMdialogue: DialogueTranslationEntries = { $Wir brauchen mehr Landmassen um zu leben! Team Magma wird dieses Ziel mit aller Macht erreichen!` }, "victory": { - 1:"Ugh! Das entspricht nicht meinen Berechnungen! Wie konnte ich verlieren? Wir sehen uns wieder!" + 1: "Ugh! Das entspricht nicht meinen Berechnungen! Wie konnte ich verlieren? Wir sehen uns wieder!" }, "defeat": { 1: "Team Magma wird weiterhin die Welt verbessern!" @@ -542,7 +619,7 @@ export const PGMdialogue: DialogueTranslationEntries = { }, "plasma_boss_ghetsis_1": { "encounter": { - 1:"Ich werde nicht zulassen, dass mich jemand aufhält! Egal wer es auch sein mag!" + 1: "Ich werde nicht zulassen, dass mich jemand aufhält! Egal wer es auch sein mag!" }, "victory": { 1: "Wie kann das sein? Ich bin der Schöpfer von Team Plasma! Ich bin perfekt!" @@ -2604,7 +2681,7 @@ export const PGFbattleSpecDialogue: SimpleTranslationEntries = PGMbattleSpecDial // Dialogue that does not fit into any other category (e.g. tutorial messages, or the end of the game). For when the player character is male export const PGMmiscDialogue: SimpleTranslationEntries = { "ending": - `@c{smile}Oh? Du hast gewonnen?@d{96} @c{smile_eclosed}Ich schätze, das hätte ich wissen sollen. + `@c{smile}Oh? Du hast gewonnen?@d{96} @c{smile_eclosed}Ich schätze, das hätte ich wissen sollen. $Aber, du bist jetzt zurück. $@c{smile}Es ist vorbei.@d{64} Du hast die Schleife beendet. $@c{serious_smile_fists}Du hast auch deinen Traum erfüllt, nicht wahr?\nDu hast nicht einmal verloren. @@ -2615,7 +2692,7 @@ export const PGMmiscDialogue: SimpleTranslationEntries = { $@c{serious_smile_fists}Vielleicht können wir, wenn wir zurück sind, noch einen Kampf haben? $Wenn du dazu bereit bist.`, "ending_female": - `@c{shock}Du bist zurück?@d{32} Bedeutet das…@d{96} du hast gewonnen?! + `@c{shock}Du bist zurück?@d{32} Bedeutet das…@d{96} du hast gewonnen?! $@c{smile_ehalf}Ich hätte wissen sollen, dass du es in dir hast. $@c{smile_eclosed}Natürlich… ich hatte immer dieses Gefühl. $@c{smile}Es ist jetzt vorbei, richtig? Du hast die Schleife beendet. diff --git a/src/locales/de/filter-bar.ts b/src/locales/de/filter-bar.ts index 31c6fee20d4..9c1009171e2 100644 --- a/src/locales/de/filter-bar.ts +++ b/src/locales/de/filter-bar.ts @@ -3,14 +3,17 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; export const filterBar: SimpleTranslationEntries = { "genFilter": "Gen.", "typeFilter": "Typ", + "dexFilter": "Dex.", "unlocksFilter": "Freisch.", - "winFilter": "Abschluss", + "miscFilter": "Sonst.", "sortFilter": "Sort.", "all": "Alle", "normal": "Normal", "uncaught": "Nicht gefangen", + "passive": "Passive", "passiveUnlocked": "Passive freigeschaltet", "passiveLocked": "Passive gesperrt", + "ribbon": "Band", "hasWon": "Hat Klassik-Modus gewonnen", "hasNotWon": "Hat Klassik-Modus nicht gewonnen", "sortByNumber": "Pokédex-Nummer", diff --git a/src/locales/de/move-trigger.ts b/src/locales/de/move-trigger.ts index 0dc88931282..427ec6acbde 100644 --- a/src/locales/de/move-trigger.ts +++ b/src/locales/de/move-trigger.ts @@ -4,8 +4,8 @@ export const moveTriggers: SimpleTranslationEntries = { "hitWithRecoil" : "{{pokemonName}} erleidet Schaden durch Rückstoß!", "cutHpPowerUpMove": "{{pokemonName}} nutzt seine KP um seine Attacke zu verstärken!", "absorbedElectricity": "{{pokemonName}} absorbiert elektrische Energie!", - "switchedStatChanges": "{{pokemonName}}tauschte die Statuswerteveränderungen mit dem Ziel!", - "goingAllOutForAttack": "{{pokemonName}}legt sich ins Zeug!", + "switchedStatChanges": "{{pokemonName}} tauschte die Statuswerteveränderungen mit dem Ziel!", + "goingAllOutForAttack": "{{pokemonName}} legt sich ins Zeug!", "regainedHealth": "{{pokemonName}} erholt sich!", "keptGoingAndCrashed": "{{pokemonName}} springt daneben und verletzt sich!", "fled": "{{pokemonName}} ist geflüchtet!", @@ -35,7 +35,7 @@ export const moveTriggers: SimpleTranslationEntries = { "isOverflowingWithSpacePower": "Kosmische Kräfte strömen aus {{pokemonName}}!", "usedUpAllElectricity": "{{pokemonName}} braucht seinen Strom komplett auf!", "stoleItem": "{{pokemonName}} hat {{targetName}} das Item {{itemName}} geklaut!", - "incineratedItem": "{{itemName}} von {{targetName}} ist verbrannt und somit nutzlos geworden!", + "incineratedItem": "{{pokemonName}} hat {{itemName}} von {{targetName}} verbrannt. Es ist somit nutzlos geworden!", "knockedOffItem": "{{pokemonName}} schlägt das Item {{itemName}} von {{targetName}} weg!", "tookMoveAttack": "{{pokemonName}} wurde von {{moveName}} getroffen!", "cutOwnHpAndMaximizedStat": "{{pokemonName}} nutzt seine KP und maximiert dadurch seinen {{statName}}-Wert!", @@ -50,5 +50,13 @@ export const moveTriggers: SimpleTranslationEntries = { "transformedIntoTarget": "{{pokemonName}} verwandelt sich in {{targetName}}!", "tryingToTakeFoeDown": "{{pokemonName}} versucht, den Angreifer mit sich zu nehmen!", "addType": "{{pokemonName}} nimmt zusätzlich den Typ {{typeName}} an!", - "cannotUseMove": "{{pokemonName}} kann {{moveName}} nicht einsetzen!" + "cannotUseMove": "{{pokemonName}} kann {{moveName}} nicht einsetzen!", + "healHp": "KP von {{pokemonName}} wurden aufgefrischt!", + "sacrificialFullRestore": "Das Heilopfer von {{pokemonName}} erreicht sein Ziel!", + "invertStats": "Alle Statusveränderungen von {{pokemonName}} wurden invertiert!", + "resetStats": "Die Statusveränderungen von {{pokemonName}} wurden aufgehoben!", + "faintCountdown": "{{pokemonName}} geht nach {{turnCount}} Runden K.O.!", + "copyType": "{{pokemonName}} hat den Typ von {{targetPokemonName}} angenommen!", + "suppressAbilities": "Die Fähigkeit von {{pokemonName}} wirkt nicht mehr!", + "swapArenaTags": "{{pokemonName}} hat die Effekte, die auf den beiden Seiten des Kampffeldes wirken, miteinander getauscht!", } as const; diff --git a/src/locales/de/starter-select-ui-handler.ts b/src/locales/de/starter-select-ui-handler.ts index caade5c524d..e8ae4ed201e 100644 --- a/src/locales/de/starter-select-ui-handler.ts +++ b/src/locales/de/starter-select-ui-handler.ts @@ -7,6 +7,7 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; */ export const starterSelectUiHandler: SimpleTranslationEntries = { "confirmStartTeam": "Mit diesen Pokémon losziehen?", + "confirmExit": "Do you want to exit?", "invalidParty": "Das ist kein gültiges Team!", "gen1": "I", "gen2": "II", diff --git a/src/locales/de/status-effect.ts b/src/locales/de/status-effect.ts index 997d005987e..b48bd468626 100644 --- a/src/locales/de/status-effect.ts +++ b/src/locales/de/status-effect.ts @@ -33,7 +33,7 @@ export const statusEffect: StatusEffectTranslationEntries = { description: "Paralyse", obtain: "{{pokemonNameWithAffix}} wurde paralysiert!\nEs kann eventuell nicht handeln!", obtainSource: "{{pokemonNameWithAffix}} wurde durch {{sourceText}} paralysiert,\nEs kann eventuell nicht handeln!", - activation: "{{pokemonNameWithAffix}}ist paralysiert!\nEs kann nicht angreifen!", + activation: "{{pokemonNameWithAffix}} ist paralysiert!\nEs kann nicht angreifen!", overlap: "{{pokemonNameWithAffix}} ist bereits paralysiert!", heal: "Die Paralyse von {{pokemonNameWithAffix}} wurde aufgehoben!" }, diff --git a/src/locales/de/trainers.ts b/src/locales/de/trainers.ts index 1390bf410ae..5b156afd331 100644 --- a/src/locales/de/trainers.ts +++ b/src/locales/de/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "Rüpel von Team Rocket", "rocket_grunt_female": "Rüpel von Team Rocket", "rocket_grunts": "Rüpel von Team Rocket", + "rocket_admin": "Team Rocket Vorstand", + "rocket_admin_female": "Team Rocket Vorstand", "magma_grunt": "Rüpel von Team Magma", "magma_grunt_female": "Rüpel von Team Magma", "magma_grunts": "Rüpel von Team Magma", + "magma_admin": "Team Magma Vorstand", + "magma_admin_female": "Team Magma Vorstand", "aqua_grunt": "Rüpel von Team Aqua", "aqua_grunt_female": "Rüpel von Team Aqua", "aqua_grunts": "Rüpel von Team Aqua", + "aqua_admin": "Team Aqua Vorstand", + "aqua_admin_female": "Team Aqua Vorstand", "galactic_grunt": "Rüpel von Team Galaktik", "galactic_grunt_female": "Rüpel von Team Galaktik", "galactic_grunts": "Rüpel von Team Galaktik", + "galactic_admin": "Team Galaktik Commander", + "galactic_admin_female": "Team Galaktik Commander", "plasma_grunt": "Rüpel von Team Plasma", "plasma_grunt_female": "Rüpel von Team Plasma", "plasma_grunts": "Rüpel von Team Plasma", + "plasma_sage": "Weiser von Team Plasma", "flare_grunt": "Rüpel von Team Flare", "flare_grunt_female": "Rüpel von Team Flare", "flare_grunts": "Rüpel von Team Flare", + "flare_admin": "Team Flare Vorstand", + "flare_admin_female": "Team Flare Vorstand", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/en/dialogue.ts b/src/locales/en/dialogue.ts index dda8891b788..44693c38aa1 100644 --- a/src/locales/en/dialogue.ts +++ b/src/locales/en/dialogue.ts @@ -391,6 +391,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Team Rocket blasting off again!" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "magma_grunt": { "encounter": { 1: " If you get in the way of Team Magma, don’t expect any mercy!" @@ -399,6 +411,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Huh? I lost?!" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "No one who crosses Team Aqua gets any mercy, not even kids!" @@ -407,6 +431,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "You're kidding me!" }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "Don't mess with Team Galactic!" @@ -415,6 +451,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Shut down..." }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "We won't tolerate people who have different ideas!" @@ -423,6 +471,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Plasmaaaaaaaaa!" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: "Fashion is most important to us!" @@ -431,6 +491,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "The future doesn't look bright for me." }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "So! I must say, I am impressed you got here!" diff --git a/src/locales/en/filter-bar.ts b/src/locales/en/filter-bar.ts index 60c6ffb1bbc..18b6ba77e21 100644 --- a/src/locales/en/filter-bar.ts +++ b/src/locales/en/filter-bar.ts @@ -3,16 +3,19 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; export const filterBar: SimpleTranslationEntries = { "genFilter": "Gen", "typeFilter": "Type", + "dexFilter": "Dex", "unlocksFilter": "Unlocks", - "winFilter": "Win", + "miscFilter": "Misc", "sortFilter": "Sort", "all": "All", "normal": "Normal", "uncaught": "Uncaught", + "passive": "Passive", "passiveUnlocked": "Passive Unlocked", "passiveLocked": "Passive Locked", - "hasWon": "Yes", - "hasNotWon": "No", + "ribbon": "Ribbon", + "hasWon": "Ribbon - Yes", + "hasNotWon": "Ribbon - No", "sortByNumber": "No.", "sortByCost": "Cost", "sortByCandies": "Candy Count", diff --git a/src/locales/en/move-trigger.ts b/src/locales/en/move-trigger.ts index 18427f59b59..1d9d6459d83 100644 --- a/src/locales/en/move-trigger.ts +++ b/src/locales/en/move-trigger.ts @@ -50,5 +50,13 @@ export const moveTriggers: SimpleTranslationEntries = { "transformedIntoTarget": "{{pokemonName}} transformed\ninto {{targetName}}!", "tryingToTakeFoeDown": "{{pokemonName}} is hoping to take its attacker down with it!", "addType": "{{typeName}} was added to\n{{pokemonName}}!", - "cannotUseMove": "{{pokemonName}} cannot use {{moveName}}!" + "cannotUseMove": "{{pokemonName}} cannot use {{moveName}}!", + "healHp": "{{pokemonName}} had its HP restored.", + "sacrificialFullRestore": "{{pokemonName}}'s Healing Wish\nwas granted!", + "invertStats": "{{pokemonName}}'s stat changes\nwere all reversed!", + "resetStats": "{{pokemonName}}'s stat changes\nwere eliminated!", + "faintCountdown": "{{pokemonName}}\nwill faint in {{turnCount}} turns.", + "copyType": "{{pokemonName}}'s type became the same as\n{{targetPokemonName}}'s type!", + "suppressAbilities": "{{pokemonName}}'s ability\nwas suppressed!", + "swapArenaTags": "{{pokemonName}} swapped the battle effects affecting each side of the field!", } as const; diff --git a/src/locales/en/starter-select-ui-handler.ts b/src/locales/en/starter-select-ui-handler.ts index 6d7b7f7cfb2..deb4236c8ba 100644 --- a/src/locales/en/starter-select-ui-handler.ts +++ b/src/locales/en/starter-select-ui-handler.ts @@ -7,6 +7,7 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; */ export const starterSelectUiHandler: SimpleTranslationEntries = { "confirmStartTeam": "Begin with these Pokémon?", + "confirmExit": "Do you want to exit?", "invalidParty": "This is not a valid starting party!", "gen1": "I", "gen2": "II", diff --git a/src/locales/en/trainers.ts b/src/locales/en/trainers.ts index 8e0394e0786..00367865d14 100644 --- a/src/locales/en/trainers.ts +++ b/src/locales/en/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "Rocket Grunt", "rocket_grunts": "Rocket Grunts", "rocket_grunt_female": "Rocket Grunt", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Magma Grunt", "magma_grunt_female": "Magma Grunt", "magma_grunts": "Magma Grunts", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Aqua Grunt", "aqua_grunt_female": "Aqua Grunt", "aqua_grunts": "Aqua Grunts", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Galactic Grunt", "galactic_grunt_female": "Galactic Grunt", "galactic_grunts": "Galactic Grunts", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Plasma Grunt", "plasma_grunt_female": "Plasma Grunt", "plasma_grunts": "Plasma Grunts", + "plasma_sage": "Plasma Sage", "flare_grunt": "Flare Grunt", "flare_grunt_female": "Flare Grunt", "flare_grunts": "Flare Grunts", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/es/filter-bar.ts b/src/locales/es/filter-bar.ts index 50826ba0502..33b60cfa427 100644 --- a/src/locales/es/filter-bar.ts +++ b/src/locales/es/filter-bar.ts @@ -3,14 +3,17 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; export const filterBar: SimpleTranslationEntries = { "genFilter": "Gen.", "typeFilter": "Tipo", + "dexFilter": "Dex", "unlocksFilter": "Otros", - "winFilter": "Vic.", + "miscFilter": "Misc", "sortFilter": "Orden", "all": "Todo", "normal": "Normal", "uncaught": "No Capt.", + "passive": "Passive", "passiveUnlocked": "Pasiva Desbloq.", "passiveLocked": "Pasiva Bloq.", + "ribbon": "Ribbon", "hasWon": "Ya ha ganado", "hasNotWon": "Aún no ha ganado", "sortByNumber": "Núm.", diff --git a/src/locales/es/move-trigger.ts b/src/locales/es/move-trigger.ts index 18427f59b59..3ff93997cc2 100644 --- a/src/locales/es/move-trigger.ts +++ b/src/locales/es/move-trigger.ts @@ -50,5 +50,13 @@ export const moveTriggers: SimpleTranslationEntries = { "transformedIntoTarget": "{{pokemonName}} transformed\ninto {{targetName}}!", "tryingToTakeFoeDown": "{{pokemonName}} is hoping to take its attacker down with it!", "addType": "{{typeName}} was added to\n{{pokemonName}}!", - "cannotUseMove": "{{pokemonName}} cannot use {{moveName}}!" + "cannotUseMove": "{{pokemonName}} cannot use {{moveName}}!", + "healHp": "{{pokemonName}} had its HP restored.", + "sacrificialFullRestore": "{{pokemonName}}'s Healing Wish\nwas granted!", + "invertStats": "{{pokemonName}}'s stat changes\nwere all reversed!", + "resetStats": "{{pokemonName}}'s stat changes\nwere eliminated!", + "faintCountdown": "{{pokemonName}}\nwill faint in {{turnCount}} turns.", + "copyType": "{{pokemonName}}'s type\nchanged to match {{targetPokemonName}}'s!", + "suppressAbilities": "{{pokemonName}}'s ability\nwas suppressed!", + "swapArenaTags": "{{pokemonName}} swapped the battle effects affecting each side of the field!", } as const; diff --git a/src/locales/es/starter-select-ui-handler.ts b/src/locales/es/starter-select-ui-handler.ts index 583e302bfeb..d7c203f49c4 100644 --- a/src/locales/es/starter-select-ui-handler.ts +++ b/src/locales/es/starter-select-ui-handler.ts @@ -7,6 +7,7 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; */ export const starterSelectUiHandler: SimpleTranslationEntries = { "confirmStartTeam": "¿Comenzar con estos Pokémon?", + "confirmExit": "Do you want to exit?", "invalidParty": "¡Este equipo no es válido!", "gen1": "I", "gen2": "II", diff --git a/src/locales/es/trainers.ts b/src/locales/es/trainers.ts index 133cce0785c..f881fc04f94 100644 --- a/src/locales/es/trainers.ts +++ b/src/locales/es/trainers.ts @@ -121,21 +121,31 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "Rocket Grunt", "rocket_grunts": "Rocket Grunts", "rocket_grunt_female": "Rocket Grunt", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Magma Grunt", "magma_grunt_female": "Magma Grunt", "magma_grunts": "Magma Grunts", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Aqua Grunt", "aqua_grunt_female": "Aqua Grunt", "aqua_grunts": "Aqua Grunts", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Galactic Grunt", "galactic_grunt_female": "Galactic Grunt", "galactic_grunts": "Galactic Grunts", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Plasma Grunt", "plasma_grunt_female": "Plasma Grunt", "plasma_grunts": "Plasma Grunts", "flare_grunt": "Flare Grunt", "flare_grunt_female": "Flare Grunt", "flare_grunts": "Flare Grunts", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/fr/achv.ts b/src/locales/fr/achv.ts index bc6a862942d..d5b80700493 100644 --- a/src/locales/fr/achv.ts +++ b/src/locales/fr/achv.ts @@ -264,6 +264,10 @@ export const PGMachv: AchievementTranslationEntries = { "MONO_FAIRY": { name: "Hey ! Listen !", }, + "FRESH_START": { + name: "Du premier coup !", + description: "Terminer un challenge « Nouveau départ »." + } } as const; // Achievement translations for the when the player character is female (it for now uses the same translations as the male version) @@ -530,4 +534,8 @@ export const PGFachv: AchievementTranslationEntries = { "MONO_FAIRY": { name: "Hey ! Listen !", }, + "FRESH_START": { + name: "Du premier coup !", + description: "Terminer un challenge « Nouveau départ »." + } } as const; diff --git a/src/locales/fr/bgm-name.ts b/src/locales/fr/bgm-name.ts index c6453a919cf..da344fe001e 100644 --- a/src/locales/fr/bgm-name.ts +++ b/src/locales/fr/bgm-name.ts @@ -74,16 +74,16 @@ export const bgmName: SimpleTranslationEntries = { "battle_wild": "NB - Vs. Pokémon sauvage", "battle_wild_strong": "NB - Vs. Pokémon puissant sauvage", "end_summit": "PDM ÉSDX - Tour Céleste", - "battle_rocket_grunt": "HGSS Team Rocket Battle", - "battle_aqua_magma_grunt": "ORAS Team Aqua & Magma Battle", - "battle_galactic_grunt": "BDSP Team Galactic Battle", + "battle_rocket_grunt": "HGSS Vs. Team Rocket", + "battle_aqua_magma_grunt": "ROSA Vs. Team Aqua/Magma", + "battle_galactic_grunt": "DÉPS Vs. Team Galaxie", "battle_plasma_grunt": "NB - Vs. Team Plasma", - "battle_flare_grunt": "XY Team Flare Battle", - "battle_rocket_boss": "USUM Giovanni Battle", - "battle_aqua_magma_boss": "ORAS Archie & Maxie Battle", - "battle_galactic_boss": "BDSP Cyrus Battle", - "battle_plasma_boss": "B2W2 Ghetsis Battle", - "battle_flare_boss": "XY Lysandre Battle", + "battle_flare_grunt": "XY - Vs. Team Flare", + "battle_rocket_boss": "USUL - Vs. Giovanni", + "battle_aqua_magma_boss": "ROSA - Vs. Max/Arthur", + "battle_galactic_boss": "DÉPS - Vs. Hélio", + "battle_plasma_boss": "N2B2 - Vs. Ghetis", + "battle_flare_boss": "XY - Vs. Lysandre", // Biome Music "abyss": "PDM EdS - Cratère Obscur", diff --git a/src/locales/fr/challenges.ts b/src/locales/fr/challenges.ts index d88960dbe3b..694cc242e73 100644 --- a/src/locales/fr/challenges.ts +++ b/src/locales/fr/challenges.ts @@ -2,7 +2,7 @@ import { TranslationEntries } from "#app/interfaces/locales"; export const challenges: TranslationEntries = { "title": "Paramètres du Challenge", - "illegalEvolution": "{{pokemon}} s’est transformé en Pokémon\ninéligible pour ce challenge !", + "illegalEvolution": "{{pokemon}} est devenu\ninéligible pour ce challenge !", "singleGeneration": { "name": "Mono-génération", "desc": "Vous ne pouvez choisir que des Pokémon de {{gen}} génération.", @@ -23,4 +23,10 @@ export const challenges: TranslationEntries = { "desc_default": "Vous ne pouvez choisir que des Pokémon du type sélectionné." //type in pokemon-info }, + "freshStart": { + "name": "Nouveau départ", + "desc": "Vous ne pouvez choisir que les starters de base du jeu, comme si vous le recommenciez.", + "value.0": "Non", + "value.1": "Oui", + } } as const; diff --git a/src/locales/fr/dialogue.ts b/src/locales/fr/dialogue.ts index d3ec5f85d5d..ac68aa6413b 100644 --- a/src/locales/fr/dialogue.ts +++ b/src/locales/fr/dialogue.ts @@ -2898,6 +2898,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Une fois de plus la Team Rocket s’envole vers d’autres cieux !" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "magma_grunt": { "encounter": { 1: "N’espère pas recevoir de la pitié si tu te mets sur le chemin de la Team Magma !" @@ -2906,6 +2918,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Je…?\nJ’ai perdu ?!" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "Aucune pitié si tu te mets sur le chemin de la Team Aqua, même pour une gamine !" @@ -2914,6 +2938,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Comment ça ?" }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "Ne te mets pas en travers de la Team Galaxie !" @@ -2922,6 +2958,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Désactivation…" }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "Pas de quatiers à ceux qui ne suivent pas notre idéal !" @@ -2930,6 +2978,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Plasmaaaaaaaaa !" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: "Le style et le bon gout, il n’y a que ça qui compte !" @@ -2938,6 +2998,18 @@ export const PGFdialogue: DialogueTranslationEntries = { 1: "Mon futur me semble guère radieux." }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "Bien. Je dois admettre que je suis impressionné de te voir ici !" diff --git a/src/locales/fr/filter-bar.ts b/src/locales/fr/filter-bar.ts index de0be450ad6..8e2c1a53afa 100644 --- a/src/locales/fr/filter-bar.ts +++ b/src/locales/fr/filter-bar.ts @@ -3,19 +3,22 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; export const filterBar: SimpleTranslationEntries = { "genFilter": "Gen", "typeFilter": "Type", - "unlocksFilter": "Autres", - "winFilter": "Victoires", + "dexFilter": "Dex", + "unlocksFilter": "Débloq.", + "miscFilter": "Divers", "sortFilter": "Tri", "all": "Tous", "normal": "Normal", "uncaught": "Non-capturé", + "passive": "Passif", "passiveUnlocked": "Passif débloqué", "passiveLocked": "Passif verrouillé", - "hasWon": "Oui", - "hasNotWon": "Aucune", + "ribbon": "Ruban", + "hasWon": "Ruban - Oui", + "hasNotWon": "Ruban - Non", "sortByNumber": "Par N°", "sortByCost": "Par cout", - "sortByCandies": "Par # bonbons", + "sortByCandies": "Par bonbons", "sortByIVs": "Par IV", "sortByName": "Par nom", }; diff --git a/src/locales/fr/move-trigger.ts b/src/locales/fr/move-trigger.ts index 7f6d25459da..d1fbda50b03 100644 --- a/src/locales/fr/move-trigger.ts +++ b/src/locales/fr/move-trigger.ts @@ -50,5 +50,13 @@ export const moveTriggers: SimpleTranslationEntries = { "transformedIntoTarget": "{{pokemonName}} prend\nl’apparence de {{targetName}} !", "tryingToTakeFoeDown": "{{pokemonName}} veut entrainer\nson assaillant dans sa chute !", "addType": "{{pokemonName}} gagne\nle type {{typeName}}.", - "cannotUseMove": "{{pokemonName}} ne peut pas\nutiliser la capacité {{moveName}} !" + "cannotUseMove": "{{pokemonName}} ne peut pas\nutiliser la capacité {{moveName}} !", + "healHp": "{{pokemonName}}\nrécupère des PV !", + "sacrificialFullRestore": "Le Vœu Soin est exaucé et profite\nà {{pokemonName}} !", + "invertStats": "Les changements de stats\nde {{pokemonName}} sont inversés !", + "resetStats": "Les changements de stats\nde {{pokemonName}} ont tous été annulés !", + "faintCountdown": "{{pokemonName}}\nsera K.O. dans {{turnCount}} tours !", + "copyType": "{{pokemonName}} prend le type\nde {{targetPokemonName}} !", + "suppressAbilities": "Le talent de {{pokemonName}}\na été rendu inactif !", + "swapArenaTags": "Les effets affectant chaque côté du terrain\nont été échangés par {{pokemonName}} !", } as const; diff --git a/src/locales/fr/starter-select-ui-handler.ts b/src/locales/fr/starter-select-ui-handler.ts index ce5959062ac..c49c326385f 100644 --- a/src/locales/fr/starter-select-ui-handler.ts +++ b/src/locales/fr/starter-select-ui-handler.ts @@ -7,6 +7,7 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; */ export const starterSelectUiHandler: SimpleTranslationEntries = { "confirmStartTeam": "Commencer avec ces Pokémon ?", + "confirmExit": "Do you want to exit?", "invalidParty": "Cette équipe de départ est invalide !", "gen1": "1G", "gen2": "2G", @@ -34,12 +35,12 @@ export const starterSelectUiHandler: SimpleTranslationEntries = { "unlockPassive": "Débloquer Passif", "reduceCost": "Diminuer le cout", "sameSpeciesEgg": "Acheter un Œuf", - "cycleShiny": ": » Chromatiques", - "cycleForm": ": » Formes", - "cycleGender": ": » Sexes", - "cycleAbility": ": » Talents", - "cycleNature": ": » Natures", - "cycleVariant": ": » Variants", + "cycleShiny": ": Chromatique", + "cycleForm": ": Forme", + "cycleGender": ": Sexe", + "cycleAbility": ": Talent", + "cycleNature": ": Nature", + "cycleVariant": ": Variant", "enablePassive": "Activer Passif", "disablePassive": "Désactiver Passif", "locked": "Verrouillé", diff --git a/src/locales/fr/trainers.ts b/src/locales/fr/trainers.ts index bc2a959c428..84d49eba549 100644 --- a/src/locales/fr/trainers.ts +++ b/src/locales/fr/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "Sbire de la Team Rocket", "rocket_grunt_female": "Sbire de la Team Rocket", "rocket_grunts": "Sbires de la Team Rocket", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Sbire de la Team Magma", "magma_grunt_female": "Sbire de la Team Magma", "magma_grunts": "Sbires de la Team Magma", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Sbire de la Team Aqua", "aqua_grunt_female": "Sbire de la Team Aqua", "aqua_grunts": "Sbires de la Team Aqua", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Sbire de la Team Galaxie", "galactic_grunt_female": "Sbire de la Team Galaxie", "galactic_grunts": "Sbires de la Team Galaxie", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Sbire de la Team Plasma", "plasma_grunt_female": "Sbire de la Team Plasma", "plasma_grunts": "Sbires de la Team Plasma", + "plasma_sage": "Plasma Sage", "flare_grunt": "Sbire de la Team Flare", "flare_grunt_female": "Sbire de la Team Flare", "flare_grunts": "Sbires de la Team Flare", + "flare_admin": "Manager de la Team Flare", + "flare_admin_female": "Manageuse de la Team Flare", } as const; // Names of special trainers like gym leaders, elite four, and the champion @@ -271,7 +282,11 @@ export const trainerNames: SimpleTranslationEntries = { "leon": "Tarak", "rival": "Gwenaël", //Male breton name, a celtic language spoken in Brittany (France) and related to the word for "white" (gwenn). Finn meaning is also "white" in irish/goidelic which are also celtic languages. "rival_female": "Papina", //Litteral translation of ivy, also used as Female name in a North-American indigenous language - + "maxie": "Max", + "archie": "Arthur", + "cyrus": "Hélio", + "ghetsis": "Ghetis", + "lysandre": "Lysandre", // Double Names "blue_red_double": "Blue & Red", diff --git a/src/locales/it/dialogue.ts b/src/locales/it/dialogue.ts index 702b550c45a..3861d530c01 100644 --- a/src/locales/it/dialogue.ts +++ b/src/locales/it/dialogue.ts @@ -391,6 +391,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Team Rocket blasting off again!" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "magma_grunt": { "encounter": { 1: " If you get in the way of Team Magma, don’t expect any mercy!" @@ -399,6 +411,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Huh? I lost?!" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "No one who crosses Team Aqua gets any mercy, not even kids!" @@ -407,6 +431,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "You're kidding me!" }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "Don't mess with Team Galactic!" @@ -415,6 +451,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Shut down..." }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "We won't tolerate people who have different ideas!" @@ -423,6 +471,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Plasmaaaaaaaaa!" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: "Fashion is most important to us!" @@ -431,6 +491,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "The future doesn't look bright for me." }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "So! I must say, I am impressed you got here!" diff --git a/src/locales/it/filter-bar.ts b/src/locales/it/filter-bar.ts index 979b52f1729..88745d2c4f8 100644 --- a/src/locales/it/filter-bar.ts +++ b/src/locales/it/filter-bar.ts @@ -3,16 +3,19 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; export const filterBar: SimpleTranslationEntries = { "genFilter": "Gen", "typeFilter": "Tipo", + "dexFilter": "Dex", "unlocksFilter": "Altro", - "winFilter": "Vinto", + "miscFilter": "Misc", "sortFilter": "Ordina", "all": "Tutto", "normal": "Normale", "uncaught": "Mancante", + "passive": "Passive", "passiveUnlocked": "Passiva sbloccata", "passiveLocked": "Passiva bloccata", - "hasWon": "Si", - "hasNotWon": "No", + "ribbon": "Ribbon", + "hasWon": "Ribbon - Yes", + "hasNotWon": "Ribbon - No", "sortByNumber": "Num. Dex", "sortByCost": "Costo", "sortByCandies": "Caramelle", diff --git a/src/locales/it/move-trigger.ts b/src/locales/it/move-trigger.ts index 645d62ef1a6..60679d844c0 100644 --- a/src/locales/it/move-trigger.ts +++ b/src/locales/it/move-trigger.ts @@ -50,5 +50,13 @@ export const moveTriggers: SimpleTranslationEntries = { "transformedIntoTarget": "{{pokemonName}} assume le sembianze\ndi {{targetName}}!", "tryingToTakeFoeDown": "{{pokemonName}} tenta di far subire a chi lo manda KO la sua stessa sorte!", "addType": "Adesso {{pokemonName}} è anche\ndi tipo {{typeName}}!", - "cannotUseMove": "{{pokemonName}} non può usare {{moveName}}!" + "cannotUseMove": "{{pokemonName}} non può usare {{moveName}}!", + "healHp": "{{pokemonName}} ha recuperato dei PS.", + "sacrificialFullRestore": "{{pokemonName}} riceve i benefici\neffetti di Curardore!", + "invertStats": "Le modifiche alle statistiche di {{pokemonName}}\nvengono invertite!", + "resetStats": "Tutte le modifiche alle statistiche sono state annullate!", + "faintCountdown": "{{pokemonName}}\nandrà KO dopo {{turnCount}} turni.", + "copyType": "{{pokemonName}} assume il tipo\ndi {{targetPokemonName}}!", + "suppressAbilities": "L’abilità di {{pokemonName}}\nperde ogni efficacia!", + "swapArenaTags": "{{pokemonName}} ha invertito gli effetti attivi\nnelle due metà del campo!", } as const; diff --git a/src/locales/it/starter-select-ui-handler.ts b/src/locales/it/starter-select-ui-handler.ts index 9b0197e48ab..6f43b9415e0 100644 --- a/src/locales/it/starter-select-ui-handler.ts +++ b/src/locales/it/starter-select-ui-handler.ts @@ -7,6 +7,7 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; */ export const starterSelectUiHandler: SimpleTranslationEntries = { "confirmStartTeam": "Vuoi iniziare con questi Pokémon?", + "confirmExit": "Do you want to exit?", "invalidParty": "Questo squadra iniziale non è valida!", "gen1": "1ª", "gen2": "2ª", diff --git a/src/locales/it/trainers.ts b/src/locales/it/trainers.ts index 260e44bdca8..dde79d694ca 100644 --- a/src/locales/it/trainers.ts +++ b/src/locales/it/trainers.ts @@ -120,23 +120,33 @@ export const trainerClasses: SimpleTranslationEntries = { "workers": "Lavoratori", "youngster": "Bullo", "rocket_grunt": "Recluta Team Rocket", - "rocket_grunts": "Reclute Team Rocket", "rocket_grunt_female": "Recluta Team Rocket", + "rocket_grunts": "Reclute Team Rocket", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Recluta Team Magma", "magma_grunt_female": "Recluta Team Magma", "magma_grunts": "Reclute Team Magma", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Recluta Team Idro", "aqua_grunt_female": "Recluta Team Idro", "aqua_grunts": "Recluta Team Idro", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Recluta Team Galassia", "galactic_grunt_female": "Recluta Team Galassia", "galactic_grunts": "Reclute Team Galassia", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Seguace Plasma", "plasma_grunt_female": "Seguace Plasma", "plasma_grunts": "Seguaci Plasma", "flare_grunt": "Recluta Team Flare", "flare_grunt_female": "Recluta Team Flare", "flare_grunts": "Reclute Team Flare", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/ko/dialogue.ts b/src/locales/ko/dialogue.ts index 719b738778d..8e7f09ff373 100644 --- a/src/locales/ko/dialogue.ts +++ b/src/locales/ko/dialogue.ts @@ -391,6 +391,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "로켓단은 다시 떠오를 거니까!" }, }, + "rocket_admin": { + "encounter": { + 1: "어라 어라… 결국 여기까지 오셨습니까? 꽤 우수한 트레이너인가 보군요.", + 2: "영웅 놀이는 여기까지랍니다, 꼬마야.", + 3: "어른이 화를 내면 무섭다는 걸 보여 드리죠!" + }, + "victory": { + 1: "크으… 비주기님 용서해 주세요…!", + 2: "어떻게 이런 일이…", + 3: "아아… 넌 너무 강하다…" + }, + }, "magma_grunt": { "encounter": { 1: " 마그마단을 방해한다면, 자비는 없닷!" @@ -399,6 +411,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "하? 내가 졌어?!" }, }, + "magma_admin": { + "encounter": { + 1: "……아하… ……역시 왔네…그치만 안타깝게 됐어……다 끝났거든", + 2: "……남은……내 일은……너를……막는 것", + 3: "……너랑……인게이지……하고 싶어……아하하하" + }, + "victory": { + 1: "……룰루리", + 2: "……재밌쪄", + 3: "…하아하아……으…하아하아…" + }, + }, "aqua_grunt": { "encounter": { 1: "아쿠아단을 넘본 사람에게는 자비는 없다, 꼬마도 마찬가지야!" @@ -407,6 +431,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "말도 안돼!" }, }, + "aqua_admin": { + "encounter": { + 1: "각오하는 게 좋을 거야! 네 얼굴이 눈물로 범벅이 되게 해주겠어!", + 2: "아앙? 뭐야? 이 건방진 꼬맹이는…", + 3: "…아니 넌!? 일부러 여기까지 쫓아온 거야?" + }, + "victory": { + 1: "하아… 하아…완전 지쳤어", + 2: "크윽…!? 너무 봐줬나…!", + 3: "뭐…뭐라고!?" + }, + }, "galactic_grunt": { "encounter": { 1: "갤럭시단을 방해하지 마!" @@ -415,6 +451,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "사격 중지…… " }, }, + "galactic_admin": { + "encounter": { + 1: "나는 갤럭시단에 있는 간부 중의 한 명.", + 2: "갤럭시단을 방해한다면 일말의 가능성도 모두 제거한다!!", + 3: "왜 그래? 설마 떨고 있는 거야?" + }, + "victory": { + 1: "설마! 내가 졌다고!? 건방진 아이로구나!!", + 2: "…역시 강해!", + 3: "어린아이에게 지다니… 방심이란 무섭구나." + }, + }, "plasma_grunt": { "encounter": { 1: "다른 생각을 가진사람들은 용납하지 않겠다!" @@ -423,6 +471,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "플라-스마-!" }, }, + "plasma_sage": { + "encounter": { + 1: "너는 플라스마단에게 있어 불안요소가 될 것이다. 여기서 제거하겠다!", + 2: "이런 이런… 내가 싸워야만 하다니.", + 3: "여기까지 오다니 대단한 트레이너군." + }, + "victory": { + 1: "게치스…", + 2: "그건 그렇고 춥구먼. 나는 떨고 있다. 괴롭지만 살아 있다.", + 3: "흐음. 의외로 똑똑한 트레이너군." + }, + }, "flare_grunt": { "encounter": { 1: "패션이 우리한텐 가장 중요하다고!" @@ -431,6 +491,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "미래가 밝아 보이질 않네." }, }, + "flare_admin": { + "encounter": { + 1: "왔다! 왔구나! 자! 자! 아직 끝나지 않았다!", + 2: "너 강하구나. 에너지를 얼마나 갖고 있지?", + 3: "기다리고 있었어! 너를 조사하겠다. 자 시작한다!" + }, + "victory": { + 1: "강하구나, 너는. 응, 정말 강해, 너는.", + 2: "그렇지만 보스의 꿈이 이루어져 아름다운 세상이 태어날 것이다!", + 3: "굉장하구나 너! 아주 굉장해! 나는 너를 인정하겠다" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "그래서! 여기까지 오다니, 감탄이 절로 나오는군!" diff --git a/src/locales/ko/filter-bar.ts b/src/locales/ko/filter-bar.ts index 7f2dbf89db8..821a80d78ee 100644 --- a/src/locales/ko/filter-bar.ts +++ b/src/locales/ko/filter-bar.ts @@ -3,16 +3,19 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; export const filterBar: SimpleTranslationEntries = { "genFilter": "세대", "typeFilter": "타입", - "unlocksFilter": "등록", - "winFilter": "클리어", + "dexFilter": "도감", + "unlocksFilter": "해금", + "miscFilter": "기타", "sortFilter": "정렬", "all": "전체", "normal": "기본", "uncaught": "미포획", + "passive": "패시브", "passiveUnlocked": "패시브 해금", "passiveLocked": "패시브 잠김", - "hasWon": "완료", - "hasNotWon": "미완료", + "ribbon": "클리어 여부", + "hasWon": "클리어 함", + "hasNotwon": "클리어 안함", "sortByNumber": "도감번호", "sortByCost": "코스트", "sortByCandies": "사탕 수", diff --git a/src/locales/ko/move-trigger.ts b/src/locales/ko/move-trigger.ts index 437f2fc6d15..9ebf08b1017 100644 --- a/src/locales/ko/move-trigger.ts +++ b/src/locales/ko/move-trigger.ts @@ -50,5 +50,13 @@ export const moveTriggers: SimpleTranslationEntries = { "transformedIntoTarget": "{{pokemonName}}[[는]]\n{{targetName}}[[로]] 변신했다!", "tryingToTakeFoeDown": "{{pokemonName}}[[는]] 상대를\n길동무로 삼으려 하고 있다!", "addType": "{{pokemonName}}에게\n{{typeName}}타입이 추가되었다!", - "cannotUseMove": "{{pokemonName}}[[는]]\n{{moveName}}[[를]] 쓸 수 없다!" + "cannotUseMove": "{{pokemonName}}[[는]]\n{{moveName}}[[를]] 쓸 수 없다!", + "healHp": "{{pokemonName}}의\n체력이 회복되었다!", + "sacrificialFullRestore": "{{pokemonName}}의\n치유소원이 이루어졌다!", + "invertStats": "{{pokemonName}}[[는]]\n능력 변화가 뒤집혔다!", + "resetStats": "{{pokemonName}}의 모든 상태가\n원래대로 되돌아왔다!", + "faintCountdown": "{{pokemonName}}[[는]]\n{{turnCount}}턴 후에 쓰러져 버린다!", + "copyType": "{{pokemonName}}[[는]]\n{{targetPokemonName}}[[와]] 같은 타입이 되었다!", + "suppressAbilities": "{{pokemonName}}의\n특성이 효과를 발휘하지 못하게 되었다!", + "swapArenaTags": "{{pokemonName}}[[는]]\n서로의 필드 효과를 교체했다!", } as const; diff --git a/src/locales/ko/starter-select-ui-handler.ts b/src/locales/ko/starter-select-ui-handler.ts index 8fe66e0d58a..c57a37788fa 100644 --- a/src/locales/ko/starter-select-ui-handler.ts +++ b/src/locales/ko/starter-select-ui-handler.ts @@ -7,6 +7,7 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; */ export const starterSelectUiHandler: SimpleTranslationEntries = { "confirmStartTeam": "이 포켓몬들로 시작하시겠습니까?", + "confirmExit": "Do you want to exit?", "invalidParty": "스타팅 포켓몬 파티에 적합하지 않습니다!", "gen1": "1세대", "gen2": "2세대", diff --git a/src/locales/ko/trainers.ts b/src/locales/ko/trainers.ts index aafe4121442..3a139026448 100644 --- a/src/locales/ko/trainers.ts +++ b/src/locales/ko/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "로켓단 조무래기", "rocket_grunt_female": "로켓단 조무래기", "rocket_grunts": "로켓단 조무래기들", + "rocket_admin": "로켓단 간부", + "rocket_admin_female": "로켓단 간부", "magma_grunt": "마그마단 조무래기", "magma_grunt_female": "마그마단 조무래기", "magma_grunts": "마그마단 조무래기들", + "magma_admin": "마그마단 간부", + "magma_admin_female": "마그마단 간부", "aqua_grunt": "아쿠아단 조무래기", "aqua_grunt_female": "아쿠아단 조무래기", "aqua_grunts": "아쿠아단 조무래기들", + "aqua_admin": "아쿠아단 간부", + "aqua_admin_female": "아쿠아단 간부", "galactic_grunt": "갤럭시단 조무래기", "galactic_grunt_female": "갤럭시단 조무래기", "galactic_grunts": "갤럭시단 조무래기들", + "galactic_admin": "갤럭시단 간부", + "galactic_admin_female": "갤럭시단 간부", "plasma_grunt": "플라스마단 조무래기", "plasma_grunt_female": "플라스마단 조무래기", "plasma_grunts": "플라스마단 조무래기들", + "plasma_sage": "플라스마단 현인", "flare_grunt": "플레어단 조무래기", "flare_grunt_female": "플레어단 조무래기", "flare_grunts": "플레어단 조무래기들", + "flare_admin": "플레어단 간부", + "flare_admin_female": "플레어단 간부", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/pt_BR/filter-bar.ts b/src/locales/pt_BR/filter-bar.ts index 5e3ab7114da..0c6a8e9ae50 100644 --- a/src/locales/pt_BR/filter-bar.ts +++ b/src/locales/pt_BR/filter-bar.ts @@ -3,16 +3,19 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; export const filterBar: SimpleTranslationEntries = { "genFilter": "Ger.", "typeFilter": "Tipo", + "dexFilter": "Dex", "unlocksFilter": "Outros", - "winFilter": "Vit.", + "miscFilter": "Misc", "sortFilter": "Ordem", "all": "Tudo", "normal": "Normal", "uncaught": "Não Capturado", + "passive": "Passive", "passiveUnlocked": "Passiva Desbloq.", "passiveLocked": "Passiva Bloq.", - "hasWon": "Sim", - "hasNotWon": "Não", + "ribbon": "Ribbon", + "hasWon": "Ribbon - Yes", + "hasNotWon": "Ribbon - No", "sortByNumber": "Núm.", "sortByCost": "Custo", "sortByCandies": "# Doces", diff --git a/src/locales/pt_BR/move-trigger.ts b/src/locales/pt_BR/move-trigger.ts index 272da44e1f6..c6f35d8f6d1 100644 --- a/src/locales/pt_BR/move-trigger.ts +++ b/src/locales/pt_BR/move-trigger.ts @@ -50,5 +50,13 @@ export const moveTriggers: SimpleTranslationEntries = { "transformedIntoTarget": "{{pokemonName}} se transformou\nem um(a) {{targetName}}!", "tryingToTakeFoeDown": "{{pokemonName}} está tentando derrubar o atacante com ele!", "addType": "{{pokemonName}} recebeu\no tipo {{typeName}}!", - "cannotUseMove": "{{pokemonName}} não pode usar {{moveName}}!" + "cannotUseMove": "{{pokemonName}} não pode usar {{moveName}}!", + "healHp": "{{pokemonName}} teve seus PS recuperados.", + "sacrificialFullRestore": "O Healing Wish de {{pokemonName}}\nfoi concedido!", + "invertStats": "As mudanças de atributo de {{pokemonName}}\nforam revertidas!", + "resetStats": "As mudanças de atributo de {{pokemonName}}\nforam eliminadas!", + "faintCountdown": "{{pokemonName}}\nirá desmaiar em {{turnCount}} turnos.", + "copyType": "O tipo de {{pokemonName}}\nmudou para combinar com {{targetPokemonName}}!", + "suppressAbilities": "A habilidade de {{pokemonName}}\nfoi suprimida!", + "swapArenaTags": "{{pokemonName}} trocou os efeitos de batalha que afetam cada lado do campo!", } as const; diff --git a/src/locales/pt_BR/starter-select-ui-handler.ts b/src/locales/pt_BR/starter-select-ui-handler.ts index d1038630c8c..a6407b5368d 100644 --- a/src/locales/pt_BR/starter-select-ui-handler.ts +++ b/src/locales/pt_BR/starter-select-ui-handler.ts @@ -7,6 +7,7 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; */ export const starterSelectUiHandler: SimpleTranslationEntries = { "confirmStartTeam": "Começar com esses Pokémon?", + "confirmExit": "Do you want to exit?", "invalidParty": "Essa equipe de iniciais não é válida!", "gen1": "G1", "gen2": "G2", diff --git a/src/locales/pt_BR/trainers.ts b/src/locales/pt_BR/trainers.ts index 61a0be25005..32cc46300d5 100644 --- a/src/locales/pt_BR/trainers.ts +++ b/src/locales/pt_BR/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "Recruta da Equipe Rocket", "rocket_grunt_female": "Recruta da Equipe Rocket", "rocket_grunts": "Recrutas da Equipe Rocket", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "Recruta da Equipe Magma", "magma_grunt_female": "Recruta da Equipe Magma", "magma_grunts": "Recrutas da Equipe Magma", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "Recruta da Equipe Aqua", "aqua_grunt_female": "Recruta da Equipe Aqua", "aqua_grunts": "Recrutas da Equipe Aqua", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "Recruta da Equipe Galáctica", "galactic_grunt_female": "Recruta da Equipe Galáctica", "galactic_grunts": "Recrutas da Equipe Galáctica", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "Recruta da Equipe Plasma", "plasma_grunt_female": "Recruta da Equipe Plasma", "plasma_grunts": "Recrutas da Equipe Plasma", + "plasma_sage": "Plasma Sage", "flare_grunt": "Recruta da Equipe Flare", "flare_grunt_female": "Recruta da Equipe Flare", "flare_grunts": "Recrutas da Equipe Flare", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/zh_CN/dialogue.ts b/src/locales/zh_CN/dialogue.ts index 6afbcd71064..50d6c5f4333 100644 --- a/src/locales/zh_CN/dialogue.ts +++ b/src/locales/zh_CN/dialogue.ts @@ -390,6 +390,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "好讨厌的感觉啊!" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "magma_grunt": { "encounter": { 1: "如果你挡在熔岩队路上,那就别指望我们手下留情!" @@ -398,6 +410,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "哈?我输了?!" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "即使是小孩,如果要和海洋队作对,也别指望我们手下留情!" @@ -406,6 +430,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "你在开玩笑吧?" }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "别惹银河队!" @@ -414,6 +450,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "停机了…" }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "异端不共戴天!" @@ -422,6 +470,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "等离子子子子子子!" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: "时尚最重要!" @@ -430,6 +490,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "未来一片黑暗啊…" }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "我不得不说,能来到这里,你的确很不简单!" diff --git a/src/locales/zh_CN/filter-bar.ts b/src/locales/zh_CN/filter-bar.ts index 581c7bf6b8c..5ccc5b8d9d9 100644 --- a/src/locales/zh_CN/filter-bar.ts +++ b/src/locales/zh_CN/filter-bar.ts @@ -3,16 +3,19 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; export const filterBar: SimpleTranslationEntries = { "genFilter": "世代", "typeFilter": "属性", + "dexFilter": "Dex", "unlocksFilter": "解锁", - "winFilter": "通关", + "miscFilter": "混合", "sortFilter": "排序", "all": "全部", "normal": "无闪光", "uncaught": "未捕获", + "passive": "被动", "passiveUnlocked": "被动解锁", "passiveLocked": "被动未解锁", - "hasWon": "已通关", - "hasNotWon": "未通关", + "ribbon": "缎带", + "hasWon": "有缎带", + "hasNotWon": "无缎带", "sortByNumber": "编号", "sortByCost": "费用", "sortByCandies": "糖果", diff --git a/src/locales/zh_CN/move-trigger.ts b/src/locales/zh_CN/move-trigger.ts index 16d49f3f9e1..0efe24f76f0 100644 --- a/src/locales/zh_CN/move-trigger.ts +++ b/src/locales/zh_CN/move-trigger.ts @@ -50,5 +50,13 @@ export const moveTriggers: SimpleTranslationEntries = { "transformedIntoTarget": "{{pokemonName}}\n变身成了{{targetName}}!", "tryingToTakeFoeDown": "{{pokemonName}}\n想和对手同归于尽!", "addType": "{{pokemonName}}\n增加了{{typeName}}属性!", - "cannotUseMove": "{{pokemonName}}\n无法使用{{moveName}}!" + "cannotUseMove": "{{pokemonName}}\n无法使用{{moveName}}!", + "healHp": "{{pokemonName}}的\n体力回复了!", + "sacrificialFullRestore": "{{pokemonName}}的\n治愈之愿实现了!", + "invertStats": "{{pokemonName}}的\n能力变化颠倒过来了!", + "resetStats": "{{pokemonName}}的\n能力变化复原了!", + "faintCountdown": "{{pokemonName}}\n将在{{turnCount}}回合后灭亡!", + "copyType": "{{pokemonName}}\n变成了{{targetPokemonName}}的属性!", + "suppressAbilities": "{{pokemonName}}的特性\n变得无效了!", + "swapArenaTags": "{{pokemonName}}\n交换了双方的场地效果!", } as const; diff --git a/src/locales/zh_CN/starter-select-ui-handler.ts b/src/locales/zh_CN/starter-select-ui-handler.ts index 45327bab55b..b8c491288e1 100644 --- a/src/locales/zh_CN/starter-select-ui-handler.ts +++ b/src/locales/zh_CN/starter-select-ui-handler.ts @@ -7,6 +7,7 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; */ export const starterSelectUiHandler: SimpleTranslationEntries = { "confirmStartTeam": "使用这些宝可梦开始游戏吗?", + "confirmExit": "Do you want to exit?", "invalidParty": "初始队伍不可用!", "gen1": "I", "gen2": "II", diff --git a/src/locales/zh_CN/trainers.ts b/src/locales/zh_CN/trainers.ts index e06f2afe2ec..1d32fdf6e02 100644 --- a/src/locales/zh_CN/trainers.ts +++ b/src/locales/zh_CN/trainers.ts @@ -128,21 +128,32 @@ export const trainerClasses: SimpleTranslationEntries = { "rocket_grunt": "火箭队手下", "rocket_grunt_female": "火箭队手下", "rocket_grunts": "火箭队手下们", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "熔岩队手下", "magma_grunt_female": "熔岩队手下", "magma_grunts": "熔岩队手下们", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "海洋队手下", "aqua_grunt_female": "海洋队手下", "aqua_grunts": "海洋队手下们", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "银河队手下", "galactic_grunt_female": "银河队手下", "galactic_grunts": "银河队手下们", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "等离子队手下", "plasma_grunt_female": "等离子队手下", "plasma_grunts": "等离子队手下们", + "plasma_sage": "Plasma Sage", "flare_grunt": "闪焰队手下", "flare_grunt_female": "闪焰队手下", "flare_grunts": "闪焰队手下们", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/locales/zh_TW/dialogue.ts b/src/locales/zh_TW/dialogue.ts index 0823236bc84..530906eda5b 100644 --- a/src/locales/zh_TW/dialogue.ts +++ b/src/locales/zh_TW/dialogue.ts @@ -390,6 +390,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Team Rocket blasting off again!" }, }, + "rocket_admin": { + "encounter": { + 1: "Oh? You managed to get this far? You must be quite the trainer.", + 2: "That's quite enough of you playing hero, kid.", + 3: "I'll show you how scary an angry adult can be!" + }, + "victory": { + 1: "No! Forgive me Giovanni!", + 2: "How could this be?", + 3: "Urgh... You were too strong..." + }, + }, "magma_grunt": { "encounter": { 1: " If you get in the way of Team Magma, don’t expect any mercy!" @@ -398,6 +410,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Huh? I lost?!" }, }, + "magma_admin": { + "encounter": { + 1: "Hehehe! So you've come all the way here! But you're too late!", + 2: "You're going to meddle in Team Magma's affairs? You're so cute you're disgusting! I'll put you down kiddy!", + 3: "I'm going to give you a little taste of pain! Resign yourself to it!" + }, + "victory": { + 1: "Hehehe... So I lost...", + 2: "You're disgustingly strong!", + 3: "Ahahaha! Ouch!" + }, + }, "aqua_grunt": { "encounter": { 1: "No one who crosses Team Aqua gets any mercy, not even kids!" @@ -406,6 +430,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "You're kidding me!" }, }, + "aqua_admin": { + "encounter": { + 1: "I'm a cut above the grunts you've seen so far. I'm going to puvlerize you!", + 2: "Hahn? What's this? Who's this spoiled brat?", + 3: "What are you doing here? Did you follow us?" + }, + "victory": { + 1: "So I lost too...", + 2: "Ahhh?! Did I go too easy on you?!", + 3: "Wh-what was that?" + }, + }, "galactic_grunt": { "encounter": { 1: "Don't mess with Team Galactic!" @@ -414,6 +450,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Shut down..." }, }, + "galactic_admin": { + "encounter": { + 1: "I'm one of Team Galactic's Commanders.", + 2: "Anything that opposes Team Galactic must be crushed! Even the very thought of opposition will not be tolerated!", + 3: "What's the matter? Don't tell me you're shaking?" + }, + "victory": { + 1: "This can't be?! I lost?! You... you uppity brat!", + 2: "You, my friend, are tough!", + 3: "Losing to some child... Being careless cost me too much." + }, + }, "plasma_grunt": { "encounter": { 1: "We won't tolerate people who have different ideas!" @@ -422,6 +470,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "Plasmaaaaaaaaa!" }, }, + "plasma_sage": { + "encounter": { + 1: "You could become a threat to Team Plasma, so we will eliminate you here!", + 2: "Oh, for crying out loud... I didn't expect to have to fight!", + 3: "You're an impressive Trainer to have made it this far." + }, + "victory": { + 1: "Ghetsis...", + 2: "It's bitter cold. I'm shivering. I'm suffering.", + 3: "Hmph. You're a smarter Trainer than I expected." + }, + }, "flare_grunt": { "encounter": { 1: "Fashion is most important to us!" @@ -430,6 +490,18 @@ export const PGMdialogue: DialogueTranslationEntries = { 1: "The future doesn't look bright for me." }, }, + "flare_admin": { + "encounter": { + 1: "Ah ha ha! It would be my pleasure. Come on, little Trainer! Let's see what you've got!", + 2: "Hmm... You're more powerful than you look. I wonder how much energy there is inside you.", + 3: "I've been waiting for you! I need to do a little research on you! Come, let us begin!" + }, + "victory": { + 1: "You're quite strong. Oh yes-very strong, indeed.", + 2: "Ding-ding-ding! Yup, you did it! To the victor goes the spoils!", + 3: "Wonderful! Amazing! You have tremendous skill and bravery!" + }, + }, "rocket_boss_giovanni_1": { "encounter": { 1: "So! I must say, I am impressed you got here!" diff --git a/src/locales/zh_TW/filter-bar.ts b/src/locales/zh_TW/filter-bar.ts index 1f562ffb7ba..0290bda62de 100644 --- a/src/locales/zh_TW/filter-bar.ts +++ b/src/locales/zh_TW/filter-bar.ts @@ -3,16 +3,19 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; export const filterBar: SimpleTranslationEntries = { "genFilter": "世代", "typeFilter": "屬性", + "dexFilter": "Dex", "unlocksFilter": "解鎖", - "winFilter": "通關", + "miscFilter": "混合", "sortFilter": "排序", "all": "全部", "normal": "通常", "uncaught": "未捕獲", + "passive": "被動", "passiveUnlocked": "被動解鎖", "passiveLocked": "被動未解鎖", - "hasWon": "已通關", - "hasNotWon": "未通關", + "ribbon": "緞帶", + "hasWon": "有緞帶", + "hasNotWon": "無緞帶", "sortByNumber": "編號", "sortByCost": "花費", "sortByCandies": "糖果", diff --git a/src/locales/zh_TW/move-trigger.ts b/src/locales/zh_TW/move-trigger.ts index 7e5f54538bc..019aa84390c 100644 --- a/src/locales/zh_TW/move-trigger.ts +++ b/src/locales/zh_TW/move-trigger.ts @@ -50,5 +50,13 @@ export const moveTriggers: SimpleTranslationEntries = { "transformedIntoTarget": "{{pokemonName}}\n變身成了{{targetName}}!", "tryingToTakeFoeDown": "{{pokemonName}}\n想和對手同歸於盡!", "addType": "{{pokemonName}}\n增加了{{typeName}}屬性!", - "cannotUseMove": "{{pokemonName}}\n無法使用{{moveName}}!" + "cannotUseMove": "{{pokemonName}}\n無法使用{{moveName}}!", + "healHp": "{{pokemonName}}的\n體力回復了!", + "sacrificialFullRestore": "{{pokemonName}}的\n治癒之願實現了!", + "invertStats": "{{pokemonName}}的\n能力變化顛倒過來了!", + "resetStats": "{{pokemonName}}的\n能力變化復原了!", + "faintCountdown": "{{pokemonName}}\n將在{{turnCount}}回合後滅亡!", + "copyType": "{{pokemonName}}變成了{{targetPokemonName}}的屬性!", + "suppressAbilities": "{{pokemonName}}的特性\n變得無效了!", + "swapArenaTags": "{{pokemonName}}\n交換了雙方的場地效果!", } as const; diff --git a/src/locales/zh_TW/starter-select-ui-handler.ts b/src/locales/zh_TW/starter-select-ui-handler.ts index 0ea1e2d0415..1202bf45f0e 100644 --- a/src/locales/zh_TW/starter-select-ui-handler.ts +++ b/src/locales/zh_TW/starter-select-ui-handler.ts @@ -7,6 +7,7 @@ import { SimpleTranslationEntries } from "#app/interfaces/locales"; */ export const starterSelectUiHandler: SimpleTranslationEntries = { "confirmStartTeam": "使用這些寶可夢開始嗎?", + "confirmExit": "Do you want to exit?", "invalidParty": "此為無效隊伍!", "gen1": "I", "gen2": "II", diff --git a/src/locales/zh_TW/trainers.ts b/src/locales/zh_TW/trainers.ts index 2a6c3eac662..0efae11bbea 100644 --- a/src/locales/zh_TW/trainers.ts +++ b/src/locales/zh_TW/trainers.ts @@ -120,21 +120,32 @@ export const trainerClasses: SimpleTranslationEntries = { "workers": "工人組合", "youngster": "短褲小子", "rocket_grunts": "火箭队手下們", + "rocket_admin": "Rocket Admin", + "rocket_admin_female": "Rocket Admin", "magma_grunt": "熔岩队手下", "magma_grunt_female": "熔岩队手下", "magma_grunts": "熔岩队手下們", + "magma_admin": "Magma Admin", + "magma_admin_female": "Magma Admin", "aqua_grunt": "海洋队手下", "aqua_grunt_female": "海洋队手下", "aqua_grunts": "海洋队手下們", + "aqua_admin": "Aqua Admin", + "aqua_admin_female": "Aqua Admin", "galactic_grunt": "银河队手下", "galactic_grunt_female": "银河队手下", "galactic_grunts": "银河队手下們", + "galactic_admin": "Galactic Admin", + "galactic_admin_female": "Galactic Admin", "plasma_grunt": "等离子队手下", "plasma_grunt_female": "等离子队手下", "plasma_grunts": "等离子队手下們", + "plasma_sage": "Plasma Sage", "flare_grunt": "闪焰队手下", "flare_grunt_female": "闪焰队手下", "flare_grunts": "闪焰队手下們", + "flare_admin": "Flare Admin", + "flare_admin_female": "Flare Admin", } as const; // Names of special trainers like gym leaders, elite four, and the champion diff --git a/src/messages.ts b/src/messages.ts index 2259e78abfc..555a6f30ef1 100644 --- a/src/messages.ts +++ b/src/messages.ts @@ -2,17 +2,6 @@ import { BattleSpec } from "#enums/battle-spec"; import Pokemon from "./field/pokemon"; import i18next from "i18next"; -/** - * Builds a message by concatenating the Pokemon name with its potential affix and the given text - * @param pokemon {@linkcode Pokemon} name and battle context will be retrieved from this instance for {@linkcode getPokemonNameWithAffix} - * @param {string} content any text - * @returns {string} ex: "Wild Gengar fainted!", "Ectoplasma sauvage est K.O!" - * @see {@linkcode getPokemonNameWithAffix} for the Pokemon's name and potentiel affix - */ -export function getPokemonMessage(pokemon: Pokemon, content: string): string { - return `${getPokemonNameWithAffix(pokemon)}${content}`; -} - /** * Retrieves the Pokemon's name, potentially with an affix indicating its role (wild or foe) in the current battle context, translated * @param pokemon {@linkcode Pokemon} name and battle context will be retrieved from this instance diff --git a/src/modifier/modifier-type.ts b/src/modifier/modifier-type.ts index 86014d37a5b..235b48067b1 100644 --- a/src/modifier/modifier-type.ts +++ b/src/modifier/modifier-type.ts @@ -1569,7 +1569,7 @@ const modifierPool: ModifierPool = { p => !p.getHeldItems().some(i => i instanceof Modifiers.PokemonResetNegativeStatStageModifier && i.stackCount >= i.getMaxHeldItemCount(p)) && (checkedAbilities.some(a => p.hasAbility(a, false, true)) || p.getMoveset(true).some(m => selfStatLowerMoves.includes(m.moveId)))).length; // If a party member has one of the above moves or abilities and doesn't have max herbs, the herb will appear more frequently - return 3 * (weightMultiplier ? 2: 1) + (weightMultiplier ? weightMultiplier - 1 : 0); + return 2 * (weightMultiplier ? 2 : 1) + (weightMultiplier ? weightMultiplier : 0); }, 10), new WeightedModifierType(modifierTypes.REVIVER_SEED, 4), new WeightedModifierType(modifierTypes.CANDY_JAR, 5), @@ -1637,7 +1637,7 @@ const wildModifierPool: ModifierPool = { }), [ModifierTier.ULTRA]: [ new WeightedModifierType(modifierTypes.ATTACK_TYPE_BOOSTER, 10), - new WeightedModifierType(modifierTypes.WHITE_HERB, 2) + new WeightedModifierType(modifierTypes.WHITE_HERB, 1) ].map(m => { m.setTier(ModifierTier.ULTRA); return m; }), @@ -1666,7 +1666,7 @@ const trainerModifierPool: ModifierPool = { m.setTier(ModifierTier.GREAT); return m; }), [ModifierTier.ULTRA]: [ - new WeightedModifierType(modifierTypes.ATTACK_TYPE_BOOSTER, 5), + new WeightedModifierType(modifierTypes.ATTACK_TYPE_BOOSTER, 10), new WeightedModifierType(modifierTypes.WHITE_HERB, 1), ].map(m => { m.setTier(ModifierTier.ULTRA); return m; @@ -1684,6 +1684,7 @@ const trainerModifierPool: ModifierPool = { new WeightedModifierType(modifierTypes.KINGS_ROCK, 1), new WeightedModifierType(modifierTypes.LEFTOVERS, 1), new WeightedModifierType(modifierTypes.SHELL_BELL, 1), + new WeightedModifierType(modifierTypes.SCOPE_LENS, 1), ].map(m => { m.setTier(ModifierTier.MASTER); return m; }) diff --git a/src/phases.ts b/src/phases.ts index 83ca511406a..b9948cc8fd0 100644 --- a/src/phases.ts +++ b/src/phases.ts @@ -1392,10 +1392,7 @@ export class SummonPhase extends PartyMemberPokemonPhase { // First check if they're somehow still in play, if so remove them. if (partyMember.isOnField()) { - partyMember.hideInfo(); - partyMember.setVisible(false); - this.scene.field.remove(partyMember); - this.scene.triggerPokemonFormChange(partyMember, SpeciesFormChangeActiveTrigger, true); + partyMember.leaveField(); } const party = this.getParty(); @@ -1611,7 +1608,7 @@ export class SwitchSummonPhase extends SummonPhase { }) ); this.scene.playSound("pb_rel"); - pokemon.hideInfo(); + pokemon.hideInfo(); // this is also done by pokemon.leaveField(), but needs to go earlier for animation purposes pokemon.tint(getPokeballTintColor(pokemon.pokeball), 1, 250, "Sine.easeIn"); this.scene.tweens.add({ targets: pokemon, @@ -1619,9 +1616,9 @@ export class SwitchSummonPhase extends SummonPhase { ease: "Sine.easeIn", scale: 0.5, onComplete: () => { - pokemon.setVisible(false); - this.scene.field.remove(pokemon); - this.scene.triggerPokemonFormChange(pokemon, SpeciesFormChangeActiveTrigger, true); + // 250ms delay on leaveField is necessary to avoid calling hideInfo() twice + // and double-animating the stats panel slideout + this.scene.time.delayedCall(250, () => pokemon.leaveField(!this.batonPass)); this.scene.time.delayedCall(750, () => this.switchAndSummon()); } }); @@ -1629,25 +1626,25 @@ export class SwitchSummonPhase extends SummonPhase { switchAndSummon() { const party = this.player ? this.getParty() : this.scene.getEnemyParty(); - const switchedPokemon = party[this.slotIndex]; + const switchedInPokemon = party[this.slotIndex]; this.lastPokemon = this.getPokemon(); applyPreSwitchOutAbAttrs(PreSwitchOutAbAttr, this.lastPokemon); - if (this.batonPass && switchedPokemon) { - (this.player ? this.scene.getEnemyField() : this.scene.getPlayerField()).forEach(enemyPokemon => enemyPokemon.transferTagsBySourceId(this.lastPokemon.id, switchedPokemon.id)); - if (!this.scene.findModifier(m => m instanceof SwitchEffectTransferModifier && (m as SwitchEffectTransferModifier).pokemonId === switchedPokemon.id)) { + if (this.batonPass && switchedInPokemon) { + (this.player ? this.scene.getEnemyField() : this.scene.getPlayerField()).forEach(enemyPokemon => enemyPokemon.transferTagsBySourceId(this.lastPokemon.id, switchedInPokemon.id)); + if (!this.scene.findModifier(m => m instanceof SwitchEffectTransferModifier && (m as SwitchEffectTransferModifier).pokemonId === switchedInPokemon.id)) { const batonPassModifier = this.scene.findModifier(m => m instanceof SwitchEffectTransferModifier && (m as SwitchEffectTransferModifier).pokemonId === this.lastPokemon.id) as SwitchEffectTransferModifier; - if (batonPassModifier && !this.scene.findModifier(m => m instanceof SwitchEffectTransferModifier && (m as SwitchEffectTransferModifier).pokemonId === switchedPokemon.id)) { - this.scene.tryTransferHeldItemModifier(batonPassModifier, switchedPokemon, false); + if (batonPassModifier && !this.scene.findModifier(m => m instanceof SwitchEffectTransferModifier && (m as SwitchEffectTransferModifier).pokemonId === switchedInPokemon.id)) { + this.scene.tryTransferHeldItemModifier(batonPassModifier, switchedInPokemon, false); } } } - if (switchedPokemon) { + if (switchedInPokemon) { party[this.slotIndex] = this.lastPokemon; - party[this.fieldIndex] = switchedPokemon; + party[this.fieldIndex] = switchedInPokemon; const showTextAndSummon = () => { this.scene.ui.showText(this.player ? - i18next.t("battle:playerGo", { pokemonName: getPokemonNameWithAffix(switchedPokemon) }) : + i18next.t("battle:playerGo", { pokemonName: getPokemonNameWithAffix(switchedInPokemon) }) : i18next.t("battle:trainerGo", { trainerName: this.scene.currentBattle.trainer.getName(!(this.fieldIndex % 2) ? TrainerSlot.TRAINER : TrainerSlot.TRAINER_PARTNER), pokemonName: this.getPokemon().getNameToRender() @@ -1655,8 +1652,8 @@ export class SwitchSummonPhase extends SummonPhase { ); // Ensure improperly persisted summon data (such as tags) is cleared upon switching if (!this.batonPass) { - party[this.fieldIndex].resetBattleData(); - party[this.fieldIndex].resetSummonData(); + switchedInPokemon.resetBattleData(); + switchedInPokemon.resetSummonData(); } this.summon(); }; @@ -1876,14 +1873,11 @@ export class TurnInitPhase extends FieldPhase { this.scene.unshiftPhase(new GameOverPhase(this.scene)); } else if (allowedPokemon.length >= this.scene.currentBattle.getBattlerCount() || (this.scene.currentBattle.double && !allowedPokemon[0].isActive(true))) { // If there is at least one pokemon in the back that is legal to switch in, force a switch. - p.switchOut(false, true); + p.switchOut(false); } else { // If there are no pokemon in the back but we're not game overing, just hide the pokemon. // This should only happen in double battles. - p.hideInfo(); - p.setVisible(false); - this.scene.field.remove(p); - this.scene.triggerPokemonFormChange(p, SpeciesFormChangeActiveTrigger, true); + p.leaveField(); } if (allowedPokemon.length === 1 && this.scene.currentBattle.double) { this.scene.unshiftPhase(new ToggleDoublePositionPhase(this.scene, true)); @@ -3004,7 +2998,7 @@ export class MoveEffectPhase extends PokemonPhase { } applyAttrs.push(new Promise(resolve => { - applyFilteredMoveAttrs((attr: MoveAttr) => attr instanceof MoveEffectAttr && attr.trigger === MoveEffectTrigger.PRE_APPLY && (!attr.firstHitOnly || firstHit) && (!attr.lastHitOnly || lastHit), + applyFilteredMoveAttrs((attr: MoveAttr) => attr instanceof MoveEffectAttr && attr.trigger === MoveEffectTrigger.PRE_APPLY && (!attr.firstHitOnly || firstHit) && (!attr.lastHitOnly || lastHit) && hitResult !== HitResult.NO_EFFECT, user, target, move).then(() => { if (hitResult !== HitResult.FAIL) { const chargeEffect = !!move.getAttrs(ChargeAttr).find(ca => ca.usedChargeEffect(user, this.getTarget(), move)); @@ -4475,10 +4469,14 @@ export class SwitchPhase extends BattlePhase { start() { super.start(); - const availablePartyMembers = this.scene.getParty().filter(p => !p.isFainted()); // Skip modal switch if impossible - if (this.isModal && (!availablePartyMembers.filter(p => !p.isActive(true)).length || (!this.scene.currentBattle.started && availablePartyMembers.length === 1))) { + if (this.isModal && !this.scene.getParty().filter(p => p.isAllowedInBattle() && !p.isActive(true)).length) { + return super.end(); + } + + // Skip if the fainted party member has been revived already + if (this.isModal && !this.scene.getParty()[this.fieldIndex].isFainted()) { return super.end(); } @@ -4488,7 +4486,7 @@ export class SwitchPhase extends BattlePhase { } // Override field index to 0 in case of double battle where 2/3 remaining legal party members fainted at once - const fieldIndex = this.scene.currentBattle.getBattlerCount() === 1 || availablePartyMembers.length > 1 ? this.fieldIndex : 0; + const fieldIndex = this.scene.currentBattle.getBattlerCount() === 1 || this.scene.getParty().filter(p => p.isAllowedInBattle()).length > 1 ? this.fieldIndex : 0; this.scene.ui.setMode(Mode.PARTY, this.isModal ? PartyUiMode.FAINT_SWITCH : PartyUiMode.POST_BATTLE_SWITCH, fieldIndex, (slotIndex: integer, option: PartyOption) => { if (slotIndex >= this.scene.currentBattle.getBattlerCount() && slotIndex < 6) { diff --git a/src/test/battle/double_battle.test.ts b/src/test/battle/double_battle.test.ts new file mode 100644 index 00000000000..e2d8dee562c --- /dev/null +++ b/src/test/battle/double_battle.test.ts @@ -0,0 +1,64 @@ +import { + BattleEndPhase, + TurnInitPhase, +} from "#app/phases"; +import GameManager from "#app/test/utils/gameManager"; +import { getMovePosition, } from "#app/test/utils/gameManagerUtils"; +import { Moves } from "#enums/moves"; +import { Species } from "#enums/species"; +import Phaser from "phaser"; +import { afterEach, beforeAll, beforeEach, describe, expect, it } from "vitest"; +import { SPLASH_ONLY } from "../utils/testUtils"; +import { Status, StatusEffect } from "#app/data/status-effect.js"; + +describe("Test Battle Phase", () => { + let phaserGame: Phaser.Game; + let game: GameManager; + + beforeAll(() => { + phaserGame = new Phaser.Game({ + type: Phaser.HEADLESS, + }); + }); + + afterEach(() => { + game.phaseInterceptor.restoreOg(); + }); + + beforeEach(() => { + game = new GameManager(phaserGame); + }); + + // double-battle player's pokemon both fainted in same round, then revive one, and next double battle summons two player's pokemon successfully. + // (There were bugs that either only summon one when can summon two, player stuck in switchPhase etc) + it("3v2 edge case: player summons 2 pokemon on the next battle after being fainted and revived", async() => { + game.override.battleType("double").enemyMoveset(SPLASH_ONLY).moveset(SPLASH_ONLY); + await game.startBattle([ + Species.BULBASAUR, + Species.CHARIZARD, + Species.SQUIRTLE, + ]); + + game.doAttack(getMovePosition(game.scene, 0, Moves.SPLASH)); + game.doAttack(getMovePosition(game.scene, 1, Moves.SPLASH)); + + for (const pokemon of game.scene.getPlayerField()) { + expect(pokemon).toBeDefined(); + + pokemon.hp = 0; + pokemon.status = new Status(StatusEffect.FAINT); + expect(pokemon.isFainted()).toBe(true); + } + + await game.doKillOpponents(); + + await game.phaseInterceptor.to(BattleEndPhase); + game.doSelectModifier(); + + const charizard = game.scene.getParty().findIndex(p => p.species.speciesId === Species.CHARIZARD); + game.doRevivePokemon(charizard); + + await game.phaseInterceptor.to(TurnInitPhase); + expect(game.scene.getPlayerField().filter(p => !p.isFainted())).toHaveLength(2); + }, 20000); +}); diff --git a/src/test/evolutions/evolutions.test.ts b/src/test/evolutions/evolutions.test.ts new file mode 100644 index 00000000000..4e38e72bb7c --- /dev/null +++ b/src/test/evolutions/evolutions.test.ts @@ -0,0 +1,48 @@ +import { afterEach, beforeAll, beforeEach, describe, expect, it, vi } from "vitest"; +import Phaser from "phaser"; +import GameManager from "#app/test/utils/gameManager"; +import { Species } from "#enums/species"; +import * as Utils from "#app/utils"; + +describe("Evolution tests", () => { + let phaserGame: Phaser.Game; + let game: GameManager; + + beforeAll(() => { + phaserGame = new Phaser.Game({ + type: Phaser.HEADLESS, + }); + }); + + afterEach(() => { + game.phaseInterceptor.restoreOg(); + }); + + beforeEach(() => { + game = new GameManager(phaserGame); + }); + + it("tandemaus evolution form test", async () => { + /* this test checks to make sure that tandemaus will + * evolve into a 3 family maushold 25% of the time + * and a 4 family maushold the other 75% of the time + * This is done by using the getEvolution method in pokemon.ts + * getEvolution will give back the form that the pokemon can evolve into + * It does this by checking the pokemon conditions in pokemon-forms.ts + * For tandemaus, the conditions are random due to a randSeedInt(4) + * If the value is 0, it's a 3 family maushold, whereas if the value is + * 1, 2 or 3, it's a 4 family maushold + */ + await game.startBattle([Species.TANDEMAUS]); // starts us off with a tandemaus + const playerPokemon = game.scene.getPlayerPokemon(); + playerPokemon.level = 25; // tandemaus evolves at level 25 + vi.spyOn(Utils, "randSeedInt").mockReturnValue(0); // setting the random generator to be 0 to force a three family maushold + const threeForm = playerPokemon.getEvolution(); + expect(threeForm.evoFormKey).toBe("three"); // as per pokemon-forms, the evoFormKey for 3 family mausholds is "three" + for (let f = 1; f < 4; f++) { + vi.spyOn(Utils, "randSeedInt").mockReturnValue(f); // setting the random generator to 1, 2 and 3 to force 4 family mausholds + const fourForm = playerPokemon.getEvolution(); + expect(fourForm.evoFormKey).toBe(null); // meanwhile, according to the pokemon-forms, the evoFormKey for a 4 family maushold is null + } + }, 5000); +}); diff --git a/src/test/moves/belly_drum.test.ts b/src/test/moves/belly_drum.test.ts new file mode 100644 index 00000000000..5a9ddd41f0f --- /dev/null +++ b/src/test/moves/belly_drum.test.ts @@ -0,0 +1,115 @@ +import {afterEach, beforeAll, beforeEach, describe, expect, test, vi} from "vitest"; +import Phaser from "phaser"; +import GameManager from "#app/test/utils/gameManager"; +import overrides from "#app/overrides"; +import { + TurnEndPhase, +} from "#app/phases"; +import {getMovePosition} from "#app/test/utils/gameManagerUtils"; +import { Moves } from "#enums/moves"; +import { Species } from "#enums/species"; +import { BattleStat } from "#app/data/battle-stat"; + +const TIMEOUT = 20 * 1000; +// RATIO : HP Cost of Move +const RATIO = 2; +// PREDAMAGE : Amount of extra HP lost +const PREDAMAGE = 15; + +describe("Moves - BELLY DRUM", () => { + let phaserGame: Phaser.Game; + let game: GameManager; + + beforeAll(() => { + phaserGame = new Phaser.Game({ + type: Phaser.HEADLESS, + }); + }); + + afterEach(() => { + game.phaseInterceptor.restoreOg(); + }); + + beforeEach(() => { + game = new GameManager(phaserGame); + vi.spyOn(overrides, "STARTER_SPECIES_OVERRIDE", "get").mockReturnValue(Species.MAGIKARP); + vi.spyOn(overrides, "OPP_SPECIES_OVERRIDE", "get").mockReturnValue(Species.SNORLAX); + vi.spyOn(overrides, "STARTING_LEVEL_OVERRIDE", "get").mockReturnValue(100); + vi.spyOn(overrides, "OPP_LEVEL_OVERRIDE", "get").mockReturnValue(100); + game.override.moveset([Moves.BELLY_DRUM]); + game.override.enemyMoveset([Moves.SPLASH]); + }); + + // Bulbapedia Reference: https://bulbapedia.bulbagarden.net/wiki/Belly_Drum_(move) + + test("Belly Drum raises the user's Attack to its max, at the cost of 1/2 of its maximum HP", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + const hpLost = Math.floor(leadPokemon.getMaxHp() / RATIO); + + game.doAttack(getMovePosition(game.scene, 0, Moves.BELLY_DRUM)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(leadPokemon.getMaxHp() - hpLost); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(6); + }, TIMEOUT + ); + + test("Belly Drum will still take effect if an uninvolved stat is at max", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + const hpLost = Math.floor(leadPokemon.getMaxHp() / RATIO); + + // Here - BattleStat.ATK -> -3 and BattleStat.SPATK -> 6 + leadPokemon.summonData.battleStats[BattleStat.ATK] = -3; + leadPokemon.summonData.battleStats[BattleStat.SPATK] = 6; + + game.doAttack(getMovePosition(game.scene, 0, Moves.BELLY_DRUM)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(leadPokemon.getMaxHp() - hpLost); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.SPATK]).toBe(6); + }, TIMEOUT + ); + + test("Belly Drum fails if the pokemon's attack stat is at its maximum", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + + leadPokemon.summonData.battleStats[BattleStat.ATK] = 6; + + game.doAttack(getMovePosition(game.scene, 0, Moves.BELLY_DRUM)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(leadPokemon.getMaxHp()); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(6); + }, TIMEOUT + ); + + test("Belly Drum fails if the user's health is less than 1/2", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + const hpLost = Math.floor(leadPokemon.getMaxHp() / RATIO); + leadPokemon.hp = hpLost - PREDAMAGE; + + game.doAttack(getMovePosition(game.scene, 0, Moves.BELLY_DRUM)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(hpLost - PREDAMAGE); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(0); + }, TIMEOUT + ); +}); diff --git a/src/test/moves/clangorous_soul.test.ts b/src/test/moves/clangorous_soul.test.ts new file mode 100644 index 00000000000..1b3d16f402f --- /dev/null +++ b/src/test/moves/clangorous_soul.test.ts @@ -0,0 +1,136 @@ +import {afterEach, beforeAll, beforeEach, describe, expect, test, vi} from "vitest"; +import Phaser from "phaser"; +import GameManager from "#app/test/utils/gameManager"; +import overrides from "#app/overrides"; +import { + TurnEndPhase, +} from "#app/phases"; +import {getMovePosition} from "#app/test/utils/gameManagerUtils"; +import { Moves } from "#enums/moves"; +import { Species } from "#enums/species"; +import { BattleStat } from "#app/data/battle-stat"; + +const TIMEOUT = 20 * 1000; +// RATIO : HP Cost of Move +const RATIO = 3; +// PREDAMAGE : Amount of extra HP lost +const PREDAMAGE = 15; + +describe("Moves - CLANGOROUS_SOUL", () => { + let phaserGame: Phaser.Game; + let game: GameManager; + + beforeAll(() => { + phaserGame = new Phaser.Game({ + type: Phaser.HEADLESS, + }); + }); + + afterEach(() => { + game.phaseInterceptor.restoreOg(); + }); + + beforeEach(() => { + game = new GameManager(phaserGame); + vi.spyOn(overrides, "STARTER_SPECIES_OVERRIDE", "get").mockReturnValue(Species.MAGIKARP); + vi.spyOn(overrides, "OPP_SPECIES_OVERRIDE", "get").mockReturnValue(Species.SNORLAX); + vi.spyOn(overrides, "STARTING_LEVEL_OVERRIDE", "get").mockReturnValue(100); + vi.spyOn(overrides, "OPP_LEVEL_OVERRIDE", "get").mockReturnValue(100); + game.override.moveset([Moves.CLANGOROUS_SOUL]); + game.override.enemyMoveset([Moves.SPLASH]); + }); + + //Bulbapedia Reference: https://bulbapedia.bulbagarden.net/wiki/Clangorous_Soul_(move) + + test("Clangorous Soul raises the user's Attack, Defense, Special Attack, Special Defense and Speed by one stage each, at the cost of 1/3 of its maximum HP", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + const hpLost = Math.floor(leadPokemon.getMaxHp() / RATIO); + + game.doAttack(getMovePosition(game.scene, 0, Moves.CLANGOROUS_SOUL)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(leadPokemon.getMaxHp() - hpLost); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(1); + expect(leadPokemon.summonData.battleStats[BattleStat.DEF]).toBe(1); + expect(leadPokemon.summonData.battleStats[BattleStat.SPATK]).toBe(1); + expect(leadPokemon.summonData.battleStats[BattleStat.SPDEF]).toBe(1); + expect(leadPokemon.summonData.battleStats[BattleStat.SPD]).toBe(1); + }, TIMEOUT + ); + + test("Clangorous Soul will still take effect if one or more of the involved stats are not at max", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + const hpLost = Math.floor(leadPokemon.getMaxHp() / RATIO); + + //Here - BattleStat.SPD -> 0 and BattleStat.SPDEF -> 4 + leadPokemon.summonData.battleStats[BattleStat.ATK] = 6; + leadPokemon.summonData.battleStats[BattleStat.DEF] = 6; + leadPokemon.summonData.battleStats[BattleStat.SPATK] = 6; + leadPokemon.summonData.battleStats[BattleStat.SPDEF] = 4; + + game.doAttack(getMovePosition(game.scene, 0, Moves.CLANGOROUS_SOUL)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(leadPokemon.getMaxHp() - hpLost); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.DEF]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.SPATK]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.SPDEF]).toBe(5); + expect(leadPokemon.summonData.battleStats[BattleStat.SPD]).toBe(1); + }, TIMEOUT + ); + + test("Clangorous Soul fails if all stats involved are at max", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + + leadPokemon.summonData.battleStats[BattleStat.ATK] = 6; + leadPokemon.summonData.battleStats[BattleStat.DEF] = 6; + leadPokemon.summonData.battleStats[BattleStat.SPATK] = 6; + leadPokemon.summonData.battleStats[BattleStat.SPDEF] = 6; + leadPokemon.summonData.battleStats[BattleStat.SPD] = 6; + + game.doAttack(getMovePosition(game.scene, 0, Moves.CLANGOROUS_SOUL)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(leadPokemon.getMaxHp()); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.DEF]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.SPATK]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.SPDEF]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.SPD]).toBe(6); + }, TIMEOUT + ); + + test("Clangorous Soul fails if the user's health is less than 1/3", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + const hpLost = Math.floor(leadPokemon.getMaxHp() / RATIO); + leadPokemon.hp = hpLost - PREDAMAGE; + + game.doAttack(getMovePosition(game.scene, 0, Moves.CLANGOROUS_SOUL)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(hpLost - PREDAMAGE); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(0); + expect(leadPokemon.summonData.battleStats[BattleStat.DEF]).toBe(0); + expect(leadPokemon.summonData.battleStats[BattleStat.SPATK]).toBe(0); + expect(leadPokemon.summonData.battleStats[BattleStat.SPDEF]).toBe(0); + expect(leadPokemon.summonData.battleStats[BattleStat.SPD]).toBe(0); + }, TIMEOUT + ); +}); diff --git a/src/test/moves/fillet_away.test.ts b/src/test/moves/fillet_away.test.ts new file mode 100644 index 00000000000..161bba2c284 --- /dev/null +++ b/src/test/moves/fillet_away.test.ts @@ -0,0 +1,124 @@ +import {afterEach, beforeAll, beforeEach, describe, expect, test, vi} from "vitest"; +import Phaser from "phaser"; +import GameManager from "#app/test/utils/gameManager"; +import overrides from "#app/overrides"; +import { + TurnEndPhase, +} from "#app/phases"; +import {getMovePosition} from "#app/test/utils/gameManagerUtils"; +import { Moves } from "#enums/moves"; +import { Species } from "#enums/species"; +import { BattleStat } from "#app/data/battle-stat"; + +const TIMEOUT = 20 * 1000; +// RATIO : HP Cost of Move +const RATIO = 2; +// PREDAMAGE : Amount of extra HP lost +const PREDAMAGE = 15; + +describe("Moves - FILLET AWAY", () => { + let phaserGame: Phaser.Game; + let game: GameManager; + + beforeAll(() => { + phaserGame = new Phaser.Game({ + type: Phaser.HEADLESS, + }); + }); + + afterEach(() => { + game.phaseInterceptor.restoreOg(); + }); + + beforeEach(() => { + game = new GameManager(phaserGame); + vi.spyOn(overrides, "STARTER_SPECIES_OVERRIDE", "get").mockReturnValue(Species.MAGIKARP); + vi.spyOn(overrides, "OPP_SPECIES_OVERRIDE", "get").mockReturnValue(Species.SNORLAX); + vi.spyOn(overrides, "STARTING_LEVEL_OVERRIDE", "get").mockReturnValue(100); + vi.spyOn(overrides, "OPP_LEVEL_OVERRIDE", "get").mockReturnValue(100); + game.override.moveset([Moves.FILLET_AWAY]); + game.override.enemyMoveset([Moves.SPLASH]); + }); + + //Bulbapedia Reference: https://bulbapedia.bulbagarden.net/wiki/fillet_away_(move) + + test("Fillet Away raises the user's Attack, Special Attack, and Speed by two stages each, at the cost of 1/2 of its maximum HP", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + const hpLost = Math.floor(leadPokemon.getMaxHp() / RATIO); + + game.doAttack(getMovePosition(game.scene, 0, Moves.FILLET_AWAY)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(leadPokemon.getMaxHp() - hpLost); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(2); + expect(leadPokemon.summonData.battleStats[BattleStat.SPATK]).toBe(2); + expect(leadPokemon.summonData.battleStats[BattleStat.SPD]).toBe(2); + }, TIMEOUT + ); + + test("Fillet Away will still take effect if one or more of the involved stats are not at max", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + const hpLost = Math.floor(leadPokemon.getMaxHp() / RATIO); + + //Here - BattleStat.SPD -> 0 and BattleStat.SPATK -> 3 + leadPokemon.summonData.battleStats[BattleStat.ATK] = 6; + leadPokemon.summonData.battleStats[BattleStat.SPATK] = 3; + + game.doAttack(getMovePosition(game.scene, 0, Moves.FILLET_AWAY)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(leadPokemon.getMaxHp() - hpLost); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.SPATK]).toBe(5); + expect(leadPokemon.summonData.battleStats[BattleStat.SPD]).toBe(2); + }, TIMEOUT + ); + + test("Fillet Away fails if all stats involved are at max", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + + leadPokemon.summonData.battleStats[BattleStat.ATK] = 6; + leadPokemon.summonData.battleStats[BattleStat.SPATK] = 6; + leadPokemon.summonData.battleStats[BattleStat.SPD] = 6; + + game.doAttack(getMovePosition(game.scene, 0, Moves.FILLET_AWAY)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(leadPokemon.getMaxHp()); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.SPATK]).toBe(6); + expect(leadPokemon.summonData.battleStats[BattleStat.SPD]).toBe(6); + }, TIMEOUT + ); + + test("Fillet Away fails if the user's health is less than 1/2", + async() => { + await game.startBattle([Species.MAGIKARP]); + + const leadPokemon = game.scene.getPlayerPokemon(); + expect(leadPokemon).toBeDefined(); + const hpLost = Math.floor(leadPokemon.getMaxHp() / RATIO); + leadPokemon.hp = hpLost - PREDAMAGE; + + game.doAttack(getMovePosition(game.scene, 0, Moves.FILLET_AWAY)); + await game.phaseInterceptor.to(TurnEndPhase); + + expect(leadPokemon.hp).toBe(hpLost - PREDAMAGE); + expect(leadPokemon.summonData.battleStats[BattleStat.ATK]).toBe(0); + expect(leadPokemon.summonData.battleStats[BattleStat.SPATK]).toBe(0); + expect(leadPokemon.summonData.battleStats[BattleStat.SPD]).toBe(0); + }, TIMEOUT + ); +}); diff --git a/src/test/utils/gameManager.ts b/src/test/utils/gameManager.ts index d491e007940..1938d57dfd1 100644 --- a/src/test/utils/gameManager.ts +++ b/src/test/utils/gameManager.ts @@ -35,6 +35,7 @@ import { Button } from "#enums/buttons"; import { BattlerIndex } from "#app/battle.js"; import TargetSelectUiHandler from "#app/ui/target-select-ui-handler.js"; import { OverridesHelper } from "./overridesHelper"; +import { ModifierTypeOption, modifierTypes } from "#app/modifier/modifier-type.js"; /** * Class to manage the game state and transitions between phases. @@ -328,4 +329,15 @@ export default class GameManager { (this.scene.getCurrentPhase() as CommandPhase).handleCommand(Command.POKEMON, pokemonIndex, false); }); } + + /** + * Revive pokemon, currently player's only. + * @param pokemonIndex the index of the pokemon in your party to revive + */ + doRevivePokemon(pokemonIndex: number) { + const party = this.scene.getParty(); + const candidate = new ModifierTypeOption(modifierTypes.MAX_REVIVE(), 0); + const modifier = candidate.type.newModifier(party[pokemonIndex]); + this.scene.addModifier(modifier, false); + } } diff --git a/src/ui/dropdown.ts b/src/ui/dropdown.ts index 4f330de0588..4338e11e0c6 100644 --- a/src/ui/dropdown.ts +++ b/src/ui/dropdown.ts @@ -7,14 +7,14 @@ import i18next from "i18next"; export enum DropDownState { ON = 0, OFF = 1, - INCLUDE = 2, - EXCLUDE = 3, + EXCLUDE = 2 } export enum DropDownType { - MULTI = 0, - SINGLE = 1, - TRI = 2 + SINGLE = 0, + MULTI = 1, + HYBRID = 2, + RADIAL = 3 } export enum SortDirection { @@ -22,130 +22,252 @@ export enum SortDirection { DESC = 1 } +export class DropDownLabel { + public state: DropDownState; + public text: string; + public sprite?: Phaser.GameObjects.Sprite; + + constructor(label: string, sprite?: Phaser.GameObjects.Sprite, state: DropDownState = DropDownState.ON) { + this.text = label || ""; + this.sprite = sprite; + this.state = state || DropDownState.ON; + } +} + + export class DropDownOption extends Phaser.GameObjects.Container { public state: DropDownState = DropDownState.ON; public toggle: Phaser.GameObjects.Sprite; public text: Phaser.GameObjects.Text; - public sprite?: Phaser.GameObjects.Sprite; public val: any; public dir: SortDirection = SortDirection.ASC; - public offStateLabel: string; // label for OFF state in TRI dropdown - public includeStateLabel: string; // label for INCLUDE state in TRI dropdown - public excludeStateLabel: string; // label for EXCLUDE state in TRI dropdown - private onColor = 0x55ff55; + private currentLabelIndex: number; + private labels: DropDownLabel[]; + private onColor = 0x33bbff; private offColor = 0x272727; - private includeColor = 0x55ff55; private excludeColor = 0xff5555; - - constructor(scene: SceneBase, val: any, text: string | string[], sprite?: Phaser.GameObjects.Sprite, state: DropDownState = DropDownState.ON) { + constructor(scene: SceneBase, val: any, labels: DropDownLabel | DropDownLabel[]) { super(scene); this.val = val; - this.state = state; - if (text) { - if (Array.isArray(text)) { - this.offStateLabel = text[0]; - this.includeStateLabel = text[1]; - this.excludeStateLabel = text[2]; - text = text[0]; - } else { - this.offStateLabel = undefined; - this.includeStateLabel = undefined; - this.excludeStateLabel = undefined; - } - this.text = addTextObject(scene, 0, 0, text, TextStyle.TOOLTIP_CONTENT); - this.text.setOrigin(0, 0.5); - this.add(this.text); - } - if (sprite) { - this.sprite = sprite.setOrigin(0, 0.5); - this.add(this.sprite); + if (Array.isArray(labels)) { + this.labels = labels; + } else { + this.labels = labels? [ labels ] : [ new DropDownLabel("") ]; + } + this.currentLabelIndex = 0; + const currentLabel = this.labels[this.currentLabelIndex]; + + this.state = currentLabel.state; + this.text = addTextObject(scene, 0, 0, currentLabel.text || "", TextStyle.TOOLTIP_CONTENT); + this.text.setOrigin(0, 0.5); + this.add(this.text); + + // Add to container the sprite for each label if there is one + for (let i=0; i < this.labels.length; i++) { + const sprite = this.labels[i].sprite; + if (sprite) { + this.add(sprite); + sprite.setOrigin(0, 0.5); + if (i!== this.currentLabelIndex) { + sprite.setVisible(false); + } + } } } - public setupToggle(type: DropDownType): void { - if (type === DropDownType.MULTI || type === DropDownType.TRI) { - this.toggle = this.scene.add.sprite(0, 0, "candy"); - this.toggle.setScale(0.3); - this.toggle.setOrigin(0, 0.5); - } else { + /** + * Initialize the toggle icon based on the provided DropDownType + * For DropDownType.SINGLE: uses a cursor arrow icon + * For other types: uses a candy icon + * @param type the DropDownType to use + * @param visible whether the icon should be visible or not + */ + setupToggleIcon(type: DropDownType, visible: boolean): void { + if (type === DropDownType.SINGLE) { this.toggle = this.scene.add.sprite(0, 0, "cursor"); this.toggle.setScale(0.5); this.toggle.setOrigin(0, 0.5); this.toggle.setRotation(Math.PI / 180 * -90); + } else { + this.toggle = this.scene.add.sprite(0, 0, "candy"); + this.toggle.setScale(0.3); + this.toggle.setOrigin(0, 0.5); } this.add(this.toggle); + this.toggle.setVisible(visible); + this.updateToggleIconColor(); } - public setOptionState(type: DropDownType, state: DropDownState): DropDownState { - this.state = state; - // if type is MULTI or SINGLE, set the color of the toggle based on the state - if (type === DropDownType.MULTI || type === DropDownType.SINGLE) { - if (this.state === DropDownState.OFF) { - this.toggle.setTint(this.offColor); - } else if (this.state === DropDownState.ON) { - this.toggle.setTint(this.onColor); - } - } else if (type === DropDownType.TRI) { - if (this.state === DropDownState.OFF) { - this.text.setText(this.offStateLabel); - this.toggle.setTint(this.offColor); - } else if (this.state === DropDownState.INCLUDE) { - this.text.setText(this.includeStateLabel); - this.toggle.setTint(this.includeColor); - } else if (this.state === DropDownState.EXCLUDE) { - this.text.setText(this.excludeStateLabel); - this.toggle.setTint(this.excludeColor); - } + /** + * Set the toggle icon color based on the current state + */ + private updateToggleIconColor(): void { + switch (this.state) { + case DropDownState.ON: + this.toggle.setTint(this.onColor); + break; + case DropDownState.OFF: + this.toggle.setTint(this.offColor); + break; + case DropDownState.EXCLUDE: + this.toggle.setTint(this.excludeColor); + break; } + } + + /** + * Switch the option to its next state and update visuals + * If only ON/OFF are possible, toggle between the two + * For radials, move to the next state in the list + * @returns the updated DropDownState + */ + public toggleOptionState(): DropDownState { + if (this.labels.length > 1) { + return this.setCurrentLabel((this.currentLabelIndex + 1) % this.labels.length); + } + const newState = this.state === DropDownState.ON ? DropDownState.OFF : DropDownState.ON; + return this.setOptionState(newState); + } + + /** + * Set the option to the given state and update visuals + * @param newState the state to switch to + * @returns the new DropDownState + */ + public setOptionState(newState: DropDownState): DropDownState { + const newLabelIndex = this.labels.findIndex(label => label.state === newState); + if (newLabelIndex !== -1 && newLabelIndex !== this.currentLabelIndex) { + return this.setCurrentLabel(newLabelIndex); + } + + this.state = newState; + this.updateToggleIconColor(); + return newState; + } + + /** + * Change the option state to the one at the given index and update visuals + * @param index index of the state to switch to + * @returns the new DropDownState + */ + private setCurrentLabel(index: number): DropDownState { + const currentLabel = this.labels[this.currentLabelIndex]; + const newLabel = this.labels[index]; + + if (!newLabel) { + return this.state; + } + + this.currentLabelIndex = index; + + // update state, sprite and text to fit the new label + this.state = newLabel.state; + this.updateToggleIconColor(); + + if (currentLabel.sprite) { + this.text.x -= currentLabel.sprite.displayWidth + 2; + currentLabel.sprite.setVisible(false); + } + if (newLabel.sprite) { + this.text.x += newLabel.sprite.displayWidth + 2; + newLabel.sprite.setVisible(true); + } + this.text.setText(newLabel.text); + return this.state; } - public toggleOptionState(type: DropDownType): DropDownState { - if (type === DropDownType.TRI) { - switch (this.state) { - case DropDownState.OFF: - this.state = DropDownState.INCLUDE; - break; - case DropDownState.INCLUDE: - this.state = DropDownState.EXCLUDE; - break; - case DropDownState.EXCLUDE: - this.state = DropDownState.OFF; - break; - } - } else { - switch (this.state) { - case DropDownState.ON: - this.state = DropDownState.OFF; - break; - case DropDownState.OFF: - this.state = DropDownState.ON; - break; - } - } - return this.setOptionState(type, this.state); - } - + /** + * Set the current SortDirection to the provided value and update icon accordingly + * @param SortDirection the new SortDirection to use + */ public setDirection(dir: SortDirection): void { this.dir = dir; this.toggle.flipX = this.dir === SortDirection.DESC; } + /** + * Toggle the current SortDirection value + */ public toggleDirection(): void { this.setDirection(this.dir * -1); } + + /** + * Place the label elements (text and sprite if there is one) to the provided x and y position + * @param x the horizontal position + * @param y the vertical position + */ + setLabelPosition(x: number, y: number) { + let textX = x; + for (let i=0; i < this.labels.length; i++) { + const label = this.labels[i]; + if (label.sprite) { + label.sprite.x = x; + label.sprite.y = y; + if (i === this.currentLabelIndex) { + textX += label.sprite.displayWidth + 2; + } + } + } + if (this.text) { + this.text.x = textX; + this.text.y = y; + } + } + + /** + * Place the toggle icon at the provided position + * @param x the horizontal position + * @param y the vertical position + */ + setTogglePosition(x: number, y: number) { + if (this.toggle) { + this.toggle.x = x; + this.toggle.y = y; + } + } + + /** + * @returns the x position to use for the current label depending on if it has a sprite or not + */ + getCurrentLabelX(): number { + if (this.labels[this.currentLabelIndex].sprite) { + return this.labels[this.currentLabelIndex].sprite.x; + } + return this.text.x; + } + + /** + * @returns max width needed to display all of the labels + */ + getWidth(): number { + let w = 0; + const currentText = this.text.text; + for (const label of this.labels) { + this.text.setText(label.text); + const spriteWidth = label.sprite? label.sprite.displayWidth + 2 : 0; + w = Math.max(w, this.text.displayWidth + spriteWidth); + } + this.text.setText(currentText); + return w; + } + } + export class DropDown extends Phaser.GameObjects.Container { public options: DropDownOption[]; private window: Phaser.GameObjects.NineSlice; private cursorObj: Phaser.GameObjects.Image; private dropDownType: DropDownType = DropDownType.MULTI; - public cursor: integer = 0; + public cursor: number = 0; + public defaultCursor: number = 0; private onChange: () => void; private lastDir: SortDirection = SortDirection.ASC; + private defaultValues: any[]; constructor(scene: BattleScene, x: number, y: number, options: DropDownOption[], onChange: () => void, type: DropDownType = DropDownType.MULTI, optionSpacing: number = 2) { const windowPadding = 5; @@ -165,36 +287,31 @@ export class DropDown extends Phaser.GameObjects.Container { this.cursorObj.setOrigin(0, 0.5); this.cursorObj.setVisible(false); - if (this.dropDownType === DropDownType.MULTI) { - this.options.unshift(new DropDownOption(scene, "ALL", i18next.t("filterBar:all"), null, this.checkForAllOn() ? DropDownState.ON : DropDownState.OFF)); + // For MULTI and HYBRID filter, add an ALL option at the top + if (this.dropDownType === DropDownType.MULTI || this.dropDownType === DropDownType.HYBRID) { + this.options.unshift(new DropDownOption(scene, "ALL", new DropDownLabel(i18next.t("filterBar:all"), undefined, this.checkForAllOn() ? DropDownState.ON : DropDownState.OFF))); } + this.defaultValues = this.getVals(); + + // Place ui elements in the correct spot options.forEach((option, index) => { - option.setupToggle(type); - if (type === DropDownType.SINGLE && option.state === DropDownState.OFF) { - option.toggle.setVisible(false); - } - option.setOptionState(type, option.state); + const toggleVisibility = type !== DropDownType.SINGLE || option.state === DropDownState.ON; + option.setupToggleIcon(type, toggleVisibility); option.width = optionWidth; option.y = index * optionHeight + index * optionSpacing + optionPaddingY; - if (option.text) { - option.text.x = cursorOffset + optionPaddingX + 3 + 8; - option.text.y = optionHeight / 2; - } - if (option.sprite) { - option.sprite.x = cursorOffset + optionPaddingX + 3 + 8; - option.sprite.y = optionHeight / 2; - } + const baseX = cursorOffset + optionPaddingX + 3; + const baseY = optionHeight / 2; + option.setLabelPosition(baseX + 8, baseY); if (type === DropDownType.SINGLE) { - option.toggle.x = cursorOffset + optionPaddingX + 3 + 3; - option.toggle.y = optionHeight / 2 + 1; + option.setTogglePosition(baseX + 3, baseY + 1); } else { - option.toggle.x = cursorOffset + optionPaddingX + 3; - option.toggle.y = optionHeight / 2; + option.setTogglePosition(baseX, baseY); } }); + this.window = addWindow(scene, 0, 0, optionWidth, options[options.length - 1].y + optionHeight + optionPaddingY, false, false, null, null, WindowVariant.XTHIN); this.add(this.window); this.add(options); @@ -202,10 +319,32 @@ export class DropDown extends Phaser.GameObjects.Container { this.setVisible(false); } - toggle(): void { + getWidth(): number { + return this.window? this.window.width : this.width; + } + + toggleVisibility(): void { this.setVisible(!this.visible); } + setVisible(value: boolean): this { + super.setVisible(value); + + if (value) { + this.autoSize(); + } + + return this; + } + + resetCursor(): boolean { + // If we are an hybrid dropdown in "hover" mode, don't move the cursor back to 0 + if (this.dropDownType === DropDownType.HYBRID && this.checkForAllOff() && this.cursor > 0) { + return false; + } + return this.setCursor(this.defaultCursor); + } + setCursor(cursor: integer): boolean { this.cursor = cursor; if (cursor < 0) { @@ -220,96 +359,213 @@ export class DropDown extends Phaser.GameObjects.Container { } else { this.cursorObj.y = this.options[cursor].y + 3.5; this.cursorObj.setVisible(true); + // If hydrid type, we need to update the filters when going up/down in the list + if (this.dropDownType === DropDownType.HYBRID) { + this.onChange(); + } } return true; } - toggleOptionState(): void { - if (this.dropDownType === DropDownType.MULTI) { - const newState = this.options[this.cursor].toggleOptionState(this.dropDownType); - if (this.cursor === 0) { - this.options.forEach((option, index) => { - if (index !== this.cursor) { - option.setOptionState(this.dropDownType, newState); - } - }); + /** + * Switch the option at the provided index to its next state and update visuals + * Update accordingly the other options if needed: + * - if "all" is toggled, also update all other options + * - for DropDownType.SINGLE, unselect the previously selected option if applicable + * @param index the index of the option for which to update the state + */ + toggleOptionState(index: number = this.cursor): void { + const option: DropDownOption = this.options[index]; + if (this.dropDownType === DropDownType.MULTI || this.dropDownType === DropDownType.HYBRID) { + const newState = option.toggleOptionState(); + if (index === 0) { + // we are on the All option > put all other options to the newState + this.setAllOptions(newState); } else { - if (this.checkForAllOff()) { - this.options[0].setOptionState(this.dropDownType, DropDownState.OFF); - } else if (this.checkForAllOn()) { - this.options[0].setOptionState(this.dropDownType, DropDownState.ON); + // select the "all" option if all others are selected, other unselect it + if (newState === DropDownState.ON && this.checkForAllOn()) { + this.options[0].setOptionState(DropDownState.ON); } else { - this.options[0].setOptionState(this.dropDownType, DropDownState.OFF); + this.options[0].setOptionState(DropDownState.OFF); } } } else if (this.dropDownType === DropDownType.SINGLE) { - if (this.options[this.cursor].state === DropDownState.OFF) { + if (option.state === DropDownState.OFF) { this.options.forEach((option) => { - option.setOptionState(this.dropDownType, DropDownState.OFF); + option.setOptionState(DropDownState.OFF); option.setDirection(SortDirection.ASC); option.toggle.setVisible(false); }); - this.options[this.cursor].setOptionState(this.dropDownType, DropDownState.ON); - this.options[this.cursor].setDirection(this.lastDir); - this.options[this.cursor].toggle.setVisible(true); + option.setOptionState(DropDownState.ON); + option.setDirection(this.lastDir); + option.toggle.setVisible(true); } else { - this.options[this.cursor].toggleDirection(); + option.toggleDirection(); this.lastDir = this.options[this.cursor].dir; } - } else if (this.dropDownType === DropDownType.TRI) { - this.options[this.cursor].toggleOptionState(this.dropDownType); - this.autoSize(); + } else if (this.dropDownType === DropDownType.RADIAL) { + option.toggleOptionState(); } this.onChange(); } - setVisible(value: boolean): this { - super.setVisible(value); - - if (value) { - this.autoSize(); - } - - return this; - } - + /** + * Check whether all options except the "ALL" one are ON + * @returns true if all options are set to DropDownState.ON, false otherwise + */ checkForAllOn(): boolean { return this.options.every((option, i) => i === 0 || option.state === DropDownState.ON); } + /** + * Check whether all options except the "ALL" one are OFF + * @returns true if all options are set to DropDownState.OFF, false otherwise + */ checkForAllOff(): boolean { return this.options.every((option, i) => i === 0 || option.state === DropDownState.OFF); } + /** + * Get the current selected values for each option + * @returns an array of values, depending on the DropDownType + * - if MULTI or HYBRID, an array of all the values of the options set to ON (except the ALL one) + * - if RADIAL, an array where the value for each option is of the form { val: any, state: DropDownState } + * - if SINGLE, a single object of the form { val: any, state: SortDirection } + */ getVals(): any[] { if (this.dropDownType === DropDownType.MULTI) { return this.options.filter((option, i) => i > 0 && option.state === DropDownState.ON).map((option) => option.val); - // in TRI dropdown, if state is ON, return the "ON" with the value, if state is OFF, return the "OFF" with the value, if state is TRI, return the "TRI" with the value - } else if (this.dropDownType === DropDownType.TRI) { - return this.options.filter((option, i) => option.state === DropDownState.OFF || option.state === DropDownState.INCLUDE || option.state === DropDownState.EXCLUDE).map((option) => { - return {val: option.val, state: option.state}; + } else if (this.dropDownType === DropDownType.HYBRID) { + const selected = this.options.filter((option, i) => i > 0 && option.state === DropDownState.ON).map((option) => option.val); + if (selected.length > 0) { + return selected; + } + // if nothing is selected and the ALL option is hovered, return all elements + if (this.cursor === 0) { + return this.options.filter((_, i) => i > 0).map(option => option.val); + } + // if nothing is selected and a single option is hovered, return that one + return [this.options[this.cursor].val]; + } else if (this.dropDownType === DropDownType.RADIAL) { + return this.options.map((option) => { + return { val: option.val, state: option.state }; }); } else { - return this.options.filter((option, i) => option.state === DropDownState.ON).map((option) => { - return {val: option.val, dir: option.dir}; + return this.options.filter(option => option.state === DropDownState.ON).map((option) => { + return { val: option.val, dir: option.dir }; }); } } + /** + * Check whether the values of all options are the same as the default ones + * @returns true if they are the same, false otherwise + */ + public hasDefaultValues(): boolean { + const currentValues = this.getVals(); + + switch (this.dropDownType) { + case DropDownType.MULTI: + case DropDownType.HYBRID: + return currentValues.length === this.defaultValues.length && currentValues.every((value, index) => value === this.defaultValues[index]); + + case DropDownType.RADIAL: + return currentValues.every((value, index) => value["val"] === this.defaultValues[index]["val"] && value["state"] === this.defaultValues[index]["state"]); + + case DropDownType.SINGLE: + return currentValues[0]["dir"] === this.defaultValues[0]["dir"] && currentValues[0]["val"] === this.defaultValues[0]["val"]; + + default: + return false; + } + } + + /** + * Set all values to their default state + */ + public resetToDefault(): void { + this.setCursor(this.defaultCursor); + + for (let i = 0; i < this.options.length; i++) { + const option = this.options[i]; + // reset values + switch (this.dropDownType) { + case DropDownType.HYBRID: + case DropDownType.MULTI: + if (this.defaultValues.includes(option.val)) { + option.setOptionState(DropDownState.ON); + } else { + option.setOptionState(DropDownState.OFF); + } + break; + case DropDownType.RADIAL: + const targetValue = this.defaultValues.find(value => value.val === option.val); + option.setOptionState(targetValue.state); + break; + case DropDownType.SINGLE: + if (option.val === this.defaultValues[0].val) { + if (option.state !== DropDownState.ON) { + this.toggleOptionState(i); + } + if (option.dir !== this.defaultValues[0].dir) { + this.toggleOptionState(i); + } + } + break; + } + } + + // Select or unselect "ALL" button if applicable + if (this.dropDownType === DropDownType.MULTI || this.dropDownType === DropDownType.HYBRID) { + if (this.checkForAllOn()) { + this.options[0].setOptionState(DropDownState.ON); + } else { + this.options[0].setOptionState(DropDownState.OFF); + } + } + + } + + /** + * Set all options to a specific state + * @param state the DropDownState to assign to each option + */ + private setAllOptions(state: DropDownState) : void { + // For single type dropdown, setting all options is not relevant + if (this.dropDownType === DropDownType.SINGLE) { + return; + } + + for (const option of this.options) { + option.setOptionState(state); + } + } + + /** + * Set all options to their ON state + */ + public selectAllOptions() { + this.setAllOptions(DropDownState.ON); + } + + /** + * Set all options to their OFF state + */ + public unselectAllOptions() { + this.setAllOptions(DropDownState.OFF); + } + + /** + * Automatically set the width and position based on the size of options + */ autoSize(): void { let maxWidth = 0; let x = 0; for (let i = 0; i < this.options.length; i++) { - if (this.options[i].sprite) { - if (this.options[i].sprite.displayWidth > maxWidth) { - maxWidth = this.options[i].sprite.displayWidth; - x = this.options[i].sprite.x; - } - } else { - if (this.options[i].text.displayWidth > maxWidth) { - maxWidth = this.options[i].text.displayWidth; - x = this.options[i].text.x; - } + const optionWidth = this.options[i].getWidth(); + if (optionWidth > maxWidth) { + maxWidth = optionWidth; + x = this.options[i].getCurrentLabelX(); } } this.window.width = maxWidth + x - this.window.x + 6; @@ -319,7 +575,4 @@ export class DropDown extends Phaser.GameObjects.Container { } } - isActive(): boolean { - return this.options.some((option) => option.state === DropDownState.ON); - } } diff --git a/src/ui/filter-bar.ts b/src/ui/filter-bar.ts index fd661901c78..e163284bad3 100644 --- a/src/ui/filter-bar.ts +++ b/src/ui/filter-bar.ts @@ -1,13 +1,14 @@ import BattleScene from "#app/battle-scene.js"; import { DropDown } from "./dropdown"; import { StarterContainer } from "./starter-container"; -import { addTextObject, TextStyle } from "./text"; +import { addTextObject, getTextColor, TextStyle } from "./text"; +import { UiTheme } from "#enums/ui-theme"; import { addWindow, WindowVariant } from "./ui-theme"; export enum DropDownColumn { GEN, TYPES, - SHINY, + DEX, UNLOCKS, MISC, SORT @@ -15,18 +16,14 @@ export enum DropDownColumn { export class FilterBar extends Phaser.GameObjects.Container { private window: Phaser.GameObjects.NineSlice; - public labels: Phaser.GameObjects.Text[] = []; - public dropDowns: DropDown[] = []; + private labels: Phaser.GameObjects.Text[] = []; + private dropDowns: DropDown[] = []; + private columns: DropDownColumn[] = []; public cursorObj: Phaser.GameObjects.Image; public numFilters: number = 0; public openDropDown: boolean = false; private lastCursor: number = -1; - public defaultGenVals: any[] = []; - public defaultTypeVals: any[] = []; - public defaultShinyVals: any[] = []; - public defaultUnlocksVals: any[] = []; - public defaultMiscVals: any[] = []; - public defaultSortVals: any[] = []; + private uiTheme: UiTheme; constructor(scene: BattleScene, x: number, y: number, width: number, height: number) { super(scene, x, y); @@ -42,10 +39,26 @@ export class FilterBar extends Phaser.GameObjects.Container { this.cursorObj.setVisible(false); this.cursorObj.setOrigin(0, 0); this.add(this.cursorObj); + + this.uiTheme = scene.uiTheme; } - addFilter(text: string, dropDown: DropDown): void { - const filterTypesLabel = addTextObject(this.scene, 0, 3, text, TextStyle.TOOLTIP_CONTENT); + /** + * Add a new filter to the FilterBar, as long that a unique DropDownColumn is provided + * @param column the DropDownColumn that will be used to access the filter values + * @param title the string that will get displayed in the filter bar + * @param dropDown the DropDown with all options for this filter + * @returns true if successful, false if the provided column was already in use for another filter + */ + addFilter(column: DropDownColumn, title: string, dropDown: DropDown): boolean { + // The column should be unique to each filter, + if (this.columns.includes(column)) { + return false; + } + + this.columns.push(column); + + const filterTypesLabel = addTextObject(this.scene, 0, 3, title, TextStyle.TOOLTIP_CONTENT); this.labels.push(filterTypesLabel); this.add(filterTypesLabel); this.dropDowns.push(dropDown); @@ -53,69 +66,39 @@ export class FilterBar extends Phaser.GameObjects.Container { this.calcFilterPositions(); this.numFilters++; + + return true; } + /** + * Get the DropDown associated to a given filter + * @param col the DropDownColumn used to register the filter to retrieve + * @returns the associated DropDown if it exists, undefined otherwise + */ + getFilter(col: DropDownColumn) : DropDown { + return this.dropDowns[this.columns.indexOf(col)]; + } + /** + * Highlight the labels of the FilterBar if the filters are different from their default values + */ updateFilterLabels(): void { - const genVals = this.getVals(DropDownColumn.GEN); - const typeVals = this.getVals(DropDownColumn.TYPES); - const shinyVals = this.getVals(DropDownColumn.SHINY); - const unlocksVals = this.getVals(DropDownColumn.UNLOCKS); - const miscVals = this.getVals(DropDownColumn.MISC); - const sortVals = this.getVals(DropDownColumn.SORT); - - // onColor is Yellow, offColor is White - const onColor = 0xffef5c; - const offColor = 0xffffff; - - // if genVals and defaultGenVals has same elements, set the label to offColor else set it to onColor - if (genVals.length === this.defaultGenVals.length && genVals.every((value, index) => value === this.defaultGenVals[index])) { - this.labels[DropDownColumn.GEN].setTint(offColor); - } else { - this.labels[DropDownColumn.GEN].setTint(onColor); - } - - // if typeVals and defaultTypeVals has same elements, set the label to offColor else set it to onColor - if (typeVals.length === this.defaultTypeVals.length && typeVals.every((value, index) => value === this.defaultTypeVals[index])) { - this.labels[DropDownColumn.TYPES].setTint(offColor); - } else { - this.labels[DropDownColumn.TYPES].setTint(onColor); - } - - // if shinyVals and defaultShinyVals has same elements, set the label to offColor else set it to onColor - if (shinyVals.length === this.defaultShinyVals.length && shinyVals.every((value, index) => value === this.defaultShinyVals[index])) { - this.labels[DropDownColumn.SHINY].setTint(offColor); - } else { - this.labels[DropDownColumn.SHINY].setTint(onColor); - } - - // if unlocksVals and defaultUnlocksVals has same elements, set the label to offColor else set it to onColor - if (unlocksVals.every((value, index) => value["val"] === this.defaultUnlocksVals[index]["val"] && value["state"] === this.defaultUnlocksVals[index]["state"])) { - this.labels[DropDownColumn.UNLOCKS].setTint(offColor); - } else { - this.labels[DropDownColumn.UNLOCKS].setTint(onColor); - } - - // if miscVals and defaultMiscVals has same elements, set the label to offColor else set it to onColor - if (miscVals.every((value, index) => value["val"] === this.defaultMiscVals[index]["val"] && value["state"] === this.defaultMiscVals[index]["state"])) { - this.labels[DropDownColumn.MISC].setTint(offColor); - } else { - this.labels[DropDownColumn.MISC].setTint(onColor); - } - - // if sortVals and defaultSortVals has same value and dir, set the label to offColor else set it to onColor - if (sortVals[0]["dir"] === this.defaultSortVals[0]["dir"] && sortVals[0]["val"] === this.defaultSortVals[0]["val"]) { - this.labels[DropDownColumn.SORT].setTint(offColor); - } else { - this.labels[DropDownColumn.SORT].setTint(onColor); + for (let i = 0; i < this.numFilters; i++) { + if (this.dropDowns[i].hasDefaultValues()) { + this.labels[i].setColor(getTextColor(TextStyle.TOOLTIP_CONTENT, false, this.uiTheme)); + } else { + this.labels[i].setColor(getTextColor(TextStyle.STATS_LABEL, false, this.uiTheme)); + } } } - calcFilterPositions(): void { + /** + * Position the filter dropdowns evenly across the width of the container + */ + private calcFilterPositions(): void { const paddingX = 6; const cursorOffset = 8; - // position labels with even space across the width of the container let totalWidth = paddingX * 2 + cursorOffset; this.labels.forEach(label => { totalWidth += label.displayWidth + cursorOffset; @@ -134,12 +117,23 @@ export class FilterBar extends Phaser.GameObjects.Container { } } + /** + * Move the leftmost dropdown to the left of the FilterBar instead of below it + */ + offsetFirstFilter(): void { + if (this.dropDowns[0]) { + this.dropDowns[0].autoSize(); + this.dropDowns[0].x -= this.dropDowns[0].getWidth(); + this.dropDowns[0].y = 0; + } + } + setCursor(cursor: number): void { if (this.lastCursor > -1) { if (this.dropDowns[this.lastCursor].visible) { this.dropDowns[this.lastCursor].setVisible(false); this.dropDowns[cursor].setVisible(true); - this.dropDowns[cursor].setCursor(0); + this.dropDowns[cursor].resetCursor(); } } @@ -149,9 +143,9 @@ export class FilterBar extends Phaser.GameObjects.Container { } toggleDropDown(index: number): void { - this.dropDowns[index].toggle(); + this.dropDowns[index].toggleVisibility(); this.openDropDown = this.dropDowns[index].visible; - this.dropDowns[index].setCursor(0); + this.dropDowns[index].resetCursor(); } hideDropDowns(): void { @@ -182,11 +176,22 @@ export class FilterBar extends Phaser.GameObjects.Container { } getVals(col: DropDownColumn): any[] { - return this.dropDowns[col].getVals(); + return this.getFilter(col).getVals(); } + setValsToDefault(): void { + for (const dropDown of this.dropDowns) { + dropDown.resetToDefault(); + } + } + + /** + * Find the nearest filter to the provided container + * @param container the StarterContainer to compare position against + * @returns the index of the closest filter + */ getNearestFilter(container: StarterContainer): number { - // find the nearest filter to the x position + const midx = container.x + container.icon.displayWidth / 2; let nearest = 0; let nearestDist = 1000; @@ -201,11 +206,4 @@ export class FilterBar extends Phaser.GameObjects.Container { return nearest; } - getLastFilterX(): number { - return this.labels[this.lastCursor].x + this.labels[this.lastCursor].displayWidth / 2; - } - - isFilterActive(index: number) { - return this.dropDowns[index].isActive(); - } } diff --git a/src/ui/starter-select-ui-handler.ts b/src/ui/starter-select-ui-handler.ts index ab28da206d1..22ce5cb7531 100644 --- a/src/ui/starter-select-ui-handler.ts +++ b/src/ui/starter-select-ui-handler.ts @@ -40,7 +40,7 @@ import { Species } from "#enums/species"; import {Button} from "#enums/buttons"; import { EggSourceType } from "#app/enums/egg-source-types.js"; import AwaitableUiHandler from "./awaitable-ui-handler"; -import { DropDown, DropDownOption, DropDownState, DropDownType } from "./dropdown"; +import { DropDown, DropDownLabel, DropDownOption, DropDownState, DropDownType } from "./dropdown"; import { StarterContainer } from "./starter-container"; import { DropDownColumn, FilterBar } from "./filter-bar"; import { ScrollBar } from "./scroll-bar"; @@ -119,6 +119,14 @@ const starterCandyCosts: { passive: integer, costReduction: [integer, integer], { passive: 10, costReduction: [3, 10], egg: 10 }, // 10 ]; +// Position of UI elements +const filterBarHeight = 17; +const speciesContainerX = 109; // if team on the RIGHT: 109 / if on the LEFT: 143 +const teamWindowX = 285; // if team on the RIGHT: 285 / if on the LEFT: 109 +const teamWindowY = 18; +const teamWindowWidth = 34; +const teamWindowHeight = 132; + function getPassiveCandyCount(baseValue: integer): integer { return starterCandyCosts[baseValue - 1].passive; } @@ -145,14 +153,66 @@ function calcStarterPosition(index: number, scrollCursor:number = 0): {x: number return {x: x, y: y}; } +/** + * Calculates the y position for the icon of stater pokemon selected for the team + * @param index index of the Pokemon in the team (0-5) + * @returns the y position to use for the icon + */ +function calcStarterIconY(index: number) { + const starterSpacing = teamWindowHeight / 7; + const firstStarterY = teamWindowY + starterSpacing / 2; + return Math.round(firstStarterY + starterSpacing * index); +} + +/** + * Finds the index of the team Pokemon closest vertically to the given y position + * @param y the y position to find closest starter Pokemon + * @param teamSize how many Pokemon are in the team (0-6) + * @returns index of the closest Pokemon in the team container + */ +function findClosestStarterIndex(y: number, teamSize: number = 6): number { + let smallestDistance = teamWindowHeight; + let closestStarterIndex = 0; + for (let i = 0; i < teamSize; i++) { + const distance = Math.abs(y - (calcStarterIconY(i) - 13)); + if (distance < smallestDistance) { + closestStarterIndex = i; + smallestDistance = distance; + } + } + return closestStarterIndex; +} + +/** + * Finds the row of the filtered Pokemon closest vertically to the given Pokemon in the team + * @param index index of the Pokemon in the team (0-5) + * @param numberOfRows the number of rows to check against + * @returns index of the row closest vertically to the given Pokemon + */ +function findClosestStarterRow(index: number, numberOfRows: number) { + const currentY = calcStarterIconY(index) - 13; + let smallestDistance = teamWindowHeight; + let closestRowIndex = 0; + for (let i=0; i < numberOfRows; i++) { + const distance = Math.abs(currentY - calcStarterPosition(i * 9).y); + if (distance < smallestDistance) { + closestRowIndex = i; + smallestDistance = distance; + } + } + return closestRowIndex; +} + + export default class StarterSelectUiHandler extends MessageUiHandler { private starterSelectContainer: Phaser.GameObjects.Container; private starterSelectScrollBar: ScrollBar; private filterBarContainer: Phaser.GameObjects.Container; private filterBar: FilterBar; private shinyOverlay: Phaser.GameObjects.Image; - private starterContainer: StarterContainer[] = []; + private starterContainers: StarterContainer[] = []; private filteredStarterContainers: StarterContainer[] = []; + private validStarterContainers: StarterContainer[] = []; private pokemonNumberText: Phaser.GameObjects.Text; private pokemonSprite: Phaser.GameObjects.Sprite; private pokemonNameText: Phaser.GameObjects.Text; @@ -296,40 +356,33 @@ export default class StarterSelectUiHandler extends MessageUiHandler { this.shinyOverlay.setVisible(false); this.starterSelectContainer.add(this.shinyOverlay); - const starterContainerWindow = addWindow(this.scene, 109, 18, 175, 161); - const starterContainerBg = this.scene.add.image(110, 19, "starter_container_bg"); + const starterContainerWindow = addWindow(this.scene, speciesContainerX, filterBarHeight + 1, 175, 161); + const starterContainerBg = this.scene.add.image(speciesContainerX+1, filterBarHeight + 2, "starter_container_bg"); starterContainerBg.setOrigin(0, 0); this.starterSelectContainer.add(starterContainerBg); - this.starterSelectContainer.add(addWindow(this.scene, 285, 59, 34, 91)); - this.starterSelectContainer.add(addWindow(this.scene, 285, 145, 34, 34, true)); + this.starterSelectContainer.add(addWindow(this.scene, teamWindowX, teamWindowY, teamWindowWidth, teamWindowHeight)); + this.starterSelectContainer.add(addWindow(this.scene, teamWindowX, teamWindowY + teamWindowHeight - 5, teamWindowWidth, teamWindowWidth, true)); this.starterSelectContainer.add(starterContainerWindow); + // Create and initialise filter bar this.filterBarContainer = this.scene.add.container(0, 0); - - // this.filterBar = new FilterBar(this.scene, 143, 1, 175, 17); - this.filterBar = new FilterBar(this.scene, 109, 1, 175, 17); + this.filterBar = new FilterBar(this.scene, Math.min(speciesContainerX, teamWindowX), 1, 210, filterBarHeight); // gen filter const genOptions: DropDownOption[] = [ - new DropDownOption(this.scene, 1, i18next.t("starterSelectUiHandler:gen1"), null, DropDownState.ON), - new DropDownOption(this.scene, 2, i18next.t("starterSelectUiHandler:gen2"), null, DropDownState.ON), - new DropDownOption(this.scene, 3, i18next.t("starterSelectUiHandler:gen3"), null, DropDownState.ON), - new DropDownOption(this.scene, 4, i18next.t("starterSelectUiHandler:gen4"), null, DropDownState.ON), - new DropDownOption(this.scene, 5, i18next.t("starterSelectUiHandler:gen5"), null, DropDownState.ON), - new DropDownOption(this.scene, 6, i18next.t("starterSelectUiHandler:gen6"), null, DropDownState.ON), - new DropDownOption(this.scene, 7, i18next.t("starterSelectUiHandler:gen7"), null, DropDownState.ON), - new DropDownOption(this.scene, 8, i18next.t("starterSelectUiHandler:gen8"), null, DropDownState.ON), - new DropDownOption(this.scene, 9, i18next.t("starterSelectUiHandler:gen9"), null, DropDownState.ON), + new DropDownOption(this.scene, 1, new DropDownLabel(i18next.t("starterSelectUiHandler:gen1"))), + new DropDownOption(this.scene, 2, new DropDownLabel(i18next.t("starterSelectUiHandler:gen2"))), + new DropDownOption(this.scene, 3, new DropDownLabel(i18next.t("starterSelectUiHandler:gen3"))), + new DropDownOption(this.scene, 4, new DropDownLabel(i18next.t("starterSelectUiHandler:gen4"))), + new DropDownOption(this.scene, 5, new DropDownLabel(i18next.t("starterSelectUiHandler:gen5"))), + new DropDownOption(this.scene, 6, new DropDownLabel(i18next.t("starterSelectUiHandler:gen6"))), + new DropDownOption(this.scene, 7, new DropDownLabel(i18next.t("starterSelectUiHandler:gen7"))), + new DropDownOption(this.scene, 8, new DropDownLabel(i18next.t("starterSelectUiHandler:gen8"))), + new DropDownOption(this.scene, 9, new DropDownLabel(i18next.t("starterSelectUiHandler:gen9"))), ]; - this.filterBar.addFilter(i18next.t("filterBar:genFilter"), new DropDown(this.scene, 0, 0, genOptions, this.updateStarters, DropDownType.MULTI)); - this.filterBar.defaultGenVals = this.filterBar.getVals(DropDownColumn.GEN); - // set gen filter to all off except for the I GEN - for (const option of genOptions) { - if (option.val !== 1) { - option.setOptionState(DropDownType.MULTI ,DropDownState.OFF); - } - } + const genDropDown: DropDown = new DropDown(this.scene, 0, 0, genOptions, this.updateStarters, DropDownType.HYBRID); + this.filterBar.addFilter(DropDownColumn.GEN, i18next.t("filterBar:genFilter"), genDropDown); // type filter const typeKeys = Object.keys(Type).filter(v => isNaN(Number(v))); @@ -341,10 +394,9 @@ export default class StarterSelectUiHandler extends MessageUiHandler { const typeSprite = this.scene.add.sprite(0, 0, `types${Utils.verifyLang(i18next.resolvedLanguage) ? `_${i18next.resolvedLanguage}` : ""}`); typeSprite.setScale(0.5); typeSprite.setFrame(type.toLowerCase()); - typeOptions.push(new DropDownOption(this.scene, index, null, typeSprite)); + typeOptions.push(new DropDownOption(this.scene, index, new DropDownLabel("", typeSprite))); }); - this.filterBar.addFilter(i18next.t("filterBar:typeFilter"), new DropDown(this.scene, 0, 0, typeOptions, this.updateStarters, DropDownType.MULTI, 0.5)); - this.filterBar.defaultTypeVals = this.filterBar.getVals(DropDownColumn.TYPES); + this.filterBar.addFilter(DropDownColumn.TYPES, i18next.t("filterBar:typeFilter"), new DropDown(this.scene, 0, 0, typeOptions, this.updateStarters, DropDownType.HYBRID, 0.5)); // shiny filter const shiny1Sprite = this.scene.add.sprite(0, 0, "shiny_icons"); @@ -364,45 +416,54 @@ export default class StarterSelectUiHandler extends MessageUiHandler { shiny3Sprite.setTint(getVariantTint(2)); const shinyOptions = [ - new DropDownOption(this.scene, "SHINY3", null, shiny3Sprite), - new DropDownOption(this.scene, "SHINY2", null, shiny2Sprite), - new DropDownOption(this.scene, "SHINY", null, shiny1Sprite), - new DropDownOption(this.scene, "NORMAL", i18next.t("filterBar:normal")), - new DropDownOption(this.scene, "UNCAUGHT", i18next.t("filterBar:uncaught")), + new DropDownOption(this.scene, "SHINY3", new DropDownLabel("", shiny3Sprite)), + new DropDownOption(this.scene, "SHINY2", new DropDownLabel("", shiny2Sprite)), + new DropDownOption(this.scene, "SHINY", new DropDownLabel("", shiny1Sprite)), + new DropDownOption(this.scene, "NORMAL", new DropDownLabel(i18next.t("filterBar:normal"))), + new DropDownOption(this.scene, "UNCAUGHT", new DropDownLabel(i18next.t("filterBar:uncaught"))) ]; - this.filterBar.addFilter("Owned", new DropDown(this.scene, 0, 0, shinyOptions, this.updateStarters, DropDownType.MULTI)); - this.filterBar.defaultShinyVals = this.filterBar.getVals(DropDownColumn.SHINY); - + this.filterBar.addFilter(DropDownColumn.DEX, i18next.t("filterBar:dexFilter"), new DropDown(this.scene, 0, 0, shinyOptions, this.updateStarters, DropDownType.HYBRID)); // unlocks filter + const passiveLabels = [ + new DropDownLabel(i18next.t("filterBar:passive"), undefined, DropDownState.OFF), + new DropDownLabel(i18next.t("filterBar:passiveUnlocked"), undefined, DropDownState.ON), + new DropDownLabel(i18next.t("filterBar:passiveLocked"), undefined, DropDownState.EXCLUDE), + ]; const unlocksOptions = [ - new DropDownOption(this.scene, "PASSIVE", ["Passive", i18next.t("filterBar:passiveUnlocked"), i18next.t("filterBar:passiveLocked")], null, DropDownState.OFF), + new DropDownOption(this.scene, "PASSIVE", passiveLabels), ]; - this.filterBar.addFilter(i18next.t("filterBar:unlocksFilter"), new DropDown(this.scene, 0, 0, unlocksOptions, this.updateStarters, DropDownType.TRI)); - this.filterBar.defaultUnlocksVals = this.filterBar.getVals(DropDownColumn.UNLOCKS); + this.filterBar.addFilter(DropDownColumn.UNLOCKS, i18next.t("filterBar:unlocksFilter"), new DropDown(this.scene, 0, 0, unlocksOptions, this.updateStarters, DropDownType.RADIAL)); // misc filter - const miscOptions = [ - new DropDownOption(this.scene, "WIN", ["Win", "Win - Yes", "Win - No"], null, DropDownState.OFF), + const winLabels = [ + new DropDownLabel(i18next.t("filterBar:ribbon"), undefined, DropDownState.OFF), + new DropDownLabel(i18next.t("filterBar:hasWon"), undefined, DropDownState.ON), + new DropDownLabel(i18next.t("filterBar:hasNotWon"), undefined, DropDownState.EXCLUDE), ]; - this.filterBar.addFilter("Misc", new DropDown(this.scene, 0, 0, miscOptions, this.updateStarters, DropDownType.TRI)); - this.filterBar.defaultMiscVals = this.filterBar.getVals(DropDownColumn.MISC); + const miscOptions = [ + new DropDownOption(this.scene, "WIN", winLabels), + ]; + this.filterBar.addFilter(DropDownColumn.MISC, i18next.t("filterBar:miscFilter"), new DropDown(this.scene, 0, 0, miscOptions, this.updateStarters, DropDownType.RADIAL)); // sort filter const sortOptions = [ - new DropDownOption(this.scene, 0, i18next.t("filterBar:sortByNumber")), - new DropDownOption(this.scene, 1, i18next.t("filterBar:sortByCost"), null, DropDownState.OFF), - new DropDownOption(this.scene, 2, i18next.t("filterBar:sortByCandies"), null, DropDownState.OFF), - new DropDownOption(this.scene, 3, i18next.t("filterBar:sortByIVs"), null, DropDownState.OFF), - new DropDownOption(this.scene, 4, i18next.t("filterBar:sortByName"), null, DropDownState.OFF)]; - this.filterBar.addFilter(i18next.t("filterBar:sortFilter"), new DropDown(this.scene, 0, 0, sortOptions, this.updateStarters, DropDownType.SINGLE)); + new DropDownOption(this.scene, 0, new DropDownLabel(i18next.t("filterBar:sortByNumber"))), + new DropDownOption(this.scene, 1, new DropDownLabel(i18next.t("filterBar:sortByCost"), undefined, DropDownState.OFF)), + new DropDownOption(this.scene, 2, new DropDownLabel(i18next.t("filterBar:sortByCandies"), undefined, DropDownState.OFF)), + new DropDownOption(this.scene, 3, new DropDownLabel(i18next.t("filterBar:sortByIVs"), undefined, DropDownState.OFF)), + new DropDownOption(this.scene, 4, new DropDownLabel(i18next.t("filterBar:sortByName"), undefined, DropDownState.OFF)) + ]; + this.filterBar.addFilter(DropDownColumn.SORT, i18next.t("filterBar:sortFilter"), new DropDown(this.scene, 0, 0, sortOptions, this.updateStarters, DropDownType.SINGLE)); this.filterBarContainer.add(this.filterBar); - this.filterBar.defaultSortVals = this.filterBar.getVals(DropDownColumn.SORT); this.starterSelectContainer.add(this.filterBarContainer); + // Offset the generation filter dropdown to avoid covering the filtered pokemon + this.filterBar.offsetFirstFilter(); + if (!this.scene.uiTheme) { starterContainerWindow.setVisible(false); } @@ -478,22 +539,22 @@ export default class StarterSelectUiHandler extends MessageUiHandler { this.pokemonEggMoveBgs = []; this.pokemonEggMoveLabels = []; - this.valueLimitLabel = addTextObject(this.scene, 302, 150, "0/10", TextStyle.TOOLTIP_CONTENT); + this.valueLimitLabel = addTextObject(this.scene, teamWindowX+17, 150, "0/10", TextStyle.TOOLTIP_CONTENT); this.valueLimitLabel.setOrigin(0.5, 0); this.starterSelectContainer.add(this.valueLimitLabel); - const startLabel = addTextObject(this.scene, 302, 162, i18next.t("common:start"), TextStyle.TOOLTIP_CONTENT); + const startLabel = addTextObject(this.scene, teamWindowX+17, 162, i18next.t("common:start"), TextStyle.TOOLTIP_CONTENT); startLabel.setOrigin(0.5, 0); this.starterSelectContainer.add(startLabel); - this.startCursorObj = this.scene.add.nineslice(289, 160, "select_cursor", null, 26, 15, 6, 6, 6, 6); + this.startCursorObj = this.scene.add.nineslice(teamWindowX+4, 160, "select_cursor", null, 26, 15, 6, 6, 6, 6); this.startCursorObj.setVisible(false); this.startCursorObj.setOrigin(0, 0); this.starterSelectContainer.add(this.startCursorObj); const starterSpecies: Species[] = []; - const starterBoxContainer = this.scene.add.container(115, 9); + const starterBoxContainer = this.scene.add.container(speciesContainerX + 6, 9); //115 this.starterSelectScrollBar = new ScrollBar(this.scene, 161, 12, 0); @@ -536,14 +597,14 @@ export default class StarterSelectUiHandler extends MessageUiHandler { const starterContainer = new StarterContainer(this.scene, species).setVisible(false); this.iconAnimHandler.addOrUpdate(starterContainer.icon, PokemonIconAnimMode.NONE); - this.starterContainer.push(starterContainer); + this.starterContainers.push(starterContainer); starterBoxContainer.add(starterContainer); } this.starterSelectContainer.add(starterBoxContainer); this.starterIcons = new Array(6).fill(null).map((_, i) => { - const icon = this.scene.add.sprite(292, 63 + 13 * i, "pokemon_icons_0"); + const icon = this.scene.add.sprite(teamWindowX + 7, calcStarterIconY(i), "pokemon_icons_0"); icon.setScale(0.5); icon.setOrigin(0, 0); icon.setFrame("unknown"); @@ -820,7 +881,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { this.starterSelectContainer.setVisible(true); this.allSpecies.forEach((species, s) => { - const icon = this.starterContainer[s].icon; + const icon = this.starterContainers[s].icon; const dexEntry = this.scene.gameData.dexData[species.speciesId]; if (dexEntry.caughtAttr) { @@ -832,6 +893,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { this.setUpgradeAnimation(icon, species); }); + this.resetFilters(); this.updateStarters(); this.setFilterMode(false); @@ -847,6 +909,27 @@ export default class StarterSelectUiHandler extends MessageUiHandler { return false; } + /** + * Set the selections for all filters to their default starting value + */ + resetFilters() : void { + const genDropDown: DropDown = this.filterBar.getFilter(DropDownColumn.GEN); + if (this.scene.gameMode.isChallenge) { + // In challenge mode all gens are selected by default + genDropDown.defaultCursor = 0; + } else { + // in other modes, gen 1 is selected by default, and all options disabled + genDropDown.defaultCursor = 1; + } + + this.filterBar.setValsToDefault(); + + // for all modes except challenge, disable all gen options to enable hovering behavior + if (!this.scene.gameMode.isChallenge) { + genDropDown.unselectAllOptions(); + } + } + showText(text: string, delay?: integer, callback?: Function, callbackDelay?: integer, prompt?: boolean, promptDelay?: integer) { super.showText(text, delay, callback, callbackDelay, prompt, promptDelay); @@ -1034,11 +1117,8 @@ export default class StarterSelectUiHandler extends MessageUiHandler { const onScreenLastIndex = Math.min(this.filteredStarterContainers.length - 1, onScreenFirstIndex + maxRows * maxColumns - 1); // this is the last starter index on the screen const onScreenNumberOfStarters = onScreenLastIndex - onScreenFirstIndex + 1; const onScreenNumberOfRows = Math.ceil(onScreenNumberOfStarters / maxColumns); - // const onScreenFirstRow = Math.floor(onScreenFirstIndex / maxColumns); const onScreenCurrentRow = Math.floor((this.cursor - onScreenFirstIndex) / maxColumns); - // console.log("this.cursor: ", this.cursor, "this.scrollCursor" , this.scrollCursor, "numberOfStarters: ", numberOfStarters, "numOfRows: ", numOfRows, "currentRow: ", currentRow, "onScreenFirstIndex: ", onScreenFirstIndex, "onScreenLastIndex: ", onScreenLastIndex, "onScreenNumberOfStarters: ", onScreenNumberOfStarters, "onScreenNumberOfRow: ", onScreenNumberOfRows, "onScreenCurrentRow: ", onScreenCurrentRow); - const ui = this.getUi(); let success = false; @@ -1052,8 +1132,18 @@ export default class StarterSelectUiHandler extends MessageUiHandler { } } else if (button === Button.CANCEL) { if (this.filterMode && this.filterBar.openDropDown) { + // CANCEL with a filter menu open > close it this.filterBar.toggleDropDown(this.filterBarCursor); + + // if there are possible starters go the first one of the list + if (numberOfStarters > 0) { + this.setFilterMode(false); + this.scrollCursor = 0; + this.updateScroll(); + this.setCursor(0); + } success = true; + } else if (this.statsMode) { this.toggleStatsMode(false); success = true; @@ -1062,14 +1152,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { success = true; this.updateInstructions(); } else { - this.blockInput = true; - this.scene.clearPhaseQueue(); - if (this.scene.gameMode.isChallenge) { - this.scene.pushPhase(new SelectChallengePhase(this.scene)); - } else { - this.scene.pushPhase(new TitlePhase(this.scene)); - } - this.scene.getCurrentPhase().end(); + this.tryExit(); success = true; } } else if (this.startCursorObj.visible) { // this checks to see if the start button is selected @@ -1087,6 +1170,9 @@ export default class StarterSelectUiHandler extends MessageUiHandler { this.starterIconsCursorIndex = this.starterSpecies.length - 1; this.moveStarterIconsCursor(this.starterIconsCursorIndex); } else { + // up from start button with no Pokemon in the team > go to filter + this.startCursorObj.setVisible(false); + this.filterBarCursor = Math.max(1, this.filterBar.numFilters - 1); this.setFilterMode(true); } success = true; @@ -1097,6 +1183,9 @@ export default class StarterSelectUiHandler extends MessageUiHandler { this.starterIconsCursorIndex = 0; this.moveStarterIconsCursor(this.starterIconsCursorIndex); } else { + // down from start button with no Pokemon in the team > go to filter + this.startCursorObj.setVisible(false); + this.filterBarCursor = Math.max(1, this.filterBar.numFilters - 1); this.setFilterMode(true); } success = true; @@ -1135,27 +1224,31 @@ export default class StarterSelectUiHandler extends MessageUiHandler { success = this.filterBar.decDropDownCursor(); // else if there is filtered starters } else if (numberOfStarters > 0) { + // UP from filter bar to bottom of Pokemon list this.setFilterMode(false); this.scrollCursor = Math.max(0,numOfRows - 9); this.updateScroll(); const proportion = (this.filterBarCursor + 0.5) / this.filterBar.numFilters; - const targetCol = Math.floor(proportion * 9); + const targetCol = Math.min(8, Math.floor(proportion * 11)); if (numberOfStarters % 9 > targetCol) { - success = this.setCursor(numberOfStarters - (numberOfStarters) % 9 + targetCol); + this.setCursor(numberOfStarters - (numberOfStarters) % 9 + targetCol); } else { - success = this.setCursor(Math.max(numberOfStarters - (numberOfStarters) % 9 + targetCol - 9,0)); + this.setCursor(Math.max(numberOfStarters - (numberOfStarters) % 9 + targetCol - 9, 0)); } + success = true; } break; case Button.DOWN: if (this.filterBar.openDropDown) { success = this.filterBar.incDropDownCursor(); } else if (numberOfStarters > 0) { + // DOWN from filter bar to top of Pokemon list this.setFilterMode(false); this.scrollCursor = 0; this.updateScroll(); const proportion = this.filterBarCursor / Math.max(1, this.filterBar.numFilters - 1); - this.setCursor(Math.round(proportion * (Math.min(9, numberOfStarters) - 1))); + const targetCol = Math.min(8, Math.floor(proportion * 11)); + this.setCursor(Math.min(targetCol, numberOfStarters)); success = true; } break; @@ -1172,7 +1265,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { if (button === Button.ACTION) { if (!this.speciesStarterDexEntry?.caughtAttr) { error = true; - } else if (this.starterSpecies.length < 6) { // checks to see you have less than 6 pokemon in your party + } else if (this.starterSpecies.length <= 6) { // checks to see if the party has 6 or fewer pokemon let species; @@ -1198,7 +1291,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { const currentPartyValue = this.starterSpecies.map(s => s.generation).reduce((total: number, gen: number, i: number) => total += this.scene.gameData.getSpeciesStarterValue(this.starterSpecies[i].speciesId), 0); const newCost = this.scene.gameData.getSpeciesStarterValue(species.speciesId); - if (!isDupe && isValidForChallenge.value && currentPartyValue + newCost <= this.getValueLimit()) { // this checks to make sure the pokemon doesn't exist in your party, it's valid for the challenge and that it won't go over the cost limit; if it meets all these criteria it will add it to your party + if (!isDupe && isValidForChallenge.value && currentPartyValue + newCost <= this.getValueLimit() && this.starterSpecies.length < 6) { // this checks to make sure the pokemon doesn't exist in your party, it's valid for the challenge and that it won't go over the cost limit; if it meets all these criteria it will add it to your party options = [ { label: i18next.t("starterSelectUiHandler:addToParty"), @@ -1675,9 +1768,11 @@ export default class StarterSelectUiHandler extends MessageUiHandler { } } else { if (this.starterIconsCursorIndex === 0) { + // Up from first Pokemon in the team > go to filter this.starterIconsCursorObj.setVisible(false); this.setSpecies(null); - this.startCursorObj.setVisible(true); + this.filterBarCursor = Math.max(1, this.filterBar.numFilters - 1); + this.setFilterMode(true); } else { this.starterIconsCursorIndex--; this.moveStarterIconsCursor(this.starterIconsCursorIndex); @@ -1693,7 +1788,14 @@ export default class StarterSelectUiHandler extends MessageUiHandler { } success = this.setCursor(this.cursor + 9); this.updateScroll(); - } else { // last row + } else if (numOfRows > 1) { + // DOWN from last row of Pokemon > Wrap around to first row + this.scrollCursor = 0; + this.updateScroll(); + success = this.setCursor(this.cursor % 9); + } else { + // DOWN from single row of Pokemon > Go to filters + this.filterBarCursor = this.filterBar.getNearestFilter(this.filteredStarterContainers[this.cursor]); this.setFilterMode(true); success = true; } @@ -1714,29 +1816,36 @@ export default class StarterSelectUiHandler extends MessageUiHandler { if (this.cursor % 9 !== 0) { success = this.setCursor(this.cursor - 1); } else { + // LEFT from filtered Pokemon, on the left edge + if (this.starterSpecies.length === 0) { - // just wrap around to the last column + // no starter in team > wrap around to the last column success = this.setCursor(this.cursor + Math.min(8, numberOfStarters - this.cursor)); - } else if (onScreenCurrentRow < 3) { - // always to the first starter - this.cursorObj.setVisible(false); - this.starterIconsCursorIndex = 0; - this.moveStarterIconsCursor(this.starterIconsCursorIndex); + } else if (onScreenCurrentRow < 7) { + // at least one pokemon in team > for the first 7 rows, go to closest starter this.cursorObj.setVisible(false); - this.starterIconsCursorIndex = Math.min(onScreenCurrentRow-2, this.starterSpecies.length - 1); + this.starterIconsCursorIndex = findClosestStarterIndex(this.cursorObj.y - 1, this.starterSpecies.length); this.moveStarterIconsCursor(this.starterIconsCursorIndex); + } else { + // at least one pokemon in team > from the bottom 2 rows, go to start run button this.cursorObj.setVisible(false); this.setSpecies(null); this.startCursorObj.setVisible(true); } success = true; } - } else { + } else if (numberOfStarters > 0) { + // LEFT from team > Go to closest filtered Pokemon + const closestRowIndex = findClosestStarterRow(this.starterIconsCursorIndex, onScreenNumberOfRows); this.starterIconsCursorObj.setVisible(false); this.cursorObj.setVisible(true); - success = this.setCursor(Math.min(onScreenFirstIndex + (this.starterIconsCursorIndex + 2) * 9 + 8,onScreenLastIndex)); // set last column + this.setCursor(Math.min(onScreenFirstIndex + closestRowIndex * 9 + 8, onScreenLastIndex)); + success = true; + } else { + // LEFT from team and no Pokemon in filter > do nothing + success = false; } break; case Button.RIGHT: @@ -1745,33 +1854,37 @@ export default class StarterSelectUiHandler extends MessageUiHandler { if (this.cursor % 9 < (currentRow < numOfRows - 1 ? 8 : (numberOfStarters - 1) % 9)) { success = this.setCursor(this.cursor + 1); } else { - // in right edge + // RIGHT from filtered Pokemon, on the right edge if (this.starterSpecies.length === 0) { - // just wrap around to the first column + // no selected starter in team > wrap around to the first column success = this.setCursor(this.cursor - Math.min(8, this.cursor % 9)); - } else if (onScreenCurrentRow < 3) { - // always to the first starter - this.cursorObj.setVisible(false); - this.starterIconsCursorIndex = 0; - this.moveStarterIconsCursor(this.starterIconsCursorIndex); + } else if (onScreenCurrentRow < 7) { + // at least one pokemon in team > for the first 7 rows, go to closest starter this.cursorObj.setVisible(false); - this.starterIconsCursorIndex = Math.min(onScreenCurrentRow-2, this.starterSpecies.length - 1); + this.starterIconsCursorIndex = findClosestStarterIndex(this.cursorObj.y - 1, this.starterSpecies.length); this.moveStarterIconsCursor(this.starterIconsCursorIndex); + } else { + // at least one pokemon in team > from the bottom 2 rows, go to start run button this.cursorObj.setVisible(false); this.setSpecies(null); this.startCursorObj.setVisible(true); } success = true; } - break; - } else { + } else if (numberOfStarters > 0) { + // RIGHT from team > Go to closest filtered Pokemon + const closestRowIndex = findClosestStarterRow(this.starterIconsCursorIndex, onScreenNumberOfRows); this.starterIconsCursorObj.setVisible(false); this.cursorObj.setVisible(true); - success = this.setCursor(Math.min(onScreenFirstIndex + (this.starterIconsCursorIndex + 2) * 9, onScreenLastIndex - (onScreenLastIndex % 9))); // set first column - break; + this.setCursor(Math.min(onScreenFirstIndex + closestRowIndex * 9, onScreenLastIndex - (onScreenLastIndex % 9))); + success = true; + } else { + // RIGHT from team and no Pokemon in filter > do nothing + success = false; } + break; } } } @@ -1956,14 +2069,30 @@ export default class StarterSelectUiHandler extends MessageUiHandler { updateStarters = () => { this.scrollCursor = 0; this.filteredStarterContainers = []; + this.validStarterContainers = []; this.pokerusCursorObjs.forEach(cursor => cursor.setVisible(false)); this.starterCursorObjs.forEach(cursor => cursor.setVisible(false)); this.filterBar.updateFilterLabels(); + // pre filter for challenges + if (this.scene.gameMode.modeId === GameModes.CHALLENGE) { + this.starterContainers.forEach(container => { + const isValidForChallenge = new Utils.BooleanHolder(true); + Challenge.applyChallenges(this.scene.gameMode, Challenge.ChallengeType.STARTER_CHOICE, container.species, isValidForChallenge, this.scene.gameData.getSpeciesDexAttrProps(container.species, this.scene.gameData.getSpeciesDefaultDexAttr(container.species, false, true)), true); + if (isValidForChallenge.value) { + this.validStarterContainers.push(container); + } else { + container.setVisible(false); + } + }); + } else { + this.validStarterContainers = this.starterContainers; + } + // filter - this.starterContainer.forEach(container => { + this.validStarterContainers.forEach(container => { container.setVisible(false); container.cost = this.scene.gameData.getSpeciesStarterValue(container.species.speciesId); @@ -1986,7 +2115,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { const fitsType = this.filterBar.getVals(DropDownColumn.TYPES).some(type => container.species.isOfType((type as number) - 1)); - const fitsShiny = this.filterBar.getVals(DropDownColumn.SHINY).some(variant => { + const fitsShiny = this.filterBar.getVals(DropDownColumn.DEX).some(variant => { if (variant === "SHINY3") { return isVariant3Caught; } else if (variant === "SHINY2") { @@ -2001,7 +2130,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { }); const fitsPassive = this.filterBar.getVals(DropDownColumn.UNLOCKS).some(unlocks => { - if (unlocks.val === "PASSIVE" && unlocks.state === DropDownState.INCLUDE) { + if (unlocks.val === "PASSIVE" && unlocks.state === DropDownState.ON) { return isPassiveUnlocked; } else if (unlocks.val === "PASSIVE" && unlocks.state === DropDownState.EXCLUDE) { return !isPassiveUnlocked; @@ -2013,7 +2142,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { const fitsWin = this.filterBar.getVals(DropDownColumn.MISC).some(misc => { if (container.species.speciesId < 10) { } - if (misc.val === "WIN" && misc.state === DropDownState.INCLUDE) { + if (misc.val === "WIN" && misc.state === DropDownState.ON) { return isWin; } else if (misc.val === "WIN" && misc.state === DropDownState.EXCLUDE) { return isNotWin || isUndefined; @@ -2275,12 +2404,12 @@ export default class StarterSelectUiHandler extends MessageUiHandler { const dexAttr = this.scene.gameData.getSpeciesDefaultDexAttr(this.lastSpecies, false, true); const props = this.scene.gameData.getSpeciesDexAttrProps(this.lastSpecies, dexAttr); const speciesIndex = this.allSpecies.indexOf(this.lastSpecies); - const lastSpeciesIcon = this.starterContainer[speciesIndex].icon; + const lastSpeciesIcon = this.starterContainers[speciesIndex].icon; this.checkIconId(lastSpeciesIcon, this.lastSpecies, props.female, props.formIndex, props.shiny, props.variant); this.iconAnimHandler.addOrUpdate(lastSpeciesIcon, PokemonIconAnimMode.NONE); // Resume the animation for the previously selected species - const icon = this.starterContainer[speciesIndex].icon; + const icon = this.starterContainers[speciesIndex].icon; this.scene.tweens.getTweensOf(icon).forEach(tween => tween.resume()); } @@ -2376,7 +2505,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { // Pause the animation when the species is selected const speciesIndex = this.allSpecies.indexOf(species); - const icon = this.starterContainer[speciesIndex].icon; + const icon = this.starterContainers[speciesIndex].icon; if (this.isUpgradeAnimationEnabled()) { this.scene.tweens.getTweensOf(icon).forEach(tween => tween.pause()); @@ -2738,8 +2867,10 @@ export default class StarterSelectUiHandler extends MessageUiHandler { if (this.starterSpecies.length > 0) { this.starterIconsCursorIndex--; } else { + // No more Pokemon selected, go back to filters this.starterIconsCursorObj.setVisible(false); this.setSpecies(null); + this.filterBarCursor = Math.max(1, this.filterBar.numFilters - 1); this.setFilterMode(true); } } @@ -2813,7 +2944,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler { /** Used to detect if this pokemon is registered in starter */ const speciesStarterDexEntry = this.scene.gameData.dexData[this.allSpecies[s].speciesId]; /** {@linkcode Phaser.GameObjects.Sprite} object of Pokémon for setting the alpha value */ - const speciesSprite = this.starterContainer[s].icon; + const speciesSprite = this.starterContainers[s].icon; /** * If remainValue greater than or equal pokemon species and the pokemon is legal for this challenge, the user can select. @@ -2862,6 +2993,32 @@ export default class StarterSelectUiHandler extends MessageUiHandler { return true; } + tryExit(): boolean { + this.blockInput = true; + const ui = this.getUi(); + + const cancel = () => { + ui.setMode(Mode.STARTER_SELECT); + this.clearText(); + this.blockInput = false; + }; + ui.showText(i18next.t("starterSelectUiHandler:confirmExit"), null, () => { + ui.setModeWithoutClear(Mode.CONFIRM, () => { + ui.setMode(Mode.STARTER_SELECT); + this.scene.clearPhaseQueue(); + if (this.scene.gameMode.isChallenge) { + this.scene.pushPhase(new SelectChallengePhase(this.scene)); + } else { + this.scene.pushPhase(new TitlePhase(this.scene)); + } + this.clearText(); + this.scene.getCurrentPhase().end(); + }, cancel, null, null, 19); + }); + + return true; + } + tryStart(manualTrigger: boolean = false): boolean { if (!this.starterSpecies.length) { return false;