mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
Patch for the position de-synchronization by imbris
See https://discordapp.com/channels/449602562165833758/449650240350453760/774724295452393522
This commit is contained in:
parent
8cab21d44c
commit
b11da85ff9
@ -7,7 +7,7 @@ rustflags = [
|
||||
generate = "run --package tools --"
|
||||
test-server = "-Zpackage-features run --bin veloren-server-cli --no-default-features"
|
||||
tracy-server = "-Zunstable-options -Zpackage-features run --bin veloren-server-cli --no-default-features --features tracy --profile dev"
|
||||
test-voxygen = "-Zpackage-features run --bin veloren-voxygen --no-default-features --features gl"
|
||||
tracy-voxygen = "-Zunstable-options -Zpackage-features run --bin veloren-voxygen --no-default-features --features tracy,gl --profile dev"
|
||||
test-voxygen = "-Zpackage-features run --bin veloren-voxygen --no-default-features --features gl,simd"
|
||||
tracy-voxygen = "-Zunstable-options -Zpackage-features run --bin veloren-voxygen --no-default-features --features tracy,gl,simd --profile dev"
|
||||
server = "run --bin veloren-server-cli"
|
||||
|
||||
|
@ -242,6 +242,8 @@ pub fn initialize_region_subscription(world: &World, entity: specs::Entity) {
|
||||
&world.entities(),
|
||||
)
|
||||
.join()
|
||||
// Don't send client its own components because we do that below
|
||||
.filter(|t| t.4 != entity)
|
||||
{
|
||||
// Send message to create entity and tracked components and physics components
|
||||
client.send_fallible(ServerGeneral::CreateEntity(
|
||||
@ -255,6 +257,16 @@ pub fn initialize_region_subscription(world: &World, entity: specs::Entity) {
|
||||
}
|
||||
}
|
||||
}
|
||||
// If client position was modified it might not be updated in the region system
|
||||
// so we send its components here
|
||||
client.send_fallible(ServerGeneral::CreateEntity(
|
||||
tracked_comps.create_entity_package(
|
||||
entity,
|
||||
Some(*client_pos),
|
||||
world.read_storage().get(entity).copied(),
|
||||
world.read_storage().get(entity).copied(),
|
||||
),
|
||||
));
|
||||
|
||||
if let Err(e) = world.write_storage().insert(entity, RegionSubscription {
|
||||
fuzzy_chunk,
|
||||
|
Loading…
Reference in New Issue
Block a user