Skip to content

Commit e559838

Browse files
committed
removed ClassList
1 parent 745f234 commit e559838

4 files changed

Lines changed: 4 additions & 63 deletions

File tree

Cargo.lock

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ edition = "2018"
88
tf-demo-parser = { git = "https://github.com/Tails8521/parser", rev = "52000d77c5c3729d9a3e3dc307b413372a3de837" }
99
serde = { version = "=1.0.114", features = ["derive"] }
1010
serde_json = "=1.0.56"
11-
serde_repr = "=0.1.6"
1211
num_enum = "=0.5.0"
1312
image = "=0.23.8"
1413
palette = "=0.5"

src/demo_player.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use std::{
1010
path::PathBuf,
1111
};
1212

13-
use coldmaps::heatmap_analyser::{Class, ClassList, HeatmapAnalyser, HeatmapAnalysis, PlayerEntity, PlayerState, Spawn, Team, UserId, UserInfo};
13+
use coldmaps::heatmap_analyser::{Class, HeatmapAnalyser, HeatmapAnalysis, PlayerEntity, PlayerState, Spawn, Team, UserId, UserInfo};
1414
use serde::Serialize;
1515
use tf_demo_parser::{
1616
demo::gamevent::GameEvent, demo::header::Header, demo::message::packetentities::EntityId, demo::message::packetentities::PacketEntity, demo::message::Message,
@@ -546,7 +546,6 @@ impl DemoAnalyzer {
546546
GameEvent::PlayerSpawn(event) => {
547547
let spawn = Spawn::from_event(event, tick);
548548
if let Some(user_state) = self.state.users.get_mut(&spawn.user) {
549-
user_state.classes[spawn.class] += 1;
550549
user_state.team = spawn.team;
551550
}
552551
}
@@ -576,7 +575,6 @@ impl DemoAnalyzer {
576575
}
577576
})
578577
.or_insert_with(|| UserInfo {
579-
classes: ClassList::default(),
580578
team: Team::Other,
581579
steam_id,
582580
user_id,

src/heatmap_analyser.rs

Lines changed: 3 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
use num_enum::TryFromPrimitive;
2-
use serde::{ser::SerializeMap, Deserialize, Serialize, Serializer};
3-
use serde_repr::{Deserialize_repr, Serialize_repr};
2+
use serde::{Deserialize, Serialize};
43
use std::collections::{BTreeMap, HashMap};
54
use std::convert::TryFrom;
6-
use std::ops::{Index, IndexMut};
75
use std::str::FromStr;
86
use tf_demo_parser::demo::gameevent_gen::{GameEvent, PlayerDeathEvent, PlayerSpawnEvent, TeamPlayRoundWinEvent};
97
use tf_demo_parser::demo::message::packetentities::{EntityId, PacketEntity};
@@ -66,7 +64,7 @@ impl Default for Team {
6664
}
6765
}
6866

69-
#[derive(Debug, Clone, Serialize_repr, Deserialize_repr, Copy, PartialEq, Eq, Hash, TryFromPrimitive)]
67+
#[derive(Debug, Clone, Serialize, Deserialize, Copy, PartialEq, Eq, Hash, TryFromPrimitive)]
7068
#[repr(u8)]
7169
pub enum Class {
7270
Other = 0,
@@ -96,55 +94,6 @@ impl Default for Class {
9694
}
9795
}
9896

99-
#[derive(Default, Debug, Eq, PartialEq, Deserialize, Clone)]
100-
#[serde(from = "HashMap<Class, u8>")]
101-
pub struct ClassList([u8; 10]);
102-
103-
impl Index<Class> for ClassList {
104-
type Output = u8;
105-
106-
#[cfg_attr(feature = "no-panic", no_panic::no_panic)]
107-
fn index(&self, class: Class) -> &Self::Output {
108-
&self.0[class as u8 as usize]
109-
}
110-
}
111-
112-
impl IndexMut<Class> for ClassList {
113-
#[cfg_attr(feature = "no-panic", no_panic::no_panic)]
114-
fn index_mut(&mut self, class: Class) -> &mut Self::Output {
115-
&mut self.0[class as u8 as usize]
116-
}
117-
}
118-
119-
impl Serialize for ClassList {
120-
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
121-
where
122-
S: Serializer,
123-
{
124-
let count = self.0.iter().filter(|c| **c > 0).count();
125-
let mut classes = serializer.serialize_map(Some(count))?;
126-
for (class, count) in self.0.iter().copied().enumerate() {
127-
if count > 0 {
128-
classes.serialize_entry(&class, &count)?;
129-
}
130-
}
131-
132-
classes.end()
133-
}
134-
}
135-
136-
impl From<HashMap<Class, u8>> for ClassList {
137-
fn from(map: HashMap<Class, u8>) -> Self {
138-
let mut classes = ClassList::default();
139-
140-
for (class, count) in map.into_iter() {
141-
classes[class] = count;
142-
}
143-
144-
classes
145-
}
146-
}
147-
14897
#[derive(Debug, Clone, Serialize, Deserialize, Copy, PartialEq, Eq, Hash, Ord, PartialOrd)]
14998
pub struct UserId(u32);
15099

@@ -182,7 +131,6 @@ impl Spawn {
182131
#[derive(Debug, Clone, Serialize, Deserialize)]
183132
#[serde(rename_all = "camelCase")]
184133
pub struct UserInfo {
185-
pub classes: ClassList,
186134
pub name: String,
187135
pub user_id: UserId,
188136
pub steam_id: String,
@@ -192,7 +140,7 @@ pub struct UserInfo {
192140

193141
impl PartialEq for UserInfo {
194142
fn eq(&self, other: &UserInfo) -> bool {
195-
self.classes == other.classes && self.name == other.name && self.user_id == other.user_id && self.steam_id == other.steam_id && self.team == other.team
143+
self.name == other.name && self.user_id == other.user_id && self.steam_id == other.steam_id && self.team == other.team
196144
}
197145
}
198146

@@ -480,7 +428,6 @@ impl HeatmapAnalyser {
480428
GameEvent::PlayerSpawn(event) => {
481429
let spawn = Spawn::from_event(event, tick);
482430
if let Some(user_state) = self.state.users.get_mut(&spawn.user) {
483-
user_state.classes[spawn.class] += 1;
484431
user_state.team = spawn.team;
485432
}
486433
}
@@ -515,7 +462,6 @@ impl HeatmapAnalyser {
515462
}
516463
})
517464
.or_insert_with(|| UserInfo {
518-
classes: ClassList::default(),
519465
team: Team::Other,
520466
steam_id,
521467
user_id,
@@ -551,7 +497,6 @@ impl Default for HeatmapAnalysis {
551497
users: {
552498
let mut users = BTreeMap::new();
553499
let world = UserInfo {
554-
classes: ClassList::default(),
555500
entity_id: Some(EntityId::from(0)),
556501
name: "world".into(),
557502
user_id: UserId::from(0u32),

0 commit comments

Comments
 (0)