mirror of
https://codeberg.org/demostf/parser.git
synced 2026-06-04 02:24:12 +02:00
early state handling
This commit is contained in:
parent
42d5defdeb
commit
8fba325db8
6 changed files with 49 additions and 21 deletions
|
|
@ -34,7 +34,7 @@ impl Parse for GameEventMessage {
|
|||
Some(definition) => {
|
||||
let mut values: Vec<GameEventValue> = Vec::with_capacity(definition.entries.len());
|
||||
for entry in &definition.entries {
|
||||
values.push(read_event_value(stream, &entry)?);
|
||||
values.push(read_event_value(&mut data, &entry)?);
|
||||
}
|
||||
|
||||
RawGameEvent {
|
||||
|
|
@ -53,7 +53,7 @@ impl Parse for GameEventMessage {
|
|||
|
||||
#[derive(Debug)]
|
||||
pub struct GameEventListMessage {
|
||||
event_list: HashMap<GameEventType, GameEventDefinition>,
|
||||
pub event_list: HashMap<GameEventType, GameEventDefinition>,
|
||||
}
|
||||
|
||||
impl BitRead<LittleEndian> for GameEventDefinition {
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ pub mod gameevent;
|
|||
pub mod packetentities;
|
||||
pub mod tempentities;
|
||||
|
||||
#[derive(Primitive, Debug)]
|
||||
#[derive(Primitive, Debug, Clone, Copy)]
|
||||
pub enum MessageType {
|
||||
Empty = 0,
|
||||
File = 2,
|
||||
|
|
@ -100,7 +100,6 @@ pub enum Message {
|
|||
impl Parse for Message {
|
||||
fn parse(stream: &mut Stream, state: &ParserState) -> Result<Self> {
|
||||
let message_type = MessageType::parse(stream, state)?;
|
||||
dbg!(&message_type);
|
||||
Ok(match message_type {
|
||||
MessageType::Empty => Message::Empty,
|
||||
MessageType::File => Message::File(FileMessage::parse(stream, state)?),
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ use crate::{Parse, ParseError, ParserState, ReadResult, Result, Stream};
|
|||
use crate::demo::packet::datatable::ServerClass;
|
||||
use crate::demo::sendprop::SendProp;
|
||||
|
||||
#[derive(Debug)]
|
||||
#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash)]
|
||||
pub struct EntityId(u32);
|
||||
|
||||
#[derive(BitRead, Clone, Copy, Debug)]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue