summaryrefslogtreecommitdiff
path: root/src/parameter.rs
diff options
context:
space:
mode:
authortroido <troido@protonmail.com>2020-04-02 14:13:18 +0200
committertroido <troido@protonmail.com>2020-04-02 14:13:18 +0200
commit4f9932074a8f0390d5cb6072b4e419c7ab08ffed (patch)
treed83da5cd8b35af25aa6e0b2c9105182920c49bd0 /src/parameter.rs
parentec007f34c4cd984640a235660803b81a739742b3 (diff)
added flags component, and conditions for building
Diffstat (limited to 'src/parameter.rs')
-rw-r--r--src/parameter.rs7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/parameter.rs b/src/parameter.rs
index 829c5cf..2ac9be1 100644
--- a/src/parameter.rs
+++ b/src/parameter.rs
@@ -68,13 +68,18 @@ parameters!(
Pos (Pos) pos, v (Pos::from_json(v)?) (json!(v));
Float (f64) float, v (v.as_f64()?) (json!(v));
Template (Template) template, v (Template::from_json(v).ok()?) (v.to_json());
- Action (ItemAction) action, v (ItemAction::from_json(v)?) (v.to_json());
+ Action (ItemAction) action, v (ItemAction::from_json(v)?) (panic!("item actions can't be serialized"));
Bool (bool) bool, v (v.as_bool()?) (json!(v));
LootList (Vec<(Template, f64)>) lootlist, v
(v.as_array()?.iter().map(|item|
Some((Template::from_json(item.get(0)?).ok()?, item.get(1)?.as_f64()?))
).collect::<Option<Vec<(Template, f64)>>>()?)
({json!(v.iter().map(|(t, c)| (t.to_json(), *c)).collect::<Vec<(Value, f64)>>())});
+ Strings (Vec<String>) strings, v
+ (v.as_array()?.iter().map(|item|
+ Some(item.as_str()?.to_string())
+ ).collect::<Option<Vec<String>>>()?)
+ ({json!(v)});
);