summaryrefslogtreecommitdiff
path: root/src/resources.rs
blob: 15d93c4ffcb6a7f7118a6922f93875658d85baa1 (plain)
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43

use std::collections::{HashMap, HashSet};
use specs::Entity;

use super::pos::Pos;
use super::controls::Action;
// use super::oldassemblage::Assemblage;
use super::worldmessages::WorldMessage;
use super::template::Template;
use crate::encyclopedia::Encyclopedia;


#[derive(Default)]
pub struct Input {
	pub actions: Vec<Action>
}

#[derive(Default)]
pub struct Output {
	pub output: HashMap<String, WorldMessage>
}

#[derive(Default)]
pub struct Size {
	pub width: i64,
	pub height: i64
}

#[derive(Default)]
pub struct Spawn {
	pub pos: Pos
}

#[derive(Default)]
pub struct Ground {
	pub cells: HashMap<Pos, HashSet<Entity>>
}

#[derive(Default)]
pub struct NewEntities {
	pub templates: Vec<(Pos, Template)>,
	pub encyclopedia: Encyclopedia
}