diff options
Diffstat (limited to 'src/engine/sprite_controller.h')
| -rw-r--r-- | src/engine/sprite_controller.h | 92 | 
1 files changed, 53 insertions, 39 deletions
| diff --git a/src/engine/sprite_controller.h b/src/engine/sprite_controller.h index fc6d3d3..3693850 100644 --- a/src/engine/sprite_controller.h +++ b/src/engine/sprite_controller.h @@ -3,6 +3,8 @@  #include "ppu/types.h" +#include "static/tilemap.h" +  // handles sprites  // Bg sprites @@ -11,27 +13,29 @@  //TODO: pack data inside of sprite_palette LUT  //HH_PPU_PALETTE_COUNT -#define HH_SPRITE_COUNT 80 -#define HH_PAL_IDX_SKY 512 + +#define HH_PAL_IDX_SKY 0  #define HH_PAL_IDX_BRICK 1 -const static uint8_t hh_g_sprite_palette[HH_SPRITE_COUNT] = { -	//TODO: make a buffer of 16 no-collider sprites (instead of the current 1) -	0,1,1,1,1,1,1,1,1,1, //1+9 -	1,1,1,1,1,1,1,1,1,1, //6+4 -	1,1,1,1,1,1,1,1,1,	//9 -	7,7,7,2,7,7,1,2,7, -	7,7,7,7, //??  +#define HH_PAL_IDX_SLIME 2 +#define HH_PAL_IDX_CRATE 4 +#define HH_PAL_IDX_SHOP 5 +#define HH_PAL_IDX_TITLE_SCREEN_ICON 3 +#define HH_PAL_IDX_FONT 6 +#define HH_PAL_IDX_DEV 7 +const static uint8_t hh_g_sprite_palette[HH_TM_GROUPS] = { +	HH_PAL_IDX_SKY, +	HH_PAL_IDX_BRICK, +	HH_PAL_IDX_CRATE, +	HH_PAL_IDX_SHOP, +	// HH_PAL_IDX_SHOP, +	HH_PAL_IDX_TITLE_SCREEN_ICON, +	HH_PAL_IDX_FONT, +	HH_PAL_IDX_SKY, +	HH_PAL_IDX_DEV, +	HH_PAL_IDX_SLIME, +	HH_PAL_IDX_DEV +	// HH_PAL_IDX_FONT -	7,6,6,6,6,6,6,6, //baskets -	7,7,7,7,7,7,7,7,7,7, //shop -	7,7,7,7,7, //shop -	6,6,6,6,6, //(hi-)score -	 -	3,3,3,3,3,3, //title_screen icon -	6,6,6,6,/*6,6,6,6,6,6, //title_screen large letters -	6,6,6,6,*/ -	//other palettes here: -	// [HH_PAL_IDX_SKY] = 0,  }; @@ -47,13 +51,13 @@ const static hh_ppu_loc_palette_table_t hh_g_palette = {  		{0x0,0x0,0x0}},  	{//Bricks  		{0x1,0x2,0x3},//01 -		{0xd,0x8,0xa},//24  		{0x0,0x0,0x1},//25  		{0x1,0x1,0x1},//26  		{0x1,0x1,0x2},//27  		{0x2,0x2,0x3},//28  		{0x3,0x4,0x5},//29 -		{0x5,0x1,0x7}}, +		{0x5,0x1,0x7}, +		{0xd,0x8,0xa}},//24  	{//slime  		{0x1,0x2,0x3},  		{0x1,0x3,0x2}, @@ -69,27 +73,35 @@ const static hh_ppu_loc_palette_table_t hh_g_palette = {  		{0x4,0x2,0x5},  		{0x7,0x3,0x7},  		{0xe,0xe,0xe},  -		{0xe,0xe,0xe}, //elemental -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}}, -	{ -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}}, -	{//elemental -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}, -		{0x0,0x0,0x0}, +		{0x7,0x2,0x3}, //elemental +		{0xc,0x5,0x3}, +		{0xe,0xc,0x7}}, +	{//crates +		{0x5,0x7,0x7}, +		{0x3,0x1,0x2}, +		{0x6,0x2,0x2}, +		{0x7,0x4,0x4}, +		{0xa,0x7,0x5},  		{0x0,0x0,0x0},  		{0x0,0x0,0x0},  		{0x0,0x0,0x0}}, +	{//shop +		// {0x1,0x2,0x3}, +		// {0x0,0x0,0x1}, +		// {0x0,0x0,0x0}, +		// {0x0,0x0,0x0}, +		// {0x0,0x0,0x0}, +		// {0x0,0x0,0x0}, +		// {0x0,0x0,0x0}, +		// {0x0,0x0,0x0}}, +		{0x1, 0x2, 0x3},//0 +		{0x0, 0x0, 0x1},//1 +		{0x6, 0x2, 0x2},//2 +		{0x7, 0x4, 0x4},//3 +		{0xc, 0x9, 0x7},//4 +		{0xd, 0xb, 0x9},//5 +		{0x3, 0x4, 0x5},//6 +		{0x8, 0x9, 0x9}},  	{//white  		{0x1,0x2,0x3},  		{0xf,0xf,0xf}, @@ -112,7 +124,9 @@ const static hh_ppu_loc_palette_table_t hh_g_palette = {  void hh_setup_palettes(); +//TODO: UPDATE THIS FUNCTION  /** @brief return palette index that belongs to tilemap index */  uint8_t hh_get_palette(uint8_t tile_idx); +//TODO: UPDATE THIS FUNCTION  bool hh_colidable(uint8_t tile_idx); |