summaryrefslogtreecommitdiff
path: root/src/components
diff options
context:
space:
mode:
authortroido <troido@protonmail.com>2020-03-09 16:54:26 +0100
committertroido <troido@protonmail.com>2020-03-09 16:54:26 +0100
commit69ac6eb6153b016c39bbe55c85f15e3478032182 (patch)
tree31a0a5cf3d768688c7600902364446d55e3f4395 /src/components
parenta1f45d1b40b23cb7e9f0b277f24ad66880b0bc56 (diff)
can now include variables (like health) in serialisation
Diffstat (limited to 'src/components')
-rw-r--r--src/components/mod.rs7
-rw-r--r--src/components/serialise.rs16
2 files changed, 18 insertions, 5 deletions
diff --git a/src/components/mod.rs b/src/components/mod.rs
index c3e8d5d..b43eba1 100644
--- a/src/components/mod.rs
+++ b/src/components/mod.rs
@@ -5,6 +5,7 @@ pub mod faction;
pub mod interactable;
pub mod equipment;
pub mod inventory;
+pub mod serialise;
pub use item::Item;
pub use messages::{
@@ -16,6 +17,7 @@ pub use faction::Faction;
pub use interactable::Interactable;
pub use equipment::Equipment;
pub use inventory::Inventory;
+pub use serialise::Serialise;
use specs::{
DenseVecStorage,
@@ -119,11 +121,6 @@ impl Health {
}
#[derive(Component, Debug, Clone)]
-pub struct Serialise {
- pub template: Template
-}
-
-#[derive(Component, Debug, Clone)]
pub struct RoomExit {
pub destination: RoomId,
pub dest_pos: RoomPos
diff --git a/src/components/serialise.rs b/src/components/serialise.rs
new file mode 100644
index 0000000..aa79d93
--- /dev/null
+++ b/src/components/serialise.rs
@@ -0,0 +1,16 @@
+
+use specs::{
+ Component,
+ DenseVecStorage
+};
+use crate::{
+ Template,
+ componentwrapper::ComponentType
+};
+
+
+#[derive(Component, Debug, Clone)]
+pub struct Serialise {
+ pub template: Template,
+ pub extract: Vec<(String, ComponentType, String)>
+}