summaryrefslogtreecommitdiff
path: root/src/components/flags.rs
blob: 25ec4ea417c404749aa0bd5550738c1b64389092 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

use std::collections::HashSet;
use specs::{
	Component,
	VecStorage,
};
use strum_macros::{EnumString, Display};
use serde::{Serialize, Deserialize};

#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, EnumString, Display, Serialize, Deserialize)]
pub enum Flag {
	Blocking,
	Floor,
	Occupied,
	Soil,
	Build,
	Hot
}


#[derive(Component, Debug, Clone, PartialEq, Eq)]
#[storage(VecStorage)]
pub struct Flags(pub HashSet<Flag>);