Compare commits

..

3 Commits

Author SHA1 Message Date
1a0e6ec71e semi-working game 2022-03-03 13:13:17 +01:00
022858330a some upgrades 2022-03-02 20:31:33 +01:00
f71db7a456 some stuff 2022-03-02 19:15:45 +01:00
33 changed files with 321 additions and 207 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 504 B

View File

@@ -3,90 +3,90 @@
"filename": "Sprite-0002 0.aseprite", "filename": "Sprite-0002 0.aseprite",
"frame": { "x": 140, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 140, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
"filename": "Sprite-0002 1.aseprite", "filename": "Sprite-0002 1.aseprite",
"frame": { "x": 0, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 0, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
"filename": "Sprite-0002 2.aseprite", "filename": "Sprite-0002 2.aseprite",
"frame": { "x": 140, "y": 320, "w": 140, "h": 160 }, "frame": { "x": 140, "y": 320, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
"filename": "Sprite-0002 3.aseprite", "filename": "Sprite-0002 3.aseprite",
"frame": { "x": 0, "y": 320, "w": 140, "h": 160 }, "frame": { "x": 0, "y": 320, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
"filename": "Sprite-0002 4.aseprite", "filename": "Sprite-0002 4.aseprite",
"frame": { "x": 840, "y": 160, "w": 140, "h": 160 }, "frame": { "x": 840, "y": 160, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
"filename": "Sprite-0002 5.aseprite", "filename": "Sprite-0002 5.aseprite",
"frame": { "x": 700, "y": 160, "w": 140, "h": 160 }, "frame": { "x": 700, "y": 160, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
"filename": "Sprite-0002 6.aseprite", "filename": "Sprite-0002 6.aseprite",
"frame": { "x": 560, "y": 160, "w": 140, "h": 160 }, "frame": { "x": 560, "y": 160, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
"filename": "Sprite-0002 7.aseprite", "filename": "Sprite-0002 7.aseprite",
"frame": { "x": 420, "y": 160, "w": 140, "h": 160 }, "frame": { "x": 420, "y": 160, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
"filename": "Sprite-0002 8.aseprite", "filename": "Sprite-0002 8.aseprite",
"frame": { "x": 280, "y": 160, "w": 140, "h": 160 }, "frame": { "x": 280, "y": 160, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
"filename": "Sprite-0002 9.aseprite", "filename": "Sprite-0002 9.aseprite",
"frame": { "x": 140, "y": 160, "w": 140, "h": 160 }, "frame": { "x": 140, "y": 160, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -94,8 +94,8 @@
"frame": { "x": 280, "y": 320, "w": 140, "h": 150 }, "frame": { "x": 280, "y": 320, "w": 140, "h": 150 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 150 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 150 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -103,8 +103,8 @@
"frame": { "x": 420, "y": 320, "w": 140, "h": 150 }, "frame": { "x": 420, "y": 320, "w": 140, "h": 150 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 150 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 150 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -112,8 +112,8 @@
"frame": { "x": 0, "y": 620, "w": 140, "h": 140 }, "frame": { "x": 0, "y": 620, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -121,8 +121,8 @@
"frame": { "x": 840, "y": 610, "w": 140, "h": 140 }, "frame": { "x": 840, "y": 610, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -130,8 +130,8 @@
"frame": { "x": 700, "y": 610, "w": 140, "h": 140 }, "frame": { "x": 700, "y": 610, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -139,8 +139,8 @@
"frame": { "x": 560, "y": 610, "w": 140, "h": 140 }, "frame": { "x": 560, "y": 610, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -148,8 +148,8 @@
"frame": { "x": 420, "y": 610, "w": 140, "h": 140 }, "frame": { "x": 420, "y": 610, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -157,8 +157,8 @@
"frame": { "x": 420, "y": 610, "w": 140, "h": 140 }, "frame": { "x": 420, "y": 610, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -166,8 +166,8 @@
"frame": { "x": 280, "y": 610, "w": 140, "h": 140 }, "frame": { "x": 280, "y": 610, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -175,8 +175,8 @@
"frame": { "x": 140, "y": 480, "w": 140, "h": 140 }, "frame": { "x": 140, "y": 480, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -184,8 +184,8 @@
"frame": { "x": 0, "y": 480, "w": 140, "h": 140 }, "frame": { "x": 0, "y": 480, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -193,8 +193,8 @@
"frame": { "x": 840, "y": 470, "w": 140, "h": 140 }, "frame": { "x": 840, "y": 470, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -202,8 +202,8 @@
"frame": { "x": 700, "y": 470, "w": 140, "h": 140 }, "frame": { "x": 700, "y": 470, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -211,8 +211,8 @@
"frame": { "x": 560, "y": 470, "w": 140, "h": 140 }, "frame": { "x": 560, "y": 470, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -220,8 +220,8 @@
"frame": { "x": 140, "y": 620, "w": 140, "h": 140 }, "frame": { "x": 140, "y": 620, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -229,8 +229,8 @@
"frame": { "x": 420, "y": 470, "w": 140, "h": 140 }, "frame": { "x": 420, "y": 470, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -238,8 +238,8 @@
"frame": { "x": 840, "y": 320, "w": 140, "h": 150 }, "frame": { "x": 840, "y": 320, "w": 140, "h": 150 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 150 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 150 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -247,116 +247,116 @@
"frame": { "x": 700, "y": 320, "w": 140, "h": 150 }, "frame": { "x": 700, "y": 320, "w": 140, "h": 150 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 150 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 150 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
"filename": "Sprite-0002 28.aseprite", "filename": "Sprite-0002 28.aseprite",
"frame": { "x": 280, "y": 160, "w": 140, "h": 160 }, "frame": { "x": 280, "y": 160, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 500 "duration": 500
}, },
{ {
"filename": "Sprite-0002 29.aseprite", "filename": "Sprite-0002 29.aseprite",
"frame": { "x": 280, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 280, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 500 "duration": 500
}, },
{ {
"filename": "Sprite-0002 30.aseprite", "filename": "Sprite-0002 30.aseprite",
"frame": { "x": 420, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 420, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 200 "duration": 200
}, },
{ {
"filename": "Sprite-0002 31.aseprite", "filename": "Sprite-0002 31.aseprite",
"frame": { "x": 560, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 560, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 200 "duration": 200
}, },
{ {
"filename": "Sprite-0002 32.aseprite", "filename": "Sprite-0002 32.aseprite",
"frame": { "x": 700, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 700, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 200 "duration": 200
}, },
{ {
"filename": "Sprite-0002 33.aseprite", "filename": "Sprite-0002 33.aseprite",
"frame": { "x": 420, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 420, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 200 "duration": 200
}, },
{ {
"filename": "Sprite-0002 34.aseprite", "filename": "Sprite-0002 34.aseprite",
"frame": { "x": 420, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 420, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 200 "duration": 200
}, },
{ {
"filename": "Sprite-0002 35.aseprite", "filename": "Sprite-0002 35.aseprite",
"frame": { "x": 840, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 840, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 200 "duration": 200
}, },
{ {
"filename": "Sprite-0002 36.aseprite", "filename": "Sprite-0002 36.aseprite",
"frame": { "x": 0, "y": 160, "w": 140, "h": 160 }, "frame": { "x": 0, "y": 160, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 200 "duration": 200
}, },
{ {
"filename": "Sprite-0002 37.aseprite", "filename": "Sprite-0002 37.aseprite",
"frame": { "x": 420, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 420, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 200 "duration": 200
}, },
{ {
"filename": "Sprite-0002 38.aseprite", "filename": "Sprite-0002 38.aseprite",
"frame": { "x": 280, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 280, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 65535 "duration": 65535
}, },
{ {
"filename": "Sprite-0002 39.aseprite", "filename": "Sprite-0002 39.aseprite",
"frame": { "x": 280, "y": 0, "w": 140, "h": 160 }, "frame": { "x": 280, "y": 0, "w": 140, "h": 160 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": false,
"spriteSourceSize": { "x": 10, "y": 0, "w": 140, "h": 160 }, "spriteSourceSize": { "x": 0, "y": 0, "w": 140, "h": 160 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -364,8 +364,8 @@
"frame": { "x": 560, "y": 320, "w": 140, "h": 150 }, "frame": { "x": 560, "y": 320, "w": 140, "h": 150 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 10, "w": 140, "h": 150 }, "spriteSourceSize": { "x": 0, "y": 10, "w": 140, "h": 150 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -373,8 +373,8 @@
"frame": { "x": 280, "y": 470, "w": 140, "h": 140 }, "frame": { "x": 280, "y": 470, "w": 140, "h": 140 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 20, "w": 140, "h": 140 }, "spriteSourceSize": { "x": 0, "y": 20, "w": 140, "h": 140 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -382,8 +382,8 @@
"frame": { "x": 280, "y": 750, "w": 140, "h": 130 }, "frame": { "x": 280, "y": 750, "w": 140, "h": 130 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 30, "w": 140, "h": 130 }, "spriteSourceSize": { "x": 0, "y": 30, "w": 140, "h": 130 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -391,8 +391,8 @@
"frame": { "x": 420, "y": 750, "w": 140, "h": 120 }, "frame": { "x": 420, "y": 750, "w": 140, "h": 120 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 40, "w": 140, "h": 120 }, "spriteSourceSize": { "x": 0, "y": 40, "w": 140, "h": 120 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -400,8 +400,8 @@
"frame": { "x": 560, "y": 750, "w": 140, "h": 110 }, "frame": { "x": 560, "y": 750, "w": 140, "h": 110 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 50, "w": 140, "h": 110 }, "spriteSourceSize": { "x": 0, "y": 50, "w": 140, "h": 110 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -409,8 +409,8 @@
"frame": { "x": 700, "y": 750, "w": 140, "h": 100 }, "frame": { "x": 700, "y": 750, "w": 140, "h": 100 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 60, "w": 140, "h": 100 }, "spriteSourceSize": { "x": 0, "y": 60, "w": 140, "h": 100 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -418,8 +418,8 @@
"frame": { "x": 840, "y": 750, "w": 140, "h": 90 }, "frame": { "x": 840, "y": 750, "w": 140, "h": 90 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 70, "w": 140, "h": 90 }, "spriteSourceSize": { "x": 0, "y": 70, "w": 140, "h": 90 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -427,8 +427,8 @@
"frame": { "x": 0, "y": 760, "w": 140, "h": 80 }, "frame": { "x": 0, "y": 760, "w": 140, "h": 80 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 80, "w": 140, "h": 80 }, "spriteSourceSize": { "x": 0, "y": 80, "w": 140, "h": 80 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -436,8 +436,8 @@
"frame": { "x": 140, "y": 760, "w": 140, "h": 70 }, "frame": { "x": 140, "y": 760, "w": 140, "h": 70 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 10, "y": 90, "w": 140, "h": 70 }, "spriteSourceSize": { "x": 0, "y": 90, "w": 140, "h": 70 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -445,8 +445,8 @@
"frame": { "x": 140, "y": 830, "w": 120, "h": 60 }, "frame": { "x": 140, "y": 830, "w": 120, "h": 60 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 20, "y": 100, "w": 120, "h": 60 }, "spriteSourceSize": { "x": 10, "y": 100, "w": 120, "h": 60 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -454,8 +454,8 @@
"frame": { "x": 0, "y": 840, "w": 100, "h": 50 }, "frame": { "x": 0, "y": 840, "w": 100, "h": 50 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 30, "y": 110, "w": 100, "h": 50 }, "spriteSourceSize": { "x": 20, "y": 110, "w": 100, "h": 50 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -463,8 +463,8 @@
"frame": { "x": 840, "y": 840, "w": 100, "h": 40 }, "frame": { "x": 840, "y": 840, "w": 100, "h": 40 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 30, "y": 120, "w": 100, "h": 40 }, "spriteSourceSize": { "x": 20, "y": 120, "w": 100, "h": 40 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -472,8 +472,8 @@
"frame": { "x": 700, "y": 850, "w": 60, "h": 30 }, "frame": { "x": 700, "y": 850, "w": 60, "h": 30 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 50, "y": 130, "w": 60, "h": 30 }, "spriteSourceSize": { "x": 40, "y": 130, "w": 60, "h": 30 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -481,8 +481,8 @@
"frame": { "x": 760, "y": 850, "w": 60, "h": 20 }, "frame": { "x": 760, "y": 850, "w": 60, "h": 20 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 50, "y": 140, "w": 60, "h": 20 }, "spriteSourceSize": { "x": 40, "y": 140, "w": 60, "h": 20 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
}, },
{ {
@@ -490,8 +490,8 @@
"frame": { "x": 560, "y": 860, "w": 60, "h": 10 }, "frame": { "x": 560, "y": 860, "w": 60, "h": 10 },
"rotated": false, "rotated": false,
"trimmed": true, "trimmed": true,
"spriteSourceSize": { "x": 50, "y": 150, "w": 60, "h": 10 }, "spriteSourceSize": { "x": 40, "y": 150, "w": 60, "h": 10 },
"sourceSize": { "w": 160, "h": 160 }, "sourceSize": { "w": 140, "h": 160 },
"duration": 1 "duration": 1
} }
], ],

1
libs/hump Submodule

Submodule libs/hump added at 08937cc0ec

View File

@@ -1,19 +1,25 @@
--load peachy --load peachy
peachy = require("libs/peachy") peachy = require("libs/peachy")
--load globals
local globals = require("modules/globals")
game = globals.game
--load player --load player
player = require("modules/player") player = require("modules/player")
--load floors
floors = require("modules/floors")
--load content_loader --load content_loader
local content_loader = require("modules/content_loader") local content_loader = require("modules/content_loader")
spritesheets = content_loader.spritesheets spritesheets = content_loader.spritesheets
sound_effects = content_loader.sound_effects sound_effects = content_loader.sound_effects
backgrounds = content_loader.backgrounds
music = content_loader.music
--load globals player:init(sound_effects, spritesheets, game)
local globals = require("modules/globals") --load hump camera
local game = globals.game Camera = require("libs/hump/camera")
camera = Camera(player.object.body:getX(), player.object.body:getY())
--load draw_callback --load draw_callback
draw_mod = require("modules/draw_callback") draw_mod = require("modules/draw_callback")
@@ -25,14 +31,18 @@ update_mod = require("modules/update_callback")
local update_callback = update_mod.update local update_callback = update_mod.update
local updateinit = update_mod.updateinit local updateinit = update_mod.updateinit
drawerinit(spritesheets, player, game) floors:addFloor("Bottom", game, 0, (game:getcurlevel().height /4) - 160, game:getcurlevel().width, 160, 255, 255, 255, 255)
updateinit(game)
player:init(sound_effects, spritesheets, game) drawerinit(spritesheets, player, game, camera, floors)
updateinit(game, camera, floors)
--play music for level
game:getcurlevel().music:play()
function love.draw() function love.draw()
draw_callback() draw_callback()
end end
function love.update(dt) function love.update(dt)
update_callback(dt) update_callback(dt)
end end

View File

@@ -15,22 +15,13 @@ spritesheets["player_die"] = peachy.new("assets/images/spritesheets/player.json"
--load player DEFAULT --load player DEFAULT
spritesheets["player_default"] = peachy.new("assets/images/spritesheets/player.json", love.graphics.newImage("assets/images/spritesheets/player.png"), "Default") spritesheets["player_default"] = peachy.new("assets/images/spritesheets/player.json", love.graphics.newImage("assets/images/spritesheets/player.png"), "Default")
--load backgrounds
local backgrounds = {}
for i, file in ipairs(love.filesystem.getDirectoryItems("assets/images/backgrounds")) do
if file:find(".png") then
--load backgrounds
print(i)
backgrounds[i] = love.graphics.newImage("assets/images/backgrounds/"..file)
end
end
--load sound effects --load sound effects
local sound_effects = {} local sound_effects = {}
for i, file in ipairs(love.filesystem.getDirectoryItems("assets/sounds/effects")) do for i, file in ipairs(love.filesystem.getDirectoryItems("assets/audio/effects")) do
if file:find(".ogg") then if file:find(".ogg") then
--load sound effects --load sound effects
local keyname = file:gsub(".ogg", "") local keyname = file:gsub(".ogg", "")
sound = love.audio.newSource("assets/sounds/effects/"..file, "static") sound = love.audio.newSource("assets/audio/effects/"..file, "static")
sound_effects[keyname] = {} sound_effects[keyname] = {}
sound_effects[keyname].volume = 1 sound_effects[keyname].volume = 1
sound_effects[keyname].timer = love.timer.getTime() sound_effects[keyname].timer = love.timer.getTime()
@@ -48,17 +39,7 @@ for i, file in ipairs(love.filesystem.getDirectoryItems("assets/sounds/effects")
end end
end end
end end
--load music
local music = {}
for i, file in ipairs(love.filesystem.getDirectoryItems("assets/sounds/music")) do
if file:find(".ogg") then
--load music
music[file:sub(1, -5)] = love.audio.newSource("assets/sounds/music/"..file, "stream")
end
end
return { return {
spritesheets = spritesheets, spritesheets = spritesheets,
backgrounds = backgrounds,
sound_effects = sound_effects, sound_effects = sound_effects,
music = music
} }

View File

@@ -1,31 +1,43 @@
local spritesheets = {} local spritesheets = {}
local player = {} local player = {}
local game = {} local game = {}
local camera = {}
local floors = {}
function drawerinit(spritesheetst, playert, gamex) function drawerinit(spritesheetst, playert, gamex, camerax, floorsx)
spritesheets = spritesheetst spritesheets = spritesheetst
player = playert player = playert
game = gamex game = gamex
camera = camerax
floors = floorsx
end end
local function draw() local function draw()
camera:attach()
--draw rectangle with bottom at 980y and top at 850y which stretches acress the entire modules/player
--draw background --draw background
love.graphics.draw(backgrounds[game.level], 0, 0) love.graphics.draw(game:getcurlevel().background, 0, -(game:getcurlevel().height) + 280)
--draw player_animation --draw floors
player.animation:draw(player.x, player.y) for i = 1, #floors, 1 do
if player.state == "idle" then love.graphics.setColor(love.math.colorFromBytes(floors[i].color[1], floors[i].color[2], floors[i].color[3], floors[i].color[4]))
spritesheets["player_idle"]:draw(player.x, player.y) love.graphics.rectangle("fill", floors[i].x, floors[i].y, floors[i].width, floors[i].height)
elseif player.state == "walk_left" then
spritesheets["player_walk_left"]:draw(player.x, player.y)
elseif player.state == "walk_right" then
spritesheets["player_walk_right"]:draw(player.x, player.y)
elseif player.state == "jump" then
spritesheets["player_jump"]:draw(player.x, player.y)
elseif player.state == "die" then
spritesheets["player_die"]:draw(player.x, player.y)
else
spritesheets["player_default"]:draw(player.x, player.y)
end end
--draw player_animation
player.animation:draw(player.object.body:getX(), player.object.body:getY())
if player.state == "idle" then
spritesheets["player_idle"]:draw(player.object.body:getX(), player.object.body:getY())
elseif player.state == "walk_left" then
spritesheets["player_walk_left"]:draw(player.object.body:getX(), player.object.body:getY())
elseif player.state == "walk_right" then
spritesheets["player_walk_right"]:draw(player.object.body:getX(), player.object.body:getY())
elseif player.state == "jump" then
spritesheets["player_jump"]:draw(player.object.body:getX(), player.object.body:getY())
elseif player.state == "die" then
spritesheets["player_die"]:draw(player.object.body:getX(), player.object.body:getY())
else
spritesheets["player_default"]:draw(player.object.body:getX(), player.object.body:getY())
end
camera:detach()
end end
return { return {
drawerinit = drawerinit, drawerinit = drawerinit,

28
modules/floors.lua Normal file
View File

@@ -0,0 +1,28 @@
local floors = {}
floors.addFloor = function(self, name, game, x, y, w, h, r, g, b, a)
local floor = {}
floor.name = name
floor.x = x
floor.y = y
floor.width = w
floor.height = h
floor.userdata = "floor"
floor.color = {r, g, b, a}
floor.body = love.physics.newBody(game.world, x + w / 2, y, "static")
floor.shape = love.physics.newRectangleShape(w, h)
floor.fixture = love.physics.newFixture(floor.body, floor.shape)
floor.fixture:setUserData(floor.userdata)
table.insert(self, floor)
game.objects.floors = self.floors
end
floors.listFloors = function(self)
allstr = ""
for i,v in pairs(self) do
--if v is not a function
if type(v) ~= "function" then
allstr = allstr .. (v.name..": \""..v.body:getX().."\"; y: \""..v.body:getY().."\";;;")
end
end
return allstr
end
return floors

View File

@@ -6,7 +6,27 @@ game.title = "Weeeeeeeee"
game.version = "0.0.1" game.version = "0.0.1"
game.fullscreen = false game.fullscreen = false
game.level = 1 game.level = 1
game.die_animation_elapsed = false game.level_count = 1
game.levels = {}
game.objects = {}
--set up physics
love.physics.setMeter(64)
game.world = love.physics.newWorld(0, 9.81*64, true)
game.getcurlevel = function(self)
return self.levels[self.level]
end
for i = 1, game.level_count, 1 do
game.levels[i] = {}
game.levels[i].background = love.graphics.newImage("assets/images/backgrounds/level".. i .."_hires.png")
game.levels[i].width = game.levels[i].background:getWidth()
game.levels[i].height = game.levels[i].background:getHeight()
--print level dimensions
print("Level " .. i .. " dimensions: " .. game.levels[i].width .. "x" .. game.levels[i].height)
game.levels[i].music = love.audio.newSource("assets/audio/music/track".. i ..".ogg", "static")
game.levels[i].music:setLooping(true)
end
return { return {
game = game game = game

View File

@@ -1,47 +1,70 @@
local player = {} local player = {}
player.x = 0 player.width = 140
player.y = 500
player.width = 160
player.height = 160 player.height = 160
player.speed = 200 player.speed = 320000
player.jump_height = 500 player.speed_jumping = 640000
player.speed_walking = 320000
player.jump_height = 400
player.state = "idle" player.state = "idle"
player.direction = "right" player.direction = "right"
player.alive = true player.alive = true
player.object = {}
player.init = function(self, sound_effects, spritesheets, game) player.init = function(self, sound_effects, spritesheets, game)
self.sound_effects = sound_effects self.sound_effects = sound_effects
self.spritesheets = spritesheets self.spritesheets = spritesheets
self.game = game self.game = game
player.animation = spritesheets["player_idle"] self.animation = spritesheets["player_idle"]
self.object.body = love.physics.newBody(game.world, player.width, player.height, "dynamic")
self.object.shape = love.physics.newRectangleShape(player.width, player.height)
self.object.fixture = love.physics.newFixture(self.object.body, self.object.shape)
self.object.fixture:setUserData("player")
self.spawnx, self.spawny = game:getcurlevel().width / 2, game:getcurlevel().height / 4 - self.height * 2
self.object.body:setPosition(self.spawnx, self.spawny)
self.game.player = self
end end
player.walk_right = function(self, dt) player.walk_right = function(self, dt)
if self.x < self.game.width - self.width and self.alive then if self.alive then
self.x = self.x + self.speed * dt self.object.body:applyForce(self.speed * dt, 0)
self.state = "walk_right" self.state = "walk_right"
self.direction = "right" self.direction = "right"
self.animation = self.spritesheets["player_walk_right"] self.animation = self.spritesheets["player_walk_right"]
end end
end end
player.walk_left = function(self, dt) player.walk_left = function(self, dt)
if self.x > 0 and self.alive then if self.alive then
self.x = self.x - self.speed * dt self.object.body:applyForce(-(self.speed * dt), 0)
self.state = "walk_left" self.state = "walk_left"
self.direction = "left" self.direction = "left"
self.animation = self.spritesheets["player_walk_left"] self.animation = self.spritesheets["player_walk_left"]
end end
end end
player.jump = function(self, dt) player.jump = function(self, dt)
if self.y > 0 and self.alive then --check if alive and if on floor
self.y = self.y - self.jump_height * dt if self.alive then
self.state = "jump" --check all contacts
self.animation = self.spritesheets["player_jump"] for i,v in pairs(self.object.body:getContacts()) do
self.sound_effects["jump"]:play() --get fixtures
local fixtureA, fixtureB = v:getFixtures( )
--get userdata
local userdataA = fixtureA:getUserData()
local userdataB = fixtureB:getUserData()
--check if on floor
if userdataA == "floor" or userdataB == "floor" then
--jump
self.object.body:applyLinearImpulse(0, -self.jump_height)
self.state = "jump"
self.animation = self.spritesheets["player_jump"]
self.sound_effects["jump"]:play()
break
end
end
end end
end end
player.down = function(self, dt) player.down = function(self, dt)
if self.y < self.game.height - self.height and self.alive then if self.alive then
self.y = self.y + self.jump_height * dt self.object.body:applyForce(0, self.jump_height * dt)
self.state = "jump" self.state = "jump"
self.animation = self.spritesheets["player_jump"] self.animation = self.spritesheets["player_jump"]
self.sound_effects["jump"]:play() self.sound_effects["jump"]:play()
@@ -53,7 +76,7 @@ player.die = function(self, dt)
self.state = "die" self.state = "die"
self.animation = self.spritesheets["player_die"] self.animation = self.spritesheets["player_die"]
self.sound_effects["die"]:play() self.sound_effects["die"]:play()
die_animation_elapsed = false self.spritesheets["player_die"]:setFrame(1)
end end
end end
player.revive = function(self, dt) player.revive = function(self, dt)
@@ -62,7 +85,8 @@ player.revive = function(self, dt)
self.state = "idle" self.state = "idle"
self.animation = self.spritesheets["player_default"] self.animation = self.spritesheets["player_default"]
self.sound_effects["revive"]:play() self.sound_effects["revive"]:play()
die_animation_elapsed = false self.spritesheets["player_die"]:setFrame(1)
end end
end end
player.idle = function(self, dt) player.idle = function(self, dt)
@@ -77,4 +101,17 @@ player.default = function(self, dt)
self.animation = self.spritesheets["player_default"] self.animation = self.spritesheets["player_default"]
end end
end end
player.update = function(self, dt)
if self.alive then
--check if below map
if self.object.body:getY() > self.game:getcurlevel().height then
self:die()
--reset position, rotation and velocity
self.object.body:setPosition(self.spawnx, self.spawny)
self.object.body:setAngle(0)
self.object.body:setLinearVelocity(0, 0)
self:revive()
end
end
end
return player return player

View File

@@ -1,15 +1,17 @@
local game = {} local game = {}
local camera = {}
local function updateinit(gamex) local floors = {}
local function updateinit(gamex, camerax, floorsx)
game = gamex game = gamex
camera = camerax
floors = floorsx
end end
local function update(dt) local function update(dt)
game.world:update(dt)
--update player_animation --update player_animation
if spritesheets["player_die"]:getFrame() ~= 16 and not game.die_animation_elapsed then if spritesheets["player_die"]:getFrame() ~= 16 then
spritesheets["player_die"]:update(dt) spritesheets["player_die"]:update(dt)
else
game.die_animation_elapsed = true
end end
if player.alive then if player.alive then
spritesheets["player_jump"]:update(dt) spritesheets["player_jump"]:update(dt)
@@ -21,32 +23,55 @@ local function update(dt)
--get keyboard --get keyboard
local key = love.keyboard.isDown local key = love.keyboard.isDown
player:idle(dt)
--move player --move player
if key("d") then if key("d") then
player:walk_right(dt) player:walk_right(dt)
elseif key("a") then elseif key("a") then
player:walk_left(dt) player:walk_left(dt)
else
player:idle(dt)
end end
--jump player --jump player
if key("w") then if key("w") then
player:jump(dt) player:jump(dt)
player.speed = player.speed_jumping
else
player.speed = player.speed_walking
end end
if game.debug then if game.debug then
if key("s") then if key("s") then
player:down(dt) player:down(dt)
player.speed = player.speed_jumping
else
player.speed = player.speed_walking
end end
if key("f") then if key("f") then
--die --die
player.spritesheets["player_die"]:setFrame(1)
player:die(dt) player:die(dt)
game.die_animation_elapsed = false
elseif key("g") then elseif key("g") then
--revive player --revive player
player.spritesheets["player_die"]:setFrame(1)
player:revive(dt) player:revive(dt)
game.die_animation_elapsed = false end
if key("x") then
--print coordinates of all objects
local allstr = floors:listFloors()
allstr = allstr .. ("Player: \""..game.player.object.body:getX().."\"; y: \""..game.player.object.body:getY().."\";;;")
print(allstr)
end
if key("c") then
--reset player position
player.object.body:setX(player.spawnx)
player.object.body:setY(player.spawny)
--and velocity
player.object.body:setLinearVelocity(0, 0)
--and rotation
player.object.body:setAngle(0)
end end
end end
player:update(dt)
local dx,dy = (player.object.body:getX() - camera.x) / 2, (player.object.body:getY() - camera.y) / 2
camera:move(dx, dy)
end end
return { return {
update = update, update = update,