use std::time::Duration; use bevy::prelude::*; use rand::{prelude::*, rng}; use crate::{ FIRST_CORNER_X, FIRST_CORNER_Y, GameObject, SECOND_CORNER_X, SECOND_CORNER_Y, ships::{EnemySprite, enemy::spawn_enemy}, }; const MAX_ENEMIES: f32 = 20.0; const MIN_TIME: u64 = 2; const START_TIME: f32 = 10.0; const TIME_PENALTY: f32 = 0.1; const ENEMY_INCREASE: f32 = 0.25; #[derive(Component)] pub struct EnemySpawner { spawn_timer: Timer, amount: f32, } pub fn setup_enemy_spawner(mut commands: Commands) { commands.spawn(( EnemySpawner { spawn_timer: Timer::from_seconds(START_TIME, TimerMode::Repeating), amount: 1., }, GameObject, )); } pub fn tick_enemy_spawner( mut commands: Commands, time: Res