aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJuan J. Martinez <jjm@usebox.net>2023-07-27 14:18:29 +0100
committerJuan J. Martinez <jjm@usebox.net>2023-07-27 14:18:29 +0100
commitf2e879ca1cf1089f4d910bb08d152ca804039944 (patch)
treed3734253ac479c6ad77cacfada5ae57d159c856e
parentcdfbad1df2d28b8efb2f7fae5850df56ecf6f8ff (diff)
downloadgold-mine-run-f2e879ca1cf1089f4d910bb08d152ca804039944.tar.gz
gold-mine-run-f2e879ca1cf1089f4d910bb08d152ca804039944.zip
Stage 28
-rw-r--r--data/stage28.json259
-rw-r--r--src/data.h1
-rw-r--r--src/game.c4
3 files changed, 262 insertions, 2 deletions
diff --git a/data/stage28.json b/data/stage28.json
new file mode 100644
index 0000000..e6d1cbc
--- /dev/null
+++ b/data/stage28.json
@@ -0,0 +1,259 @@
+{ "compressionlevel":-1,
+ "height":23,
+ "infinite":false,
+ "layers":[
+ {
+ "data":[56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 56, 57, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 56, 57, 1, 1, 13, 1, 1, 1, 1, 1, 1, 13, 1, 1, 1, 1, 1, 1, 13, 1, 1, 13, 1, 1, 1, 1, 1, 1, 13, 1, 1, 1, 1, 1, 1, 13, 1, 1, 56, 57, 76, 77, 23, 24, 33, 24, 23, 24, 23, 24, 23, 33, 23, 24, 23, 24, 23, 24, 33, 24, 23, 33, 23, 24, 23, 5, 6, 24, 33, 24, 23, 24, 23, 24, 23, 33, 5, 6, 76, 77, 56, 57, 3, 4, 33, 4, 3, 4, 5, 6, 3, 33, 3, 4, 3, 4, 3, 4, 33, 4, 3, 33, 3, 4, 3, 4, 3, 4, 33, 4, 3, 4, 3, 4, 3, 33, 3, 4, 56, 57, 76, 77, 23, 24, 33, 5, 6, 24, 23, 24, 23, 33, 23, 24, 23, 24, 23, 24, 33, 24, 23, 33, 23, 24, 23, 24, 23, 24, 33, 24, 23, 24, 23, 5, 6, 33, 23, 24, 76, 77, 56, 57, 55, 55, 55, 55, 55, 58, 59, 55, 55, 55, 55, 55, 58, 59, 3, 4, 33, 4, 3, 33, 3, 4, 58, 59, 55, 55, 55, 55, 55, 58, 59, 55, 55, 55, 55, 55, 56, 57, 76, 77, 1, 1, 1, 1, 1, 76, 77, 1, 1, 1, 1, 1, 76, 77, 23, 24, 33, 24, 23, 33, 23, 24, 76, 77, 1, 1, 1, 1, 1, 76, 77, 1, 1, 1, 1, 1, 76, 77, 56, 57, 3, 4, 3, 4, 3, 56, 57, 4, 3, 4, 3, 4, 56, 57, 3, 4, 55, 55, 55, 55, 3, 4, 56, 57, 3, 4, 3, 4, 3, 56, 57, 4, 3, 5, 6, 4, 56, 57, 76, 77, 55, 55, 55, 55, 55, 76, 77, 55, 55, 55, 55, 55, 76, 77, 23, 24, 1, 1, 1, 1, 23, 24, 76, 77, 55, 55, 55, 55, 55, 76, 77, 55, 55, 55, 55, 55, 76, 77, 56, 57, 1, 1, 13, 1, 1, 1, 1, 1, 1, 13, 1, 1, 56, 57, 3, 4, 3, 4, 3, 4, 3, 4, 56, 57, 1, 1, 13, 1, 1, 1, 1, 1, 1, 13, 1, 1, 56, 57, 76, 77, 23, 24, 33, 24, 23, 5, 6, 24, 23, 33, 23, 24, 76, 77, 23, 5, 6, 24, 23, 24, 23, 24, 76, 77, 23, 24, 33, 24, 23, 24, 23, 24, 23, 33, 23, 24, 76, 77, 56, 57, 55, 55, 55, 55, 55, 58, 59, 55, 55, 55, 55, 55, 56, 57, 3, 4, 3, 4, 3, 4, 3, 4, 56, 57, 55, 55, 55, 55, 55, 58, 59, 55, 55, 55, 55, 55, 56, 57, 76, 77, 1, 1, 1, 1, 1, 76, 77, 1, 1, 1, 1, 1, 76, 77, 23, 24, 23, 24, 23, 24, 23, 24, 76, 77, 1, 1, 1, 1, 1, 76, 77, 1, 1, 1, 1, 1, 76, 77, 56, 57, 3, 4, 3, 4, 3, 56, 57, 4, 3, 5, 6, 4, 76, 77, 3, 4, 3, 4, 3, 4, 5, 6, 76, 77, 3, 4, 5, 6, 3, 56, 57, 4, 3, 4, 3, 4, 56, 57, 76, 77, 55, 55, 55, 55, 55, 76, 77, 55, 55, 55, 55, 55, 56, 57, 23, 24, 23, 24, 23, 24, 23, 24, 56, 57, 55, 55, 55, 55, 55, 76, 77, 55, 55, 55, 55, 55, 76, 77, 56, 57, 1, 1, 13, 1, 1, 1, 1, 1, 1, 13, 1, 1, 76, 77, 3, 4, 3, 4, 3, 4, 3, 4, 76, 77, 1, 1, 13, 1, 1, 1, 1, 1, 1, 13, 1, 1, 56, 57, 76, 77, 23, 24, 33, 24, 23, 24, 23, 24, 23, 33, 23, 3, 56, 57, 4, 5, 6, 3, 4, 3, 4, 3, 56, 57, 4, 24, 33, 24, 23, 24, 23, 5, 6, 33, 23, 24, 76, 77, 56, 57, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 76, 77, 24, 23, 24, 23, 24, 23, 24, 23, 76, 77, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 56, 57, 76, 77, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 3, 4, 3, 4, 3, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 14, 15, 1, 1, 1, 1, 76, 77, 56, 57, 3, 23, 5, 6, 3, 4, 3, 4, 3, 4, 5, 6, 24, 23, 24, 23, 24, 23, 24, 23, 5, 6, 24, 23, 24, 4, 3, 4, 5, 6, 34, 35, 5, 6, 3, 4, 56, 57, 76, 77, 30, 29, 30, 29, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 30, 29, 30, 29, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 30, 29, 30, 29, 76, 77, 56, 57, 104, 103, 104, 103, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 104, 103, 104, 103, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 104, 103, 104, 103, 56, 57],
+ "height":23,
+ "id":1,
+ "name":"Map",
+ "opacity":1,
+ "type":"tilelayer",
+ "visible":true,
+ "width":40,
+ "x":0,
+ "y":0
+ },
+ {
+ "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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 21, 21, 21, 0, 0, 21, 21, 21, 21, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 21, 21, 21, 0, 0, 21, 21, 21, 21, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 21, 21, 21, 0, 0, 21, 21, 21, 21, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 21, 21, 21, 0, 0, 21, 21, 21, 21, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
+ "height":23,
+ "id":2,
+ "name":"Gold",
+ "opacity":1,
+ "type":"tilelayer",
+ "visible":true,
+ "width":40,
+ "x":0,
+ "y":0
+ },
+ {
+ "draworder":"topdown",
+ "id":3,
+ "name":"Entities",
+ "objects":[
+ {
+ "height":16,
+ "id":1,
+ "name":"Player",
+ "properties":[
+ {
+ "name":"dir",
+ "type":"string",
+ "value":"left"
+ }],
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":256,
+ "y":152
+ },
+ {
+ "height":16,
+ "id":28,
+ "name":"Time",
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":152,
+ "y":48
+ },
+ {
+ "height":16,
+ "id":29,
+ "name":"Time",
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":152,
+ "y":48
+ },
+ {
+ "height":16,
+ "id":30,
+ "name":"Bonus",
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":56,
+ "y":32
+ },
+ {
+ "height":16,
+ "id":31,
+ "name":"Bonus",
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":248,
+ "y":32
+ },
+ {
+ "height":16,
+ "id":32,
+ "name":"Pickaxe",
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":112,
+ "y":152
+ },
+ {
+ "height":16,
+ "id":34,
+ "name":"Snake",
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":32,
+ "y":128
+ },
+ {
+ "height":16,
+ "id":38,
+ "name":"Bones",
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":80,
+ "y":104
+ },
+ {
+ "height":16,
+ "id":40,
+ "name":"Bones",
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":24,
+ "y":56
+ },
+ {
+ "height":16,
+ "id":36,
+ "name":"Snake",
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":32,
+ "y":80
+ },
+ {
+ "height":16,
+ "id":35,
+ "name":"Snake",
+ "properties":[
+ {
+ "name":"dir",
+ "type":"string",
+ "value":"left"
+ }],
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":272,
+ "y":128
+ },
+ {
+ "height":16,
+ "id":37,
+ "name":"Snake",
+ "properties":[
+ {
+ "name":"dir",
+ "type":"string",
+ "value":"left"
+ }],
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":272,
+ "y":80
+ },
+ {
+ "height":16,
+ "id":39,
+ "name":"Bones",
+ "properties":[
+ {
+ "name":"dir",
+ "type":"string",
+ "value":"left"
+ }],
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":224,
+ "y":104
+ },
+ {
+ "height":16,
+ "id":41,
+ "name":"Bones",
+ "properties":[
+ {
+ "name":"dir",
+ "type":"string",
+ "value":"left"
+ }],
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":280,
+ "y":56
+ },
+ {
+ "height":16,
+ "id":33,
+ "name":"Pickaxe",
+ "rotation":0,
+ "type":"",
+ "visible":true,
+ "width":16,
+ "x":192,
+ "y":152
+ }],
+ "opacity":1,
+ "type":"objectgroup",
+ "visible":true,
+ "x":0,
+ "y":0
+ }],
+ "nextlayerid":4,
+ "nextobjectid":42,
+ "orientation":"orthogonal",
+ "renderorder":"right-down",
+ "tiledversion":"1.7.2",
+ "tileheight":8,
+ "tilesets":[
+ {
+ "columns":20,
+ "firstgid":1,
+ "image":"tiles.png",
+ "imageheight":48,
+ "imagewidth":160,
+ "margin":0,
+ "name":"Map",
+ "spacing":0,
+ "tilecount":120,
+ "tileheight":8,
+ "tilewidth":8
+ }],
+ "tilewidth":8,
+ "type":"map",
+ "version":"1.6",
+ "width":40
+} \ No newline at end of file
diff --git a/src/data.h b/src/data.h
index 272b871..6957435 100644
--- a/src/data.h
+++ b/src/data.h
@@ -41,6 +41,7 @@ extern const uint8_t binary_stage24_start[];
extern const uint8_t binary_stage25_start[];
extern const uint8_t binary_stage26_start[];
extern const uint8_t binary_stage27_start[];
+extern const uint8_t binary_stage28_start[];
/* sound */
extern const uint8_t binary_music_start[];
diff --git a/src/game.c b/src/game.c
index e0571bc..1ef0a13 100644
--- a/src/game.c
+++ b/src/game.c
@@ -53,7 +53,7 @@ static Entity *tmonster;
/* 0-index */
#define START_STAGE 0
-#define STAGES_LEN 27
+#define STAGES_LEN 28
static const uint8_t *stages[STAGES_LEN] = {
binary_stage01_start, binary_stage02_start, binary_stage03_start, binary_stage04_start,
@@ -62,7 +62,7 @@ static const uint8_t *stages[STAGES_LEN] = {
binary_stage13_start, binary_stage14_start, binary_stage15_start, binary_stage16_start,
binary_stage17_start, binary_stage18_start, binary_stage19_start, binary_stage20_start,
binary_stage21_start, binary_stage22_start, binary_stage23_start, binary_stage24_start,
- binary_stage25_start, binary_stage26_start, binary_stage27_start,
+ binary_stage25_start, binary_stage26_start, binary_stage27_start, binary_stage28_start,
};
static void hud_render()