mirror of
https://codeberg.org/demostf/parser.git
synced 2026-06-04 02:24:12 +02:00
string table fixes
This commit is contained in:
parent
8d053296ca
commit
d7f14a70aa
6 changed files with 103 additions and 30 deletions
|
|
@ -16,8 +16,8 @@ pub struct MessagePacket {
|
|||
|
||||
impl Parse for MessagePacket {
|
||||
fn parse(stream: &mut Stream, state: &ParserState) -> Result<Self> {
|
||||
let tick = stream.read_int(32)?;
|
||||
let flags = stream.read_int(32)?;
|
||||
let tick = stream.read()?;
|
||||
let flags = stream.read()?;
|
||||
|
||||
let view_origin_1 = Vector::parse(stream, state)?;
|
||||
let view_angle_1 = Vector::parse(stream, state)?;
|
||||
|
|
@ -26,16 +26,14 @@ impl Parse for MessagePacket {
|
|||
let view_angles = (Vector::parse(stream, state)?, view_angle_1);
|
||||
let local_view_angles = (Vector::parse(stream, state)?, local_view_angle_1);
|
||||
|
||||
let sequence_in = stream.read_int(32)?;
|
||||
let sequence_out = stream.read_int(32)?;
|
||||
let length: usize = stream.read_int(32)?;
|
||||
let mut packet_data = stream.read_bits(length * 8)?;
|
||||
let sequence_in = stream.read()?;
|
||||
let sequence_out = stream.read()?;
|
||||
let length: u32 = stream.read()?;
|
||||
let mut packet_data = stream.read_bits(length as usize * 8)?;
|
||||
|
||||
let mut messages = Vec::new();
|
||||
dbg!(&packet_data);
|
||||
let mut messages: Vec<Message> = Vec::new();
|
||||
while packet_data.bits_left() > 6 {
|
||||
let message = Message::parse(stream, state)?;
|
||||
dbg!(&message);
|
||||
let message = Message::parse(&mut packet_data, state)?;
|
||||
messages.push(message);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -75,10 +75,10 @@ pub struct StringTableEntry {
|
|||
impl fmt::Debug for StringTableEntry {
|
||||
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
||||
match &self.extra_data {
|
||||
None => write!(f, "Table Entry: '{}'", self.text),
|
||||
None => write!(f, "StringTableEntry {{ text: {} }}", self.text),
|
||||
Some(extra_data) => write!(
|
||||
f,
|
||||
"StringTableEntry{{ '{}' with {} bits of extra data }}",
|
||||
"StringTableEntry{{ text: {} extra_data: {} bits }}",
|
||||
self.text, extra_data.len
|
||||
),
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue