summaryrefslogtreecommitdiff
path: root/src/resources.rs
blob: dc8f59627f7c8b9669b11ba1fc26f1ac9bb86efc (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

use std::collections::HashMap;
use specs::Entity;

use super::components::{Position, Visible};
use super::controls::Action;
use super::assemblages::Assemblage;
use super::worldmessages::WorldMessage;


#[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: i32,
	pub height: i32
}

#[derive(Default)]
pub struct TopView {
	pub cells: HashMap<Position, Vec<Visible>>
}


#[derive(Default)]
pub struct Floor {
	pub cells: HashMap<Position, Vec<Entity>>
}

#[derive(Default)]
pub struct NewEntities {
	pub assemblages: Vec<(Position, Box<dyn Assemblage>)>
}