diff options
Diffstat (limited to 'src/systems')
| -rw-r--r-- | src/systems/save.rs | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/src/systems/save.rs b/src/systems/save.rs deleted file mode 100644 index 924533a..0000000 --- a/src/systems/save.rs +++ /dev/null @@ -1,43 +0,0 @@ - -use std::collections::HashMap; - -use specs::{ - Entities, - ReadStorage, - System, - Join, - Read -}; - -use crate::pos::Pos; - -use crate::components::{ - Position, - Serialise -}; - -use crate::savestate::SaveState; - -const INTERVAL: i32 = 20; - -pub struct Save(pub i32); -impl <'a> System<'a> for Save { - type SystemData = ( - Entities<'a>, - ReadStorage<'a, Position>, - ReadStorage<'a, Serialise>, - ); - - fn run(&mut self, (entities, positions, serialisers): Self::SystemData) { - self.0 -= 1; - if self.0 > 0 { - return - } - self.0 = INTERVAL; - let mut state = SaveState::new(); - for (pos, serialiser) in (&positions, &serialisers).join() { - state.changes.entry(pos.pos).or_insert(Vec::new()).push(serialiser.template.clone()); - } - println!("save {}", state.to_json().to_string()); - } -} |
