1// Example IDL file for our monster's schema. 2 3namespace MyGame.Sample; 4 5enum Color:byte { Red = 0, Green, Blue = 2 } 6 7union Equipment { Weapon } // Optionally add more tables. 8 9struct Vec3 { 10 x:float; 11 y:float; 12 z:float; 13} 14 15table Monster { 16 pos:Vec3; // Struct. 17 mana:short = 150; 18 hp:short = 100; 19 name:string; 20 friendly:bool = false (deprecated); 21 inventory:[ubyte]; // Vector of scalars. 22 color:Color = Blue; // Enum. 23 weapons:[Weapon]; // Vector of tables. 24 equipped:Equipment; // Union. 25 path:[Vec3]; // Vector of structs. 26} 27 28table Weapon { 29 name:string; 30 damage:short; 31} 32 33root_type Monster; 34