1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
//! # Snapshot reprentation
//!
//! Goals:
//! - Can be used to render
//! - Can be produced by game implementation
//! - Can be serialized into DDNet demo
//! - Can be deserialized from DDNet demo
//! - Can be used as input from game implementation
//!
//! - valid utf-8
//! - no allocations
//! - usability first
//!
//! Goals, if it doesn't affect the representation, otherwise another snapshot is necessary
//!
//! - Can be deserialized from Teehistorian
//!
//! Non-goals:
//!
//! - repr(C) to serialize
//! - Implement functions on snap objects like trajectory.
//! - no_std
//! - Serialization can be played by old DDNet clients or Teeworlds Client
//! - resemblance of [i32; k] strings by Teeworlds
//! - writing non-DDNet snapshots (other mods)
//!
//! Architecture:
//!
//! - Using `fixed` to represent uniform scales for all distance related variables: 1 per tile
//! - vek for points
//! - arrayvec for stack strings/arrays
//! - rust enum for protocol enums
//! - bitflags
//! - bools
//! - One snapshot per team
pub use *;
pub use *;
pub use *;