1*890232f2SAndroid Build Coastguard Worker-- automatically generated by the FlatBuffers compiler, do not modify 2*890232f2SAndroid Build Coastguard Worker 3*890232f2SAndroid Build Coastguard Worker-- namespace: Sample 4*890232f2SAndroid Build Coastguard Worker 5*890232f2SAndroid Build Coastguard Workerlocal flatbuffers = require('flatbuffers') 6*890232f2SAndroid Build Coastguard Worker 7*890232f2SAndroid Build Coastguard Workerlocal Monster = {} -- the module 8*890232f2SAndroid Build Coastguard Workerlocal Monster_mt = {} -- the class metatable 9*890232f2SAndroid Build Coastguard Worker 10*890232f2SAndroid Build Coastguard Workerfunction Monster.New() 11*890232f2SAndroid Build Coastguard Worker local o = {} 12*890232f2SAndroid Build Coastguard Worker setmetatable(o, {__index = Monster_mt}) 13*890232f2SAndroid Build Coastguard Worker return o 14*890232f2SAndroid Build Coastguard Workerend 15*890232f2SAndroid Build Coastguard Workerfunction Monster.GetRootAsMonster(buf, offset) 16*890232f2SAndroid Build Coastguard Worker local n = flatbuffers.N.UOffsetT:Unpack(buf, offset) 17*890232f2SAndroid Build Coastguard Worker local o = Monster.New() 18*890232f2SAndroid Build Coastguard Worker o:Init(buf, n + offset) 19*890232f2SAndroid Build Coastguard Worker return o 20*890232f2SAndroid Build Coastguard Workerend 21*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:Init(buf, pos) 22*890232f2SAndroid Build Coastguard Worker self.view = flatbuffers.view.New(buf, pos) 23*890232f2SAndroid Build Coastguard Workerend 24*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:Pos() 25*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(4) 26*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 27*890232f2SAndroid Build Coastguard Worker local x = o + self.view.pos 28*890232f2SAndroid Build Coastguard Worker local obj = require('MyGame.Sample.Vec3').New() 29*890232f2SAndroid Build Coastguard Worker obj:Init(self.view.bytes, x) 30*890232f2SAndroid Build Coastguard Worker return obj 31*890232f2SAndroid Build Coastguard Worker end 32*890232f2SAndroid Build Coastguard Workerend 33*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:Mana() 34*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(6) 35*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 36*890232f2SAndroid Build Coastguard Worker return self.view:Get(flatbuffers.N.Int16, o + self.view.pos) 37*890232f2SAndroid Build Coastguard Worker end 38*890232f2SAndroid Build Coastguard Worker return 150 39*890232f2SAndroid Build Coastguard Workerend 40*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:Hp() 41*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(8) 42*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 43*890232f2SAndroid Build Coastguard Worker return self.view:Get(flatbuffers.N.Int16, o + self.view.pos) 44*890232f2SAndroid Build Coastguard Worker end 45*890232f2SAndroid Build Coastguard Worker return 100 46*890232f2SAndroid Build Coastguard Workerend 47*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:Name() 48*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(10) 49*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 50*890232f2SAndroid Build Coastguard Worker return self.view:String(o + self.view.pos) 51*890232f2SAndroid Build Coastguard Worker end 52*890232f2SAndroid Build Coastguard Workerend 53*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:Inventory(j) 54*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(14) 55*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 56*890232f2SAndroid Build Coastguard Worker local a = self.view:Vector(o) 57*890232f2SAndroid Build Coastguard Worker return self.view:Get(flatbuffers.N.Uint8, a + ((j-1) * 1)) 58*890232f2SAndroid Build Coastguard Worker end 59*890232f2SAndroid Build Coastguard Worker return 0 60*890232f2SAndroid Build Coastguard Workerend 61*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:InventoryLength() 62*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(14) 63*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 64*890232f2SAndroid Build Coastguard Worker return self.view:VectorLen(o) 65*890232f2SAndroid Build Coastguard Worker end 66*890232f2SAndroid Build Coastguard Worker return 0 67*890232f2SAndroid Build Coastguard Workerend 68*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:Color() 69*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(16) 70*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 71*890232f2SAndroid Build Coastguard Worker return self.view:Get(flatbuffers.N.Int8, o + self.view.pos) 72*890232f2SAndroid Build Coastguard Worker end 73*890232f2SAndroid Build Coastguard Worker return 2 74*890232f2SAndroid Build Coastguard Workerend 75*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:Weapons(j) 76*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(18) 77*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 78*890232f2SAndroid Build Coastguard Worker local x = self.view:Vector(o) 79*890232f2SAndroid Build Coastguard Worker x = x + ((j-1) * 4) 80*890232f2SAndroid Build Coastguard Worker x = self.view:Indirect(x) 81*890232f2SAndroid Build Coastguard Worker local obj = require('MyGame.Sample.Weapon').New() 82*890232f2SAndroid Build Coastguard Worker obj:Init(self.view.bytes, x) 83*890232f2SAndroid Build Coastguard Worker return obj 84*890232f2SAndroid Build Coastguard Worker end 85*890232f2SAndroid Build Coastguard Workerend 86*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:WeaponsLength() 87*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(18) 88*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 89*890232f2SAndroid Build Coastguard Worker return self.view:VectorLen(o) 90*890232f2SAndroid Build Coastguard Worker end 91*890232f2SAndroid Build Coastguard Worker return 0 92*890232f2SAndroid Build Coastguard Workerend 93*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:EquippedType() 94*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(20) 95*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 96*890232f2SAndroid Build Coastguard Worker return self.view:Get(flatbuffers.N.Uint8, o + self.view.pos) 97*890232f2SAndroid Build Coastguard Worker end 98*890232f2SAndroid Build Coastguard Worker return 0 99*890232f2SAndroid Build Coastguard Workerend 100*890232f2SAndroid Build Coastguard Workerfunction Monster_mt:Equipped() 101*890232f2SAndroid Build Coastguard Worker local o = self.view:Offset(22) 102*890232f2SAndroid Build Coastguard Worker if o ~= 0 then 103*890232f2SAndroid Build Coastguard Worker local obj = flatbuffers.view.New(require('flatbuffers.binaryarray').New(0), 0) 104*890232f2SAndroid Build Coastguard Worker self.view:Union(obj, o) 105*890232f2SAndroid Build Coastguard Worker return obj 106*890232f2SAndroid Build Coastguard Worker end 107*890232f2SAndroid Build Coastguard Workerend 108*890232f2SAndroid Build Coastguard Workerfunction Monster.Start(builder) builder:StartObject(10) end 109*890232f2SAndroid Build Coastguard Workerfunction Monster.AddPos(builder, pos) builder:PrependStructSlot(0, pos, 0) end 110*890232f2SAndroid Build Coastguard Workerfunction Monster.AddMana(builder, mana) builder:PrependInt16Slot(1, mana, 150) end 111*890232f2SAndroid Build Coastguard Workerfunction Monster.AddHp(builder, hp) builder:PrependInt16Slot(2, hp, 100) end 112*890232f2SAndroid Build Coastguard Workerfunction Monster.AddName(builder, name) builder:PrependUOffsetTRelativeSlot(3, name, 0) end 113*890232f2SAndroid Build Coastguard Workerfunction Monster.AddInventory(builder, inventory) builder:PrependUOffsetTRelativeSlot(5, inventory, 0) end 114*890232f2SAndroid Build Coastguard Workerfunction Monster.StartInventoryVector(builder, numElems) return builder:StartVector(1, numElems, 1) end 115*890232f2SAndroid Build Coastguard Workerfunction Monster.AddColor(builder, color) builder:PrependInt8Slot(6, color, 2) end 116*890232f2SAndroid Build Coastguard Workerfunction Monster.AddWeapons(builder, weapons) builder:PrependUOffsetTRelativeSlot(7, weapons, 0) end 117*890232f2SAndroid Build Coastguard Workerfunction Monster.StartWeaponsVector(builder, numElems) return builder:StartVector(4, numElems, 4) end 118*890232f2SAndroid Build Coastguard Workerfunction Monster.AddEquippedType(builder, equippedType) builder:PrependUint8Slot(8, equippedType, 0) end 119*890232f2SAndroid Build Coastguard Workerfunction Monster.AddEquipped(builder, equipped) builder:PrependUOffsetTRelativeSlot(9, equipped, 0) end 120*890232f2SAndroid Build Coastguard Workerfunction Monster.End(builder) return builder:EndObject() end 121*890232f2SAndroid Build Coastguard Worker 122*890232f2SAndroid Build Coastguard Workerreturn Monster -- return the module