Finish tasks to bring calculation capabilities in line with last interval. #9

Merged
Cutieguwu merged 19 commits from gamelog into main 2025-04-06 12:20:32 -04:00
6 changed files with 34 additions and 13 deletions
Showing only changes of commit cb5fc6117a - Show all commits

2
gamelog/Cargo.lock generated
View File

@@ -19,7 +19,7 @@ dependencies = [
[[package]]
name = "gamelog"
version = "0.3.1"
version = "0.5.0"
dependencies = [
"ron",
"semver",

View File

@@ -1,6 +1,6 @@
[package]
name = "gamelog"
version = "0.3.1"
version = "0.5.0"
edition = "2024"
[dependencies]

View File

@@ -10,13 +10,30 @@ pub enum Event {
Kickoff(Offence),
Turnover(Offence),
Penalty(TerrainState),
Score(u8),
Pat(PatPoints),
Score(ScorePoints),
}
#[derive(Debug, Deserialize, Clone, PartialEq)]
pub enum PatPoints {
Fail,
One,
Two,
pub enum ScorePoints {
Touchdown,
FieldGoal,
Safety,
PatFail,
PatTouchdown,
PatFieldGoal,
PatSafety,
}
impl ScorePoints {
pub fn to_points(&self) -> u8 {
match &self {
Self::Touchdown => 6,
Self::FieldGoal => 3,
Self::Safety => 2,
Self::PatFail => 0,
Self::PatTouchdown => 2,
Self::PatFieldGoal => 1,
Self::PatSafety => 1,
}
}
}

View File

@@ -10,7 +10,7 @@ mod play;
mod terrain;
#[allow(unused)]
pub const MIN_VER: semver::Version = semver::Version::new(0, 4, 0);
pub const MIN_VER: semver::Version = semver::Version::new(0, 5, 0);
pub use action::*;
pub use event::Event;

View File

@@ -1,4 +1,4 @@
use crate::{Event, PlayHandle};
use crate::{Event, Play, PlayHandle};
use serde::Deserialize;
#[derive(Debug, Deserialize, Clone)]
@@ -9,7 +9,7 @@ pub struct Period {
}
impl PlayHandle for Period {
fn plays(&self) -> Vec<crate::Play> {
fn plays(&self) -> Vec<Play> {
self.events
.iter()
.filter_map(|event| {

View File

@@ -26,9 +26,13 @@ impl PlayHandle for Play {
}
impl Distance for Play {
fn distance(&self) -> u8 {}
fn distance(&self) -> u8 {
todo!()
}
fn delta<D: Distance>(&self, d: D) {}
fn delta<D: Distance>(&self, d: D) {
todo!()
}
}
#[derive(Debug, Deserialize, Clone, Default, PartialEq)]