mirror of
https://github.com/demostf/cutter.git
synced 2026-06-03 11:54:08 +02:00
remove closed captions
This commit is contained in:
parent
8c6df4949a
commit
cdffdf511a
1 changed files with 16 additions and 0 deletions
16
src/lib.rs
16
src/lib.rs
|
|
@ -12,8 +12,10 @@ use std::cmp::{max, min};
|
||||||
use std::collections::BTreeSet;
|
use std::collections::BTreeSet;
|
||||||
use std::convert::TryInto;
|
use std::convert::TryInto;
|
||||||
use std::iter::once;
|
use std::iter::once;
|
||||||
|
use std::mem::take;
|
||||||
use tf_demo_parser::demo::header::Header;
|
use tf_demo_parser::demo::header::Header;
|
||||||
use tf_demo_parser::demo::message::packetentities::{EntityId, PacketEntitiesMessage, UpdateType};
|
use tf_demo_parser::demo::message::packetentities::{EntityId, PacketEntitiesMessage, UpdateType};
|
||||||
|
use tf_demo_parser::demo::message::usermessage::UserMessageType;
|
||||||
use tf_demo_parser::demo::message::{Message, NetTickMessage};
|
use tf_demo_parser::demo::message::{Message, NetTickMessage};
|
||||||
use tf_demo_parser::demo::packet::message::{MessagePacket, MessagePacketMeta};
|
use tf_demo_parser::demo::packet::message::{MessagePacket, MessagePacketMeta};
|
||||||
use tf_demo_parser::demo::packet::stop::StopPacket;
|
use tf_demo_parser::demo::packet::stop::StopPacket;
|
||||||
|
|
@ -215,6 +217,20 @@ pub fn cut(input: &[u8], start_tick: u32, end_tick: u32) -> Vec<u8> {
|
||||||
|
|
||||||
remove_already_deletes(&mut packet, &start_entities, last_server_tick);
|
remove_already_deletes(&mut packet, &start_entities, last_server_tick);
|
||||||
|
|
||||||
|
if let Packet::Message(msg_packet) = &mut packet {
|
||||||
|
let messages = take(&mut msg_packet.messages);
|
||||||
|
msg_packet.messages = messages
|
||||||
|
.into_iter()
|
||||||
|
.filter(|msg| {
|
||||||
|
if let Message::UserMessage(usr_msg) = msg {
|
||||||
|
UserMessageType::CloseCaption != usr_msg.message_type()
|
||||||
|
} else {
|
||||||
|
true
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.collect();
|
||||||
|
}
|
||||||
|
|
||||||
if ty != PacketType::ConsoleCmd {
|
if ty != PacketType::ConsoleCmd {
|
||||||
packet
|
packet
|
||||||
.encode(&mut out_stream, &handler.state_handler)
|
.encode(&mut out_stream, &handler.state_handler)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue