From 3c3f7de1a640f571a6b0a2cc7a996e555ed84ed9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miloslav=20=C4=8C=C3=AD=C5=BE?= Date: Wed, 25 Sep 2019 20:14:45 +0200 Subject: [PATCH] Update --- assets.h | 85 ++++++++++++++++++++++++++++++++++++++++---------------- levels.h | 19 +++++++------ main.c | 8 ++++-- 3 files changed, 76 insertions(+), 36 deletions(-) diff --git a/assets.h b/assets.h index 491cab9..0721660 100644 --- a/assets.h +++ b/assets.h @@ -8,35 +8,72 @@ static inline uint8_t SFG_getTexel(uint8_t *texture, uint8_t x, uint8_t y) return texture[(y & 0x1f) * SFG_TEXTURE_SIZE + (x & 0x1f)]; } -const uint8_t SFG_textureWall1[SFG_TEXTURE_SIZE * SFG_TEXTURE_SIZE] = { +const uint8_t SFG_texturesWall[][SFG_TEXTURE_SIZE * SFG_TEXTURE_SIZE] = +{ +{ +4,4,4,4,4,4,4,20,4,4,4,4,4,4,4,4,4,4,4,4,4,20,20,3,20,4,5,0,3,4,4,4,4,4,4,4,4,4, +4,4,4,4,4,4,20,4,20,3,4,4,4,4,4,4,4,21,4,4,5,20,3,4,4,4,4,21,21,21,21,21,4,21, +21,4,4,21,4,21,21,4,4,4,4,4,4,21,4,4,4,4,4,96,3,4,4,4,21,21,21,5,21,21,21,21,21, +5,5,5,5,5,21,21,4,4,4,4,21,4,4,4,4,4,5,20,4,21,21,21,4,21,21,21,5,5,21,5,5,5,21, +21,21,5,21,21,21,21,21,5,5,5,5,21,21,21,4,2,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,21,4, +21,4,21,21,4,21,4,21,21,4,21,4,4,4,18,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, +4,4,4,4,4,4,4,21,21,6,20,3,4,4,4,3,18,26,2,2,26,3,20,2,56,3,3,3,3,3,3,3,3,3,26, +3,3,3,3,3,3,82,0,3,3,26,18,5,5,5,5,5,5,5,5,6,0,5,5,21,4,4,4,4,4,4,21,21,4,21,21, +21,21,21,21,21,5,5,5,4,4,4,21,4,4,4,3,5,0,4,4,4,4,4,4,4,4,4,4,4,20,4,4,4,4,4,4, +4,4,4,21,4,4,4,4,4,21,21,4,3,0,4,4,4,21,21,21,21,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, +21,21,21,4,21,21,5,4,5,0,4,4,4,4,4,4,21,5,21,21,21,5,21,5,5,21,21,21,21,21,21,5, +5,21,5,21,4,4,4,4,5,0,5,5,5,5,5,5,5,5,5,5,21,4,4,4,4,4,21,21,21,5,21,5,21,21,4, +4,4,21,4,3,4,0,4,4,4,4,4,4,4,4,4,4,20,20,4,4,21,5,5,21,4,21,4,4,4,4,21,4,4,4,4, +4,5,0,4,4,5,5,21,21,21,21,21,21,5,21,4,4,4,4,4,4,4,4,4,4,4,21,21,21,21,4,4,4,6, +0,5,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,21,4,57,57,49,73,65,65,1,1,49,0,2,1, +25,73,57,65,0,3,3,3,26,3,3,3,26,2,2,2,2,65,224,57,21,21,4,21,5,5,5,5,5,22,5,5,5, +5,5,6,17,4,4,4,4,4,4,4,21,21,21,21,5,21,5,21,20,20,3,3,3,3,3,3,3,3,3,3,3,3,3,4, +0,3,3,4,3,3,3,3,3,20,3,3,3,3,20,20,4,21,21,4,4,4,4,4,4,4,4,4,4,4,4,5,16,4,4,4,4, +21,21,21,21,5,21,21,5,21,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,3,4,4,4,4,4,4,21, +21,21,21,4,4,4,4,21,21,4,4,4,21,4,4,21,5,21,5,5,21,21,5,16,4,4,21,4,4,4,21,21, +21,21,5,21,5,21,21,21,21,21,4,4,4,4,4,4,4,4,4,4,4,20,4,0,4,4,4,21,21,21,5,21,5, +21,21,21,21,21,21,4,4,4,4,4,4,4,4,4,4,4,4,4,21,4,5,10,3,3,4,4,4,4,4,4,4,4,4,3,4, +4,20,20,20,3,74,3,3,3,3,3,3,3,4,3,3,3,4,26,4,4,4,4,4,20,4,4,20,20,3,20,20,3,3,4, +17,18,21,4,21,4,21,21,21,21,4,4,5,5,5,4,4,21,21,21,4,21,4,4,4,5,5,5,5,5,4,4,6,2, +4,4,4,4,4,4,4,4,4,4,4,4,3,4,4,4,3,3,3,3,3,3,3,20,3,3,20,4,4,3,20,3,4,4,4,4,4,4, +4,4,4,4,21,21,4,4,4,21,5,21,21,4,21,4,4,4,4,4,4,4,4,4,5,0,4,4,4,21,5,21,5,5,5,5, +5,5,21,21,21,21,5,5,5,5,5,5,5,5,21,5,21,21,4,3,3,26,5,5,21,5,5,5,21,5,5,21,5,5, +5,5,21,5,5,5,5,5,5,4,21,4,4,4,4,4,4,5,5,136,4,4,4,4,4,4,4,21,4,21,4,4,4,4,4,4,4, +4,4,4,4,4,21,4,21,4,4,5,5,4,4,81,4,4,4,20,20,4,3,3,3,3,3,26,3,3,20,3,3,3,3,3,3, +3,3,3,3,3,3,3,4 +}, +{ 5,4,4,5,59,2,5,5,4,66,45,5,4,4,4,4,4,4,2,5,4,44,4,4,4,4,3,3,2,44,4,4,4,4,4,51, 67,8,5,86,3,2,4,5,4,4,4,4,4,4,2,4,5,4,4,5,4,5,4,50,3,60,44,5,131,131,131,3,2,66, 60,4,2,2,3,3,4,3,4,3,4,3,49,2,2,5,4,3,51,3,131,2,50,66,2,131,4,4,4,4,66,3,3,3, 81,81,3,4,3,59,2,66,82,81,2,66,218,66,138,131,2,2,56,3,4,4,4,4,44,4,4,4,2,6,6,6, 5,6,4,4,6,6,5,6,5,6,6,6,6,6,5,6,5,6,6,3,4,4,4,5,4,4,4,4,3,6,5,5,5,4,4,5,5,4,5,4, -5,5,4,5,5,5,5,5,5,5,5,3,4,4,4,132,132,4,44,4,3,6,5,4,4,4,4,5,5,4,4,5,4,5,4,5,4, -5,4,5,4,5,5,2,5,4,4,4,4,4,4,3,3,6,5,5,5,4,5,5,5,5,5,5,44,5,44,5,5,5,5,5,5,5,5, -51,4,4,4,4,3,4,4,3,3,6,5,5,5,5,5,5,5,5,5,5,4,5,5,5,5,45,4,5,4,5,6,3,132,4,4,4, -66,66,2,1,3,6,4,4,5,5,5,5,5,5,5,5,4,5,4,5,4,5,5,5,4,5,5,51,4,139,138,131,3,2,2, -2,3,6,5,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,45,5,5,5,3,2,3,4,3,5,4,5,3,3,6,5,4,5,5, -5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,3,4,4,5,4,4,4,4,3,5,4,5,5,5,5,5,5,5,5,5,5,5, -5,5,5,5,5,4,5,5,5,131,3,4,4,4,4,4,4,3,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,5,5,5, -5,5,2,3,4,4,4,4,5,4,50,3,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,4,5,5,3,3,5,4,5, -4,5,4,3,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,2,3,4,4,5,4,4,4,137,3,6,5, -5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,2,3,4,4,4,5,4,4,0,3,6,5,28,5,5,5,5,5,5, -5,5,5,5,5,5,5,5,5,5,5,5,6,3,3,5,5,4,3,3,3,1,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, -5,5,4,5,5,3,50,3,3,51,132,4,3,50,3,6,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, -3,1,3,3,4,4,4,4,3,3,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,28,5,4,5,4,3,5,4,4,5,4, -5,3,3,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,3,2,4,4,4,4,5,5,44,3,6,4,5,5, -5,5,5,5,5,4,5,5,4,5,5,5,5,5,4,5,4,5,3,3,5,4,4,44,5,4,4,3,5,5,4,5,5,5,6,4,5,5,5, -5,28,5,5,5,4,4,5,4,5,5,4,3,4,5,5,4,4,4,4,3,6,5,5,5,4,5,20,5,5,5,4,5,5,5,5,5,5,5, -28,5,4,5,3,3,45,4,5,4,5,5,3,3,6,5,5,5,5,5,5,5,5,5,5,5,5,5,6,5,5,5,4,5,5,6,4,3,4, -5,5,3,3,3,131,59,4,3,4,3,4,3,4,4,3,4,26,3,3,26,4,26,3,4,3,2,2,131,50,3,4,4,51,4, -4,4,4,2,50,138,217,2,2,2,2,2,2,138,3,3,2,2,81,131,3,2,3,3,4,3,4,2,131,3,5,5,4,5, -5,2,3,4,4,4,81,4,4,4,4,4,4,4,4,2,4,4,4,4,4,4,4,4,5,2,4,5,5,44,44,4,5,4,3,5,5,4, -66,4,4,3,4,4,4,4,3,4,4,4,4,4,4,4,4,4,86,2,4,45,4,4,4,4,4,4,83,5,5,4,49,4,4,4,3, -4,4,4,3,3,4,4,4,4,3,4,4,3,5,3,5,4,61,4,132,4,4,4,2,5,85,4,2,4,4,4,4,4,44,4,3,3, -5,4,4,4,4,4,4,3,6,66,4,4,4 +5,5,4,5,5,5,5,5,5,5,5,3,4,4,4,132,132,4,44,4,3,6,5,128,0,48,2,138,81,2,59,68,6, +130,3,59,51,59,3,59,59,5,5,2,5,4,4,4,4,4,4,3,3,6,5,138,48,128,81,128,138,2,139, +6,6,59,59,59,3,59,59,3,59,5,5,51,4,4,4,4,3,4,4,3,3,6,5,59,2,59,81,81,128,81,128, +6,76,3,59,4,59,3,59,51,59,5,6,3,132,4,4,4,66,66,2,1,3,6,4,2,129,59,81,48,128,81, +0,6,6,130,59,3,59,59,3,137,130,5,5,51,4,139,138,131,3,2,2,2,3,6,5,129,59,2,81, +137,81,137,81,6,60,2,2,59,4,59,3,137,0,5,5,3,2,3,4,3,5,4,5,3,3,6,5,2,81,81,129, +81,81,128,2,6,6,0,129,129,2,2,81,48,0,5,5,3,3,4,4,5,4,4,4,4,3,5,4,137,128,81,59, +137,81,48,48,6,76,0,2,59,216,129,138,2,81,5,5,131,3,4,4,4,4,4,4,3,3,5,5,81,81,2, +129,2,81,138,81,6,6,138,81,48,48,48,128,138,48,5,5,2,3,4,4,4,4,5,4,50,3,6,5,138, +81,2,59,2,130,3,137,6,61,2,216,0,0,0,0,0,0,5,5,3,3,5,4,5,4,5,4,3,3,5,5,2,48,129, +2,138,128,81,0,6,6,81,0,0,0,48,48,0,0,5,6,2,3,4,4,5,4,4,4,137,3,6,5,137,81,81, +81,81,81,48,48,6,68,0,0,0,0,48,48,0,0,5,6,2,3,4,4,4,5,4,4,0,3,6,5,128,137,48,0, +81,129,81,48,6,6,0,0,0,48,0,48,48,0,5,6,3,3,5,5,4,3,3,3,1,3,5,5,81,48,81,81,81, +81,48,48,68,61,0,0,0,0,0,81,48,0,5,5,3,50,3,3,51,132,4,3,50,3,6,4,81,128,81,128, +81,81,48,48,6,68,0,0,0,0,0,0,0,0,5,5,3,1,3,3,4,4,4,4,3,3,5,5,6,6,6,6,6,6,6,6,6, +6,6,6,6,6,6,6,6,6,4,5,4,3,5,4,4,5,4,5,3,3,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, +5,5,5,3,2,4,4,4,4,5,5,44,3,6,4,5,5,5,5,5,5,5,4,5,5,4,5,5,5,5,5,4,5,4,5,3,3,5,4, +4,44,5,4,4,3,5,5,4,5,5,5,6,4,5,5,5,5,28,5,5,5,4,4,5,4,5,5,4,3,4,5,5,4,4,4,4,3,6, +5,5,5,4,5,20,5,5,5,4,5,5,5,5,5,5,5,28,5,4,5,3,3,45,4,5,4,5,5,3,3,6,5,5,5,5,5,5, +5,5,5,5,5,5,5,6,5,5,5,4,5,5,6,4,3,4,5,5,3,3,3,131,59,4,3,4,3,4,3,4,4,3,4,26,3,3, +26,4,26,3,4,3,2,2,131,50,3,4,4,51,4,4,4,4,2,50,138,217,2,2,2,2,2,2,138,3,3,2,2, +81,131,3,2,3,3,4,3,4,2,131,3,5,5,4,5,5,2,3,4,4,4,81,4,4,4,4,4,4,4,4,2,4,4,4,4,4, +4,4,4,5,2,4,5,5,44,44,4,5,4,3,5,5,4,66,4,4,3,4,4,4,4,3,4,4,4,4,4,4,4,4,4,86,2,4, +45,4,4,4,4,4,4,83,5,5,4,49,4,4,4,3,4,4,4,3,3,4,4,4,4,3,4,4,3,5,3,5,4,61,4,132,4, +4,4,2,5,85,4,2,4,4,4,4,4,44,4,3,3,5,4,4,4,4,4,4,3,6,66,4,4,4 +} }; #endif // guard diff --git a/levels.h b/levels.h index 44ac615..06bc247 100644 --- a/levels.h +++ b/levels.h @@ -26,6 +26,7 @@ typedef SFG_TileDefinition SFG_TileDictionary[SFG_TILE_DICTIONARY_SIZE]; ((ceilT & 0x0007) << 13)) #define SFG_TILE_FLOOR_HEIGHT(tile) (tile & 0x1f) +#define SFG_TILE_FLOOR_TEXTURE(tile) ((tile & 0xe0) >> 5) typedef uint8_t SFG_MapArray[SFG_MAP_SIZE * SFG_MAP_SIZE]; /**< @@ -55,7 +56,7 @@ typedef struct static inline SFG_TileDefinition SFG_getMapTile(SFG_Map *map, int16_t x, int16_t y) { if (x < 0 || x >= SFG_MAP_SIZE || y < 0 || y >= SFG_MAP_SIZE) - return SFG_TD(10,10,0,0); + return SFG_TD(63,10,0,0); return map->tileDictionary[map->mapArray[y * SFG_MAP_SIZE + x] & 0x3f]; } @@ -74,8 +75,8 @@ static const SFG_Level SFG_level0 = { .tileDictionary = { - SFG_TD(0 ,0 ,0,0),SFG_TD(5 ,0 ,0,0),SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0), // 0 - SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0), // 4 + SFG_TD(0 ,0 ,0,0),SFG_TD(5 ,0 ,0,0),SFG_TD(1 ,0 ,1,0),SFG_TD(2 ,0 ,1,0), // 0 + SFG_TD(3 ,0 ,1,0),SFG_TD(4 ,0 ,1,0),SFG_TD(5 ,0 ,1,0),SFG_TD(0 ,0 ,0,0), // 4 SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0), // 8 SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0), // 12 SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0),SFG_TD(0 ,0 ,0,0), // 16 @@ -98,12 +99,12 @@ static const SFG_Level SFG_level0 = o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,1 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , - o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,1 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , - o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,1 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , - o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,1 ,1 ,1 ,1 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , - o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , - o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , - o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , + o ,o ,o ,o ,o ,o ,o ,o ,2 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,1 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , + o ,o ,o ,o ,o ,o ,o ,o ,3 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,1 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , + o ,o ,o ,o ,o ,o ,o ,o ,4 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,1 ,1 ,1 ,1 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , + o ,o ,o ,o ,o ,6 ,6 ,6 ,5 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , + o ,o ,o ,o ,o ,6 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , + o ,o ,o ,o ,o ,6 ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o ,o , diff --git a/main.c b/main.c index 337b0ec..ecc5d93 100755 --- a/main.c +++ b/main.c @@ -67,7 +67,7 @@ void SFG_pixelFunc(RCL_PixelInfo *pixel) if (pixel->isWall) { - color = SFG_getTexel(SFG_textureWall1,pixel->texCoords.x / 16,pixel->texCoords.y / 16); + color = SFG_getTexel(SFG_texturesWall[pixel->hit.type],pixel->texCoords.x / 32,pixel->texCoords.y / 32); shadow = pixel->hit.direction >> 1; } else @@ -84,14 +84,16 @@ void SFG_pixelFunc(RCL_PixelInfo *pixel) RCL_Unit SFG_textureAt(int16_t x, int16_t y) { - return 0; + SFG_TileDefinition tile = SFG_getMapTile(&SFG_level0,x,y); + + return SFG_TILE_FLOOR_TEXTURE(tile); } RCL_Unit SFG_floorHeightAt(int16_t x, int16_t y) { SFG_TileDefinition tile = SFG_getMapTile(&SFG_level0,x,y); - return SFG_TILE_FLOOR_HEIGHT(tile) * (RCL_UNITS_PER_SQUARE / 2); + return SFG_TILE_FLOOR_HEIGHT(tile) * (RCL_UNITS_PER_SQUARE / 4); } RCL_Unit SFG_ceilingHeightAt(int16_t x, int16_t y)