class_name RegularItemInformation extends PacketChunk const BYTE_LENGTH := 22 ## Byte Type: u16 ## Byte Length: 2 var index: int ## Byte Type: u32 ## Byte Length: 4 var item_id: int ## Byte Type: u8 ## Byte Length: 1 var item_type: int ## Byte Type: u16 ## Byte Length: 2 var amount: int ## Byte Type: u32 ## Byte Length: 4 var equipped_position: int ## Byte Type: u32 ## Byte Length: 4 var slot: int ## Byte Type: u32 ## Byte Length: 4 var hire_expiration_date: int ## Byte Type: u8 ## Byte Length: 1 var flags: int static func from_bytes(bytes: PackedByteArray): var info = RegularItemInformation.new() info.index = bytes.decode_u16(0) info.item_id = bytes.decode_u32(2) info.item_type = bytes.decode_u8(6) info.amount = bytes.decode_u16(7) info.equipped_position = bytes.decode_u32(9) info.slot = bytes.decode_u32(13) info.hire_expiration_date = bytes.decode_u32(17) info.flags = bytes.decode_u8(21) return info static func array_from_bytes(bytes: PackedByteArray) -> Array[RegularItemInformation]: var array: Array[RegularItemInformation] = [] var offset = 0 while offset < bytes.size(): var chunk = from_bytes(bytes.slice(offset)) array.append(chunk) offset += chunk.byte_length return array