Added skipping

This commit is contained in:
2025-07-27 22:47:35 +03:00
parent 56acd54b47
commit 7a5f623163

View File

@@ -1418,7 +1418,7 @@ const ScreenVictory = struct {
const skipped_dim = rl.measureTextEx(game.font_title, skipped_text, self.size, self.spacing); const skipped_dim = rl.measureTextEx(game.font_title, skipped_text, self.size, self.spacing);
rl.drawTextEx( rl.drawTextEx(
game.font_title, game.font_title,
"Skipped: false", skipped_text,
.{ .{
.x = (world_width - skipped_dim.x) / 2, .x = (world_width - skipped_dim.x) / 2,
.y = (world_height - skipped_dim.y) / 2 + (cell_size * 3.5), .y = (world_height - skipped_dim.y) / 2 + (cell_size * 3.5),
@@ -1506,6 +1506,7 @@ const ScreenBattle = struct {
transistors: u32 = initial_cpu_transistor_cost, transistors: u32 = initial_cpu_transistor_cost,
cpu_transistor_cost: u32 = initial_cpu_transistor_cost, cpu_transistor_cost: u32 = initial_cpu_transistor_cost,
wave_over_timer: f32 = 0, wave_over_timer: f32 = 0,
skip: bool = false,
skipped: bool = false, skipped: bool = false,
completion_time: f32 = 0, completion_time: f32 = 0,
popup: bool = false, popup: bool = false,
@@ -1516,7 +1517,7 @@ const ScreenBattle = struct {
const wave_continue_delay = 2; // seconds const wave_continue_delay = 2; // seconds
fn init() ScreenBattle { fn init() ScreenBattle {
const wave_number: u8 = 3; // MARK const wave_number: u8 = 1; // MARK
return .{ return .{
.wave_number = wave_number, .wave_number = wave_number,
.wave = .init(wave_number), .wave = .init(wave_number),
@@ -1552,7 +1553,8 @@ const ScreenBattle = struct {
if (self.ram <= 0) { if (self.ram <= 0) {
self.deinit(); self.deinit();
game.screen_state = .{ .gameover = .init() }; game.screen_state = .{ .gameover = .init() };
} else if (self.wave_over_timer >= wave_continue_delay) { } else if (self.wave_over_timer >= wave_continue_delay or self.skip) {
self.skip = false;
self.wave_over_timer = 0; self.wave_over_timer = 0;
self.wave_number += 1; self.wave_number += 1;
self.cpu_transistor_cost = initial_cpu_transistor_cost; self.cpu_transistor_cost = initial_cpu_transistor_cost;
@@ -1615,6 +1617,9 @@ const ScreenBattle = struct {
}, f) catch unreachable; }, f) catch unreachable;
f.writeByte('\n') catch unreachable; f.writeByte('\n') catch unreachable;
unreachable; unreachable;
} else if (rl.isKeyPressed(rl.KeyboardKey.s)) {
self.skip = true;
self.skipped = true;
} }
var mut_konami_code = konami_code; var mut_konami_code = konami_code;