Merge branch 'beta' of https://github.com/pagefaultgames/pokerogue into gymteams
16
.github/workflows/deploy.yml
vendored
@ -1,8 +1,12 @@
|
|||||||
name: Deploy
|
name: Deploy Main
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push: {}
|
push:
|
||||||
pull_request: {}
|
branches:
|
||||||
|
- main
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy:
|
deploy:
|
||||||
@ -22,7 +26,7 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
NODE_ENV: production
|
NODE_ENV: production
|
||||||
- name: Set up SSH
|
- name: Set up SSH
|
||||||
if: github.event_name == 'push' && github.ref_name == github.event.repository.default_branch
|
if: github.event_name == 'push' && github.ref_name == 'main'
|
||||||
run: |
|
run: |
|
||||||
mkdir ~/.ssh
|
mkdir ~/.ssh
|
||||||
echo "${{ secrets.SSH_PUBLIC_KEY }}" > ~/.ssh/id_ed25519.pub
|
echo "${{ secrets.SSH_PUBLIC_KEY }}" > ~/.ssh/id_ed25519.pub
|
||||||
@ -30,12 +34,12 @@ jobs:
|
|||||||
chmod 600 ~/.ssh/*
|
chmod 600 ~/.ssh/*
|
||||||
ssh-keyscan -H ${{ secrets.SSH_HOST }} >> ~/.ssh/known_hosts
|
ssh-keyscan -H ${{ secrets.SSH_HOST }} >> ~/.ssh/known_hosts
|
||||||
- name: Deploy build on server
|
- name: Deploy build on server
|
||||||
if: github.event_name == 'push' && github.ref_name == github.event.repository.default_branch
|
if: github.event_name == 'push' && github.ref_name == 'main'
|
||||||
run: |
|
run: |
|
||||||
rsync --del --no-times --checksum -vrm dist/* ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.DESTINATION_DIR }}
|
rsync --del --no-times --checksum -vrm dist/* ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.DESTINATION_DIR }}
|
||||||
ssh -t ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} "~/prmanifest --inpath ${{ secrets.DESTINATION_DIR }} --outpath ${{ secrets.DESTINATION_DIR }}/manifest.json"
|
ssh -t ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} "~/prmanifest --inpath ${{ secrets.DESTINATION_DIR }} --outpath ${{ secrets.DESTINATION_DIR }}/manifest.json"
|
||||||
- name: Purge Cloudflare Cache
|
- name: Purge Cloudflare Cache
|
||||||
if: github.event_name == 'push' && github.ref_name == github.event.repository.default_branch
|
if: github.event_name == 'push' && github.ref_name == 'main'
|
||||||
id: purge-cache
|
id: purge-cache
|
||||||
uses: NathanVaughn/actions-cloudflare-purge@v3.1.0
|
uses: NathanVaughn/actions-cloudflare-purge@v3.1.0
|
||||||
with:
|
with:
|
||||||
|
@ -17,7 +17,12 @@ If you have the motivation and experience with Typescript/Javascript (or are wil
|
|||||||
2. Run `npm run start:dev` to locally run the project in `localhost:8000`
|
2. Run `npm run start:dev` to locally run the project in `localhost:8000`
|
||||||
|
|
||||||
#### Linting
|
#### Linting
|
||||||
We're using ESLint as our common linter and formatter. It will run automatically during the pre-commit hook but if you would like to manually run it, use the `npm run eslint` script.
|
We're using ESLint as our common linter and formatter. It will run automatically during the pre-commit hook but if you would like to manually run it, use the `npm run eslint` script. To view the complete rules, check out the [eslint.config.js](./eslint.config.js) file.
|
||||||
|
|
||||||
|
### 📚 Documentation
|
||||||
|
You can find the auto-generated documentation [here](https://pagefaultgames.github.io/pokerogue/main/index.html).
|
||||||
|
For information on enemy AI, check out the [enemy-ai.md](./docs/enemy-ai.md) file.
|
||||||
|
For detailed guidelines on documenting your code, refer to the [comments.md](./docs/comments.md) file.
|
||||||
|
|
||||||
### ❔ FAQ
|
### ❔ FAQ
|
||||||
|
|
||||||
|
@ -49,7 +49,7 @@ async function promptFileName(selectedType) {
|
|||||||
{
|
{
|
||||||
type: "input",
|
type: "input",
|
||||||
name: "userInput",
|
name: "userInput",
|
||||||
message: `Please provide a file name for the ${selectedType} test:`,
|
message: `Please provide the name of the ${selectedType}:`,
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
|
|
||||||
@ -110,7 +110,7 @@ import { Moves } from "#enums/moves";
|
|||||||
import { Species } from "#enums/species";
|
import { Species } from "#enums/species";
|
||||||
import GameManager from "#test/utils/gameManager";
|
import GameManager from "#test/utils/gameManager";
|
||||||
import Phaser from "phaser";
|
import Phaser from "phaser";
|
||||||
import { afterEach, beforeAll, beforeEach, describe, it, expect } from "vitest";
|
import { afterEach, beforeAll, beforeEach, describe, expect, it } from "vitest";
|
||||||
|
|
||||||
describe("${description}", () => {
|
describe("${description}", () => {
|
||||||
let phaserGame: Phaser.Game;
|
let phaserGame: Phaser.Game;
|
||||||
@ -129,15 +129,22 @@ describe("${description}", () => {
|
|||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
game = new GameManager(phaserGame);
|
game = new GameManager(phaserGame);
|
||||||
game.override
|
game.override
|
||||||
.moveset([Moves.SPLASH])
|
.moveset([ Moves.SPLASH ])
|
||||||
|
.ability(Abilities.BALL_FETCH)
|
||||||
.battleType("single")
|
.battleType("single")
|
||||||
|
.disableCrits()
|
||||||
|
.enemySpecies(Species.MAGIKARP)
|
||||||
.enemyAbility(Abilities.BALL_FETCH)
|
.enemyAbility(Abilities.BALL_FETCH)
|
||||||
.enemyMoveset(Moves.SPLASH);
|
.enemyMoveset(Moves.SPLASH);
|
||||||
});
|
});
|
||||||
|
|
||||||
it("test case", async () => {
|
it("should do X", async () => {
|
||||||
// await game.classicMode.startBattle([Species.MAGIKARP]);
|
await game.classicMode.startBattle([ Species.FEEBAS ]);
|
||||||
// game.move.select(Moves.SPLASH);
|
|
||||||
|
game.move.select(Moves.SPLASH);
|
||||||
|
await game.phaseInterceptor.to("BerryPhase");
|
||||||
|
|
||||||
|
expect(true).toBe(true);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
`;
|
`;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import tseslint from '@typescript-eslint/eslint-plugin';
|
import tseslint from '@typescript-eslint/eslint-plugin';
|
||||||
import stylisticTs from '@stylistic/eslint-plugin-ts'
|
import stylisticTs from '@stylistic/eslint-plugin-ts';
|
||||||
import parser from '@typescript-eslint/parser';
|
import parser from '@typescript-eslint/parser';
|
||||||
import importX from 'eslint-plugin-import-x';
|
import importX from 'eslint-plugin-import-x';
|
||||||
|
|
||||||
@ -16,15 +16,15 @@ export default [
|
|||||||
'@typescript-eslint': tseslint
|
'@typescript-eslint': tseslint
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
"eqeqeq": ["error", "always"], // Enforces the use of === and !== instead of == and !=
|
"eqeqeq": ["error", "always"], // Enforces the use of `===` and `!==` instead of `==` and `!=`
|
||||||
"indent": ["error", 2], // Enforces a 2-space indentation
|
"indent": ["error", 2, { "SwitchCase": 1 }], // Enforces a 2-space indentation, enforces indentation of `case ...:` statements
|
||||||
"quotes": ["error", "double"], // Enforces the use of double quotes for strings
|
"quotes": ["error", "double"], // Enforces the use of double quotes for strings
|
||||||
"no-var": "error", // Disallows the use of var, enforcing let or const instead
|
"no-var": "error", // Disallows the use of `var`, enforcing `let` or `const` instead
|
||||||
"prefer-const": "error", // Prefers the use of const for variables that are never reassigned
|
"prefer-const": "error", // Enforces the use of `const` for variables that are never reassigned
|
||||||
"no-undef": "off", // Disables the rule that disallows the use of undeclared variables (TypeScript handles this)
|
"no-undef": "off", // Disables the rule that disallows the use of undeclared variables (TypeScript handles this)
|
||||||
"@typescript-eslint/no-unused-vars": [ "error", {
|
"@typescript-eslint/no-unused-vars": [ "error", {
|
||||||
"args": "none", // Allows unused function parameters. Useful for functions with specific signatures where not all parameters are always used.
|
"args": "none", // Allows unused function parameters. Useful for functions with specific signatures where not all parameters are always used.
|
||||||
"ignoreRestSiblings": true // Allows unused variables that are part of a rest property in object destructuring. Useful for excluding certain properties from an object while using the rest.
|
"ignoreRestSiblings": true // Allows unused variables that are part of a rest property in object destructuring. Useful for excluding certain properties from an object while using the others.
|
||||||
}],
|
}],
|
||||||
"eol-last": ["error", "always"], // Enforces at least one newline at the end of files
|
"eol-last": ["error", "always"], // Enforces at least one newline at the end of files
|
||||||
"@stylistic/ts/semi": ["error", "always"], // Requires semicolons for TypeScript-specific syntax
|
"@stylistic/ts/semi": ["error", "always"], // Requires semicolons for TypeScript-specific syntax
|
||||||
@ -32,15 +32,20 @@ export default [
|
|||||||
"no-extra-semi": ["error"], // Disallows unnecessary semicolons for TypeScript-specific syntax
|
"no-extra-semi": ["error"], // Disallows unnecessary semicolons for TypeScript-specific syntax
|
||||||
"brace-style": "off", // Note: you must disable the base rule as it can report incorrect errors
|
"brace-style": "off", // Note: you must disable the base rule as it can report incorrect errors
|
||||||
"curly": ["error", "all"], // Enforces the use of curly braces for all control statements
|
"curly": ["error", "all"], // Enforces the use of curly braces for all control statements
|
||||||
"@stylistic/ts/brace-style": ["error", "1tbs"],
|
"@stylistic/ts/brace-style": ["error", "1tbs"], // Enforces the following brace style: https://eslint.style/rules/js/brace-style#_1tbs
|
||||||
"no-trailing-spaces": ["error", { // Disallows trailing whitespace at the end of lines
|
"no-trailing-spaces": ["error", { // Disallows trailing whitespace at the end of lines
|
||||||
"skipBlankLines": false, // Enforces the rule even on blank lines
|
"skipBlankLines": false, // Enforces the rule even on blank lines
|
||||||
"ignoreComments": false // Enforces the rule on lines containing comments
|
"ignoreComments": false // Enforces the rule on lines containing comments
|
||||||
}],
|
}],
|
||||||
"space-before-blocks": ["error", "always"], // Enforces a space before blocks
|
"space-before-blocks": ["error", "always"], // Enforces a space before blocks
|
||||||
"keyword-spacing": ["error", { "before": true, "after": true }], // Enforces spacing before and after keywords
|
"keyword-spacing": ["error", { "before": true, "after": true }], // Enforces spacing before and after keywords
|
||||||
"comma-spacing": ["error", { "before": false, "after": true }], // Enforces spacing after comma
|
"comma-spacing": ["error", { "before": false, "after": true }], // Enforces spacing after commas
|
||||||
"import-x/extensions": ["error", "never", { "json": "always" }], // Enforces no extension for imports unless json
|
"import-x/extensions": ["error", "never", { "json": "always" }], // Enforces no extension for imports unless json
|
||||||
|
"array-bracket-spacing": ["error", "always", { "objectsInArrays": false, "arraysInArrays": false }], // Enforces consistent spacing inside array brackets
|
||||||
|
"object-curly-spacing": ["error", "always", { "arraysInObjects": false, "objectsInObjects": false }], // Enforces consistent spacing inside braces of object literals, destructuring assignments, and import/export specifiers
|
||||||
|
"computed-property-spacing": ["error", "never" ], // Enforces consistent spacing inside computed property brackets
|
||||||
|
"space-infix-ops": ["error", { "int32Hint": false }], // Enforces spacing around infix operators
|
||||||
|
"no-multiple-empty-lines": ["error", { "max": 2, "maxEOF": 1, "maxBOF": 0 }], // Disallows multiple empty lines
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
14
global.d.ts
vendored
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
import type { SetupServerApi } from "msw/node";
|
||||||
|
|
||||||
|
export {};
|
||||||
|
|
||||||
|
declare global {
|
||||||
|
/**
|
||||||
|
* Only used in testing.
|
||||||
|
* Can technically be undefined/null but for ease of use we are going to assume it is always defined.
|
||||||
|
* Used to load i18n files exclusively.
|
||||||
|
*
|
||||||
|
* To set up your own server in a test see `game_data.test.ts`
|
||||||
|
*/
|
||||||
|
var i18nServer: SetupServerApi;
|
||||||
|
}
|
5
package-lock.json
generated
@ -1,12 +1,13 @@
|
|||||||
{
|
{
|
||||||
"name": "pokemon-rogue-battle",
|
"name": "pokemon-rogue-battle",
|
||||||
"version": "1.0.4",
|
"version": "1.1.6",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "pokemon-rogue-battle",
|
"name": "pokemon-rogue-battle",
|
||||||
"version": "1.0.4",
|
"version": "1.1.6",
|
||||||
|
"hasInstallScript": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@material/material-color-utilities": "^0.2.7",
|
"@material/material-color-utilities": "^0.2.7",
|
||||||
"crypto-js": "^4.2.0",
|
"crypto-js": "^4.2.0",
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "pokemon-rogue-battle",
|
"name": "pokemon-rogue-battle",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "1.0.4",
|
"version": "1.1.6",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "vite",
|
"start": "vite",
|
||||||
|
BIN
public/audio/cry/718-10-complete.m4a
Normal file
BIN
public/images/events/halloween2024-event-de.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
public/images/events/halloween2024-event-en.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
public/images/events/halloween2024-event-es.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
public/images/events/halloween2024-event-fr.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
public/images/events/halloween2024-event-it.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
public/images/events/halloween2024-event-ja.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
public/images/events/halloween2024-event-ko.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
public/images/events/halloween2024-event-pt-BR.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
public/images/events/halloween2024-event-zh-CN.png
Normal file
After Width: | Height: | Size: 85 KiB |
Before Width: | Height: | Size: 57 KiB After Width: | Height: | Size: 57 KiB |
Before Width: | Height: | Size: 318 B After Width: | Height: | Size: 390 B |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 285 B |
BIN
public/images/items/pb_silver.png
Normal file
After Width: | Height: | Size: 556 B |
Before Width: | Height: | Size: 673 B After Width: | Height: | Size: 744 B |
Before Width: | Height: | Size: 694 B After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 397 B After Width: | Height: | Size: 448 B |
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 3.0 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 874 B After Width: | Height: | Size: 876 B |
Before Width: | Height: | Size: 777 B After Width: | Height: | Size: 836 B |
Before Width: | Height: | Size: 673 B After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 582 B After Width: | Height: | Size: 608 B |
Before Width: | Height: | Size: 719 B After Width: | Height: | Size: 734 B |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 7.5 KiB After Width: | Height: | Size: 7.9 KiB |
Before Width: | Height: | Size: 732 B After Width: | Height: | Size: 762 B |
Before Width: | Height: | Size: 626 B After Width: | Height: | Size: 680 B |
Before Width: | Height: | Size: 7.5 KiB After Width: | Height: | Size: 7.9 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 8.3 KiB After Width: | Height: | Size: 9.3 KiB |
@ -399,13 +399,13 @@
|
|||||||
"x": 0,
|
"x": 0,
|
||||||
"y": 6,
|
"y": 6,
|
||||||
"w": 36,
|
"w": 36,
|
||||||
"h": 55
|
"h": 54
|
||||||
},
|
},
|
||||||
"frame": {
|
"frame": {
|
||||||
"x": 72,
|
"x": 72,
|
||||||
"y": 55,
|
"y": 55,
|
||||||
"w": 36,
|
"w": 36,
|
||||||
"h": 55
|
"h": 54
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -420,13 +420,13 @@
|
|||||||
"x": 0,
|
"x": 0,
|
||||||
"y": 6,
|
"y": 6,
|
||||||
"w": 36,
|
"w": 36,
|
||||||
"h": 55
|
"h": 54
|
||||||
},
|
},
|
||||||
"frame": {
|
"frame": {
|
||||||
"x": 72,
|
"x": 72,
|
||||||
"y": 55,
|
"y": 55,
|
||||||
"w": 36,
|
"w": 36,
|
||||||
"h": 55
|
"h": 54
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 9.6 KiB |
Before Width: | Height: | Size: 7.8 KiB After Width: | Height: | Size: 8.1 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 6.8 KiB After Width: | Height: | Size: 7.1 KiB |
Before Width: | Height: | Size: 6.6 KiB After Width: | Height: | Size: 7.0 KiB |
Before Width: | Height: | Size: 769 B After Width: | Height: | Size: 411 B |
Before Width: | Height: | Size: 6.3 KiB After Width: | Height: | Size: 6.4 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 16 KiB |
Before Width: | Height: | Size: 5.4 KiB After Width: | Height: | Size: 7.4 KiB |
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 21 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 7.7 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.8 KiB |
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 476 B After Width: | Height: | Size: 515 B |
Before Width: | Height: | Size: 741 B After Width: | Height: | Size: 772 B |
@ -1,41 +1,19 @@
|
|||||||
{
|
{ "frames": [
|
||||||
"textures": [
|
{
|
||||||
{
|
"filename": "0001.png",
|
||||||
"image": "658-ash.png",
|
"frame": { "x": 0, "y": 0, "w": 79, "h": 74 },
|
||||||
"format": "RGBA8888",
|
"rotated": false,
|
||||||
"size": {
|
"trimmed": false,
|
||||||
"w": 79,
|
"spriteSourceSize": { "x": 0, "y": 0, "w": 79, "h": 74 },
|
||||||
"h": 79
|
"sourceSize": { "w": 79, "h": 74 },
|
||||||
},
|
"duration": 100
|
||||||
"scale": 1,
|
}
|
||||||
"frames": [
|
],
|
||||||
{
|
"meta": {
|
||||||
"filename": "0001.png",
|
"app": "https://www.aseprite.org/",
|
||||||
"rotated": false,
|
"version": "1.3.7-x64",
|
||||||
"trimmed": false,
|
"format": "I8",
|
||||||
"sourceSize": {
|
"size": { "w": 79, "h": 74 },
|
||||||
"w": 79,
|
"scale": "1"
|
||||||
"h": 74
|
}
|
||||||
},
|
|
||||||
"spriteSourceSize": {
|
|
||||||
"x": 0,
|
|
||||||
"y": 0,
|
|
||||||
"w": 79,
|
|
||||||
"h": 74
|
|
||||||
},
|
|
||||||
"frame": {
|
|
||||||
"x": 0,
|
|
||||||
"y": 0,
|
|
||||||
"w": 79,
|
|
||||||
"h": 74
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"meta": {
|
|
||||||
"app": "https://www.codeandweb.com/texturepacker",
|
|
||||||
"version": "3.0",
|
|
||||||
"smartupdate": "$TexturePacker:SmartUpdate:936f62fa49ba4d6e402bb2e2eaf2afd0:ed00ba047a44b4bf1309bc147dd000e3:bfbf521a5c7bd80bcd95a96d9789c0dd$"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.2 KiB |
@ -1,41 +1,19 @@
|
|||||||
{
|
{ "frames": [
|
||||||
"textures": [
|
{
|
||||||
{
|
"filename": "0001.png",
|
||||||
"image": "658.png",
|
"frame": { "x": 0, "y": 0, "w": 85, "h": 67 },
|
||||||
"format": "RGBA8888",
|
"rotated": false,
|
||||||
"size": {
|
"trimmed": false,
|
||||||
"w": 75,
|
"spriteSourceSize": { "x": 0, "y": 0, "w": 85, "h": 67 },
|
||||||
"h": 75
|
"sourceSize": { "w": 85, "h": 67 },
|
||||||
},
|
"duration": 100
|
||||||
"scale": 1,
|
}
|
||||||
"frames": [
|
],
|
||||||
{
|
"meta": {
|
||||||
"filename": "0001.png",
|
"app": "https://www.aseprite.org/",
|
||||||
"rotated": false,
|
"version": "1.3.7-x64",
|
||||||
"trimmed": false,
|
"format": "I8",
|
||||||
"sourceSize": {
|
"size": { "w": 85, "h": 67 },
|
||||||
"w": 75,
|
"scale": "1"
|
||||||
"h": 65
|
}
|
||||||
},
|
|
||||||
"spriteSourceSize": {
|
|
||||||
"x": 0,
|
|
||||||
"y": 0,
|
|
||||||
"w": 75,
|
|
||||||
"h": 65
|
|
||||||
},
|
|
||||||
"frame": {
|
|
||||||
"x": 0,
|
|
||||||
"y": 0,
|
|
||||||
"w": 75,
|
|
||||||
"h": 65
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"meta": {
|
|
||||||
"app": "https://www.codeandweb.com/texturepacker",
|
|
||||||
"version": "3.0",
|
|
||||||
"smartupdate": "$TexturePacker:SmartUpdate:e0b10df331bd4ce6760edab61dee144b:061561c45beff89a92bf0158d065204f:5affcab976148657d36bf4ff3410f92d$"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 765 B After Width: | Height: | Size: 787 B |
Before Width: | Height: | Size: 802 B After Width: | Height: | Size: 822 B |
Before Width: | Height: | Size: 807 B After Width: | Height: | Size: 824 B |
Before Width: | Height: | Size: 813 B After Width: | Height: | Size: 836 B |
Before Width: | Height: | Size: 842 B After Width: | Height: | Size: 873 B |
Before Width: | Height: | Size: 726 B After Width: | Height: | Size: 746 B |
Before Width: | Height: | Size: 777 B After Width: | Height: | Size: 798 B |
Before Width: | Height: | Size: 770 B After Width: | Height: | Size: 793 B |
Before Width: | Height: | Size: 838 B After Width: | Height: | Size: 862 B |
Before Width: | Height: | Size: 412 B After Width: | Height: | Size: 444 B |
Before Width: | Height: | Size: 758 B After Width: | Height: | Size: 794 B |
Before Width: | Height: | Size: 391 B After Width: | Height: | Size: 412 B |
Before Width: | Height: | Size: 543 B After Width: | Height: | Size: 577 B |
@ -1,41 +1,18 @@
|
|||||||
{
|
{ "frames": [
|
||||||
"textures": [
|
{
|
||||||
{
|
"filename": "0001.png",
|
||||||
"image": "688.png",
|
"frame": { "x": 0, "y": 0, "w": 64, "h": 63 },
|
||||||
"format": "RGBA8888",
|
"rotated": false,
|
||||||
"size": {
|
"trimmed": false,
|
||||||
"w": 52,
|
"spriteSourceSize": { "x": 0, "y": 0, "w": 64, "h": 63 },
|
||||||
"h": 52
|
"sourceSize": { "w": 64, "h": 63 }
|
||||||
},
|
}
|
||||||
"scale": 1,
|
],
|
||||||
"frames": [
|
"meta": {
|
||||||
{
|
"app": "https://www.aseprite.org/",
|
||||||
"filename": "0001.png",
|
"version": "1.3.7-x64",
|
||||||
"rotated": false,
|
"format": "I8",
|
||||||
"trimmed": false,
|
"size": { "w": 64, "h": 63 },
|
||||||
"sourceSize": {
|
"scale": "1"
|
||||||
"w": 41,
|
}
|
||||||
"h": 52
|
|
||||||
},
|
|
||||||
"spriteSourceSize": {
|
|
||||||
"x": 0,
|
|
||||||
"y": 0,
|
|
||||||
"w": 41,
|
|
||||||
"h": 52
|
|
||||||
},
|
|
||||||
"frame": {
|
|
||||||
"x": 0,
|
|
||||||
"y": 0,
|
|
||||||
"w": 41,
|
|
||||||
"h": 52
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"meta": {
|
|
||||||
"app": "https://www.codeandweb.com/texturepacker",
|
|
||||||
"version": "3.0",
|
|
||||||
"smartupdate": "$TexturePacker:SmartUpdate:f328f72c414efc6cf463a1254afa75ac:50168e1a7077626f41bdaf5d0b35af74:176060351d0044923af938ba7932a6ef$"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 618 B After Width: | Height: | Size: 884 B |
@ -1,41 +1,19 @@
|
|||||||
{
|
{ "frames": [
|
||||||
"textures": [
|
{
|
||||||
{
|
"filename": "0001.png",
|
||||||
"image": "689.png",
|
"frame": { "x": 0, "y": 0, "w": 79, "h": 82 },
|
||||||
"format": "RGBA8888",
|
"rotated": false,
|
||||||
"size": {
|
"trimmed": false,
|
||||||
"w": 86,
|
"spriteSourceSize": { "x": 0, "y": 0, "w": 79, "h": 82 },
|
||||||
"h": 86
|
"sourceSize": { "w": 79, "h": 82 },
|
||||||
},
|
"duration": 100
|
||||||
"scale": 1,
|
}
|
||||||
"frames": [
|
],
|
||||||
{
|
"meta": {
|
||||||
"filename": "0001.png",
|
"app": "https://www.aseprite.org/",
|
||||||
"rotated": false,
|
"version": "1.3.7-x64",
|
||||||
"trimmed": false,
|
"format": "I8",
|
||||||
"sourceSize": {
|
"size": { "w": 79, "h": 82 },
|
||||||
"w": 86,
|
"scale": "1"
|
||||||
"h": 79
|
}
|
||||||
},
|
|
||||||
"spriteSourceSize": {
|
|
||||||
"x": 0,
|
|
||||||
"y": 0,
|
|
||||||
"w": 86,
|
|
||||||
"h": 79
|
|
||||||
},
|
|
||||||
"frame": {
|
|
||||||
"x": 0,
|
|
||||||
"y": 0,
|
|
||||||
"w": 86,
|
|
||||||
"h": 79
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"meta": {
|
|
||||||
"app": "https://www.codeandweb.com/texturepacker",
|
|
||||||
"version": "3.0",
|
|
||||||
"smartupdate": "$TexturePacker:SmartUpdate:1825183d2cc847c000400501e055918b:af535bb92b1490f3ab69be674b3b6fe0:bd0c58ecddcb4af9a0c6e7b39821d971$"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 851 B After Width: | Height: | Size: 954 B |
Before Width: | Height: | Size: 516 B After Width: | Height: | Size: 568 B |
Before Width: | Height: | Size: 594 B After Width: | Height: | Size: 636 B |
Before Width: | Height: | Size: 366 B After Width: | Height: | Size: 389 B |
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 2.4 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 753 B After Width: | Height: | Size: 780 B |