xref: /aosp_15_r20/external/flatbuffers/samples/monster.fbs (revision 890232f25432b36107d06881e0a25aaa6b473652)
1*890232f2SAndroid Build Coastguard Worker// Example IDL file for our monster's schema.
2*890232f2SAndroid Build Coastguard Worker
3*890232f2SAndroid Build Coastguard Workernamespace MyGame.Sample;
4*890232f2SAndroid Build Coastguard Worker
5*890232f2SAndroid Build Coastguard Workerenum Color:byte { Red = 0, Green, Blue = 2 }
6*890232f2SAndroid Build Coastguard Worker
7*890232f2SAndroid Build Coastguard Workerunion Equipment { Weapon } // Optionally add more tables.
8*890232f2SAndroid Build Coastguard Worker
9*890232f2SAndroid Build Coastguard Workerstruct Vec3 {
10*890232f2SAndroid Build Coastguard Worker  x:float;
11*890232f2SAndroid Build Coastguard Worker  y:float;
12*890232f2SAndroid Build Coastguard Worker  z:float;
13*890232f2SAndroid Build Coastguard Worker}
14*890232f2SAndroid Build Coastguard Worker
15*890232f2SAndroid Build Coastguard Workertable Monster {
16*890232f2SAndroid Build Coastguard Worker  pos:Vec3;
17*890232f2SAndroid Build Coastguard Worker  mana:short = 150;
18*890232f2SAndroid Build Coastguard Worker  hp:short = 100;
19*890232f2SAndroid Build Coastguard Worker  name:string;
20*890232f2SAndroid Build Coastguard Worker  friendly:bool = false (deprecated);
21*890232f2SAndroid Build Coastguard Worker  inventory:[ubyte];
22*890232f2SAndroid Build Coastguard Worker  color:Color = Blue;
23*890232f2SAndroid Build Coastguard Worker  weapons:[Weapon];
24*890232f2SAndroid Build Coastguard Worker  equipped:Equipment;
25*890232f2SAndroid Build Coastguard Worker  path:[Vec3];
26*890232f2SAndroid Build Coastguard Worker}
27*890232f2SAndroid Build Coastguard Worker
28*890232f2SAndroid Build Coastguard Workertable Weapon {
29*890232f2SAndroid Build Coastguard Worker  name:string;
30*890232f2SAndroid Build Coastguard Worker  damage:short;
31*890232f2SAndroid Build Coastguard Worker}
32*890232f2SAndroid Build Coastguard Worker
33*890232f2SAndroid Build Coastguard Workerroot_type Monster;
34