use crate::geometry::{PinGeometry, TEN_PIN_GEOMETRY};
use super::{BonusScheme, DeadwoodPolicy, Ruleset};
#[derive(Debug, Clone, Copy)]
pub struct TenPin;
impl Ruleset for TenPin {
const PIN_COUNT: u8 = 10;
const FRAME_COUNT: u8 = 10;
const BALLS_PER_FRAME: u8 = 2;
const DEADWOOD: DeadwoodPolicy = DeadwoodPolicy::Cleared;
const BONUS: BonusScheme = BonusScheme::Traditional {
strike_bonus_balls: 2,
spare_bonus_balls: 1,
};
const ALL_DOWN_IS_SPARE: bool = true;
fn geometry() -> Option<&'static PinGeometry> {
Some(&TEN_PIN_GEOMETRY)
}
fn name() -> &'static str {
"Ten-Pin Bowling"
}
}