rust/hedgewars-engine-messages/src/parser.rs
changeset 15809 c3971b38bbfa
parent 15284 ae8e14d14596
child 15982 cf580d9ff7ef
equal deleted inserted replaced
15808:1fa2f38c5700 15809:c3971b38bbfa
    79 ));
    79 ));
    80 
    80 
    81 named!(config_message<&[u8], ConfigEngineMessage>, alt!(
    81 named!(config_message<&[u8], ConfigEngineMessage>, alt!(
    82     do_parse!(tag!("C") >> (ConfigRequest))
    82     do_parse!(tag!("C") >> (ConfigRequest))
    83     | do_parse!(tag!("eseed ") >> s: string_tail >> ( SetSeed(s)) )
    83     | do_parse!(tag!("eseed ") >> s: string_tail >> ( SetSeed(s)) )
       
    84     | do_parse!(tag!("e$feature_size ") >> s: string_tail >> ( SetFeatureSize(s.parse::<u8>().unwrap())) )
    84 ));
    85 ));
    85 
    86 
    86 named!(timestamped_message<&[u8], (SyncedEngineMessage, u16)>,
    87 named!(timestamped_message<&[u8], (SyncedEngineMessage, u16)>,
    87     do_parse!(msg: length_value!(length_without_timestamp, terminated!(synced_message, eof_slice!()))
    88     do_parse!(msg: length_value!(length_without_timestamp, terminated!(synced_message, eof_slice!()))
    88         >> timestamp: be_u16
    89         >> timestamp: be_u16