Skip to content

khanghugo/dem

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dem

crates.io docs.rs

A complete GoldSrc demo parser and writer library

Example

let mut demo = open_demo("./src/tests/demotest.dem").unwrap();

for entry in &mut demo.directory.entries {
    for frame in &mut entry.frames {
        if let FrameData::NetworkMessage(ref mut box_type) = &mut frame.frame_data {
            let data = &mut box_type.as_mut().1;
            
            if let MessageData::Parsed(messages) = &mut data.messages {
                messages.push(NetMessage::EngineMessage(Box::new(EngineMessage::SvcBad)));
            };
        }
    }
}

demo.write_to_file("./src/tests/demo2test.dem").unwrap();

Acknowledgement

hlviewer.js

talent

coldemoplayer

hldemojs

About

A Complete GoldSrc Demo Parser and Writer

Topics

Resources

License

Stars

Watchers

Forks

Languages