Skip to content

Commit 09cbe41

Browse files
committed
Attach tick
1 parent 6424f71 commit 09cbe41

1 file changed

Lines changed: 11 additions & 3 deletions

File tree

src/client.rs

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,7 @@ fn apply_update_message(
308308

309309
match flag {
310310
UpdateFlags::USERDATA => {
311-
process_userdata(world, message)
311+
process_userdata(world, message, message_tick)
312312
.map_err(|e| format!("unable to process userdata: {e}"))?;
313313
}
314314
UpdateFlags::MAPPINGS => {
@@ -402,7 +402,7 @@ fn apply_mutate_message(
402402
for (_, flag) in mutate.flags.iter_names() {
403403
match flag {
404404
MutateFlags::USERDATA => {
405-
process_userdata(world, &mut mutate.message)
405+
process_userdata(world, &mut mutate.message, mutate.message_tick)
406406
.map_err(|e| format!("unable to apply userdata: {e}"))?;
407407
}
408408
MutateFlags::MESSAGES_COUNT => {
@@ -625,7 +625,11 @@ fn apply_changes(
625625
Ok(())
626626
}
627627

628-
fn process_userdata(world: &mut World, message: &mut Bytes) -> Result<()> {
628+
fn process_userdata(
629+
world: &mut World,
630+
message: &mut Bytes,
631+
message_tick: RepliconTick,
632+
) -> Result<()> {
629633
let len = postcard_utils::from_buf(message)?;
630634
if len > message.len() {
631635
return Err(format!(
@@ -635,6 +639,7 @@ fn process_userdata(world: &mut World, message: &mut Bytes) -> Result<()> {
635639
.into());
636640
}
637641
world.trigger(UserdataReceived {
642+
message_tick,
638643
bytes: message.split_to(len),
639644
});
640645

@@ -982,6 +987,9 @@ pub struct Remote;
982987
/// This is emitted for data sent through [`ReplicationUserdata`](crate::server::ReplicationUserdata).
983988
#[derive(Event)]
984989
pub struct UserdataReceived {
990+
/// Tick of the message with the metadata.
991+
pub message_tick: RepliconTick,
992+
985993
/// Raw user-defined bytes received from the server.
986994
pub bytes: Bytes,
987995
}

0 commit comments

Comments
 (0)