summaryrefslogtreecommitdiff
path: root/src/components.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/components.rs')
-rw-r--r--src/components.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/components.rs b/src/components.rs
new file mode 100644
index 0000000..51469cc
--- /dev/null
+++ b/src/components.rs
@@ -0,0 +1,26 @@
+
+use specs::{
+ VecStorage,
+ Component
+};
+
+use super::controls::Control;
+
+
+#[derive(Component, Debug, Hash, PartialEq, Eq, Clone, Copy)]
+#[storage(VecStorage)]
+pub struct Position {
+ pub x: i32,
+ pub y: i32
+}
+
+#[derive(Component, Debug, Clone)]
+#[storage(VecStorage)]
+pub struct Visible {
+ pub sprite: String,
+ pub height: f32
+}
+
+#[derive(Component, Debug)]
+#[storage(VecStorage)]
+pub struct Controller(pub Option<Control>);