blob: d386d0f1cce2f8d6b6241663bfe6327344de5e9a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
#include <stdint.h>
#include "engine/sprite_controller.h"
#include "ppu/types.h"
#include "ppu/consts.h"
#include "ppu/ppu.h"
#include "static/tilemap.h"
uint8_t hh_get_palette(uint8_t tile_idx) {
for (int i = 0; i < HH_TM_GROUPS; i++) {
if (hh_palette_lut[i] > tile_idx){
return hh_g_sprite_palette[i-1];
}
}
return 0; //not found
// return hh_g_sprite_palette[tile_idx];
}
void hh_setup_palettes(){
//TODO: use simpler function
for (int idx = 0; idx < HH_PPU_PALETTE_COUNT; idx++) {
for (int col = 0; col < HH_PPU_PALETTE_COLOR_COUNT; col++) {
hh_ppu_update_color(idx,col,hh_g_palette[idx][col]);
}
}
// hh_ppu_update_palette_table(hh_g_palette);
}
bool hh_colidable(uint8_t tile_idx){
return (hh_get_palette(tile_idx) != 0);
}
|