mirror of
https://codeberg.org/demostf/parser.git
synced 2026-06-03 18:24:05 +02:00
packet clone
This commit is contained in:
parent
e880b685af
commit
099c2d33b9
22 changed files with 1658 additions and 2865 deletions
8
codegen/Cargo.lock
generated
8
codegen/Cargo.lock
generated
|
|
@ -94,7 +94,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "bitbuffer"
|
name = "bitbuffer"
|
||||||
version = "0.10.2"
|
version = "0.10.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "650346fecc0be01be480d078b014cc0deb000d26790a53f6ef854dda35f87d62"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitbuffer_derive",
|
"bitbuffer_derive",
|
||||||
"err-derive",
|
"err-derive",
|
||||||
|
|
@ -106,6 +108,8 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "bitbuffer_derive"
|
name = "bitbuffer_derive"
|
||||||
version = "0.10.0"
|
version = "0.10.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "4090254bfbc71442ff4a426ddba663346e26fd14b55b259281f763e350d7f621"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
|
|
@ -895,7 +899,7 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tf-demo-parser"
|
name = "tf-demo-parser"
|
||||||
version = "0.3.1"
|
version = "0.3.2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bitbuffer",
|
"bitbuffer",
|
||||||
"enumflags2",
|
"enumflags2",
|
||||||
|
|
|
||||||
2822
codegen/out.rs
2822
codegen/out.rs
File diff suppressed because it is too large
Load diff
|
|
@ -265,7 +265,7 @@ pub fn generate_game_events(demo: Demo) -> TokenStream {
|
||||||
|
|
||||||
quote!(
|
quote!(
|
||||||
#[cfg_attr(feature = "wasm", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "wasm", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, BitWrite, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, BitWrite, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct #name {
|
pub struct #name {
|
||||||
#(#fields)*
|
#(#fields)*
|
||||||
}
|
}
|
||||||
|
|
@ -382,7 +382,7 @@ pub fn generate_game_events(demo: Demo) -> TokenStream {
|
||||||
|
|
||||||
|
|
||||||
#[cfg_attr(feature = "wasm", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "wasm", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[serde(tag = "type")]
|
#[serde(tag = "type")]
|
||||||
pub enum GameEvent {
|
pub enum GameEvent {
|
||||||
#(#event_variants)*
|
#(#event_variants)*
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
|
|
@ -158,7 +158,7 @@ impl EventValue for () {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct RawGameEvent {
|
pub struct RawGameEvent {
|
||||||
pub event_type: GameEventType,
|
pub event_type: GameEventType,
|
||||||
pub values: Vec<GameEventValue>,
|
pub values: Vec<GameEventValue>,
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ use crate::{ReadResult, Stream};
|
||||||
use std::cmp::min;
|
use std::cmp::min;
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitReadSized, BitWriteSized, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitReadSized, BitWriteSized, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct ClassInfoEntry {
|
pub struct ClassInfoEntry {
|
||||||
#[size = "input_size"]
|
#[size = "input_size"]
|
||||||
class_id: u16,
|
class_id: u16,
|
||||||
|
|
@ -15,7 +15,7 @@ pub struct ClassInfoEntry {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct ClassInfoMessage {
|
pub struct ClassInfoMessage {
|
||||||
count: u16,
|
count: u16,
|
||||||
create: bool,
|
create: bool,
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ use crate::demo::parser::{Encode, ParseBitSkip};
|
||||||
use crate::{GameEventError, Parse, ParseError, ParserState, ReadResult, Result, Stream};
|
use crate::{GameEventError, Parse, ParseError, ParserState, ReadResult, Result, Stream};
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct GameEventMessage {
|
pub struct GameEventMessage {
|
||||||
pub event_type_id: GameEventTypeId,
|
pub event_type_id: GameEventTypeId,
|
||||||
pub event: GameEvent,
|
pub event: GameEvent,
|
||||||
|
|
@ -147,7 +147,7 @@ impl From<GameEventTypeId> for u16 {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct GameEventListMessage {
|
pub struct GameEventListMessage {
|
||||||
pub event_list: Vec<GameEventDefinition>,
|
pub event_list: Vec<GameEventDefinition>,
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ use bitbuffer::{BitRead, BitWrite, LittleEndian};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct FileMessage {
|
pub struct FileMessage {
|
||||||
pub transfer_id: u32,
|
pub transfer_id: u32,
|
||||||
pub file_name: String,
|
pub file_name: String,
|
||||||
|
|
@ -12,7 +12,7 @@ pub struct FileMessage {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct NetTickMessage {
|
pub struct NetTickMessage {
|
||||||
pub tick: u32,
|
pub tick: u32,
|
||||||
pub frame_time: u16,
|
pub frame_time: u16,
|
||||||
|
|
@ -20,26 +20,26 @@ pub struct NetTickMessage {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct StringCmdMessage {
|
pub struct StringCmdMessage {
|
||||||
pub command: String,
|
pub command: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct SignOnStateMessage {
|
pub struct SignOnStateMessage {
|
||||||
pub state: u8,
|
pub state: u8,
|
||||||
pub count: u32,
|
pub count: u32,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct PrintMessage {
|
pub struct PrintMessage {
|
||||||
pub value: String,
|
pub value: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct ServerInfoMessage {
|
pub struct ServerInfoMessage {
|
||||||
pub version: u16,
|
pub version: u16,
|
||||||
pub server_count: u32,
|
pub server_count: u32,
|
||||||
|
|
@ -61,20 +61,20 @@ pub struct ServerInfoMessage {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct SetPauseMessage {
|
pub struct SetPauseMessage {
|
||||||
pub pause: bool,
|
pub pause: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct SetViewMessage {
|
pub struct SetViewMessage {
|
||||||
#[size = 11]
|
#[size = 11]
|
||||||
pub index: u16,
|
pub index: u16,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct FixAngleMessage {
|
pub struct FixAngleMessage {
|
||||||
pub relative: bool,
|
pub relative: bool,
|
||||||
pub x: u16,
|
pub x: u16,
|
||||||
|
|
@ -83,7 +83,7 @@ pub struct FixAngleMessage {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[endianness = "LittleEndian"]
|
#[endianness = "LittleEndian"]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
pub struct EntityMessage<'a> {
|
pub struct EntityMessage<'a> {
|
||||||
|
|
@ -98,14 +98,14 @@ pub struct EntityMessage<'a> {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct PreFetchMessage {
|
pub struct PreFetchMessage {
|
||||||
#[size = 14]
|
#[size = 14]
|
||||||
pub index: u16,
|
pub index: u16,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[endianness = "LittleEndian"]
|
#[endianness = "LittleEndian"]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
pub struct MenuMessage<'a> {
|
pub struct MenuMessage<'a> {
|
||||||
|
|
@ -116,14 +116,14 @@ pub struct MenuMessage<'a> {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct GetCvarValueMessage {
|
pub struct GetCvarValueMessage {
|
||||||
pub cookie: u32,
|
pub cookie: u32,
|
||||||
pub value: String,
|
pub value: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[endianness = "LittleEndian"]
|
#[endianness = "LittleEndian"]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
pub struct CmdKeyValuesMessage<'a> {
|
pub struct CmdKeyValuesMessage<'a> {
|
||||||
|
|
|
||||||
|
|
@ -64,7 +64,7 @@ pub enum MessageType {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
#[serde(tag = "type")]
|
#[serde(tag = "type")]
|
||||||
pub enum Message<'a> {
|
pub enum Message<'a> {
|
||||||
|
|
|
||||||
|
|
@ -178,7 +178,7 @@ fn test_bit_var_roundtrip() {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct PacketEntitiesMessage {
|
pub struct PacketEntitiesMessage {
|
||||||
pub entities: Vec<PacketEntity>,
|
pub entities: Vec<PacketEntity>,
|
||||||
pub removed_entities: Vec<EntityId>,
|
pub removed_entities: Vec<EntityId>,
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ use serde::{Deserialize, Serialize};
|
||||||
use crate::ReadResult;
|
use crate::ReadResult;
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, BitWrite, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, BitWrite, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct ConVar {
|
pub struct ConVar {
|
||||||
key: String,
|
key: String,
|
||||||
value: String,
|
value: String,
|
||||||
|
|
@ -23,7 +23,7 @@ impl<E: Endianness> BitRead<'_, E> for ConVar {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, BitRead, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, BitRead, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct SetConVarMessage {
|
pub struct SetConVarMessage {
|
||||||
length: u8,
|
length: u8,
|
||||||
#[size = "length"]
|
#[size = "length"]
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ use std::borrow::Cow;
|
||||||
use std::cmp::min;
|
use std::cmp::min;
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
pub struct CreateStringTableMessage<'a> {
|
pub struct CreateStringTableMessage<'a> {
|
||||||
pub table: StringTable<'a>,
|
pub table: StringTable<'a>,
|
||||||
|
|
@ -238,7 +238,7 @@ fn test_create_string_table_roundtrip() {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
pub struct UpdateStringTableMessage<'a> {
|
pub struct UpdateStringTableMessage<'a> {
|
||||||
pub entries: Vec<(u16, StringTableEntry<'a>)>,
|
pub entries: Vec<(u16, StringTableEntry<'a>)>,
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ use bitbuffer::{BitWrite, BitWriteSized, BitWriteStream, LittleEndian};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct TempEntitiesMessage {
|
pub struct TempEntitiesMessage {
|
||||||
pub events: Vec<EventInfo>,
|
pub events: Vec<EventInfo>,
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -72,7 +72,7 @@ pub enum UserMessageType {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
#[serde(tag = "type")]
|
#[serde(tag = "type")]
|
||||||
pub enum UserMessage<'a> {
|
pub enum UserMessage<'a> {
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,7 @@ use bitbuffer::{BitRead, BitWrite, LittleEndian};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct ConsoleCmdPacket {
|
pub struct ConsoleCmdPacket {
|
||||||
pub tick: u32,
|
pub tick: u32,
|
||||||
pub command: String,
|
pub command: String,
|
||||||
|
|
|
||||||
|
|
@ -346,7 +346,7 @@ pub struct SendTable {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct DataTablePacket {
|
pub struct DataTablePacket {
|
||||||
pub tick: u32,
|
pub tick: u32,
|
||||||
pub tables: Vec<ParseSendTable>,
|
pub tables: Vec<ParseSendTable>,
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ use crate::demo::vector::Vector;
|
||||||
use crate::{Parse, ParserState, ReadResult, Result, Stream};
|
use crate::{Parse, ParserState, ReadResult, Result, Stream};
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, BitRead, BitWrite, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, BitRead, BitWrite, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct MessagePacketMeta {
|
pub struct MessagePacketMeta {
|
||||||
pub flags: u32, // TODO
|
pub flags: u32, // TODO
|
||||||
pub view_angles: ViewAngles,
|
pub view_angles: ViewAngles,
|
||||||
|
|
@ -16,7 +16,7 @@ pub struct MessagePacketMeta {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
pub struct MessagePacket<'a> {
|
pub struct MessagePacket<'a> {
|
||||||
pub tick: u32,
|
pub tick: u32,
|
||||||
|
|
|
||||||
|
|
@ -21,7 +21,7 @@ pub mod synctick;
|
||||||
pub mod usercmd;
|
pub mod usercmd;
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
#[serde(tag = "type")]
|
#[serde(tag = "type")]
|
||||||
pub enum Packet<'a> {
|
pub enum Packet<'a> {
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ use bitbuffer::{BitRead, BitWrite};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, BitRead, BitWrite, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, BitRead, BitWrite, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct StopPacket {
|
pub struct StopPacket {
|
||||||
#[size = 24]
|
#[size = 24]
|
||||||
pub tick: u32,
|
pub tick: u32,
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@ pub struct FixedUserDataSize {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, Serialize, Deserialize)]
|
#[derive(Debug, Serialize, Deserialize, Clone)]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
pub struct StringTable<'a> {
|
pub struct StringTable<'a> {
|
||||||
pub name: Cow<'a, str>,
|
pub name: Cow<'a, str>,
|
||||||
|
|
@ -216,7 +216,7 @@ impl fmt::Debug for StringTableEntry<'_> {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
#[serde(bound(deserialize = "'a: 'static"))]
|
#[serde(bound(deserialize = "'a: 'static"))]
|
||||||
pub struct StringTablePacket<'a> {
|
pub struct StringTablePacket<'a> {
|
||||||
pub tick: u32,
|
pub tick: u32,
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ use bitbuffer::{BitRead, BitWrite};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(BitRead, BitWrite, Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct SyncTickPacket {
|
pub struct SyncTickPacket {
|
||||||
pub tick: u32,
|
pub tick: u32,
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ use bitbuffer::{BitRead, BitReadStream, BitWrite, BitWriteStream, LittleEndian};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, Serialize, Deserialize, Clone)]
|
||||||
pub struct UserCmdPacket {
|
pub struct UserCmdPacket {
|
||||||
pub tick: u32,
|
pub tick: u32,
|
||||||
pub sequence_out: u32,
|
pub sequence_out: u32,
|
||||||
|
|
@ -33,7 +33,7 @@ impl BitWrite<LittleEndian> for UserCmdPacket {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, BitRead, BitWrite, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, BitRead, BitWrite, Serialize, Deserialize, Clone)]
|
||||||
pub struct UserCmd {
|
pub struct UserCmd {
|
||||||
command_number: Option<u32>,
|
command_number: Option<u32>,
|
||||||
tick_count: Option<u32>,
|
tick_count: Option<u32>,
|
||||||
|
|
@ -47,7 +47,7 @@ pub struct UserCmd {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
||||||
#[derive(Debug, PartialEq, BitRead, BitWrite, Serialize, Deserialize)]
|
#[derive(Debug, PartialEq, BitRead, BitWrite, Serialize, Deserialize, Clone)]
|
||||||
pub struct WeaponSelect {
|
pub struct WeaponSelect {
|
||||||
#[size = 11]
|
#[size = 11]
|
||||||
select: u16,
|
select: u16,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue