migratetion to 0.18.0
This commit is contained in:
@@ -25,29 +25,29 @@ impl Default for ChunkMap {
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Event)]
|
||||
#[derive(Message)]
|
||||
pub struct GenerateChunkEvent {
|
||||
pub chunk_position: IVec2,
|
||||
}
|
||||
#[derive(Event)]
|
||||
#[derive(Message)]
|
||||
pub struct ChunkTerrainEvent {
|
||||
pub chunk_position: IVec2,
|
||||
}
|
||||
#[derive(Event)]
|
||||
#[derive(Message)]
|
||||
// CAlculate the weather effecrs and rivers/lakes of this chunk
|
||||
pub struct ChunkWeatheringAndPrecipitationEvent {
|
||||
pub chunk_position: IVec2,
|
||||
}
|
||||
#[derive(Event)]
|
||||
#[derive(Message)]
|
||||
pub struct ChunkForrestryEvent {
|
||||
pub chunk_position: IVec2,
|
||||
pub floor_tiles: Vec<(Vec3, String)>,
|
||||
}
|
||||
#[derive(Event)]
|
||||
#[derive(Message)]
|
||||
pub struct ChunkFoliageEvent {
|
||||
pub chunk_position: IVec2,
|
||||
}
|
||||
#[derive(Event)]
|
||||
#[derive(Message)]
|
||||
pub struct ChunkFaunaEvent {
|
||||
pub chunk_position: IVec2,
|
||||
}
|
||||
@@ -58,12 +58,12 @@ pub fn setup_chunk_system(mut commands: Commands) {
|
||||
}
|
||||
|
||||
pub fn handle_chunk_events(
|
||||
mut chunk_events: EventReader<GenerateChunkEvent>,
|
||||
mut chunk_events: MessageReader<GenerateChunkEvent>,
|
||||
mut chunk_map: ResMut<ChunkMap>,
|
||||
mut terrain_event_writer: EventWriter<ChunkTerrainEvent>,
|
||||
mut weathering_event_writer: EventWriter<ChunkWeatheringAndPrecipitationEvent>,
|
||||
mut foliage_event_writer: EventWriter<ChunkFoliageEvent>,
|
||||
mut fauna_event_writer: EventWriter<ChunkFaunaEvent>,
|
||||
mut terrain_event_writer: MessageWriter<ChunkTerrainEvent>,
|
||||
mut weathering_event_writer: MessageWriter<ChunkWeatheringAndPrecipitationEvent>,
|
||||
mut foliage_event_writer: MessageWriter<ChunkFoliageEvent>,
|
||||
mut fauna_event_writer: MessageWriter<ChunkFaunaEvent>,
|
||||
mut cwss: ResMut<CurrentWorldSpriteState>,
|
||||
) {
|
||||
let mut any = false;
|
||||
|
||||
@@ -4,7 +4,7 @@ use crate::world::{tiles::TileMap, ChunkMap, GenerateChunkEvent};
|
||||
|
||||
pub fn generate_chunk_fauna(
|
||||
mut commands: Commands,
|
||||
mut events: EventReader<GenerateChunkEvent>,
|
||||
mut events: MessageReader<GenerateChunkEvent>,
|
||||
mut chunk_map: ResMut<ChunkMap>,
|
||||
mut tilemap: ResMut<TileMap>,
|
||||
) {
|
||||
|
||||
@@ -4,7 +4,7 @@ use crate::world::{tiles::TileMap, ChunkMap, GenerateChunkEvent};
|
||||
|
||||
pub fn generate_chunk_foliage(
|
||||
mut commands: Commands,
|
||||
mut events: EventReader<GenerateChunkEvent>,
|
||||
mut events: MessageReader<GenerateChunkEvent>,
|
||||
mut chunk_map: ResMut<ChunkMap>,
|
||||
mut tilemap: ResMut<TileMap>,
|
||||
) {
|
||||
|
||||
@@ -4,7 +4,7 @@ use bevy_platform::sync::Mutex;
|
||||
use bevy_platform::time::Instant;
|
||||
use bevy_rand::prelude::*;
|
||||
|
||||
use rand::{Rng, SeedableRng};
|
||||
use rand::{RngExt, SeedableRng};
|
||||
use std::collections::hash_map::DefaultHasher;
|
||||
use std::hash::{Hash, Hasher};
|
||||
|
||||
@@ -18,7 +18,7 @@ use crate::{
|
||||
|
||||
pub fn generate_chunk_forrestry(
|
||||
commands: ParallelCommands<'_, '_>,
|
||||
mut events: EventReader<ChunkForrestryEvent>,
|
||||
mut events: MessageReader<ChunkForrestryEvent>,
|
||||
mut tilemap: ResMut<TileMap>,
|
||||
texture_ids: Res<TextureIDs>,
|
||||
textures: Res<Textures>,
|
||||
|
||||
@@ -28,10 +28,10 @@ pub fn generate_surface_terrain(x: i32, y: i32) -> f32 {
|
||||
|
||||
pub fn generate_chunk_terrain(
|
||||
commands: ParallelCommands<'_, '_>, // Use ParallelCommands for parallel spawning
|
||||
mut events: EventReader<ChunkTerrainEvent>,
|
||||
mut events: MessageReader<ChunkTerrainEvent>,
|
||||
mut tilemap: ResMut<TileMap>,
|
||||
mut forrestry_event_writer: EventWriter<ChunkForrestryEvent>,
|
||||
mut occlusion_event_writer: EventWriter<TileOcclusionEvent>,
|
||||
mut forrestry_event_writer: MessageWriter<ChunkForrestryEvent>,
|
||||
mut occlusion_event_writer: MessageWriter<TileOcclusionEvent>,
|
||||
) {
|
||||
let is_empty = events.is_empty();
|
||||
let start = Instant::now();
|
||||
|
||||
+8
-8
@@ -23,13 +23,13 @@ pub struct WorldPlugin;
|
||||
impl Plugin for WorldPlugin {
|
||||
fn build(&self, app: &mut App) {
|
||||
app.init_resource::<ChunkMap>()
|
||||
.add_event::<GenerateChunkEvent>()
|
||||
.add_event::<ChunkTerrainEvent>()
|
||||
.add_event::<ChunkWeatheringAndPrecipitationEvent>()
|
||||
.add_event::<ChunkForrestryEvent>()
|
||||
.add_event::<ChunkFoliageEvent>()
|
||||
.add_event::<ChunkFaunaEvent>()
|
||||
.add_event::<TileOcclusionEvent>()
|
||||
.add_message::<GenerateChunkEvent>()
|
||||
.add_message::<ChunkTerrainEvent>()
|
||||
.add_message::<ChunkWeatheringAndPrecipitationEvent>()
|
||||
.add_message::<ChunkForrestryEvent>()
|
||||
.add_message::<ChunkFoliageEvent>()
|
||||
.add_message::<ChunkFaunaEvent>()
|
||||
.add_message::<TileOcclusionEvent>()
|
||||
.add_systems(Startup, (setup_chunk_system, setup_initial_chunks).chain())
|
||||
.add_systems(
|
||||
FixedUpdate,
|
||||
@@ -68,7 +68,7 @@ impl Plugin for WorldPlugin {
|
||||
}
|
||||
}
|
||||
|
||||
fn setup_initial_chunks(mut event_writer: EventWriter<GenerateChunkEvent>) {
|
||||
fn setup_initial_chunks(mut event_writer: MessageWriter<GenerateChunkEvent>) {
|
||||
for x in -5..=5 {
|
||||
for y in -5..=5 {
|
||||
event_writer.write(GenerateChunkEvent {
|
||||
|
||||
@@ -67,7 +67,7 @@ pub fn compute_visibility_of_game_entities(
|
||||
});
|
||||
}
|
||||
|
||||
#[derive(Event)]
|
||||
#[derive(Message)]
|
||||
pub struct TileOcclusionEvent {
|
||||
pub tile_position: IVec3,
|
||||
}
|
||||
@@ -76,7 +76,7 @@ pub fn handle_tile_occlusion_updates(
|
||||
mut tilemap: ResMut<TileMap>,
|
||||
mut floor_tiles: Query<(Entity, &mut FloorTile, &Transform)>,
|
||||
mut cwss: ResMut<CurrentWorldSpriteState>,
|
||||
mut events: EventReader<TileOcclusionEvent>,
|
||||
mut events: MessageReader<TileOcclusionEvent>,
|
||||
) {
|
||||
let start = Instant::now();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user