mod castles;
mod statics;
mod water;
pub use castles::{
CastleFlight, CastleSprite, fly_castles, kick_castles, sync_castles, wave_pennants,
};
pub use statics::{
BoardStatic, SignpostSprite, TurnstileSprite, animate_turnstiles, pulse_spawners,
spawn_static_board, sync_signposts, sync_turnstiles,
};
pub use water::{
WaterFoam, Waterline, spawn_water_foam, spawn_waterline, update_water_foam, update_waterline,
};
use bevy::prelude::*;
fn image_sprite(image: &Handle<Image>, tint: Color, size: Vec2) -> Sprite {
Sprite {
image: image.clone(),
color: tint,
custom_size: Some(size),
..default()
}
}
fn on_board(board: &crate::sim::Board, x: u8, y: u8) -> bool {
x < board.width() && y < board.height()
}
const WALL_COLOR: Color = Color::srgb(0.35, 0.28, 0.22);
const WATER: Color = Color::srgba(0.30, 0.58, 0.82, 0.65);
const WATER_MAX: f32 = 42.0;
pub(super) use crate::app::layout::z;