// Example IDL file for our monster's schema. namespace jmonster; enum JColor:byte { Red = 0, Green, Blue = 2 } union JEquipment { JWeapon } // Optionally add more tables. struct JVec3 { x:float; y:float; z:float; } table JMonster { pos:JVec3; mana:short = 150; hp:short = 100; name:string; friendly:bool = false (deprecated); inventory:[ubyte]; color:JColor = Blue; weapons:[JWeapon]; equipped:JEquipment; path:[JVec3]; } table JWeapon { name:string; damage:short; } table JAllMonsters { monsters: [JMonster]; } root_type JAllMonsters;