summaryrefslogtreecommitdiff
path: root/character_information.gd
diff options
context:
space:
mode:
authorDaniel Weipert <git@mail.dweipert.de>2024-11-28 00:45:30 +0100
committerDaniel Weipert <git@mail.dweipert.de>2024-11-28 00:45:30 +0100
commitc89f25f59aa493d95bcac8e75ca5cdd57a0403e7 (patch)
treee1eb14f3b27ab8bcce68551424fe49a4f7d376af /character_information.gd
initial commit
Diffstat (limited to 'character_information.gd')
-rw-r--r--character_information.gd32
1 files changed, 32 insertions, 0 deletions
diff --git a/character_information.gd b/character_information.gd
new file mode 100644
index 0000000..101f74f
--- /dev/null
+++ b/character_information.gd
@@ -0,0 +1,32 @@
+class_name CharacterInformation
+
+
+## Byte Length: 4
+var character_id: int
+
+## Byte Length: 8
+var experience: int
+
+## Byte Length: 4
+var money: int
+
+
+static func from_bytes(bytes: PackedByteArray):
+ var info = CharacterInformation.new()
+
+ info.character_id = bytes.decode_u32(0)
+ info.experience = bytes.decode_s64(4)
+ info.money = bytes.decode_s32(12)
+
+ return info
+
+
+static func array_from_bytes(bytes: PackedByteArray) -> Array:
+ var array = []
+
+ var offset = 0
+ while offset < bytes.size():
+ array.append(from_bytes(bytes.slice(offset)))
+ offset += 175
+
+ return array