use crate::sim::crab::Handedness;
use crate::sim::direction::Direction;
#[derive(Clone, Copy, PartialEq, Eq, Debug)]
pub enum GullState {
Walking,
Flying {
remaining: u8,
},
}
#[derive(Clone, Copy, Debug)]
pub struct Gull {
pub id: u32,
pub tile: u16,
pub dir: Direction,
pub progress: u16,
pub prev_tile: u16,
pub prev_progress: u16,
pub prev_dir: Direction,
pub handed: Handedness,
pub state: GullState,
pub takeoff_in: u32,
}
pub const GULL_WALK_SPEED: u16 = 8;
pub const GULL_FLY_SPEED: u16 = 16;
pub const EAT_RANGE: u16 = 48;
pub const TAKEOFF_MIN: u32 = 150;
pub const TAKEOFF_MAX: u32 = 360;
pub const FLIGHT_MIN: u8 = 2;
pub const FLIGHT_MAX: u8 = 4;