From 32905d613f8c750748a8b74466b84afab490c16f Mon Sep 17 00:00:00 2001 From: "Juan J. Martinez" Date: Wed, 26 Jul 2023 22:27:28 +0100 Subject: Stage 25 --- data/stage25.json | 203 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/data.h | 1 + src/game.c | 3 +- 3 files changed, 206 insertions(+), 1 deletion(-) create mode 100644 data/stage25.json diff --git a/data/stage25.json b/data/stage25.json new file mode 100644 index 0000000..23fcf72 --- /dev/null +++ b/data/stage25.json @@ -0,0 +1,203 @@ +{ "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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 13, 1, 1, 1, 1, 13, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 56, 57, 76, 77, 23, 24, 23, 24, 23, 24, 23, 5, 6, 24, 23, 24, 23, 24, 23, 33, 23, 24, 23, 24, 33, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 5, 6, 24, 76, 77, 56, 57, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 33, 3, 14, 15, 4, 33, 4, 3, 5, 6, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 56, 57, 76, 77, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 33, 23, 34, 35, 24, 33, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 76, 77, 56, 57, 3, 4, 5, 6, 3, 4, 3, 4, 3, 4, 3, 5, 6, 4, 3, 55, 55, 55, 55, 55, 55, 4, 3, 4, 3, 4, 3, 4, 3, 5, 6, 4, 3, 4, 3, 4, 56, 57, 76, 77, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 1, 1, 1, 1, 1, 1, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 76, 77, 56, 57, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 56, 57, 76, 77, 55, 55, 55, 55, 55, 55, 55, 55, 58, 59, 55, 55, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 55, 55, 58, 59, 55, 55, 55, 55, 55, 55, 55, 55, 76, 77, 56, 57, 1, 1, 1, 1, 1, 1, 1, 1, 76, 77, 1, 1, 3, 4, 3, 4, 3, 4, 3, 4, 5, 6, 3, 4, 1, 1, 76, 77, 1, 1, 1, 1, 1, 1, 1, 1, 56, 57, 76, 77, 5, 6, 23, 24, 23, 24, 23, 24, 56, 57, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 23, 24, 56, 57, 23, 24, 23, 24, 23, 24, 23, 24, 76, 77, 56, 57, 3, 4, 55, 55, 55, 55, 55, 55, 76, 77, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 76, 77, 55, 55, 55, 55, 55, 55, 3, 4, 56, 57, 76, 77, 23, 24, 1, 1, 1, 13, 1, 1, 56, 57, 23, 24, 23, 24, 23, 55, 55, 55, 55, 55, 55, 24, 23, 24, 23, 24, 56, 57, 1, 1, 13, 1, 1, 1, 23, 24, 76, 77, 56, 57, 3, 4, 3, 4, 3, 33, 3, 4, 76, 77, 3, 4, 3, 4, 3, 1, 13, 1, 1, 13, 1, 4, 3, 4, 3, 4, 76, 77, 3, 4, 33, 4, 5, 6, 3, 4, 56, 57, 76, 77, 55, 55, 55, 55, 23, 33, 23, 24, 56, 57, 23, 5, 6, 24, 23, 24, 33, 24, 23, 33, 23, 24, 23, 24, 23, 24, 56, 57, 23, 24, 33, 24, 55, 55, 55, 55, 76, 77, 56, 57, 1, 1, 1, 1, 3, 33, 3, 4, 76, 77, 3, 4, 3, 4, 3, 55, 55, 55, 55, 55, 55, 4, 3, 4, 3, 4, 76, 77, 3, 4, 33, 4, 1, 1, 1, 1, 56, 57, 76, 77, 23, 24, 23, 24, 23, 33, 23, 24, 56, 57, 4, 3, 4, 3, 4, 1, 13, 1, 1, 13, 1, 3, 4, 3, 4, 24, 56, 57, 23, 24, 33, 24, 23, 24, 23, 24, 76, 77, 56, 57, 55, 55, 55, 55, 55, 55, 55, 55, 76, 77, 24, 23, 24, 23, 24, 23, 33, 23, 24, 33, 24, 23, 24, 23, 24, 4, 76, 77, 55, 55, 55, 55, 55, 55, 55, 55, 56, 57, 76, 77, 1, 1, 1, 1, 1, 1, 1, 1, 48, 49, 23, 3, 4, 3, 4, 3, 33, 3, 4, 33, 4, 3, 4, 5, 6, 24, 46, 47, 1, 1, 1, 1, 1, 1, 1, 1, 76, 77, 56, 57, 3, 23, 24, 4, 3, 5, 6, 4, 68, 69, 3, 23, 24, 23, 24, 23, 33, 5, 6, 33, 24, 23, 24, 23, 24, 4, 66, 67, 3, 4, 3, 4, 3, 4, 3, 4, 56, 57, 76, 77, 30, 29, 30, 29, 30, 29, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 58, 59, 30, 29, 30, 29, 30, 29, 76, 77, 56, 57, 104, 103, 104, 103, 104, 103, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 76, 77, 104, 103, 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, 21, 21, 21, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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", + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":152, + "y":32 + }, + { + "height":16, + "id":28, + "name":"SilverKey", + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":192, + "y":152 + }, + { + "height":16, + "id":29, + "name":"GoldKey", + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":112, + "y":152 + }, + { + "height":16, + "id":30, + "name":"Bonus", + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":96, + "y":56 + }, + { + "height":16, + "id":32, + "name":"Snake", + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":24, + "y":56 + }, + { + "height":16, + "id":36, + "name":"Bat", + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":48, + "y":32 + }, + { + "height":16, + "id":34, + "name":"Bones", + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":24, + "y":128 + }, + { + "height":16, + "id":33, + "name":"Snake", + "properties":[ + { + "name":"dir", + "type":"string", + "value":"left" + }], + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":280, + "y":56 + }, + { + "height":16, + "id":37, + "name":"Bat", + "properties":[ + { + "name":"dir", + "type":"string", + "value":"left" + }], + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":256, + "y":32 + }, + { + "height":16, + "id":35, + "name":"Bones", + "properties":[ + { + "name":"dir", + "type":"string", + "value":"left" + }], + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":280, + "y":128 + }, + { + "height":16, + "id":31, + "name":"Bonus", + "rotation":0, + "type":"", + "visible":true, + "width":16, + "x":208, + "y":56 + }], + "opacity":1, + "type":"objectgroup", + "visible":true, + "x":0, + "y":0 + }], + "nextlayerid":4, + "nextobjectid":38, + "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 8ccb4ad..77ff6e0 100644 --- a/src/data.h +++ b/src/data.h @@ -38,6 +38,7 @@ extern const uint8_t binary_stage21_start[]; extern const uint8_t binary_stage22_start[]; extern const uint8_t binary_stage23_start[]; extern const uint8_t binary_stage24_start[]; +extern const uint8_t binary_stage25_start[]; /* sound */ extern const uint8_t binary_music_start[]; diff --git a/src/game.c b/src/game.c index e99b6e3..7c39def 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 24 +#define STAGES_LEN 25 static const uint8_t *stages[STAGES_LEN] = { binary_stage01_start, binary_stage02_start, binary_stage03_start, binary_stage04_start, @@ -62,6 +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, }; static void hud_render() -- cgit v1.2.3