Skip to content

Commit

Permalink
fix #38 (#47)
Browse files Browse the repository at this point in the history
* wip

* wip

* wip

* wip

* wip

* fix #38
  • Loading branch information
pagoru authored Jun 20, 2024
1 parent 3f23306 commit 34c4bf9
Show file tree
Hide file tree
Showing 15 changed files with 513 additions and 64 deletions.
269 changes: 269 additions & 0 deletions examples/example/assets/fighter/fighter.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,269 @@
{
"frames": {
"rollSequence0000.png": {
"frame": { "x": 483, "y": 692, "w": 169, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 3, "y": 4, "w": 169, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0001.png": {
"frame": { "x": 468, "y": 2, "w": 169, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 3, "y": 4, "w": 169, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0002.png": {
"frame": { "x": 639, "y": 2, "w": 167, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 3, "y": 5, "w": 167, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0003.png": {
"frame": { "x": 808, "y": 2, "w": 165, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 3, "y": 5, "w": 165, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0004.png": {
"frame": { "x": 654, "y": 688, "w": 161, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 3, "y": 5, "w": 161, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0005.png": {
"frame": { "x": 817, "y": 458, "w": 151, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 6, "y": 5, "w": 151, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0006.png": {
"frame": { "x": 817, "y": 686, "w": 137, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 11, "y": 5, "w": 137, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0007.png": {
"frame": { "x": 290, "y": 2, "w": 113, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 22, "y": 3, "w": 113, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0008.png": {
"frame": { "x": 284, "y": 692, "w": 79, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 40, "y": 3, "w": 79, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0009.png": {
"frame": { "x": 405, "y": 2, "w": 61, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 53, "y": 3, "w": 61, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0010.png": {
"frame": { "x": 444, "y": 462, "w": 49, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 64, "y": 3, "w": 49, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0011.png": {
"frame": { "x": 377, "y": 462, "w": 65, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 52, "y": 3, "w": 65, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0012.png": {
"frame": { "x": 272, "y": 462, "w": 103, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 37, "y": 3, "w": 103, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0013.png": {
"frame": { "x": 143, "y": 692, "w": 139, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 20, "y": 3, "w": 139, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0014.png": {
"frame": { "x": 2, "y": 462, "w": 163, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 7, "y": 3, "w": 163, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0015.png": {
"frame": { "x": 2, "y": 2, "w": 171, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 2, "y": 3, "w": 171, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0016.png": {
"frame": { "x": 2, "y": 232, "w": 163, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 4, "y": 3, "w": 163, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0017.png": {
"frame": { "x": 2, "y": 692, "w": 139, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 16, "y": 3, "w": 139, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0018.png": {
"frame": { "x": 167, "y": 462, "w": 103, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 35, "y": 3, "w": 103, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0019.png": {
"frame": { "x": 365, "y": 692, "w": 65, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 58, "y": 3, "w": 65, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0020.png": {
"frame": { "x": 432, "y": 692, "w": 49, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 62, "y": 3, "w": 49, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0021.png": {
"frame": { "x": 389, "y": 232, "w": 61, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 61, "y": 3, "w": 61, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0022.png": {
"frame": { "x": 306, "y": 232, "w": 81, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 55, "y": 3, "w": 81, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0023.png": {
"frame": { "x": 175, "y": 2, "w": 113, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 39, "y": 3, "w": 113, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0024.png": {
"frame": { "x": 167, "y": 232, "w": 137, "h": 228 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 26, "y": 3, "w": 137, "h": 228 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0025.png": {
"frame": { "x": 664, "y": 458, "w": 151, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 18, "y": 5, "w": 151, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0026.png": {
"frame": { "x": 792, "y": 230, "w": 161, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 11, "y": 5, "w": 161, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0027.png": {
"frame": { "x": 623, "y": 230, "w": 167, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 6, "y": 5, "w": 167, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0028.png": {
"frame": { "x": 495, "y": 460, "w": 167, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 5, "y": 5, "w": 167, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
},
"rollSequence0029.png": {
"frame": { "x": 452, "y": 232, "w": 169, "h": 226 },
"rotated": false,
"trimmed": true,
"spriteSourceSize": { "x": 3, "y": 4, "w": 169, "h": 226 },
"sourceSize": { "w": 175, "h": 240 }
}
},
"animations": {
"rollRight": [
"rollSequence0000.png", "rollSequence0001.png",
"rollSequence0002.png", "rollSequence0003.png",
"rollSequence0004.png", "rollSequence0005.png",
"rollSequence0006.png", "rollSequence0007.png",
"rollSequence0008.png", "rollSequence0009.png",
"rollSequence0010.png", "rollSequence0011.png",
"rollSequence0012.png", "rollSequence0013.png",
"rollSequence0014.png", "rollSequence0015.png",
"rollSequence0016.png", "rollSequence0017.png",
"rollSequence0018.png", "rollSequence0019.png",
"rollSequence0020.png", "rollSequence0021.png",
"rollSequence0022.png", "rollSequence0023.png",
"rollSequence0024.png", "rollSequence0025.png",
"rollSequence0026.png", "rollSequence0027.png",
"rollSequence0028.png", "rollSequence0029.png"
],
"rollLeft": [
"rollSequence0029.png","rollSequence0028.png",
"rollSequence0027.png","rollSequence0026.png",
"rollSequence0025.png","rollSequence0024.png",
"rollSequence0023.png","rollSequence0022.png",
"rollSequence0021.png","rollSequence0020.png",
"rollSequence0019.png","rollSequence0018.png",
"rollSequence0017.png","rollSequence0016.png",
"rollSequence0015.png","rollSequence0014.png",
"rollSequence0013.png","rollSequence0012.png",
"rollSequence0011.png","rollSequence0010.png",
"rollSequence0009.png","rollSequence0008.png",
"rollSequence0007.png","rollSequence0006.png",
"rollSequence0005.png","rollSequence0004.png",
"rollSequence0003.png","rollSequence0002.png",
"rollSequence0001.png","rollSequence0000.png"
],
"turnRight": [
"rollSequence0000.png", "rollSequence0001.png",
"rollSequence0002.png", "rollSequence0003.png",
"rollSequence0004.png", "rollSequence0005.png"
],
"turnLeft": [
"rollSequence0029.png","rollSequence0028.png",
"rollSequence0027.png","rollSequence0026.png",
"rollSequence0025.png","rollSequence0024.png"
]
},
"meta": {
"app": "http://www.texturepacker.com",
"version": "1.0",
"image": "fighter.png",
"format": "RGBA8888",
"size": { "w": 1024, "h": 1024 },
"scale": "1",
"smartupdate": "$TexturePacker:SmartUpdate:2f213a6b451f9f5719773418dfe80ae8$"
}
}
Binary file added examples/example/assets/fighter/fighter.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
48 changes: 3 additions & 45 deletions examples/example/src/app.component.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import {
AsyncComponent,
circle,
Container,
container,
DisplayObjectEvent,
Expand All @@ -12,6 +11,7 @@ import {
world,
} from "@tulib/tulip";
import { flyComponent } from "fly.component";
import { playerComponent } from "player.component";

type Mutable = {} & DisplayObjectMutable<Container>;

Expand All @@ -28,13 +28,6 @@ export const appComponent: AsyncComponent<unknown, Mutable> = async () => {
},
});

// setTimeout(() => {
// $world.setPhysicsEnabled(true);
// setTimeout(() => {
// $world.setPhysicsEnabled(false);
// }, 1000);
// }, 1000);

const $plane = plane({
position: {
x: 0,
Expand Down Expand Up @@ -79,8 +72,6 @@ export const appComponent: AsyncComponent<unknown, Mutable> = async () => {

$container.add($world);

// const $inv = inventoryComponent();

const $duck = await sprite({
texture: "duck.png",
eventMode: EventMode.STATIC,
Expand Down Expand Up @@ -109,48 +100,15 @@ export const appComponent: AsyncComponent<unknown, Mutable> = async () => {
},
});

const $player = circle({
props: {
color: 0xff0000,
mass: 2,
size: 10,
},
});
$player.setPosition({ x: 100, y: 50 });

$world2.add($player);
const player = await playerComponent();
$world2.add(player);

$duck.on(DisplayObjectEvent.CLICK, async () => {
$quack.play();
});

let currentKeyList = [];
$player.on(DisplayObjectEvent.TICK, () => {
const body = $player.getBody();

const position = $player.getPosition();
global.sounds.setPosition({ ...position, z: 2 });

if (currentKeyList.includes("d")) {
body.addForceX(-1);
} else if (currentKeyList.includes("a")) {
body.addForceX(1);
} else if (currentKeyList.includes("w")) {
body.addForceY(1);
} else if (currentKeyList.includes("s")) {
body.addForceY(-1);
}
});

global.sounds.setVolume(1);

document.addEventListener("keydown", ({ key }) => {
currentKeyList = [...new Set([...currentKeyList, key])];
});
document.addEventListener("keyup", ({ key }) => {
currentKeyList = currentKeyList.filter((cKey) => cKey != key);
});

const $speaker = await sprite({
texture: "speaker.png",
eventMode: EventMode.STATIC,
Expand Down
Loading

0 comments on commit 34c4bf9

Please sign in to comment.