| // automatically generated by the FlatBuffers compiler, do not modify |
| import flatbuffers |
| |
| namespace MyGame_Sample |
| |
| enum Color: |
| Color_Red = 0 |
| Color_Green = 1 |
| Color_Blue = 2 |
| |
| enum Equipment: |
| Equipment_NONE = 0 |
| Equipment_Weapon = 1 |
| |
| class Vec3 |
| |
| class Monster |
| |
| class Weapon |
| |
| class Vec3 : flatbuffers_handle |
| def x() -> float: |
| return buf_.read_float32_le(pos_ + 0) |
| def y() -> float: |
| return buf_.read_float32_le(pos_ + 4) |
| def z() -> float: |
| return buf_.read_float32_le(pos_ + 8) |
| |
| def CreateVec3(b_:flatbuffers_builder, x:float, y:float, z:float): |
| b_.Prep(4, 12) |
| b_.PrependFloat32(z) |
| b_.PrependFloat32(y) |
| b_.PrependFloat32(x) |
| return b_.Offset() |
| |
| class Monster : flatbuffers_handle |
| def pos() -> MyGame_Sample_Vec3?: |
| let o = buf_.flatbuffers_field_struct(pos_, 4) |
| return if o: MyGame_Sample_Vec3 { buf_, o } else: nil |
| def mana() -> int: |
| return buf_.flatbuffers_field_int16(pos_, 6, 150) |
| def hp() -> int: |
| return buf_.flatbuffers_field_int16(pos_, 8, 100) |
| def name() -> string: |
| return buf_.flatbuffers_field_string(pos_, 10) |
| def inventory(i:int) -> int: |
| return buf_.read_uint8_le(buf_.flatbuffers_field_vector(pos_, 14) + i * 1) |
| def inventory_length() -> int: |
| return buf_.flatbuffers_field_vector_len(pos_, 14) |
| def color() -> Color: |
| return Color(buf_.flatbuffers_field_int8(pos_, 16, 2)) |
| def weapons(i:int) -> MyGame_Sample_Weapon: |
| return MyGame_Sample_Weapon { buf_, buf_.flatbuffers_indirect(buf_.flatbuffers_field_vector(pos_, 18) + i * 4) } |
| def weapons_length() -> int: |
| return buf_.flatbuffers_field_vector_len(pos_, 18) |
| def equipped_type() -> Equipment: |
| return Equipment(buf_.flatbuffers_field_uint8(pos_, 20, 0)) |
| def equipped_as_Weapon(): |
| return MyGame_Sample_Weapon { buf_, buf_.flatbuffers_field_table(pos_, 22) } |
| def path(i:int) -> MyGame_Sample_Vec3: |
| return MyGame_Sample_Vec3 { buf_, buf_.flatbuffers_field_vector(pos_, 24) + i * 12 } |
| def path_length() -> int: |
| return buf_.flatbuffers_field_vector_len(pos_, 24) |
| |
| def GetRootAsMonster(buf:string): return Monster { buf, buf.flatbuffers_indirect(0) } |
| |
| struct MonsterBuilder: |
| b_:flatbuffers_builder |
| def start(): |
| b_.StartObject(11) |
| return this |
| def add_pos(pos:flatbuffers_offset): |
| b_.PrependStructSlot(0, pos) |
| return this |
| def add_mana(mana:int): |
| b_.PrependInt16Slot(1, mana, 150) |
| return this |
| def add_hp(hp:int): |
| b_.PrependInt16Slot(2, hp, 100) |
| return this |
| def add_name(name:flatbuffers_offset): |
| b_.PrependUOffsetTRelativeSlot(3, name) |
| return this |
| def add_inventory(inventory:flatbuffers_offset): |
| b_.PrependUOffsetTRelativeSlot(5, inventory) |
| return this |
| def add_color(color:Color): |
| b_.PrependInt8Slot(6, color, 2) |
| return this |
| def add_weapons(weapons:flatbuffers_offset): |
| b_.PrependUOffsetTRelativeSlot(7, weapons) |
| return this |
| def add_equipped_type(equipped_type:Equipment): |
| b_.PrependUint8Slot(8, equipped_type, 0) |
| return this |
| def add_equipped(equipped:flatbuffers_offset): |
| b_.PrependUOffsetTRelativeSlot(9, equipped) |
| return this |
| def add_path(path:flatbuffers_offset): |
| b_.PrependUOffsetTRelativeSlot(10, path) |
| return this |
| def end(): |
| return b_.EndObject() |
| |
| def MonsterStartInventoryVector(b_:flatbuffers_builder, n_:int): |
| b_.StartVector(1, n_, 1) |
| def MonsterCreateInventoryVector(b_:flatbuffers_builder, v_:[int]): |
| b_.StartVector(1, v_.length, 1) |
| reverse(v_) e_: b_.PrependUint8(e_) |
| return b_.EndVector(v_.length) |
| |
| def MonsterStartWeaponsVector(b_:flatbuffers_builder, n_:int): |
| b_.StartVector(4, n_, 4) |
| def MonsterCreateWeaponsVector(b_:flatbuffers_builder, v_:[flatbuffers_offset]): |
| b_.StartVector(4, v_.length, 4) |
| reverse(v_) e_: b_.PrependUOffsetTRelative(e_) |
| return b_.EndVector(v_.length) |
| |
| def MonsterStartPathVector(b_:flatbuffers_builder, n_:int): |
| b_.StartVector(12, n_, 4) |
| |
| class Weapon : flatbuffers_handle |
| def name() -> string: |
| return buf_.flatbuffers_field_string(pos_, 4) |
| def damage() -> int: |
| return buf_.flatbuffers_field_int16(pos_, 6, 0) |
| |
| def GetRootAsWeapon(buf:string): return Weapon { buf, buf.flatbuffers_indirect(0) } |
| |
| struct WeaponBuilder: |
| b_:flatbuffers_builder |
| def start(): |
| b_.StartObject(2) |
| return this |
| def add_name(name:flatbuffers_offset): |
| b_.PrependUOffsetTRelativeSlot(0, name) |
| return this |
| def add_damage(damage:int): |
| b_.PrependInt16Slot(1, damage, 0) |
| return this |
| def end(): |
| return b_.EndObject() |
| |