~starkingdoms/starkingdoms

ref: 13ff574f3067094b9c252b6353fa0df5d6317624 starkingdoms/crates/unified/src/server/net/update_planets.rs -rw-r--r-- 899 bytes
13ff574f — core netcode: unreliable updates 6 days ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
use std::collections::BTreeSet;
use bevy::prelude::{Added, Changed, Commands, MessageWriter, Query};
use crate::prelude::{Entity, ParamSet, Ref, Transform};
use crate::shared::config::planet::Planet;
use crate::shared::ecs::{Part, Temperature};
use crate::shared::net::planet::PlanetDto;
use crate::shared::net::staged_transform::LastStagedTransform;
use crate::shared::net::{SendTargets, ToClients};
use crate::shared::net::part::PartDto;

pub fn send_updated_planets(
    planets: Query<(Entity, Ref<Planet>, Ref<Transform>, Ref<Temperature>)>,
    mut messages: MessageWriter<ToClients<PlanetDto>>
) {
    for planet in planets {
        messages.write(ToClients {
            message: PlanetDto {
                server_entity: planet.0,
                planet: planet.1.into(),
                transform: planet.2.into(),
            },
            targets: SendTargets::All
        });
    }
}