• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# automatically generated by the FlatBuffers compiler, do not modify
2
3# namespace: MyGame
4
5import flatbuffers
6from flatbuffers.compat import import_numpy
7from typing import Any
8np = import_numpy()
9
10class MonsterExtra(object):
11    __slots__ = ['_tab']
12
13    @classmethod
14    def GetRootAs(cls, buf, offset: int = 0):
15        n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, offset)
16        x = MonsterExtra()
17        x.Init(buf, n + offset)
18        return x
19
20    @classmethod
21    def GetRootAsMonsterExtra(cls, buf, offset=0):
22        """This method is deprecated. Please switch to GetRootAs."""
23        return cls.GetRootAs(buf, offset)
24    @classmethod
25    def MonsterExtraBufferHasIdentifier(cls, buf, offset, size_prefixed=False):
26        return flatbuffers.util.BufferHasIdentifier(buf, offset, b"\x4D\x4F\x4E\x45", size_prefixed=size_prefixed)
27
28    # MonsterExtra
29    def Init(self, buf: bytes, pos: int):
30        self._tab = flatbuffers.table.Table(buf, pos)
31
32    # MonsterExtra
33    def D0(self):
34        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(4))
35        if o != 0:
36            return self._tab.Get(flatbuffers.number_types.Float64Flags, o + self._tab.Pos)
37        return float('nan')
38
39    # MonsterExtra
40    def D1(self):
41        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(6))
42        if o != 0:
43            return self._tab.Get(flatbuffers.number_types.Float64Flags, o + self._tab.Pos)
44        return float('nan')
45
46    # MonsterExtra
47    def D2(self):
48        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(8))
49        if o != 0:
50            return self._tab.Get(flatbuffers.number_types.Float64Flags, o + self._tab.Pos)
51        return float('inf')
52
53    # MonsterExtra
54    def D3(self):
55        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(10))
56        if o != 0:
57            return self._tab.Get(flatbuffers.number_types.Float64Flags, o + self._tab.Pos)
58        return float('-inf')
59
60    # MonsterExtra
61    def F0(self):
62        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(12))
63        if o != 0:
64            return self._tab.Get(flatbuffers.number_types.Float32Flags, o + self._tab.Pos)
65        return float('nan')
66
67    # MonsterExtra
68    def F1(self):
69        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(14))
70        if o != 0:
71            return self._tab.Get(flatbuffers.number_types.Float32Flags, o + self._tab.Pos)
72        return float('nan')
73
74    # MonsterExtra
75    def F2(self):
76        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(16))
77        if o != 0:
78            return self._tab.Get(flatbuffers.number_types.Float32Flags, o + self._tab.Pos)
79        return float('inf')
80
81    # MonsterExtra
82    def F3(self):
83        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(18))
84        if o != 0:
85            return self._tab.Get(flatbuffers.number_types.Float32Flags, o + self._tab.Pos)
86        return float('-inf')
87
88    # MonsterExtra
89    def Dvec(self, j: int):
90        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(20))
91        if o != 0:
92            a = self._tab.Vector(o)
93            return self._tab.Get(flatbuffers.number_types.Float64Flags, a + flatbuffers.number_types.UOffsetTFlags.py_type(j * 8))
94        return 0
95
96    # MonsterExtra
97    def DvecAsNumpy(self):
98        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(20))
99        if o != 0:
100            return self._tab.GetVectorAsNumpy(flatbuffers.number_types.Float64Flags, o)
101        return 0
102
103    # MonsterExtra
104    def DvecLength(self) -> int:
105        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(20))
106        if o != 0:
107            return self._tab.VectorLen(o)
108        return 0
109
110    # MonsterExtra
111    def DvecIsNone(self) -> bool:
112        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(20))
113        return o == 0
114
115    # MonsterExtra
116    def Fvec(self, j: int):
117        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(22))
118        if o != 0:
119            a = self._tab.Vector(o)
120            return self._tab.Get(flatbuffers.number_types.Float32Flags, a + flatbuffers.number_types.UOffsetTFlags.py_type(j * 4))
121        return 0
122
123    # MonsterExtra
124    def FvecAsNumpy(self):
125        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(22))
126        if o != 0:
127            return self._tab.GetVectorAsNumpy(flatbuffers.number_types.Float32Flags, o)
128        return 0
129
130    # MonsterExtra
131    def FvecLength(self) -> int:
132        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(22))
133        if o != 0:
134            return self._tab.VectorLen(o)
135        return 0
136
137    # MonsterExtra
138    def FvecIsNone(self) -> bool:
139        o = flatbuffers.number_types.UOffsetTFlags.py_type(self._tab.Offset(22))
140        return o == 0
141
142def MonsterExtraStart(builder: flatbuffers.Builder):
143    builder.StartObject(11)
144
145def Start(builder: flatbuffers.Builder):
146    MonsterExtraStart(builder)
147
148def MonsterExtraAddD0(builder: flatbuffers.Builder, d0: float):
149    builder.PrependFloat64Slot(0, d0, float('nan'))
150
151def AddD0(builder: flatbuffers.Builder, d0: float):
152    MonsterExtraAddD0(builder, d0)
153
154def MonsterExtraAddD1(builder: flatbuffers.Builder, d1: float):
155    builder.PrependFloat64Slot(1, d1, float('nan'))
156
157def AddD1(builder: flatbuffers.Builder, d1: float):
158    MonsterExtraAddD1(builder, d1)
159
160def MonsterExtraAddD2(builder: flatbuffers.Builder, d2: float):
161    builder.PrependFloat64Slot(2, d2, float('inf'))
162
163def AddD2(builder: flatbuffers.Builder, d2: float):
164    MonsterExtraAddD2(builder, d2)
165
166def MonsterExtraAddD3(builder: flatbuffers.Builder, d3: float):
167    builder.PrependFloat64Slot(3, d3, float('-inf'))
168
169def AddD3(builder: flatbuffers.Builder, d3: float):
170    MonsterExtraAddD3(builder, d3)
171
172def MonsterExtraAddF0(builder: flatbuffers.Builder, f0: float):
173    builder.PrependFloat32Slot(4, f0, float('nan'))
174
175def AddF0(builder: flatbuffers.Builder, f0: float):
176    MonsterExtraAddF0(builder, f0)
177
178def MonsterExtraAddF1(builder: flatbuffers.Builder, f1: float):
179    builder.PrependFloat32Slot(5, f1, float('nan'))
180
181def AddF1(builder: flatbuffers.Builder, f1: float):
182    MonsterExtraAddF1(builder, f1)
183
184def MonsterExtraAddF2(builder: flatbuffers.Builder, f2: float):
185    builder.PrependFloat32Slot(6, f2, float('inf'))
186
187def AddF2(builder: flatbuffers.Builder, f2: float):
188    MonsterExtraAddF2(builder, f2)
189
190def MonsterExtraAddF3(builder: flatbuffers.Builder, f3: float):
191    builder.PrependFloat32Slot(7, f3, float('-inf'))
192
193def AddF3(builder: flatbuffers.Builder, f3: float):
194    MonsterExtraAddF3(builder, f3)
195
196def MonsterExtraAddDvec(builder: flatbuffers.Builder, dvec: int):
197    builder.PrependUOffsetTRelativeSlot(8, flatbuffers.number_types.UOffsetTFlags.py_type(dvec), 0)
198
199def AddDvec(builder: flatbuffers.Builder, dvec: int):
200    MonsterExtraAddDvec(builder, dvec)
201
202def MonsterExtraStartDvecVector(builder, numElems: int) -> int:
203    return builder.StartVector(8, numElems, 8)
204
205def StartDvecVector(builder, numElems: int) -> int:
206    return MonsterExtraStartDvecVector(builder, numElems)
207
208def MonsterExtraAddFvec(builder: flatbuffers.Builder, fvec: int):
209    builder.PrependUOffsetTRelativeSlot(9, flatbuffers.number_types.UOffsetTFlags.py_type(fvec), 0)
210
211def AddFvec(builder: flatbuffers.Builder, fvec: int):
212    MonsterExtraAddFvec(builder, fvec)
213
214def MonsterExtraStartFvecVector(builder, numElems: int) -> int:
215    return builder.StartVector(4, numElems, 4)
216
217def StartFvecVector(builder, numElems: int) -> int:
218    return MonsterExtraStartFvecVector(builder, numElems)
219
220def MonsterExtraEnd(builder: flatbuffers.Builder) -> int:
221    return builder.EndObject()
222
223def End(builder: flatbuffers.Builder) -> int:
224    return MonsterExtraEnd(builder)
225
226try:
227    from typing import List
228except:
229    pass
230
231class MonsterExtraT(object):
232
233    # MonsterExtraT
234    def __init__(self):
235        self.d0 = float('nan')  # type: float
236        self.d1 = float('nan')  # type: float
237        self.d2 = float('inf')  # type: float
238        self.d3 = float('-inf')  # type: float
239        self.f0 = float('nan')  # type: float
240        self.f1 = float('nan')  # type: float
241        self.f2 = float('inf')  # type: float
242        self.f3 = float('-inf')  # type: float
243        self.dvec = None  # type: List[float]
244        self.fvec = None  # type: List[float]
245
246    @classmethod
247    def InitFromBuf(cls, buf, pos):
248        monsterExtra = MonsterExtra()
249        monsterExtra.Init(buf, pos)
250        return cls.InitFromObj(monsterExtra)
251
252    @classmethod
253    def InitFromPackedBuf(cls, buf, pos=0):
254        n = flatbuffers.encode.Get(flatbuffers.packer.uoffset, buf, pos)
255        return cls.InitFromBuf(buf, pos+n)
256
257    @classmethod
258    def InitFromObj(cls, monsterExtra):
259        x = MonsterExtraT()
260        x._UnPack(monsterExtra)
261        return x
262
263    def __eq__(self, other):
264        return type(self) == type(other) and \
265            self.d0 == other.d0 and \
266            self.d1 == other.d1 and \
267            self.d2 == other.d2 and \
268            self.d3 == other.d3 and \
269            self.f0 == other.f0 and \
270            self.f1 == other.f1 and \
271            self.f2 == other.f2 and \
272            self.f3 == other.f3 and \
273            self.dvec == other.dvec and \
274            self.fvec == other.fvec
275
276    # MonsterExtraT
277    def _UnPack(self, monsterExtra):
278        if monsterExtra is None:
279            return
280        self.d0 = monsterExtra.D0()
281        self.d1 = monsterExtra.D1()
282        self.d2 = monsterExtra.D2()
283        self.d3 = monsterExtra.D3()
284        self.f0 = monsterExtra.F0()
285        self.f1 = monsterExtra.F1()
286        self.f2 = monsterExtra.F2()
287        self.f3 = monsterExtra.F3()
288        if not monsterExtra.DvecIsNone():
289            if np is None:
290                self.dvec = []
291                for i in range(monsterExtra.DvecLength()):
292                    self.dvec.append(monsterExtra.Dvec(i))
293            else:
294                self.dvec = monsterExtra.DvecAsNumpy()
295        if not monsterExtra.FvecIsNone():
296            if np is None:
297                self.fvec = []
298                for i in range(monsterExtra.FvecLength()):
299                    self.fvec.append(monsterExtra.Fvec(i))
300            else:
301                self.fvec = monsterExtra.FvecAsNumpy()
302
303    # MonsterExtraT
304    def Pack(self, builder):
305        if self.dvec is not None:
306            if np is not None and type(self.dvec) is np.ndarray:
307                dvec = builder.CreateNumpyVector(self.dvec)
308            else:
309                MonsterExtraStartDvecVector(builder, len(self.dvec))
310                for i in reversed(range(len(self.dvec))):
311                    builder.PrependFloat64(self.dvec[i])
312                dvec = builder.EndVector()
313        if self.fvec is not None:
314            if np is not None and type(self.fvec) is np.ndarray:
315                fvec = builder.CreateNumpyVector(self.fvec)
316            else:
317                MonsterExtraStartFvecVector(builder, len(self.fvec))
318                for i in reversed(range(len(self.fvec))):
319                    builder.PrependFloat32(self.fvec[i])
320                fvec = builder.EndVector()
321        MonsterExtraStart(builder)
322        MonsterExtraAddD0(builder, self.d0)
323        MonsterExtraAddD1(builder, self.d1)
324        MonsterExtraAddD2(builder, self.d2)
325        MonsterExtraAddD3(builder, self.d3)
326        MonsterExtraAddF0(builder, self.f0)
327        MonsterExtraAddF1(builder, self.f1)
328        MonsterExtraAddF2(builder, self.f2)
329        MonsterExtraAddF3(builder, self.f3)
330        if self.dvec is not None:
331            MonsterExtraAddDvec(builder, dvec)
332        if self.fvec is not None:
333            MonsterExtraAddFvec(builder, fvec)
334        monsterExtra = MonsterExtraEnd(builder)
335        return monsterExtra
336