generated from tipragot/rust
WIP: Add a selection of the spawnpoint for every players #108
|
@ -29,13 +29,15 @@ fn setup_ownership_resources(mut commands: Commands) {
|
||||||
commands.insert_resource(OwnershipColorContrast(0.4));
|
commands.insert_resource(OwnershipColorContrast(0.4));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// The type condition for update ownership.
|
||||||
|
type OwnershipUpdate = Or<(Changed<Owner>, Changed<Sprite>)>;
|
||||||
|
|
||||||
/// Render the ownership of the tiles by applying colors.
|
/// Render the ownership of the tiles by applying colors.
|
||||||
fn render_ownership(
|
fn render_ownership(
|
||||||
mut query: Query<(&mut Sprite, &Owner), (Changed<Owner>, Changed<Sprite>)>,
|
mut query: Query<(&mut Sprite, &Owner), OwnershipUpdate>,
|
||||||
contrast: Res<OwnershipColorContrast>,
|
contrast: Res<OwnershipColorContrast>,
|
||||||
) {
|
) {
|
||||||
for (mut sprite, owner) in query.iter_mut() {
|
for (mut sprite, owner) in query.iter_mut() {
|
||||||
println!("{:?}", contrast.0);
|
|
||||||
let (r, g, b) = owner.0.color;
|
let (r, g, b) = owner.0.color;
|
||||||
let target = mix_colors(Color::rgb_u8(r, g, b), sprite.color, 1. - contrast.0);
|
let target = mix_colors(Color::rgb_u8(r, g, b), sprite.color, 1. - contrast.0);
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
//! TODO
|
//! TODO
|
||||||
|
|
||||||
use bevnet::Connection;
|
|
||||||
use bevy::prelude::*;
|
use bevy::prelude::*;
|
||||||
use bevy::utils::hashbrown::HashSet;
|
use bevy::utils::hashbrown::HashSet;
|
||||||
use bevy::utils::HashMap;
|
|
||||||
|
|
||||||
use super::generation::EndMapGeneration;
|
use super::generation::EndMapGeneration;
|
||||||
use super::ownership::Owner;
|
use super::ownership::Owner;
|
||||||
|
@ -25,9 +23,8 @@ fn init_spawn_point(
|
||||||
mut end_map_event: EventReader<EndMapGeneration>,
|
mut end_map_event: EventReader<EndMapGeneration>,
|
||||||
players: Query<&Player>,
|
players: Query<&Player>,
|
||||||
mut map: Query<(Entity, &TilePosition, &mut Tile)>,
|
mut map: Query<(Entity, &TilePosition, &mut Tile)>,
|
||||||
connection: Res<Connection>,
|
|
||||||
) {
|
) {
|
||||||
for _ in end_map_event.iter() {
|
for _ in end_map_event.read() {
|
||||||
let Some(radius) = map.iter().map(|(_, p, _)| p.0.abs()).max() else {
|
let Some(radius) = map.iter().map(|(_, p, _)| p.0.abs()).max() else {
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue