This commit is contained in:
Miloslav Číž 2019-09-25 20:14:45 +02:00
parent 542d043057
commit 3c3f7de1a6
3 changed files with 76 additions and 36 deletions

View File

@ -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

View File

@ -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 ,

8
main.c
View File

@ -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)