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