├── dist
└── assets
│ ├── image
│ ├── logo.png
│ ├── items.png
│ ├── title_bg.jpg
│ ├── play_button.png
│ ├── options_button.png
│ └── terrain_atlas.png
│ ├── sprite
│ ├── cat.png
│ ├── aaron.png
│ ├── anna.png
│ ├── daze.png
│ ├── eyeball.png
│ ├── characters.png
│ ├── WEAPON_rapier.png
│ ├── characters.json
│ └── daze.json
│ ├── audio
│ └── shuinvy-childhood.mp3
│ └── maps
│ ├── mappy.tmx
│ ├── untitled.json
│ └── mappy.json
├── src
├── Sprite.ts
├── CST.ts
├── CharacterSprite.ts
├── main.ts
└── scenes
│ ├── LoadScene.ts
│ ├── MenuScene.ts
│ └── PlayScene.ts
├── README.md
├── index.html
├── credits.txt
├── package.json
├── LICENSE
├── .gitignore
├── untitled.tmx
└── tsconfig.json
/dist/assets/image/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/image/logo.png
--------------------------------------------------------------------------------
/dist/assets/sprite/cat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/sprite/cat.png
--------------------------------------------------------------------------------
/dist/assets/image/items.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/image/items.png
--------------------------------------------------------------------------------
/dist/assets/sprite/aaron.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/sprite/aaron.png
--------------------------------------------------------------------------------
/dist/assets/sprite/anna.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/sprite/anna.png
--------------------------------------------------------------------------------
/dist/assets/sprite/daze.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/sprite/daze.png
--------------------------------------------------------------------------------
/dist/assets/image/title_bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/image/title_bg.jpg
--------------------------------------------------------------------------------
/dist/assets/sprite/eyeball.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/sprite/eyeball.png
--------------------------------------------------------------------------------
/dist/assets/image/play_button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/image/play_button.png
--------------------------------------------------------------------------------
/dist/assets/sprite/characters.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/sprite/characters.png
--------------------------------------------------------------------------------
/dist/assets/image/options_button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/image/options_button.png
--------------------------------------------------------------------------------
/dist/assets/image/terrain_atlas.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/image/terrain_atlas.png
--------------------------------------------------------------------------------
/dist/assets/sprite/WEAPON_rapier.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/sprite/WEAPON_rapier.png
--------------------------------------------------------------------------------
/dist/assets/audio/shuinvy-childhood.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jestarray/gate/HEAD/dist/assets/audio/shuinvy-childhood.mp3
--------------------------------------------------------------------------------
/src/Sprite.ts:
--------------------------------------------------------------------------------
1 | export class Sprite extends Phaser.GameObjects.Sprite {
2 |
3 | constructor(scene: Phaser.Scene, x: number, y: number, texture: string, frame?: number | string) {
4 | super(scene, x, y, texture, frame);
5 | scene.sys.updateList.add(this);
6 | scene.sys.displayList.add(this);
7 | }
8 | }
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # gate
2 | open source game made in phaser 3, html5 and typescript.
3 | Complimented by a [video tutorial series](https://www.youtube.com/watch?v=OS7neDUUhPE)
4 |
5 | # goals
6 | * cutscenes and dialouge system for story
7 | * touch on as many phaser3 features as possible
8 | * super easy way to contribute levels with tiled
9 | * multiplayer???
10 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Document
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/credits.txt:
--------------------------------------------------------------------------------
1 | Sound:
2 | https://freesound.org/people/Shuinvy/packs/14603/
3 |
4 | Sprites:
5 | http://untamed.wild-refuge.net/rmxpresources.php?characters
6 | https://opengameart.org/content/free-pixel-effects-pack
7 |
8 | LPC:
9 | https://opengameart.org/content/liberated-pixel-cup-0
10 | https://opengameart.org/content/lpc-heroine-2
11 | https://sanderfrenken.github.io/Universal-LPC-Spritesheet-Character-Generator/#
12 |
--------------------------------------------------------------------------------
/src/CST.ts:
--------------------------------------------------------------------------------
1 | export const CST = {
2 | SCENES: {
3 | LOAD: "LOAD",
4 | MENU: "MENU",
5 | PLAY: "PLAY"
6 | },
7 | IMAGE: {
8 | LOGO: "logo.png",
9 | OPTIONS: "options_button.png",
10 | PLAY: "play_button.png",
11 | TITLE: "title_bg.jpg"
12 | },
13 | AUDIO: {
14 | TITLE: "shuinvy-childhood.mp3"
15 | },
16 | SPRITE: {
17 | CAT: "cat.png"
18 | }
19 | }
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "gate",
3 | "version": "1.0.0",
4 | "description": "an open source game made with phaser 3",
5 | "main": "index.js",
6 | "directories": {
7 | "lib": "lib"
8 | },
9 | "scripts": {
10 | "test": "echo \"Error: no test specified\" && exit 1"
11 | },
12 | "author": "jestarray",
13 | "license": "MIT",
14 | "devDependencies": {
15 | "parcel-bundler": "^1.10.3",
16 | "typescript": "^3.1.4"
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/CharacterSprite.ts:
--------------------------------------------------------------------------------
1 | export class CharacterSprite extends Phaser.Physics.Arcade.Sprite {
2 | hp: number;
3 |
4 | constructor(scene: Phaser.Scene, x: number, y: number, texture: string, frame?: string | number) {
5 | super(scene, x, y, texture, frame);
6 |
7 | scene.sys.updateList.add(this);
8 | scene.sys.displayList.add(this);
9 | this.setScale(2);
10 | scene.physics.world.enableBody(this);
11 | this.setImmovable(true);
12 | this.hp = 10;
13 | }
14 | }
--------------------------------------------------------------------------------
/src/main.ts:
--------------------------------------------------------------------------------
1 | /** @type {import("../typings/phaser")} */
2 |
3 | import { LoadScene } from "./scenes/LoadScene";
4 | import { MenuScene } from "./scenes/MenuScene";
5 | import { PlayScene } from "./scenes/PlayScene";
6 | let game = new Phaser.Game({
7 | width: 800,
8 | height: 600,
9 | scene: [
10 | LoadScene, MenuScene, PlayScene
11 | ],
12 | render: {
13 | pixelArt: true
14 | },
15 | physics: {
16 | default: "arcade",
17 | arcade: {
18 | debug: true
19 | }
20 | },
21 | scale: {
22 | mode: Phaser.Scale.FIT,
23 | autoCenter: Phaser.Scale.CENTER_BOTH
24 | }
25 | });
--------------------------------------------------------------------------------
/dist/assets/sprite/characters.json:
--------------------------------------------------------------------------------
1 | {
2 | "frames": [
3 | {
4 | "filename": "hooded",
5 | "frame": {
6 | "x": 0,
7 | "y": 0,
8 | "w": 832,
9 | "h": 1344
10 | },
11 | "anchor": {
12 | "x": 0.5,
13 | "y": 0.5
14 | }
15 | },
16 | {
17 | "filename": "mandy",
18 | "frame": {
19 | "x": 0,
20 | "y": 1344,
21 | "w": 832,
22 | "h": 1344
23 | },
24 | "anchor": {
25 | "x": 0.5,
26 | "y": 0.5
27 | }
28 | }
29 | ],
30 | "meta": {
31 | "description": "Atlas generado con Atlas Packer Phaser3",
32 | "web": "https://gammafp.github.io/atlas-packer-phaser/"
33 | }
34 | }
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 jestarray
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /lib
2 | dist/*.js
3 | dist/*.map
4 | dist/*.html
5 | js-src
6 |
7 | .cache
8 |
9 | # Logs
10 | logs
11 | *.log
12 | npm-debug.log*
13 | yarn-debug.log*
14 | yarn-error.log*
15 |
16 | # Runtime data
17 | pids
18 | *.pid
19 | *.seed
20 | *.pid.lock
21 |
22 | # Directory for instrumented libs generated by jscoverage/JSCover
23 | lib-cov
24 |
25 | # Coverage directory used by tools like istanbul
26 | coverage
27 |
28 | # nyc test coverage
29 | .nyc_output
30 |
31 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
32 | .grunt
33 |
34 | # Bower dependency directory (https://bower.io/)
35 | bower_components
36 |
37 | # node-waf configuration
38 | .lock-wscript
39 |
40 | # Compiled binary addons (https://nodejs.org/api/addons.html)
41 | build/Release
42 |
43 | # Dependency directories
44 | node_modules/
45 | jspm_packages/
46 |
47 | # TypeScript v1 declaration files
48 | typings/
49 |
50 | # Optional npm cache directory
51 | .npm
52 |
53 | # Optional eslint cache
54 | .eslintcache
55 |
56 | # Optional REPL history
57 | .node_repl_history
58 |
59 | # Output of 'npm pack'
60 | *.tgz
61 |
62 | # Yarn Integrity file
63 | .yarn-integrity
64 |
65 | # dotenv environment variables file
66 | .env
67 |
68 | # next.js build output
69 | .next
70 |
--------------------------------------------------------------------------------
/src/scenes/LoadScene.ts:
--------------------------------------------------------------------------------
1 | import { CST } from "../CST";
2 | export class LoadScene extends Phaser.Scene {
3 | constructor() {
4 | super({
5 | key: CST.SCENES.LOAD
6 | })
7 | }
8 | init() {
9 |
10 | }
11 | loadImages() {
12 | this.load.setPath("./assets/image");
13 |
14 | for (let prop in CST.IMAGE) {
15 | //@ts-ignore
16 | this.load.image(CST.IMAGE[prop], CST.IMAGE[prop]);
17 | }
18 | }
19 | loadAudio() {
20 | this.load.setPath("./assets/audio");
21 |
22 | for (let prop in CST.AUDIO) {
23 | //@ts-ignore
24 | this.load.audio(CST.AUDIO[prop], CST.AUDIO[prop]);
25 | }
26 | }
27 | loadSprites(frameConfig?: Phaser.Loader.FileTypes.ImageFrameConfig) {
28 | this.load.setPath("./assets/sprite");
29 |
30 | for (let prop in CST.SPRITE) {
31 | //@ts-ignore
32 | this.load.spritesheet(CST.SPRITE[prop], CST.SPRITE[prop], frameConfig);
33 | }
34 | }
35 | preload() {
36 | this.load.spritesheet("anna", "./assets/sprite/anna.png", {frameHeight: 64, frameWidth: 64});
37 | //load atlases
38 | this.load.atlas("characters", "./assets/sprite/characters.png", "./assets/sprite/characters.json")
39 | this.load.atlas("daze", "./assets/sprite/daze.png", "./assets/sprite/daze.json")
40 | this.load.spritesheet("rapier", "./assets/sprite/WEAPON_rapier.png", {frameHeight: 192, frameWidth: 192});
41 |
42 | //load image, spritesheet, sound
43 | this.loadAudio();
44 | this.loadSprites({
45 | frameHeight: 32,
46 | frameWidth: 32
47 | });
48 | this.loadImages();
49 |
50 | //create loading bar
51 |
52 | let loadingBar = this.add.graphics({
53 | fillStyle: {
54 | color: 0xffffff //white
55 | }
56 | })
57 |
58 | /*
59 | Loader Events:
60 | complete - when done loading everything
61 | progress - loader number progress in decimal
62 | */
63 |
64 | //simulate large load
65 | /*
66 | for(let i = 0; i < 100; i++){
67 | this.load.spritesheet("cat" + i, "./assets/cat.png", {
68 | frameHeight: 32,
69 | frameWidth: 32
70 | });
71 | }*/
72 |
73 | this.load.on("progress", (percent: number) => {
74 | loadingBar.fillRect(this.game.renderer.width / 2, 0, 50, this.game.renderer.height * percent);
75 | console.log(percent);
76 | })
77 |
78 | this.load.on("complete", () => {
79 | //this.scene.start(CST.SCENES.MENU, "hello from LoadScene");
80 | });
81 |
82 | this.load.on("load", (file: Phaser.Loader.File) => {
83 | console.log(file.src)
84 | })
85 | }
86 | create() {
87 |
88 | this.scene.start(CST.SCENES.MENU);
89 | }
90 | }
--------------------------------------------------------------------------------
/src/scenes/MenuScene.ts:
--------------------------------------------------------------------------------
1 | import { CST } from "../CST";
2 | export class MenuScene extends Phaser.Scene {
3 | constructor() {
4 | super({
5 | key: CST.SCENES.MENU
6 | })
7 | }
8 | init() {
9 | }
10 | create() { //creating the menu screen
11 |
12 | //create images (z order)
13 |
14 | this.add.image(this.game.renderer.width / 2, this.game.renderer.height * 0.20, CST.IMAGE.LOGO).setDepth(1);
15 |
16 | this.add.image(0, 0, CST.IMAGE.TITLE).setOrigin(0).setDepth(0);
17 |
18 | let playButton = this.add.image(this.game.renderer.width / 2, this.game.renderer.height / 2, CST.IMAGE.PLAY).setDepth(1);
19 |
20 | let optionsButton = this.add.image(this.game.renderer.width / 2, this.game.renderer.height / 2 + 100, CST.IMAGE.OPTIONS).setDepth(1);
21 |
22 | //create sprites (if using pixel art, remove sharpen)
23 |
24 | let hoverSprite: Phaser.GameObjects.Sprite = this.add.sprite(100, 100, CST.SPRITE.CAT);
25 | hoverSprite.setScale(2);
26 | hoverSprite.setVisible(false);
27 |
28 | //create audio, disable pauseonblur
29 |
30 | this.sound.pauseOnBlur = false;
31 | //this.sound.play(CST.AUDIO.TITLE, {loop: true})
32 |
33 | //create animation
34 |
35 | this.anims.create({
36 | key: "walk",
37 | frameRate: 4,
38 | repeat: -1, //repeat forever,
39 | frames: this.anims.generateFrameNumbers(CST.SPRITE.CAT, {
40 | frames: [0, 1, 2, 3]
41 | })
42 | });
43 | //make image buttons interactive
44 |
45 | /*
46 | PointerEvents:
47 | pointerover - hovering
48 | pointerout - not hovering
49 | pointerup - click and release
50 | pointerdown - just click
51 | */
52 |
53 | playButton.setInteractive();
54 |
55 | playButton.on("pointerover", () => {
56 | hoverSprite.setVisible(true);
57 | hoverSprite.play("walk");
58 | hoverSprite.x = playButton.x - playButton.width;
59 | hoverSprite.y = playButton.y;
60 |
61 | })
62 |
63 | playButton.on("pointerout", () => {
64 | hoverSprite.setVisible(false);
65 | })
66 |
67 | playButton.on("pointerup", () => {
68 | this.scene.start(CST.SCENES.PLAY);
69 | })
70 |
71 | optionsButton.setInteractive();
72 |
73 | optionsButton.on("pointerover", () => {
74 | hoverSprite.setVisible(true);
75 | hoverSprite.play("walk");
76 | hoverSprite.x = optionsButton.x - optionsButton.width;
77 | hoverSprite.y = optionsButton.y;
78 |
79 | })
80 |
81 | optionsButton.on("pointerout", () => {
82 | hoverSprite.setVisible(false);
83 | })
84 |
85 | optionsButton.on("pointerup", () => {
86 | //this.scene.launch();
87 | })
88 |
89 | }
90 | }
--------------------------------------------------------------------------------
/untitled.tmx:
--------------------------------------------------------------------------------
1 |
2 |
80 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | /* Basic Options */
4 | "target": "ES2017", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */
5 | "module": "none", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */
6 | // "lib": [], /* Specify library files to be included in the compilation. */
7 | // "allowJs": true, /* Allow javascript files to be compiled. */
8 | // "checkJs": true, /* Report errors in .js files. */
9 | // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */
10 | // "declaration": true, /* Generates corresponding '.d.ts' file. */
11 | // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */
12 | // "sourceMap": true, /* Generates corresponding '.map' file. */
13 | // "outFile": "./", /* Concatenate and emit output to single file. */
14 | "outDir": "./js-src", /* Redirect output structure to the directory. */
15 | // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */
16 | // "composite": true, /* Enable project compilation */
17 | // "removeComments": true, /* Do not emit comments to output. */
18 | // "noEmit": true, /* Do not emit outputs. */
19 | // "importHelpers": true, /* Import emit helpers from 'tslib'. */
20 | // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */
21 | // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */
22 |
23 | /* Strict Type-Checking Options */
24 | "strict": true, /* Enable all strict type-checking options. */
25 | // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */
26 | // "strictNullChecks": true, /* Enable strict null checks. */
27 | // "strictFunctionTypes": true, /* Enable strict checking of function types. */
28 | // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
29 | // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */
30 | // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */
31 |
32 | /* Additional Checks */
33 | // "noUnusedLocals": true, /* Report errors on unused locals. */
34 | // "noUnusedParameters": true, /* Report errors on unused parameters. */
35 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */
36 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */
37 |
38 | /* Module Resolution Options */
39 | // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */
40 | // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */
41 | // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */
42 | // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */
43 | "typeRoots": ["./typings"], /* List of folders to include type definitions from. */
44 | // "types": [], /* Type declaration files to be included in compilation. */
45 | // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */
46 | "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */
47 | // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */
48 |
49 | /* Source Map Options */
50 | // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */
51 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
52 | // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */
53 | // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */
54 |
55 | /* Experimental Options */
56 | // "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */
57 | // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */
58 | }
59 | }
--------------------------------------------------------------------------------
/dist/assets/maps/mappy.tmx:
--------------------------------------------------------------------------------
1 |
2 |
106 |
--------------------------------------------------------------------------------
/dist/assets/maps/untitled.json:
--------------------------------------------------------------------------------
1 | { "height":20,
2 | "infinite":false,
3 | "layers":[
4 | {
5 | "data":[804, 375, 803, 375, 183, 375, 182, 804, 802, 802, 375, 803, 805, 803, 801, 804, 805, 802, 805, 182, 183, 184, 803, 375, 374, 374, 805, 375, 803, 804, 802, 803, 184, 182, 374, 184, 801, 803, 802, 801, 805, 375, 803, 375, 183, 804, 182, 801, 376, 803, 803, 184, 805, 184, 183, 183, 805, 376, 375, 803, 376, 805, 803, 803, 375, 374, 184, 801, 802, 184, 804, 184, 182, 804, 802, 804, 375, 375, 182, 803, 376, 376, 803, 375, 375, 183, 375, 802, 376, 184, 801, 374, 182, 375, 804, 805, 184, 182, 804, 801, 804, 805, 376, 804, 804, 184, 805, 804, 801, 374, 374, 375, 801, 802, 376, 804, 184, 805, 375, 803, 804, 801, 802, 374, 803, 803, 374, 184, 803, 376, 803, 182, 375, 182, 183, 805, 376, 184, 805, 801, 802, 805, 801, 183, 374, 805, 182, 375, 375, 182, 182, 376, 183, 184, 803, 376, 375, 182, 182, 184, 801, 801, 374, 182, 374, 183, 184, 804, 801, 182, 802, 184, 374, 183, 804, 805, 374, 375, 375, 804, 803, 802, 184, 803, 376, 184, 183, 183, 374, 183, 374, 805, 805, 804, 805, 184, 183, 801, 184, 376, 804, 805, 376, 374, 802, 374, 183, 801, 801, 804, 804, 802, 805, 801, 804, 802, 375, 801, 182, 184, 804, 804, 184, 375, 375, 803, 801, 182, 805, 184, 802, 376, 184, 182, 802, 375, 184, 376, 182, 374, 184, 804, 182, 376, 375, 375, 184, 801, 804, 375, 374, 184, 374, 374, 803, 802, 183, 183, 374, 184, 375, 375, 184, 804, 183, 804, 376, 184, 801, 802, 804, 804, 801, 182, 801, 374, 184, 183, 376, 803, 804, 182, 184, 802, 802, 801, 801, 802, 183, 802, 803, 802, 803, 374, 376, 802, 801, 804, 375, 183, 184, 376, 182, 802, 804, 801, 805, 803, 183, 183, 182, 183, 374, 375, 802, 802, 801, 805, 803, 801, 805, 184, 804, 183, 184, 374, 801, 183, 376, 803, 803, 182, 802, 374, 805, 805, 375, 802, 801, 801, 182, 184, 801, 374, 182, 804, 375, 803, 183, 802, 374, 804, 182, 803, 376, 375, 805, 183, 375, 804, 184, 182, 805, 376, 805, 804, 803, 184, 803, 805, 801, 804, 802, 376, 802, 803, 802, 375, 376, 805, 183, 801, 805, 183, 376, 801, 802, 374, 804, 804, 803, 182, 375, 805, 183, 183, 184, 804, 376, 802],
6 | "height":20,
7 | "id":1,
8 | "name":"bot",
9 | "opacity":1,
10 | "type":"tilelayer",
11 | "visible":true,
12 | "width":20,
13 | "x":0,
14 | "y":0
15 | },
16 | {
17 | "data":[397, 398, 31, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 429, 430, 63, 64, 0, 0, 0, 0, 1019, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 95, 96, 0, 0, 0, 0, 0, 0, 89, 90, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 128, 0, 0, 0, 0, 0, 0, 121, 122, 123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 159, 160, 0, 0, 0, 0, 0, 0, 153, 154, 155, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1019, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 249, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 272, 273, 274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 304, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 336, 337, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
18 | "height":20,
19 | "id":2,
20 | "name":"top",
21 | "opacity":1,
22 | "type":"tilelayer",
23 | "visible":true,
24 | "width":20,
25 | "x":0,
26 | "y":0
27 | },
28 | {
29 | "draworder":"topdown",
30 | "id":5,
31 | "name":"items",
32 | "objects":[
33 | {
34 | "gid":1114,
35 | "height":32,
36 | "id":12,
37 | "name":"",
38 | "rotation":0,
39 | "type":"",
40 | "visible":true,
41 | "width":32,
42 | "x":96,
43 | "y":320
44 | },
45 | {
46 | "gid":1114,
47 | "height":32,
48 | "id":13,
49 | "name":"",
50 | "rotation":0,
51 | "type":"",
52 | "visible":true,
53 | "width":32,
54 | "x":416,
55 | "y":224
56 | },
57 | {
58 | "gid":1114,
59 | "height":32,
60 | "id":14,
61 | "name":"",
62 | "rotation":0,
63 | "type":"",
64 | "visible":true,
65 | "width":32,
66 | "x":224,
67 | "y":128
68 | },
69 | {
70 | "gid":1114,
71 | "height":32,
72 | "id":15,
73 | "name":"",
74 | "rotation":0,
75 | "type":"",
76 | "visible":true,
77 | "width":32,
78 | "x":192,
79 | "y":480
80 | },
81 | {
82 | "gid":1114,
83 | "height":32,
84 | "id":17,
85 | "name":"",
86 | "rotation":0,
87 | "type":"",
88 | "visible":true,
89 | "width":32,
90 | "x":320,
91 | "y":224
92 | }],
93 | "opacity":1,
94 | "type":"objectgroup",
95 | "visible":true,
96 | "x":0,
97 | "y":0
98 | }],
99 | "nextlayerid":6,
100 | "nextobjectid":19,
101 | "orientation":"orthogonal",
102 | "renderorder":"right-down",
103 | "tiledversion":"1.2.2",
104 | "tileheight":32,
105 | "tilesets":[
106 | {
107 | "columns":32,
108 | "firstgid":1,
109 | "image":"..\/image\/terrain_atlas.png",
110 | "imageheight":1024,
111 | "imagewidth":1024,
112 | "margin":0,
113 | "name":"terrain_atlas",
114 | "spacing":0,
115 | "tilecount":1024,
116 | "tileheight":32,
117 | "tiles":[
118 | {
119 | "id":158,
120 | "properties":[
121 | {
122 | "name":"collides",
123 | "type":"bool",
124 | "value":true
125 | }]
126 | },
127 | {
128 | "id":159,
129 | "properties":[
130 | {
131 | "name":"collides",
132 | "type":"bool",
133 | "value":true
134 | }]
135 | },
136 | {
137 | "id":1018,
138 | "properties":[
139 | {
140 | "name":"msg",
141 | "type":"string",
142 | "value":"looks delicious"
143 | }]
144 | }],
145 | "tilewidth":32
146 | },
147 | {
148 | "columns":16,
149 | "firstgid":1025,
150 | "image":"..\/image\/items.png",
151 | "imageheight":512,
152 | "imagewidth":512,
153 | "margin":0,
154 | "name":"items",
155 | "spacing":0,
156 | "tilecount":256,
157 | "tileheight":32,
158 | "tilewidth":32
159 | }],
160 | "tilewidth":32,
161 | "type":"map",
162 | "version":1.2,
163 | "width":20
164 | }
--------------------------------------------------------------------------------
/src/scenes/PlayScene.ts:
--------------------------------------------------------------------------------
1 | import { CST } from "../CST";
2 | import { CharacterSprite } from "../CharacterSprite";
3 | import { Sprite } from "../Sprite";
4 |
5 | export class PlayScene extends Phaser.Scene {
6 | anna!: Phaser.Physics.Arcade.Sprite;
7 | hooded!: Phaser.Physics.Arcade.Sprite;
8 | keyboard!: { [index: string]: Phaser.Input.Keyboard.Key };
9 | assassins!: Phaser.Physics.Arcade.Group;
10 | fireAttacks!: Phaser.Physics.Arcade.Group;
11 | player!: Phaser.GameObjects.Container;
12 | constructor() {
13 | super({
14 | key: CST.SCENES.PLAY,
15 | });
16 | }
17 | preload() {
18 | this.anims.create({
19 | key: "left",
20 | frameRate: 10,
21 | frames: this.anims.generateFrameNumbers("anna", {
22 | start: 9,
23 | end: 17
24 | })
25 | });
26 | this.anims.create({
27 | key: "down",
28 | frameRate: 10,
29 | frames: this.anims.generateFrameNumbers("anna", {
30 | start: 18,
31 | end: 26
32 | })
33 | });
34 | this.anims.create({
35 | key: "up",
36 | frameRate: 10,
37 | frames: this.anims.generateFrameNumbers("anna", {
38 | start: 0,
39 | end: 8
40 | })
41 | });
42 | this.anims.create({
43 | key: "right",
44 | frameRate: 10,
45 | frames: this.anims.generateFrameNumbers("anna", {
46 | start: 27,
47 | end: 35
48 | })
49 | });
50 |
51 | this.anims.create({
52 | key: "blaze",
53 | duration: 50,
54 | frames: this.anims.generateFrameNames("daze", {
55 | prefix: "fire0",
56 | suffix: ".png",
57 | end: 55
58 | }),
59 | showOnStart: true,
60 | hideOnComplete: true
61 | });
62 | this.textures.addSpriteSheetFromAtlas("hooded", { frameHeight: 64, frameWidth: 64, atlas: "characters", frame: "hooded" })
63 | this.textures.addSpriteSheetFromAtlas("mandy", { frameHeight: 64, frameWidth: 64, atlas: "characters", frame: "mandy" });
64 |
65 | this.load.image("terrain", "./assets/image/terrain_atlas.png");
66 | this.load.image("items", "./assets/image/items.png");
67 |
68 | this.load.tilemapTiledJSON("mappy", "./assets/maps/mappy.json");
69 |
70 |
71 | this.anims.create({
72 | key: "mandyswordleft",
73 | frameRate: 5,
74 | frames: this.anims.generateFrameNumbers("mandy", {
75 | start: 169,
76 | end: 174
77 | })
78 | });
79 |
80 | this.anims.create({
81 | key: "sword_left",
82 | frameRate: 5,
83 | frames: this.anims.generateFrameNumbers("rapier", {
84 | start: 6,
85 | end: 11
86 | }),
87 | showOnStart: true,
88 | hideOnComplete: true
89 | });
90 |
91 | }
92 | create() {
93 | this.player = this.add.container(200, 200, [this.add.sprite(0, 0, "mandy", 26), this.add.sprite(0,0, "rapier").setVisible(false)]).setDepth(1).setScale(2);
94 | window.player = this.player;
95 |
96 | this.input.keyboard.on("keydown-F", ()=>{
97 | this.player.list[0].play("mandyswordleft");
98 | this.player.list[1].play("sword_left");
99 |
100 | })
101 |
102 | this.anna = new CharacterSprite(this, 400, 400, "anna", 26);
103 | this.hooded = this.physics.add.sprite(200, 200, "hooded", 26).setScale(2).setImmovable(true);
104 | this.fireAttacks = this.physics.add.group();
105 | this.assassins = this.physics.add.group({ immovable: true });
106 | this.assassins.add(this.hooded);
107 | //this.physics.add.existing() manual add
108 | window.hooded = this.hooded;
109 | window.anna = this.anna;
110 |
111 | //set smaller hitbox
112 | this.anna.setSize(40, 50).setOffset(10, 10);
113 | this.anna.setCollideWorldBounds(true);
114 | this.keyboard = this.input.keyboard.addKeys("W, A, S, D");
115 | this.input.on("pointermove", (pointer: Phaser.Input.Pointer) => {
116 | if (pointer.isDown) { //is clicking
117 | let fire = this.add.sprite(pointer.worldX, pointer.worldY, "daze", "fire00.png").play("blaze");
118 | this.fireAttacks.add(fire);
119 | fire.on("animationcomplete", () => {
120 | fire.destroy();
121 | })
122 | }
123 | });
124 |
125 | this.physics.world.addCollider(this.anna, this.assassins, (anna: CharacterSprite, hooded: Phaser.Physics.Arcade.Sprite) => {
126 | anna.hp--;
127 | if(anna.hp <= 0){
128 | anna.destroy();
129 | }
130 | hooded.destroy();
131 | });
132 |
133 | this.physics.world.addCollider(this.fireAttacks, this.assassins, (fireAttacks: Phaser.Physics.Arcade.Sprite, hooded: Phaser.Physics.Arcade.Sprite) => {
134 | fireAttacks.destroy();
135 | hooded.destroy();
136 |
137 | let x = 0;
138 | let y = 0;
139 | switch (Phaser.Math.Between(0, 1)) {
140 | case 0: x = Phaser.Math.Between(0, this.game.renderer.width);
141 | break;
142 | case 1: y = Phaser.Math.Between(0, this.game.renderer.height);
143 | }
144 | for (let i = 0; i < 2; i++) { //spawn 2
145 | this.assassins.add(this.physics.add.sprite(x, y, "hooded", 26).setScale(2).setImmovable(true));
146 | }
147 | });
148 |
149 | let mappy = this.add.tilemap("mappy");
150 |
151 | let terrain = mappy.addTilesetImage("terrain_atlas", "terrain");
152 | let itemset = mappy.addTilesetImage("items");
153 |
154 | //layers
155 | let botLayer = mappy.createStaticLayer("bot", [terrain], 0, 0).setDepth(-1);
156 | let topLayer = mappy.createStaticLayer("top", [terrain], 0, 0);
157 |
158 | //map collisions
159 | this.physics.add.collider(this.anna, topLayer);
160 | //by tile property
161 | topLayer.setCollisionByProperty({collides:true});
162 |
163 | //by tile index
164 | topLayer.setCollision([269,270,271,301,302,303,333,334,335])
165 |
166 | //map events
167 | //by location
168 | topLayer.setTileLocationCallback(10, 8, 1, 1, ()=>{
169 | alert("the sword calls to you!!!!");
170 |
171 | //@ts-ignore
172 | topLayer.setTileLocationCallback(10, 8, 1, 1, null)
173 | });
174 |
175 | //by index
176 | topLayer.setTileIndexCallback([272,273,274, 304,305,306, 336,337,338], ()=>{
177 | console.log("STOP STEPPING ON LAVA >:(")
178 | });
179 |
180 | //INTERACTIVE ITEMS FROM OBJECT LAYER
181 | let items = mappy.createFromObjects("pickup", 1114, {key: CST.SPRITE.CAT}).map((sprite: Phaser.GameObjects.Sprite)=>{
182 | sprite.setScale(2);
183 | sprite.setInteractive();
184 | });
185 |
186 | this.input.on("gameobjectdown", (pointer: Phaser.Input.Pointer, obj: Phaser.GameObjects.Sprite)=> {
187 | obj.destroy();
188 | });
189 |
190 | this.input.on("pointerdown", (pointer: Phaser.Input.Pointer)=>{
191 |
192 | //pixel position to tile position
193 | let tile = mappy.getTileAt(mappy.worldToTileX(pointer.x), mappy.worldToTileY(pointer.y));
194 |
195 | if(tile){
196 | console.log(tile);
197 | }
198 | });
199 |
200 | this.cameras.main.startFollow(this.anna);
201 | this.physics.world.setBounds(0,0, mappy.widthInPixels, mappy.heightInPixels);
202 |
203 | //draw debug render hitboxes
204 |
205 | topLayer.renderDebug(this.add.graphics(),{
206 | tileColor: null, //non-colliding tiles
207 | collidingTileColor: new Phaser.Display.Color(243, 134, 48, 200), // Colliding tiles,
208 | faceColor: new Phaser.Display.Color(40, 39, 37, 255) // Colliding face edges
209 | })
210 | }
211 | update(time: number, delta: number) { //delta 16.666 @ 60fps
212 |
213 | for (let i = 0; i < this.assassins.getChildren().length; i++) {
214 | this.physics.accelerateToObject(this.assassins.getChildren()[i], this.anna);
215 |
216 | }
217 |
218 | if (this.anna.active === true) {
219 | if (this.keyboard.D.isDown === true) {
220 | this.anna.setVelocityX(128);
221 |
222 | }
223 |
224 | if (this.keyboard.W.isDown === true) {
225 | this.anna.setVelocityY(-128);
226 | }
227 |
228 | if (this.keyboard.S.isDown === true) {
229 | this.anna.setVelocityY(128);
230 | }
231 |
232 | if (this.keyboard.A.isDown === true) {
233 | this.anna.setVelocityX(-128);
234 | }
235 | if (this.keyboard.A.isUp && this.keyboard.D.isUp) { //not moving on X axis
236 | this.anna.setVelocityX(0);
237 | }
238 | if (this.keyboard.W.isUp && this.keyboard.S.isUp) { //not pressing y movement
239 | this.anna.setVelocityY(0);
240 | }
241 |
242 | if (this.anna.body.velocity.x > 0) { //moving right
243 | this.anna.play("right", true);
244 | } else if (this.anna.body.velocity.x < 0) { //moving left
245 | this.anna.anims.playReverse("left", true);
246 | } else if (this.anna.body.velocity.y < 0) { //moving up
247 | this.anna.play("up", true);
248 | } else if (this.anna.body.velocity.y > 0) { //moving down
249 | this.anna.play("down", true);
250 | }
251 | }
252 |
253 | }
254 | }
--------------------------------------------------------------------------------
/dist/assets/maps/mappy.json:
--------------------------------------------------------------------------------
1 | { "height":30,
2 | "infinite":false,
3 | "layers":[
4 | {
5 | "data":[376, 183, 374, 802, 801, 183, 182, 184, 802, 374, 374, 183, 119, 183, 183, 805, 376, 801, 374, 805, 375, 182, 376, 374, 804, 183, 801, 119, 184, 182, 802, 805, 183, 374, 182, 183, 804, 804, 802, 184, 804, 376, 803, 376, 801, 805, 376, 803, 119, 803, 804, 119, 375, 375, 805, 376, 183, 119, 805, 802, 804, 802, 376, 182, 374, 182, 183, 804, 376, 183, 803, 183, 184, 183, 376, 376, 375, 801, 375, 803, 804, 183, 184, 183, 803, 803, 803, 375, 119, 802, 374, 802, 803, 803, 805, 376, 182, 183, 802, 375, 804, 801, 801, 803, 376, 804, 803, 183, 375, 376, 183, 184, 805, 801, 802, 802, 804, 182, 182, 374, 804, 375, 801, 119, 374, 375, 805, 805, 375, 801, 375, 374, 376, 119, 183, 804, 803, 802, 804, 376, 375, 374, 182, 801, 801, 183, 119, 803, 802, 805, 119, 803, 376, 375, 376, 804, 183, 803, 804, 183, 376, 182, 119, 376, 804, 182, 801, 802, 374, 802, 374, 803, 182, 182, 802, 375, 801, 182, 803, 376, 182, 801, 374, 376, 374, 803, 376, 376, 801, 801, 374, 183, 119, 803, 184, 182, 801, 183, 183, 374, 376, 375, 183, 375, 119, 805, 119, 183, 375, 374, 374, 374, 375, 374, 803, 804, 802, 376, 801, 805, 182, 375, 805, 182, 805, 801, 374, 119, 802, 802, 119, 375, 802, 374, 805, 805, 119, 182, 802, 182, 804, 374, 184, 183, 182, 376, 376, 802, 374, 0, 804, 803, 804, 804, 376, 805, 374, 804, 184, 184, 376, 182, 119, 802, 804, 805, 802, 182, 805, 182, 801, 803, 184, 804, 183, 804, 804, 119, 376, 374, 802, 804, 183, 183, 184, 184, 184, 803, 182, 375, 376, 376, 803, 374, 182, 375, 374, 801, 374, 376, 803, 802, 184, 801, 182, 374, 183, 375, 376, 184, 375, 374, 374, 375, 375, 802, 184, 184, 805, 804, 801, 804, 182, 119, 804, 183, 802, 119, 183, 183, 803, 183, 804, 182, 804, 803, 803, 182, 374, 804, 803, 805, 376, 183, 802, 183, 805, 803, 119, 375, 184, 805, 374, 804, 376, 182, 183, 801, 803, 805, 802, 803, 119, 801, 804, 376, 184, 182, 119, 802, 803, 184, 183, 801, 183, 376, 119, 805, 374, 374, 803, 184, 801, 119, 376, 804, 184, 374, 801, 801, 802, 376, 183, 374, 802, 804, 374, 805, 182, 374, 802, 802, 802, 119, 803, 374, 805, 376, 803, 803, 119, 802, 119, 376, 804, 184, 183, 376, 119, 801, 184, 182, 802, 376, 803, 374, 801, 183, 805, 374, 374, 375, 182, 374, 375, 802, 376, 374, 183, 801, 376, 182, 804, 804, 184, 375, 376, 182, 183, 375, 803, 805, 119, 183, 119, 183, 804, 801, 375, 375, 184, 182, 184, 804, 183, 376, 182, 375, 119, 376, 801, 376, 801, 375, 805, 184, 184, 183, 803, 803, 804, 802, 119, 802, 184, 802, 375, 182, 805, 376, 805, 802, 803, 803, 183, 183, 804, 801, 375, 182, 119, 805, 376, 805, 184, 119, 183, 375, 375, 805, 805, 183, 803, 376, 184, 801, 374, 805, 803, 804, 802, 182, 119, 183, 375, 375, 376, 183, 375, 802, 375, 803, 375, 182, 802, 805, 182, 119, 182, 802, 802, 184, 801, 803, 119, 184, 805, 376, 375, 376, 375, 803, 802, 183, 804, 804, 183, 802, 804, 184, 804, 376, 183, 374, 804, 376, 802, 801, 802, 182, 374, 804, 801, 802, 801, 374, 802, 376, 119, 183, 805, 183, 375, 184, 119, 119, 119, 183, 803, 801, 374, 803, 805, 801, 375, 805, 376, 801, 805, 182, 802, 376, 804, 183, 184, 374, 182, 183, 803, 805, 801, 376, 804, 375, 376, 374, 182, 119, 119, 804, 184, 374, 374, 183, 805, 376, 375, 375, 183, 804, 805, 804, 801, 182, 374, 183, 119, 801, 374, 375, 182, 801, 374, 375, 184, 804, 802, 804, 805, 182, 183, 801, 804, 374, 375, 375, 184, 184, 182, 804, 183, 804, 804, 801, 801, 805, 183, 374, 119, 182, 375, 375, 805, 119, 805, 182, 182, 182, 375, 375, 803, 804, 374, 119, 374, 119, 804, 119, 803, 802, 805, 801, 375, 802, 184, 801, 803, 804, 119, 374, 803, 374, 804, 803, 804, 803, 375, 804, 804, 375, 801, 183, 376, 805, 804, 803, 805, 184, 803, 374, 376, 804, 803, 183, 802, 376, 182, 803, 802, 801, 182, 374, 119, 801, 376, 801, 804, 805, 805, 374, 803, 376, 805, 182, 376, 376, 802, 801, 801, 801, 375, 374, 802, 801, 183, 374, 183, 801, 183, 119, 119, 184, 802, 801, 805, 375, 374, 805, 803, 802, 376, 804, 802, 182, 805, 183, 805, 375, 119, 182, 183, 803, 119, 802, 804, 374, 183, 805, 801, 182, 119, 375, 375, 802, 119, 803, 376, 801, 376, 182, 802, 802, 182, 376, 119, 375, 375, 182, 119, 184, 184, 374, 802, 376, 375, 802, 119, 804, 801, 375, 183, 805, 374, 119, 375, 802, 182, 119, 184, 182, 802, 374, 119, 182, 801, 805, 804, 805, 119, 183, 803, 375, 184, 182, 375, 375, 801, 376, 376, 184, 374, 803, 119, 184, 119, 801, 375, 801, 804, 119, 375, 119, 801, 805, 119, 375, 183, 802, 802, 804, 803, 184, 801, 805, 803, 805, 182, 119, 182, 183, 376, 184, 182, 183, 374, 119, 375, 801, 182, 374, 803, 802, 183, 804, 801, 182, 803, 801, 802, 119],
6 | "height":30,
7 | "id":7,
8 | "name":"bot",
9 | "opacity":1,
10 | "type":"tilelayer",
11 | "visible":true,
12 | "width":30,
13 | "x":0,
14 | "y":0
15 | },
16 | {
17 | "data":[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1019, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 699, 700, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 272, 273, 274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 731, 732, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 304, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 336, 337, 338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 217, 0, 0, 0, 0, 0, 0, 31, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 249, 0, 0, 0, 0, 0, 0, 63, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 95, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 127, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 159, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 269, 270, 271, 0, 0, 0, 0, 0, 0, 0, 0, 1116, 0, 0, 0, 0, 522, 523, 524, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 302, 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 554, 555, 556, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333, 334, 335, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 586, 587, 588, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 618, 619, 620, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 699, 700, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 731, 732, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
18 | "height":30,
19 | "id":6,
20 | "name":"top",
21 | "opacity":1,
22 | "type":"tilelayer",
23 | "visible":true,
24 | "width":30,
25 | "x":0,
26 | "y":0
27 | },
28 | {
29 | "draworder":"topdown",
30 | "id":9,
31 | "name":"pickup",
32 | "objects":[
33 | {
34 | "gid":1114,
35 | "height":32,
36 | "id":4,
37 | "name":"",
38 | "rotation":0,
39 | "type":"",
40 | "visible":true,
41 | "width":32,
42 | "x":288,
43 | "y":256
44 | },
45 | {
46 | "gid":1114,
47 | "height":32,
48 | "id":5,
49 | "name":"",
50 | "rotation":0,
51 | "type":"",
52 | "visible":true,
53 | "width":32,
54 | "x":96,
55 | "y":384
56 | },
57 | {
58 | "gid":1114,
59 | "height":32,
60 | "id":6,
61 | "name":"",
62 | "rotation":0,
63 | "type":"",
64 | "visible":true,
65 | "width":32,
66 | "x":384,
67 | "y":160
68 | },
69 | {
70 | "gid":1114,
71 | "height":32,
72 | "id":7,
73 | "name":"",
74 | "rotation":0,
75 | "type":"",
76 | "visible":true,
77 | "width":32,
78 | "x":96,
79 | "y":224
80 | },
81 | {
82 | "gid":1114,
83 | "height":32,
84 | "id":8,
85 | "name":"",
86 | "rotation":0,
87 | "type":"",
88 | "visible":true,
89 | "width":32,
90 | "x":320,
91 | "y":480
92 | },
93 | {
94 | "gid":1114,
95 | "height":32,
96 | "id":9,
97 | "name":"",
98 | "rotation":0,
99 | "type":"",
100 | "visible":true,
101 | "width":32,
102 | "x":608,
103 | "y":288
104 | }],
105 | "opacity":1,
106 | "type":"objectgroup",
107 | "visible":true,
108 | "x":0,
109 | "y":0
110 | }],
111 | "nextlayerid":10,
112 | "nextobjectid":11,
113 | "orientation":"orthogonal",
114 | "renderorder":"right-down",
115 | "tiledversion":"1.2.2",
116 | "tileheight":32,
117 | "tilesets":[
118 | {
119 | "columns":32,
120 | "firstgid":1,
121 | "image":"D:\/gate\/dist\/assets\/image\/terrain_atlas.png",
122 | "imageheight":1024,
123 | "imagewidth":1024,
124 | "margin":0,
125 | "name":"terrain_atlas",
126 | "spacing":0,
127 | "tilecount":1024,
128 | "tileheight":32,
129 | "tiles":[
130 | {
131 | "id":158,
132 | "properties":[
133 | {
134 | "name":"collides",
135 | "type":"bool",
136 | "value":true
137 | }]
138 | },
139 | {
140 | "id":159,
141 | "properties":[
142 | {
143 | "name":"collides",
144 | "type":"bool",
145 | "value":true
146 | }]
147 | },
148 | {
149 | "id":698,
150 | "properties":[
151 | {
152 | "name":"collides",
153 | "type":"bool",
154 | "value":true
155 | }]
156 | },
157 | {
158 | "id":699,
159 | "properties":[
160 | {
161 | "name":"collides",
162 | "type":"bool",
163 | "value":true
164 | }]
165 | },
166 | {
167 | "id":730,
168 | "properties":[
169 | {
170 | "name":"collides",
171 | "type":"bool",
172 | "value":true
173 | }]
174 | },
175 | {
176 | "id":731,
177 | "properties":[
178 | {
179 | "name":"collides",
180 | "type":"bool",
181 | "value":true
182 | }]
183 | },
184 | {
185 | "id":1018,
186 | "properties":[
187 | {
188 | "name":"msg",
189 | "type":"string",
190 | "value":"looks delicious"
191 | }]
192 | }],
193 | "tilewidth":32
194 | },
195 | {
196 | "columns":16,
197 | "firstgid":1025,
198 | "image":"D:\/gate\/dist\/assets\/image\/items.png",
199 | "imageheight":512,
200 | "imagewidth":512,
201 | "margin":0,
202 | "name":"items",
203 | "spacing":0,
204 | "tilecount":256,
205 | "tileheight":32,
206 | "tilewidth":32
207 | }],
208 | "tilewidth":32,
209 | "type":"map",
210 | "version":1.2,
211 | "width":30
212 | }
--------------------------------------------------------------------------------
/dist/assets/sprite/daze.json:
--------------------------------------------------------------------------------
1 | {
2 | "textures": [
3 | {
4 | "image": "daze.png",
5 | "format": "RGBA8888",
6 | "size": {
7 | "w": 64,
8 | "h": 1556
9 | },
10 | "scale": 1,
11 | "frames": [
12 | {
13 | "filename": "fire053.png",
14 | "rotated": false,
15 | "trimmed": true,
16 | "sourceSize": {
17 | "w": 100,
18 | "h": 100
19 | },
20 | "spriteSourceSize": {
21 | "x": 39,
22 | "y": 26,
23 | "w": 26,
24 | "h": 52
25 | },
26 | "frame": {
27 | "x": 0,
28 | "y": 0,
29 | "w": 26,
30 | "h": 52
31 | }
32 | },
33 | {
34 | "filename": "fire054.png",
35 | "rotated": false,
36 | "trimmed": true,
37 | "sourceSize": {
38 | "w": 100,
39 | "h": 100
40 | },
41 | "spriteSourceSize": {
42 | "x": 39,
43 | "y": 26,
44 | "w": 26,
45 | "h": 52
46 | },
47 | "frame": {
48 | "x": 26,
49 | "y": 0,
50 | "w": 26,
51 | "h": 52
52 | }
53 | },
54 | {
55 | "filename": "daze037.png",
56 | "rotated": false,
57 | "trimmed": true,
58 | "sourceSize": {
59 | "w": 100,
60 | "h": 100
61 | },
62 | "spriteSourceSize": {
63 | "x": 45,
64 | "y": 25,
65 | "w": 12,
66 | "h": 23
67 | },
68 | "frame": {
69 | "x": 52,
70 | "y": 0,
71 | "w": 12,
72 | "h": 23
73 | }
74 | },
75 | {
76 | "filename": "daze03.png",
77 | "rotated": false,
78 | "trimmed": true,
79 | "sourceSize": {
80 | "w": 100,
81 | "h": 100
82 | },
83 | "spriteSourceSize": {
84 | "x": 43,
85 | "y": 67,
86 | "w": 11,
87 | "h": 15
88 | },
89 | "frame": {
90 | "x": 52,
91 | "y": 23,
92 | "w": 11,
93 | "h": 15
94 | }
95 | },
96 | {
97 | "filename": "daze02.png",
98 | "rotated": false,
99 | "trimmed": true,
100 | "sourceSize": {
101 | "w": 100,
102 | "h": 100
103 | },
104 | "spriteSourceSize": {
105 | "x": 43,
106 | "y": 68,
107 | "w": 11,
108 | "h": 14
109 | },
110 | "frame": {
111 | "x": 52,
112 | "y": 38,
113 | "w": 11,
114 | "h": 14
115 | }
116 | },
117 | {
118 | "filename": "fire055.png",
119 | "rotated": false,
120 | "trimmed": true,
121 | "sourceSize": {
122 | "w": 100,
123 | "h": 100
124 | },
125 | "spriteSourceSize": {
126 | "x": 39,
127 | "y": 28,
128 | "w": 26,
129 | "h": 50
130 | },
131 | "frame": {
132 | "x": 0,
133 | "y": 52,
134 | "w": 26,
135 | "h": 50
136 | }
137 | },
138 | {
139 | "filename": "fire020.png",
140 | "rotated": false,
141 | "trimmed": true,
142 | "sourceSize": {
143 | "w": 100,
144 | "h": 100
145 | },
146 | "spriteSourceSize": {
147 | "x": 41,
148 | "y": 27,
149 | "w": 25,
150 | "h": 52
151 | },
152 | "frame": {
153 | "x": 26,
154 | "y": 52,
155 | "w": 25,
156 | "h": 52
157 | }
158 | },
159 | {
160 | "filename": "daze07.png",
161 | "rotated": false,
162 | "trimmed": true,
163 | "sourceSize": {
164 | "w": 100,
165 | "h": 100
166 | },
167 | "spriteSourceSize": {
168 | "x": 42,
169 | "y": 61,
170 | "w": 13,
171 | "h": 21
172 | },
173 | "frame": {
174 | "x": 51,
175 | "y": 52,
176 | "w": 13,
177 | "h": 21
178 | }
179 | },
180 | {
181 | "filename": "daze06.png",
182 | "rotated": false,
183 | "trimmed": true,
184 | "sourceSize": {
185 | "w": 100,
186 | "h": 100
187 | },
188 | "spriteSourceSize": {
189 | "x": 42,
190 | "y": 63,
191 | "w": 13,
192 | "h": 19
193 | },
194 | "frame": {
195 | "x": 51,
196 | "y": 73,
197 | "w": 13,
198 | "h": 19
199 | }
200 | },
201 | {
202 | "filename": "daze05.png",
203 | "rotated": false,
204 | "trimmed": true,
205 | "sourceSize": {
206 | "w": 100,
207 | "h": 100
208 | },
209 | "spriteSourceSize": {
210 | "x": 42,
211 | "y": 65,
212 | "w": 13,
213 | "h": 17
214 | },
215 | "frame": {
216 | "x": 51,
217 | "y": 92,
218 | "w": 13,
219 | "h": 17
220 | }
221 | },
222 | {
223 | "filename": "fire022.png",
224 | "rotated": false,
225 | "trimmed": true,
226 | "sourceSize": {
227 | "w": 100,
228 | "h": 100
229 | },
230 | "spriteSourceSize": {
231 | "x": 41,
232 | "y": 27,
233 | "w": 25,
234 | "h": 51
235 | },
236 | "frame": {
237 | "x": 0,
238 | "y": 102,
239 | "w": 25,
240 | "h": 51
241 | }
242 | },
243 | {
244 | "filename": "fire024.png",
245 | "rotated": false,
246 | "trimmed": true,
247 | "sourceSize": {
248 | "w": 100,
249 | "h": 100
250 | },
251 | "spriteSourceSize": {
252 | "x": 41,
253 | "y": 27,
254 | "w": 25,
255 | "h": 51
256 | },
257 | "frame": {
258 | "x": 25,
259 | "y": 104,
260 | "w": 25,
261 | "h": 51
262 | }
263 | },
264 | {
265 | "filename": "fire025.png",
266 | "rotated": false,
267 | "trimmed": true,
268 | "sourceSize": {
269 | "w": 100,
270 | "h": 100
271 | },
272 | "spriteSourceSize": {
273 | "x": 41,
274 | "y": 27,
275 | "w": 25,
276 | "h": 51
277 | },
278 | "frame": {
279 | "x": 0,
280 | "y": 153,
281 | "w": 25,
282 | "h": 51
283 | }
284 | },
285 | {
286 | "filename": "daze08.png",
287 | "rotated": false,
288 | "trimmed": true,
289 | "sourceSize": {
290 | "w": 100,
291 | "h": 100
292 | },
293 | "spriteSourceSize": {
294 | "x": 41,
295 | "y": 60,
296 | "w": 14,
297 | "h": 22
298 | },
299 | "frame": {
300 | "x": 50,
301 | "y": 109,
302 | "w": 14,
303 | "h": 22
304 | }
305 | },
306 | {
307 | "filename": "daze04.png",
308 | "rotated": false,
309 | "trimmed": true,
310 | "sourceSize": {
311 | "w": 100,
312 | "h": 100
313 | },
314 | "spriteSourceSize": {
315 | "x": 42,
316 | "y": 66,
317 | "w": 13,
318 | "h": 16
319 | },
320 | "frame": {
321 | "x": 50,
322 | "y": 131,
323 | "w": 13,
324 | "h": 16
325 | }
326 | },
327 | {
328 | "filename": "daze039.png",
329 | "rotated": false,
330 | "trimmed": true,
331 | "sourceSize": {
332 | "w": 100,
333 | "h": 100
334 | },
335 | "spriteSourceSize": {
336 | "x": 46,
337 | "y": 28,
338 | "w": 11,
339 | "h": 11
340 | },
341 | "frame": {
342 | "x": 50,
343 | "y": 147,
344 | "w": 11,
345 | "h": 11
346 | }
347 | },
348 | {
349 | "filename": "fire051.png",
350 | "rotated": false,
351 | "trimmed": true,
352 | "sourceSize": {
353 | "w": 100,
354 | "h": 100
355 | },
356 | "spriteSourceSize": {
357 | "x": 40,
358 | "y": 27,
359 | "w": 25,
360 | "h": 51
361 | },
362 | "frame": {
363 | "x": 25,
364 | "y": 155,
365 | "w": 25,
366 | "h": 51
367 | }
368 | },
369 | {
370 | "filename": "fire056.png",
371 | "rotated": false,
372 | "trimmed": true,
373 | "sourceSize": {
374 | "w": 100,
375 | "h": 100
376 | },
377 | "spriteSourceSize": {
378 | "x": 40,
379 | "y": 27,
380 | "w": 25,
381 | "h": 51
382 | },
383 | "frame": {
384 | "x": 0,
385 | "y": 204,
386 | "w": 25,
387 | "h": 51
388 | }
389 | },
390 | {
391 | "filename": "daze00.png",
392 | "rotated": false,
393 | "trimmed": true,
394 | "sourceSize": {
395 | "w": 100,
396 | "h": 100
397 | },
398 | "spriteSourceSize": {
399 | "x": 0,
400 | "y": 0,
401 | "w": 3,
402 | "h": 3
403 | },
404 | "frame": {
405 | "x": 61,
406 | "y": 147,
407 | "w": 3,
408 | "h": 3
409 | }
410 | },
411 | {
412 | "filename": "daze041.png",
413 | "rotated": false,
414 | "trimmed": true,
415 | "sourceSize": {
416 | "w": 100,
417 | "h": 100
418 | },
419 | "spriteSourceSize": {
420 | "x": 0,
421 | "y": 0,
422 | "w": 3,
423 | "h": 3
424 | },
425 | "frame": {
426 | "x": 61,
427 | "y": 147,
428 | "w": 3,
429 | "h": 3
430 | }
431 | },
432 | {
433 | "filename": "fire061.png",
434 | "rotated": false,
435 | "trimmed": true,
436 | "sourceSize": {
437 | "w": 100,
438 | "h": 100
439 | },
440 | "spriteSourceSize": {
441 | "x": 0,
442 | "y": 0,
443 | "w": 3,
444 | "h": 3
445 | },
446 | "frame": {
447 | "x": 61,
448 | "y": 147,
449 | "w": 3,
450 | "h": 3
451 | }
452 | },
453 | {
454 | "filename": "fire062.png",
455 | "rotated": false,
456 | "trimmed": true,
457 | "sourceSize": {
458 | "w": 100,
459 | "h": 100
460 | },
461 | "spriteSourceSize": {
462 | "x": 0,
463 | "y": 0,
464 | "w": 3,
465 | "h": 3
466 | },
467 | "frame": {
468 | "x": 61,
469 | "y": 147,
470 | "w": 3,
471 | "h": 3
472 | }
473 | },
474 | {
475 | "filename": "fire063.png",
476 | "rotated": false,
477 | "trimmed": true,
478 | "sourceSize": {
479 | "w": 100,
480 | "h": 100
481 | },
482 | "spriteSourceSize": {
483 | "x": 0,
484 | "y": 0,
485 | "w": 3,
486 | "h": 3
487 | },
488 | "frame": {
489 | "x": 61,
490 | "y": 147,
491 | "w": 3,
492 | "h": 3
493 | }
494 | },
495 | {
496 | "filename": "daze01.png",
497 | "rotated": false,
498 | "trimmed": true,
499 | "sourceSize": {
500 | "w": 100,
501 | "h": 100
502 | },
503 | "spriteSourceSize": {
504 | "x": 44,
505 | "y": 69,
506 | "w": 10,
507 | "h": 12
508 | },
509 | "frame": {
510 | "x": 50,
511 | "y": 158,
512 | "w": 10,
513 | "h": 12
514 | }
515 | },
516 | {
517 | "filename": "daze038.png",
518 | "rotated": false,
519 | "trimmed": true,
520 | "sourceSize": {
521 | "w": 100,
522 | "h": 100
523 | },
524 | "spriteSourceSize": {
525 | "x": 47,
526 | "y": 33,
527 | "w": 10,
528 | "h": 11
529 | },
530 | "frame": {
531 | "x": 50,
532 | "y": 170,
533 | "w": 10,
534 | "h": 11
535 | }
536 | },
537 | {
538 | "filename": "daze040.png",
539 | "rotated": false,
540 | "trimmed": true,
541 | "sourceSize": {
542 | "w": 100,
543 | "h": 100
544 | },
545 | "spriteSourceSize": {
546 | "x": 51,
547 | "y": 26,
548 | "w": 6,
549 | "h": 10
550 | },
551 | "frame": {
552 | "x": 50,
553 | "y": 181,
554 | "w": 6,
555 | "h": 10
556 | }
557 | },
558 | {
559 | "filename": "fire057.png",
560 | "rotated": false,
561 | "trimmed": true,
562 | "sourceSize": {
563 | "w": 100,
564 | "h": 100
565 | },
566 | "spriteSourceSize": {
567 | "x": 40,
568 | "y": 27,
569 | "w": 25,
570 | "h": 51
571 | },
572 | "frame": {
573 | "x": 25,
574 | "y": 206,
575 | "w": 25,
576 | "h": 51
577 | }
578 | },
579 | {
580 | "filename": "fire058.png",
581 | "rotated": false,
582 | "trimmed": true,
583 | "sourceSize": {
584 | "w": 100,
585 | "h": 100
586 | },
587 | "spriteSourceSize": {
588 | "x": 40,
589 | "y": 27,
590 | "w": 25,
591 | "h": 51
592 | },
593 | "frame": {
594 | "x": 0,
595 | "y": 255,
596 | "w": 25,
597 | "h": 51
598 | }
599 | },
600 | {
601 | "filename": "fire021.png",
602 | "rotated": false,
603 | "trimmed": true,
604 | "sourceSize": {
605 | "w": 100,
606 | "h": 100
607 | },
608 | "spriteSourceSize": {
609 | "x": 41,
610 | "y": 28,
611 | "w": 25,
612 | "h": 50
613 | },
614 | "frame": {
615 | "x": 25,
616 | "y": 257,
617 | "w": 25,
618 | "h": 50
619 | }
620 | },
621 | {
622 | "filename": "fire023.png",
623 | "rotated": false,
624 | "trimmed": true,
625 | "sourceSize": {
626 | "w": 100,
627 | "h": 100
628 | },
629 | "spriteSourceSize": {
630 | "x": 41,
631 | "y": 28,
632 | "w": 25,
633 | "h": 50
634 | },
635 | "frame": {
636 | "x": 0,
637 | "y": 306,
638 | "w": 25,
639 | "h": 50
640 | }
641 | },
642 | {
643 | "filename": "fire050.png",
644 | "rotated": false,
645 | "trimmed": true,
646 | "sourceSize": {
647 | "w": 100,
648 | "h": 100
649 | },
650 | "spriteSourceSize": {
651 | "x": 40,
652 | "y": 28,
653 | "w": 25,
654 | "h": 50
655 | },
656 | "frame": {
657 | "x": 25,
658 | "y": 307,
659 | "w": 25,
660 | "h": 50
661 | }
662 | },
663 | {
664 | "filename": "fire018.png",
665 | "rotated": false,
666 | "trimmed": true,
667 | "sourceSize": {
668 | "w": 100,
669 | "h": 100
670 | },
671 | "spriteSourceSize": {
672 | "x": 42,
673 | "y": 26,
674 | "w": 24,
675 | "h": 52
676 | },
677 | "frame": {
678 | "x": 0,
679 | "y": 356,
680 | "w": 24,
681 | "h": 52
682 | }
683 | },
684 | {
685 | "filename": "fire026.png",
686 | "rotated": false,
687 | "trimmed": true,
688 | "sourceSize": {
689 | "w": 100,
690 | "h": 100
691 | },
692 | "spriteSourceSize": {
693 | "x": 41,
694 | "y": 26,
695 | "w": 24,
696 | "h": 52
697 | },
698 | "frame": {
699 | "x": 24,
700 | "y": 357,
701 | "w": 24,
702 | "h": 52
703 | }
704 | },
705 | {
706 | "filename": "fire027.png",
707 | "rotated": false,
708 | "trimmed": true,
709 | "sourceSize": {
710 | "w": 100,
711 | "h": 100
712 | },
713 | "spriteSourceSize": {
714 | "x": 41,
715 | "y": 27,
716 | "w": 24,
717 | "h": 52
718 | },
719 | "frame": {
720 | "x": 0,
721 | "y": 408,
722 | "w": 24,
723 | "h": 52
724 | }
725 | },
726 | {
727 | "filename": "daze018.png",
728 | "rotated": false,
729 | "trimmed": true,
730 | "sourceSize": {
731 | "w": 100,
732 | "h": 100
733 | },
734 | "spriteSourceSize": {
735 | "x": 40,
736 | "y": 25,
737 | "w": 16,
738 | "h": 57
739 | },
740 | "frame": {
741 | "x": 48,
742 | "y": 357,
743 | "w": 16,
744 | "h": 57
745 | }
746 | },
747 | {
748 | "filename": "fire028.png",
749 | "rotated": false,
750 | "trimmed": true,
751 | "sourceSize": {
752 | "w": 100,
753 | "h": 100
754 | },
755 | "spriteSourceSize": {
756 | "x": 41,
757 | "y": 27,
758 | "w": 24,
759 | "h": 52
760 | },
761 | "frame": {
762 | "x": 24,
763 | "y": 409,
764 | "w": 24,
765 | "h": 52
766 | }
767 | },
768 | {
769 | "filename": "fire030.png",
770 | "rotated": false,
771 | "trimmed": true,
772 | "sourceSize": {
773 | "w": 100,
774 | "h": 100
775 | },
776 | "spriteSourceSize": {
777 | "x": 41,
778 | "y": 26,
779 | "w": 24,
780 | "h": 52
781 | },
782 | "frame": {
783 | "x": 0,
784 | "y": 460,
785 | "w": 24,
786 | "h": 52
787 | }
788 | },
789 | {
790 | "filename": "daze022.png",
791 | "rotated": false,
792 | "trimmed": true,
793 | "sourceSize": {
794 | "w": 100,
795 | "h": 100
796 | },
797 | "spriteSourceSize": {
798 | "x": 41,
799 | "y": 25,
800 | "w": 16,
801 | "h": 57
802 | },
803 | "frame": {
804 | "x": 48,
805 | "y": 414,
806 | "w": 16,
807 | "h": 57
808 | }
809 | },
810 | {
811 | "filename": "fire048.png",
812 | "rotated": false,
813 | "trimmed": true,
814 | "sourceSize": {
815 | "w": 100,
816 | "h": 100
817 | },
818 | "spriteSourceSize": {
819 | "x": 40,
820 | "y": 26,
821 | "w": 24,
822 | "h": 52
823 | },
824 | "frame": {
825 | "x": 24,
826 | "y": 461,
827 | "w": 24,
828 | "h": 52
829 | }
830 | },
831 | {
832 | "filename": "fire029.png",
833 | "rotated": false,
834 | "trimmed": true,
835 | "sourceSize": {
836 | "w": 100,
837 | "h": 100
838 | },
839 | "spriteSourceSize": {
840 | "x": 41,
841 | "y": 27,
842 | "w": 24,
843 | "h": 51
844 | },
845 | "frame": {
846 | "x": 0,
847 | "y": 512,
848 | "w": 24,
849 | "h": 51
850 | }
851 | },
852 | {
853 | "filename": "daze025.png",
854 | "rotated": false,
855 | "trimmed": true,
856 | "sourceSize": {
857 | "w": 100,
858 | "h": 100
859 | },
860 | "spriteSourceSize": {
861 | "x": 41,
862 | "y": 25,
863 | "w": 16,
864 | "h": 55
865 | },
866 | "frame": {
867 | "x": 48,
868 | "y": 471,
869 | "w": 16,
870 | "h": 55
871 | }
872 | },
873 | {
874 | "filename": "fire031.png",
875 | "rotated": false,
876 | "trimmed": true,
877 | "sourceSize": {
878 | "w": 100,
879 | "h": 100
880 | },
881 | "spriteSourceSize": {
882 | "x": 41,
883 | "y": 27,
884 | "w": 24,
885 | "h": 51
886 | },
887 | "frame": {
888 | "x": 24,
889 | "y": 513,
890 | "w": 24,
891 | "h": 51
892 | }
893 | },
894 | {
895 | "filename": "fire043.png",
896 | "rotated": false,
897 | "trimmed": true,
898 | "sourceSize": {
899 | "w": 100,
900 | "h": 100
901 | },
902 | "spriteSourceSize": {
903 | "x": 40,
904 | "y": 27,
905 | "w": 24,
906 | "h": 51
907 | },
908 | "frame": {
909 | "x": 0,
910 | "y": 563,
911 | "w": 24,
912 | "h": 51
913 | }
914 | },
915 | {
916 | "filename": "daze027.png",
917 | "rotated": false,
918 | "trimmed": true,
919 | "sourceSize": {
920 | "w": 100,
921 | "h": 100
922 | },
923 | "spriteSourceSize": {
924 | "x": 41,
925 | "y": 24,
926 | "w": 16,
927 | "h": 54
928 | },
929 | "frame": {
930 | "x": 48,
931 | "y": 526,
932 | "w": 16,
933 | "h": 54
934 | }
935 | },
936 | {
937 | "filename": "fire044.png",
938 | "rotated": false,
939 | "trimmed": true,
940 | "sourceSize": {
941 | "w": 100,
942 | "h": 100
943 | },
944 | "spriteSourceSize": {
945 | "x": 40,
946 | "y": 27,
947 | "w": 24,
948 | "h": 51
949 | },
950 | "frame": {
951 | "x": 24,
952 | "y": 564,
953 | "w": 24,
954 | "h": 51
955 | }
956 | },
957 | {
958 | "filename": "fire045.png",
959 | "rotated": false,
960 | "trimmed": true,
961 | "sourceSize": {
962 | "w": 100,
963 | "h": 100
964 | },
965 | "spriteSourceSize": {
966 | "x": 40,
967 | "y": 27,
968 | "w": 24,
969 | "h": 51
970 | },
971 | "frame": {
972 | "x": 0,
973 | "y": 614,
974 | "w": 24,
975 | "h": 51
976 | }
977 | },
978 | {
979 | "filename": "daze017.png",
980 | "rotated": false,
981 | "trimmed": true,
982 | "sourceSize": {
983 | "w": 100,
984 | "h": 100
985 | },
986 | "spriteSourceSize": {
987 | "x": 40,
988 | "y": 30,
989 | "w": 16,
990 | "h": 53
991 | },
992 | "frame": {
993 | "x": 48,
994 | "y": 580,
995 | "w": 16,
996 | "h": 53
997 | }
998 | },
999 | {
1000 | "filename": "fire046.png",
1001 | "rotated": false,
1002 | "trimmed": true,
1003 | "sourceSize": {
1004 | "w": 100,
1005 | "h": 100
1006 | },
1007 | "spriteSourceSize": {
1008 | "x": 40,
1009 | "y": 27,
1010 | "w": 24,
1011 | "h": 51
1012 | },
1013 | "frame": {
1014 | "x": 24,
1015 | "y": 615,
1016 | "w": 24,
1017 | "h": 51
1018 | }
1019 | },
1020 | {
1021 | "filename": "fire047.png",
1022 | "rotated": false,
1023 | "trimmed": true,
1024 | "sourceSize": {
1025 | "w": 100,
1026 | "h": 100
1027 | },
1028 | "spriteSourceSize": {
1029 | "x": 40,
1030 | "y": 27,
1031 | "w": 24,
1032 | "h": 51
1033 | },
1034 | "frame": {
1035 | "x": 0,
1036 | "y": 665,
1037 | "w": 24,
1038 | "h": 51
1039 | }
1040 | },
1041 | {
1042 | "filename": "daze026.png",
1043 | "rotated": false,
1044 | "trimmed": true,
1045 | "sourceSize": {
1046 | "w": 100,
1047 | "h": 100
1048 | },
1049 | "spriteSourceSize": {
1050 | "x": 41,
1051 | "y": 26,
1052 | "w": 16,
1053 | "h": 53
1054 | },
1055 | "frame": {
1056 | "x": 48,
1057 | "y": 633,
1058 | "w": 16,
1059 | "h": 53
1060 | }
1061 | },
1062 | {
1063 | "filename": "fire052.png",
1064 | "rotated": false,
1065 | "trimmed": true,
1066 | "sourceSize": {
1067 | "w": 100,
1068 | "h": 100
1069 | },
1070 | "spriteSourceSize": {
1071 | "x": 41,
1072 | "y": 27,
1073 | "w": 24,
1074 | "h": 51
1075 | },
1076 | "frame": {
1077 | "x": 24,
1078 | "y": 666,
1079 | "w": 24,
1080 | "h": 51
1081 | }
1082 | },
1083 | {
1084 | "filename": "fire019.png",
1085 | "rotated": false,
1086 | "trimmed": true,
1087 | "sourceSize": {
1088 | "w": 100,
1089 | "h": 100
1090 | },
1091 | "spriteSourceSize": {
1092 | "x": 42,
1093 | "y": 28,
1094 | "w": 24,
1095 | "h": 50
1096 | },
1097 | "frame": {
1098 | "x": 0,
1099 | "y": 716,
1100 | "w": 24,
1101 | "h": 50
1102 | }
1103 | },
1104 | {
1105 | "filename": "daze030.png",
1106 | "rotated": false,
1107 | "trimmed": true,
1108 | "sourceSize": {
1109 | "w": 100,
1110 | "h": 100
1111 | },
1112 | "spriteSourceSize": {
1113 | "x": 41,
1114 | "y": 20,
1115 | "w": 16,
1116 | "h": 52
1117 | },
1118 | "frame": {
1119 | "x": 48,
1120 | "y": 686,
1121 | "w": 16,
1122 | "h": 52
1123 | }
1124 | },
1125 | {
1126 | "filename": "fire041.png",
1127 | "rotated": false,
1128 | "trimmed": true,
1129 | "sourceSize": {
1130 | "w": 100,
1131 | "h": 100
1132 | },
1133 | "spriteSourceSize": {
1134 | "x": 40,
1135 | "y": 28,
1136 | "w": 24,
1137 | "h": 50
1138 | },
1139 | "frame": {
1140 | "x": 24,
1141 | "y": 717,
1142 | "w": 24,
1143 | "h": 50
1144 | }
1145 | },
1146 | {
1147 | "filename": "fire042.png",
1148 | "rotated": false,
1149 | "trimmed": true,
1150 | "sourceSize": {
1151 | "w": 100,
1152 | "h": 100
1153 | },
1154 | "spriteSourceSize": {
1155 | "x": 40,
1156 | "y": 28,
1157 | "w": 24,
1158 | "h": 50
1159 | },
1160 | "frame": {
1161 | "x": 0,
1162 | "y": 766,
1163 | "w": 24,
1164 | "h": 50
1165 | }
1166 | },
1167 | {
1168 | "filename": "daze021.png",
1169 | "rotated": false,
1170 | "trimmed": true,
1171 | "sourceSize": {
1172 | "w": 100,
1173 | "h": 100
1174 | },
1175 | "spriteSourceSize": {
1176 | "x": 41,
1177 | "y": 32,
1178 | "w": 16,
1179 | "h": 49
1180 | },
1181 | "frame": {
1182 | "x": 48,
1183 | "y": 738,
1184 | "w": 16,
1185 | "h": 49
1186 | }
1187 | },
1188 | {
1189 | "filename": "fire049.png",
1190 | "rotated": false,
1191 | "trimmed": true,
1192 | "sourceSize": {
1193 | "w": 100,
1194 | "h": 100
1195 | },
1196 | "spriteSourceSize": {
1197 | "x": 40,
1198 | "y": 29,
1199 | "w": 24,
1200 | "h": 49
1201 | },
1202 | "frame": {
1203 | "x": 24,
1204 | "y": 767,
1205 | "w": 24,
1206 | "h": 49
1207 | }
1208 | },
1209 | {
1210 | "filename": "daze024.png",
1211 | "rotated": false,
1212 | "trimmed": true,
1213 | "sourceSize": {
1214 | "w": 100,
1215 | "h": 100
1216 | },
1217 | "spriteSourceSize": {
1218 | "x": 41,
1219 | "y": 32,
1220 | "w": 16,
1221 | "h": 49
1222 | },
1223 | "frame": {
1224 | "x": 48,
1225 | "y": 787,
1226 | "w": 16,
1227 | "h": 49
1228 | }
1229 | },
1230 | {
1231 | "filename": "fire02.png",
1232 | "rotated": false,
1233 | "trimmed": true,
1234 | "sourceSize": {
1235 | "w": 100,
1236 | "h": 100
1237 | },
1238 | "spriteSourceSize": {
1239 | "x": 43,
1240 | "y": 26,
1241 | "w": 23,
1242 | "h": 52
1243 | },
1244 | "frame": {
1245 | "x": 0,
1246 | "y": 816,
1247 | "w": 23,
1248 | "h": 52
1249 | }
1250 | },
1251 | {
1252 | "filename": "fire03.png",
1253 | "rotated": false,
1254 | "trimmed": true,
1255 | "sourceSize": {
1256 | "w": 100,
1257 | "h": 100
1258 | },
1259 | "spriteSourceSize": {
1260 | "x": 43,
1261 | "y": 26,
1262 | "w": 23,
1263 | "h": 52
1264 | },
1265 | "frame": {
1266 | "x": 23,
1267 | "y": 816,
1268 | "w": 23,
1269 | "h": 52
1270 | }
1271 | },
1272 | {
1273 | "filename": "daze019.png",
1274 | "rotated": false,
1275 | "trimmed": true,
1276 | "sourceSize": {
1277 | "w": 100,
1278 | "h": 100
1279 | },
1280 | "spriteSourceSize": {
1281 | "x": 40,
1282 | "y": 20,
1283 | "w": 17,
1284 | "h": 62
1285 | },
1286 | "frame": {
1287 | "x": 46,
1288 | "y": 836,
1289 | "w": 17,
1290 | "h": 62
1291 | }
1292 | },
1293 | {
1294 | "filename": "fire038.png",
1295 | "rotated": false,
1296 | "trimmed": true,
1297 | "sourceSize": {
1298 | "w": 100,
1299 | "h": 100
1300 | },
1301 | "spriteSourceSize": {
1302 | "x": 40,
1303 | "y": 26,
1304 | "w": 23,
1305 | "h": 52
1306 | },
1307 | "frame": {
1308 | "x": 0,
1309 | "y": 868,
1310 | "w": 23,
1311 | "h": 52
1312 | }
1313 | },
1314 | {
1315 | "filename": "fire040.png",
1316 | "rotated": false,
1317 | "trimmed": true,
1318 | "sourceSize": {
1319 | "w": 100,
1320 | "h": 100
1321 | },
1322 | "spriteSourceSize": {
1323 | "x": 40,
1324 | "y": 27,
1325 | "w": 23,
1326 | "h": 52
1327 | },
1328 | "frame": {
1329 | "x": 23,
1330 | "y": 868,
1331 | "w": 23,
1332 | "h": 52
1333 | }
1334 | },
1335 | {
1336 | "filename": "daze023.png",
1337 | "rotated": false,
1338 | "trimmed": true,
1339 | "sourceSize": {
1340 | "w": 100,
1341 | "h": 100
1342 | },
1343 | "spriteSourceSize": {
1344 | "x": 40,
1345 | "y": 23,
1346 | "w": 17,
1347 | "h": 59
1348 | },
1349 | "frame": {
1350 | "x": 46,
1351 | "y": 898,
1352 | "w": 17,
1353 | "h": 59
1354 | }
1355 | },
1356 | {
1357 | "filename": "fire08.png",
1358 | "rotated": false,
1359 | "trimmed": true,
1360 | "sourceSize": {
1361 | "w": 100,
1362 | "h": 100
1363 | },
1364 | "spriteSourceSize": {
1365 | "x": 42,
1366 | "y": 26,
1367 | "w": 23,
1368 | "h": 52
1369 | },
1370 | "frame": {
1371 | "x": 0,
1372 | "y": 920,
1373 | "w": 23,
1374 | "h": 52
1375 | }
1376 | },
1377 | {
1378 | "filename": "fire00.png",
1379 | "rotated": false,
1380 | "trimmed": true,
1381 | "sourceSize": {
1382 | "w": 100,
1383 | "h": 100
1384 | },
1385 | "spriteSourceSize": {
1386 | "x": 43,
1387 | "y": 27,
1388 | "w": 23,
1389 | "h": 51
1390 | },
1391 | "frame": {
1392 | "x": 23,
1393 | "y": 920,
1394 | "w": 23,
1395 | "h": 51
1396 | }
1397 | },
1398 | {
1399 | "filename": "fire060.png",
1400 | "rotated": false,
1401 | "trimmed": true,
1402 | "sourceSize": {
1403 | "w": 100,
1404 | "h": 100
1405 | },
1406 | "spriteSourceSize": {
1407 | "x": 43,
1408 | "y": 27,
1409 | "w": 23,
1410 | "h": 51
1411 | },
1412 | "frame": {
1413 | "x": 23,
1414 | "y": 920,
1415 | "w": 23,
1416 | "h": 51
1417 | }
1418 | },
1419 | {
1420 | "filename": "daze020.png",
1421 | "rotated": false,
1422 | "trimmed": true,
1423 | "sourceSize": {
1424 | "w": 100,
1425 | "h": 100
1426 | },
1427 | "spriteSourceSize": {
1428 | "x": 40,
1429 | "y": 26,
1430 | "w": 17,
1431 | "h": 56
1432 | },
1433 | "frame": {
1434 | "x": 46,
1435 | "y": 957,
1436 | "w": 17,
1437 | "h": 56
1438 | }
1439 | },
1440 | {
1441 | "filename": "fire01.png",
1442 | "rotated": false,
1443 | "trimmed": true,
1444 | "sourceSize": {
1445 | "w": 100,
1446 | "h": 100
1447 | },
1448 | "spriteSourceSize": {
1449 | "x": 43,
1450 | "y": 27,
1451 | "w": 23,
1452 | "h": 51
1453 | },
1454 | "frame": {
1455 | "x": 23,
1456 | "y": 971,
1457 | "w": 23,
1458 | "h": 51
1459 | }
1460 | },
1461 | {
1462 | "filename": "fire011.png",
1463 | "rotated": false,
1464 | "trimmed": true,
1465 | "sourceSize": {
1466 | "w": 100,
1467 | "h": 100
1468 | },
1469 | "spriteSourceSize": {
1470 | "x": 42,
1471 | "y": 27,
1472 | "w": 23,
1473 | "h": 51
1474 | },
1475 | "frame": {
1476 | "x": 0,
1477 | "y": 972,
1478 | "w": 23,
1479 | "h": 51
1480 | }
1481 | },
1482 | {
1483 | "filename": "daze029.png",
1484 | "rotated": false,
1485 | "trimmed": true,
1486 | "sourceSize": {
1487 | "w": 100,
1488 | "h": 100
1489 | },
1490 | "spriteSourceSize": {
1491 | "x": 40,
1492 | "y": 25,
1493 | "w": 17,
1494 | "h": 49
1495 | },
1496 | "frame": {
1497 | "x": 46,
1498 | "y": 1013,
1499 | "w": 17,
1500 | "h": 49
1501 | }
1502 | },
1503 | {
1504 | "filename": "fire012.png",
1505 | "rotated": false,
1506 | "trimmed": true,
1507 | "sourceSize": {
1508 | "w": 100,
1509 | "h": 100
1510 | },
1511 | "spriteSourceSize": {
1512 | "x": 42,
1513 | "y": 27,
1514 | "w": 23,
1515 | "h": 51
1516 | },
1517 | "frame": {
1518 | "x": 23,
1519 | "y": 1022,
1520 | "w": 23,
1521 | "h": 51
1522 | }
1523 | },
1524 | {
1525 | "filename": "fire013.png",
1526 | "rotated": false,
1527 | "trimmed": true,
1528 | "sourceSize": {
1529 | "w": 100,
1530 | "h": 100
1531 | },
1532 | "spriteSourceSize": {
1533 | "x": 42,
1534 | "y": 27,
1535 | "w": 23,
1536 | "h": 51
1537 | },
1538 | "frame": {
1539 | "x": 0,
1540 | "y": 1023,
1541 | "w": 23,
1542 | "h": 51
1543 | }
1544 | },
1545 | {
1546 | "filename": "daze016.png",
1547 | "rotated": false,
1548 | "trimmed": true,
1549 | "sourceSize": {
1550 | "w": 100,
1551 | "h": 100
1552 | },
1553 | "spriteSourceSize": {
1554 | "x": 40,
1555 | "y": 35,
1556 | "w": 17,
1557 | "h": 46
1558 | },
1559 | "frame": {
1560 | "x": 46,
1561 | "y": 1062,
1562 | "w": 17,
1563 | "h": 46
1564 | }
1565 | },
1566 | {
1567 | "filename": "fire015.png",
1568 | "rotated": false,
1569 | "trimmed": true,
1570 | "sourceSize": {
1571 | "w": 100,
1572 | "h": 100
1573 | },
1574 | "spriteSourceSize": {
1575 | "x": 42,
1576 | "y": 27,
1577 | "w": 23,
1578 | "h": 51
1579 | },
1580 | "frame": {
1581 | "x": 23,
1582 | "y": 1073,
1583 | "w": 23,
1584 | "h": 51
1585 | }
1586 | },
1587 | {
1588 | "filename": "fire016.png",
1589 | "rotated": false,
1590 | "trimmed": true,
1591 | "sourceSize": {
1592 | "w": 100,
1593 | "h": 100
1594 | },
1595 | "spriteSourceSize": {
1596 | "x": 42,
1597 | "y": 27,
1598 | "w": 23,
1599 | "h": 51
1600 | },
1601 | "frame": {
1602 | "x": 0,
1603 | "y": 1074,
1604 | "w": 23,
1605 | "h": 51
1606 | }
1607 | },
1608 | {
1609 | "filename": "daze034.png",
1610 | "rotated": false,
1611 | "trimmed": true,
1612 | "sourceSize": {
1613 | "w": 100,
1614 | "h": 100
1615 | },
1616 | "spriteSourceSize": {
1617 | "x": 40,
1618 | "y": 25,
1619 | "w": 17,
1620 | "h": 36
1621 | },
1622 | "frame": {
1623 | "x": 46,
1624 | "y": 1108,
1625 | "w": 17,
1626 | "h": 36
1627 | }
1628 | },
1629 | {
1630 | "filename": "fire017.png",
1631 | "rotated": false,
1632 | "trimmed": true,
1633 | "sourceSize": {
1634 | "w": 100,
1635 | "h": 100
1636 | },
1637 | "spriteSourceSize": {
1638 | "x": 42,
1639 | "y": 27,
1640 | "w": 23,
1641 | "h": 51
1642 | },
1643 | "frame": {
1644 | "x": 23,
1645 | "y": 1124,
1646 | "w": 23,
1647 | "h": 51
1648 | }
1649 | },
1650 | {
1651 | "filename": "fire033.png",
1652 | "rotated": false,
1653 | "trimmed": true,
1654 | "sourceSize": {
1655 | "w": 100,
1656 | "h": 100
1657 | },
1658 | "spriteSourceSize": {
1659 | "x": 40,
1660 | "y": 28,
1661 | "w": 23,
1662 | "h": 51
1663 | },
1664 | "frame": {
1665 | "x": 0,
1666 | "y": 1125,
1667 | "w": 23,
1668 | "h": 51
1669 | }
1670 | },
1671 | {
1672 | "filename": "daze035.png",
1673 | "rotated": false,
1674 | "trimmed": true,
1675 | "sourceSize": {
1676 | "w": 100,
1677 | "h": 100
1678 | },
1679 | "spriteSourceSize": {
1680 | "x": 40,
1681 | "y": 20,
1682 | "w": 17,
1683 | "h": 36
1684 | },
1685 | "frame": {
1686 | "x": 46,
1687 | "y": 1144,
1688 | "w": 17,
1689 | "h": 36
1690 | }
1691 | },
1692 | {
1693 | "filename": "fire034.png",
1694 | "rotated": false,
1695 | "trimmed": true,
1696 | "sourceSize": {
1697 | "w": 100,
1698 | "h": 100
1699 | },
1700 | "spriteSourceSize": {
1701 | "x": 40,
1702 | "y": 27,
1703 | "w": 23,
1704 | "h": 51
1705 | },
1706 | "frame": {
1707 | "x": 23,
1708 | "y": 1175,
1709 | "w": 23,
1710 | "h": 51
1711 | }
1712 | },
1713 | {
1714 | "filename": "fire036.png",
1715 | "rotated": false,
1716 | "trimmed": true,
1717 | "sourceSize": {
1718 | "w": 100,
1719 | "h": 100
1720 | },
1721 | "spriteSourceSize": {
1722 | "x": 40,
1723 | "y": 27,
1724 | "w": 23,
1725 | "h": 51
1726 | },
1727 | "frame": {
1728 | "x": 0,
1729 | "y": 1176,
1730 | "w": 23,
1731 | "h": 51
1732 | }
1733 | },
1734 | {
1735 | "filename": "daze015.png",
1736 | "rotated": false,
1737 | "trimmed": true,
1738 | "sourceSize": {
1739 | "w": 100,
1740 | "h": 100
1741 | },
1742 | "spriteSourceSize": {
1743 | "x": 40,
1744 | "y": 38,
1745 | "w": 16,
1746 | "h": 43
1747 | },
1748 | "frame": {
1749 | "x": 46,
1750 | "y": 1180,
1751 | "w": 16,
1752 | "h": 43
1753 | }
1754 | },
1755 | {
1756 | "filename": "daze032.png",
1757 | "rotated": false,
1758 | "trimmed": true,
1759 | "sourceSize": {
1760 | "w": 100,
1761 | "h": 100
1762 | },
1763 | "spriteSourceSize": {
1764 | "x": 41,
1765 | "y": 23,
1766 | "w": 16,
1767 | "h": 43
1768 | },
1769 | "frame": {
1770 | "x": 46,
1771 | "y": 1223,
1772 | "w": 16,
1773 | "h": 43
1774 | }
1775 | },
1776 | {
1777 | "filename": "fire037.png",
1778 | "rotated": false,
1779 | "trimmed": true,
1780 | "sourceSize": {
1781 | "w": 100,
1782 | "h": 100
1783 | },
1784 | "spriteSourceSize": {
1785 | "x": 40,
1786 | "y": 27,
1787 | "w": 23,
1788 | "h": 51
1789 | },
1790 | "frame": {
1791 | "x": 23,
1792 | "y": 1226,
1793 | "w": 23,
1794 | "h": 51
1795 | }
1796 | },
1797 | {
1798 | "filename": "fire039.png",
1799 | "rotated": false,
1800 | "trimmed": true,
1801 | "sourceSize": {
1802 | "w": 100,
1803 | "h": 100
1804 | },
1805 | "spriteSourceSize": {
1806 | "x": 40,
1807 | "y": 27,
1808 | "w": 23,
1809 | "h": 51
1810 | },
1811 | "frame": {
1812 | "x": 0,
1813 | "y": 1227,
1814 | "w": 23,
1815 | "h": 51
1816 | }
1817 | },
1818 | {
1819 | "filename": "daze031.png",
1820 | "rotated": false,
1821 | "trimmed": true,
1822 | "sourceSize": {
1823 | "w": 100,
1824 | "h": 100
1825 | },
1826 | "spriteSourceSize": {
1827 | "x": 41,
1828 | "y": 27,
1829 | "w": 16,
1830 | "h": 42
1831 | },
1832 | "frame": {
1833 | "x": 46,
1834 | "y": 1266,
1835 | "w": 16,
1836 | "h": 42
1837 | }
1838 | },
1839 | {
1840 | "filename": "fire059.png",
1841 | "rotated": false,
1842 | "trimmed": true,
1843 | "sourceSize": {
1844 | "w": 100,
1845 | "h": 100
1846 | },
1847 | "spriteSourceSize": {
1848 | "x": 43,
1849 | "y": 27,
1850 | "w": 23,
1851 | "h": 51
1852 | },
1853 | "frame": {
1854 | "x": 23,
1855 | "y": 1277,
1856 | "w": 23,
1857 | "h": 51
1858 | }
1859 | },
1860 | {
1861 | "filename": "fire09.png",
1862 | "rotated": false,
1863 | "trimmed": true,
1864 | "sourceSize": {
1865 | "w": 100,
1866 | "h": 100
1867 | },
1868 | "spriteSourceSize": {
1869 | "x": 42,
1870 | "y": 27,
1871 | "w": 23,
1872 | "h": 51
1873 | },
1874 | "frame": {
1875 | "x": 0,
1876 | "y": 1278,
1877 | "w": 23,
1878 | "h": 51
1879 | }
1880 | },
1881 | {
1882 | "filename": "daze014.png",
1883 | "rotated": false,
1884 | "trimmed": true,
1885 | "sourceSize": {
1886 | "w": 100,
1887 | "h": 100
1888 | },
1889 | "spriteSourceSize": {
1890 | "x": 40,
1891 | "y": 42,
1892 | "w": 16,
1893 | "h": 40
1894 | },
1895 | "frame": {
1896 | "x": 46,
1897 | "y": 1308,
1898 | "w": 16,
1899 | "h": 40
1900 | }
1901 | },
1902 | {
1903 | "filename": "fire010.png",
1904 | "rotated": false,
1905 | "trimmed": true,
1906 | "sourceSize": {
1907 | "w": 100,
1908 | "h": 100
1909 | },
1910 | "spriteSourceSize": {
1911 | "x": 42,
1912 | "y": 28,
1913 | "w": 23,
1914 | "h": 50
1915 | },
1916 | "frame": {
1917 | "x": 23,
1918 | "y": 1328,
1919 | "w": 23,
1920 | "h": 50
1921 | }
1922 | },
1923 | {
1924 | "filename": "fire014.png",
1925 | "rotated": false,
1926 | "trimmed": true,
1927 | "sourceSize": {
1928 | "w": 100,
1929 | "h": 100
1930 | },
1931 | "spriteSourceSize": {
1932 | "x": 42,
1933 | "y": 28,
1934 | "w": 23,
1935 | "h": 50
1936 | },
1937 | "frame": {
1938 | "x": 0,
1939 | "y": 1329,
1940 | "w": 23,
1941 | "h": 50
1942 | }
1943 | },
1944 | {
1945 | "filename": "daze013.png",
1946 | "rotated": false,
1947 | "trimmed": true,
1948 | "sourceSize": {
1949 | "w": 100,
1950 | "h": 100
1951 | },
1952 | "spriteSourceSize": {
1953 | "x": 40,
1954 | "y": 45,
1955 | "w": 16,
1956 | "h": 37
1957 | },
1958 | "frame": {
1959 | "x": 46,
1960 | "y": 1348,
1961 | "w": 16,
1962 | "h": 37
1963 | }
1964 | },
1965 | {
1966 | "filename": "fire05.png",
1967 | "rotated": false,
1968 | "trimmed": true,
1969 | "sourceSize": {
1970 | "w": 100,
1971 | "h": 100
1972 | },
1973 | "spriteSourceSize": {
1974 | "x": 43,
1975 | "y": 28,
1976 | "w": 23,
1977 | "h": 50
1978 | },
1979 | "frame": {
1980 | "x": 23,
1981 | "y": 1378,
1982 | "w": 23,
1983 | "h": 50
1984 | }
1985 | },
1986 | {
1987 | "filename": "fire04.png",
1988 | "rotated": false,
1989 | "trimmed": true,
1990 | "sourceSize": {
1991 | "w": 100,
1992 | "h": 100
1993 | },
1994 | "spriteSourceSize": {
1995 | "x": 43,
1996 | "y": 29,
1997 | "w": 23,
1998 | "h": 49
1999 | },
2000 | "frame": {
2001 | "x": 0,
2002 | "y": 1379,
2003 | "w": 23,
2004 | "h": 49
2005 | }
2006 | },
2007 | {
2008 | "filename": "daze033.png",
2009 | "rotated": false,
2010 | "trimmed": true,
2011 | "sourceSize": {
2012 | "w": 100,
2013 | "h": 100
2014 | },
2015 | "spriteSourceSize": {
2016 | "x": 41,
2017 | "y": 28,
2018 | "w": 16,
2019 | "h": 36
2020 | },
2021 | "frame": {
2022 | "x": 46,
2023 | "y": 1385,
2024 | "w": 16,
2025 | "h": 36
2026 | }
2027 | },
2028 | {
2029 | "filename": "daze036.png",
2030 | "rotated": false,
2031 | "trimmed": true,
2032 | "sourceSize": {
2033 | "w": 100,
2034 | "h": 100
2035 | },
2036 | "spriteSourceSize": {
2037 | "x": 41,
2038 | "y": 26,
2039 | "w": 16,
2040 | "h": 27
2041 | },
2042 | "frame": {
2043 | "x": 46,
2044 | "y": 1421,
2045 | "w": 16,
2046 | "h": 27
2047 | }
2048 | },
2049 | {
2050 | "filename": "fire07.png",
2051 | "rotated": false,
2052 | "trimmed": true,
2053 | "sourceSize": {
2054 | "w": 100,
2055 | "h": 100
2056 | },
2057 | "spriteSourceSize": {
2058 | "x": 43,
2059 | "y": 27,
2060 | "w": 22,
2061 | "h": 51
2062 | },
2063 | "frame": {
2064 | "x": 0,
2065 | "y": 1428,
2066 | "w": 22,
2067 | "h": 51
2068 | }
2069 | },
2070 | {
2071 | "filename": "fire035.png",
2072 | "rotated": false,
2073 | "trimmed": true,
2074 | "sourceSize": {
2075 | "w": 100,
2076 | "h": 100
2077 | },
2078 | "spriteSourceSize": {
2079 | "x": 41,
2080 | "y": 28,
2081 | "w": 22,
2082 | "h": 50
2083 | },
2084 | "frame": {
2085 | "x": 22,
2086 | "y": 1428,
2087 | "w": 22,
2088 | "h": 50
2089 | }
2090 | },
2091 | {
2092 | "filename": "daze028.png",
2093 | "rotated": false,
2094 | "trimmed": true,
2095 | "sourceSize": {
2096 | "w": 100,
2097 | "h": 100
2098 | },
2099 | "spriteSourceSize": {
2100 | "x": 41,
2101 | "y": 29,
2102 | "w": 15,
2103 | "h": 47
2104 | },
2105 | "frame": {
2106 | "x": 44,
2107 | "y": 1448,
2108 | "w": 15,
2109 | "h": 47
2110 | }
2111 | },
2112 | {
2113 | "filename": "fire06.png",
2114 | "rotated": false,
2115 | "trimmed": true,
2116 | "sourceSize": {
2117 | "w": 100,
2118 | "h": 100
2119 | },
2120 | "spriteSourceSize": {
2121 | "x": 43,
2122 | "y": 28,
2123 | "w": 22,
2124 | "h": 50
2125 | },
2126 | "frame": {
2127 | "x": 22,
2128 | "y": 1478,
2129 | "w": 22,
2130 | "h": 50
2131 | }
2132 | },
2133 | {
2134 | "filename": "fire032.png",
2135 | "rotated": false,
2136 | "trimmed": true,
2137 | "sourceSize": {
2138 | "w": 100,
2139 | "h": 100
2140 | },
2141 | "spriteSourceSize": {
2142 | "x": 41,
2143 | "y": 28,
2144 | "w": 21,
2145 | "h": 51
2146 | },
2147 | "frame": {
2148 | "x": 0,
2149 | "y": 1479,
2150 | "w": 21,
2151 | "h": 51
2152 | }
2153 | },
2154 | {
2155 | "filename": "daze012.png",
2156 | "rotated": false,
2157 | "trimmed": true,
2158 | "sourceSize": {
2159 | "w": 100,
2160 | "h": 100
2161 | },
2162 | "spriteSourceSize": {
2163 | "x": 41,
2164 | "y": 48,
2165 | "w": 15,
2166 | "h": 33
2167 | },
2168 | "frame": {
2169 | "x": 44,
2170 | "y": 1495,
2171 | "w": 15,
2172 | "h": 33
2173 | }
2174 | },
2175 | {
2176 | "filename": "daze011.png",
2177 | "rotated": false,
2178 | "trimmed": true,
2179 | "sourceSize": {
2180 | "w": 100,
2181 | "h": 100
2182 | },
2183 | "spriteSourceSize": {
2184 | "x": 41,
2185 | "y": 52,
2186 | "w": 15,
2187 | "h": 28
2188 | },
2189 | "frame": {
2190 | "x": 21,
2191 | "y": 1528,
2192 | "w": 15,
2193 | "h": 28
2194 | }
2195 | },
2196 | {
2197 | "filename": "daze010.png",
2198 | "rotated": false,
2199 | "trimmed": true,
2200 | "sourceSize": {
2201 | "w": 100,
2202 | "h": 100
2203 | },
2204 | "spriteSourceSize": {
2205 | "x": 41,
2206 | "y": 54,
2207 | "w": 15,
2208 | "h": 26
2209 | },
2210 | "frame": {
2211 | "x": 0,
2212 | "y": 1530,
2213 | "w": 15,
2214 | "h": 26
2215 | }
2216 | },
2217 | {
2218 | "filename": "daze09.png",
2219 | "rotated": false,
2220 | "trimmed": true,
2221 | "sourceSize": {
2222 | "w": 100,
2223 | "h": 100
2224 | },
2225 | "spriteSourceSize": {
2226 | "x": 41,
2227 | "y": 57,
2228 | "w": 15,
2229 | "h": 24
2230 | },
2231 | "frame": {
2232 | "x": 36,
2233 | "y": 1528,
2234 | "w": 15,
2235 | "h": 24
2236 | }
2237 | }
2238 | ]
2239 | }
2240 | ],
2241 | "meta": {
2242 | "app": "https://www.codeandweb.com/texturepacker",
2243 | "version": "3.0",
2244 | "smartupdate": "$TexturePacker:SmartUpdate:cea8743f158122bf1dcc8626920f97f7:00ee908f8c1a82aee90c520a848184e1:3d698f10af5e803d1474a9ec747efd47$"
2245 | }
2246 | }
2247 |
--------------------------------------------------------------------------------