summaryrefslogtreecommitdiff
path: root/spec/item.fspec
diff options
context:
space:
mode:
Diffstat (limited to 'spec/item.fspec')
-rw-r--r--spec/item.fspec28
1 files changed, 28 insertions, 0 deletions
diff --git a/spec/item.fspec b/spec/item.fspec
new file mode 100644
index 0000000..c4d1767
--- /dev/null
+++ b/spec/item.fspec
@@ -0,0 +1,28 @@
+struct string_info {
+ u32 offset;
+ u32 flags;
+};
+
+struct strings {
+ u32 nmemb;
+ struct string_info info[nmemb];
+};
+
+struct item {
+ u32 id;
+ u16 flags;
+ u16 stack;
+ u16 type;
+ u16 resource;
+ u16 targets;
+
+ union data (type) {
+ 4 => struct weapon weapon;
+ 5 => struct armor armor;
+ 7 => struct usable usable;
+ 12 => struct puppet puppet;
+ * => struct general general;
+ };
+
+ struct strings strings;
+};