revert: rollback buggy update_rats refactor

This commit is contained in:
2026-06-18 12:24:56 +02:00
parent 8bd57f4748
commit fafb95d03c
+3 -2
View File
@@ -184,9 +184,10 @@ void update_rats(void) {
spawn_rat(r->rat_x, r->rat_y, get_opposite(r->current_dir)); spawn_rat(r->rat_x, r->rat_y, get_opposite(r->current_dir));
} }
} }
continue;
} }
if (r->reproduce_timer == 0) { if (r->rat_x == r->target_x && r->rat_y == r->target_y) {
uint8_t valid_dirs[4]; uint8_t valid_dirs[4];
uint8_t num_valid = 0; uint8_t num_valid = 0;
@@ -269,7 +270,7 @@ void update_rats(void) {
// Invece di chiamare set_sprite_tile/prop 30 volte a frame (che è devastante per il GBDK), // Invece di chiamare set_sprite_tile/prop 30 volte a frame (che è devastante per il GBDK),
// aggiorniamo gli sprite in VRAM *solo* quando do_move è vero (ogni 2 frame) // aggiorniamo gli sprite in VRAM *solo* quando do_move è vero (ogni 2 frame)
// e solo calcolando l'offset. // e solo calcolando l'offset.
if (do_move || r->current_dir == 255 || r->reproduce_timer > 0) { if (do_move || r->current_dir == 255) {
uint8_t base_x = r->pixel_x + 12; uint8_t base_x = r->pixel_x + 12;
uint8_t base_y = r->pixel_y + 20; uint8_t base_y = r->pixel_y + 20;
uint8_t s0 = r->sprite_base_idx; uint8_t s0 = r->sprite_base_idx;