blob: 2c7c10d2cdaa7062bcc1e39a532089e1a573026e [file] [log] [blame]
Austin Schuhe89fa2d2019-08-14 20:24:23 -07001// automatically generated by the FlatBuffers compiler, do not modify
2// ignore_for_file: unused_import, non_constant_identifier_names
3
4library my_game.sample;
5
6import 'dart:typed_data' show Uint8List;
7import 'package:flat_buffers/flat_buffers.dart' as fb;
8
9
10class Color {
11 final int value;
12 const Color._(this.value);
13
14 factory Color.fromValue(int value) {
15 if (value == null) return null;
16 if (!values.containsKey(value)) {
17 throw new StateError('Invalid value $value for bit flag enum Color');
18 }
19 return values[value];
20 }
21
22 static const int minValue = 0;
23 static const int maxValue = 2;
24 static bool containsValue(int value) => values.containsKey(value);
25
26 static const Color Red = const Color._(0);
27 static const Color Green = const Color._(1);
28 static const Color Blue = const Color._(2);
29 static get values => {0: Red,1: Green,2: Blue,};
30
31 static const fb.Reader<Color> reader = const _ColorReader();
32
33 @override
34 String toString() {
35 return 'Color{value: $value}';
36 }
37}
38
39class _ColorReader extends fb.Reader<Color> {
40 const _ColorReader();
41
42 @override
43 int get size => 1;
44
45 @override
46 Color read(fb.BufferContext bc, int offset) =>
47 new Color.fromValue(const fb.Int8Reader().read(bc, offset));
48}
49
50class EquipmentTypeId {
51 final int value;
52 const EquipmentTypeId._(this.value);
53
54 factory EquipmentTypeId.fromValue(int value) {
55 if (value == null) return null;
56 if (!values.containsKey(value)) {
57 throw new StateError('Invalid value $value for bit flag enum EquipmentTypeId');
58 }
59 return values[value];
60 }
61
62 static const int minValue = 0;
63 static const int maxValue = 1;
64 static bool containsValue(int value) => values.containsKey(value);
65
66 static const EquipmentTypeId NONE = const EquipmentTypeId._(0);
67 static const EquipmentTypeId Weapon = const EquipmentTypeId._(1);
68 static get values => {0: NONE,1: Weapon,};
69
70 static const fb.Reader<EquipmentTypeId> reader = const _EquipmentTypeIdReader();
71
72 @override
73 String toString() {
74 return 'EquipmentTypeId{value: $value}';
75 }
76}
77
78class _EquipmentTypeIdReader extends fb.Reader<EquipmentTypeId> {
79 const _EquipmentTypeIdReader();
80
81 @override
82 int get size => 1;
83
84 @override
85 EquipmentTypeId read(fb.BufferContext bc, int offset) =>
86 new EquipmentTypeId.fromValue(const fb.Uint8Reader().read(bc, offset));
87}
88
89class Vec3 {
90 Vec3._(this._bc, this._bcOffset);
91
92 static const fb.Reader<Vec3> reader = const _Vec3Reader();
93
94 final fb.BufferContext _bc;
95 final int _bcOffset;
96
97 double get x => const fb.Float32Reader().read(_bc, _bcOffset + 0);
98 double get y => const fb.Float32Reader().read(_bc, _bcOffset + 4);
99 double get z => const fb.Float32Reader().read(_bc, _bcOffset + 8);
100
101 @override
102 String toString() {
103 return 'Vec3{x: $x, y: $y, z: $z}';
104 }
105}
106
107class _Vec3Reader extends fb.StructReader<Vec3> {
108 const _Vec3Reader();
109
110 @override
111 int get size => 12;
112
113 @override
114 Vec3 createObject(fb.BufferContext bc, int offset) =>
115 new Vec3._(bc, offset);
116}
117
118class Vec3Builder {
119 Vec3Builder(this.fbBuilder) {
120 assert(fbBuilder != null);
121 }
122
123 final fb.Builder fbBuilder;
124
125 int finish(double x, double y, double z) {
126 fbBuilder.putFloat32(z);
127 fbBuilder.putFloat32(y);
128 fbBuilder.putFloat32(x);
129 return fbBuilder.offset;
130 }
131
132}
133
134class Vec3ObjectBuilder extends fb.ObjectBuilder {
135 final double _x;
136 final double _y;
137 final double _z;
138
139 Vec3ObjectBuilder({
140 double x,
141 double y,
142 double z,
143 })
144 : _x = x,
145 _y = y,
146 _z = z;
147
148 /// Finish building, and store into the [fbBuilder].
149 @override
150 int finish(
151 fb.Builder fbBuilder) {
152 assert(fbBuilder != null);
153
154 fbBuilder.putFloat32(_z);
155 fbBuilder.putFloat32(_y);
156 fbBuilder.putFloat32(_x);
157 return fbBuilder.offset;
158 }
159
160 /// Convenience method to serialize to byte list.
161 @override
162 Uint8List toBytes([String fileIdentifier]) {
163 fb.Builder fbBuilder = new fb.Builder();
164 int offset = finish(fbBuilder);
165 return fbBuilder.finish(offset, fileIdentifier);
166 }
167}
168class Monster {
169 Monster._(this._bc, this._bcOffset);
170 factory Monster(List<int> bytes) {
171 fb.BufferContext rootRef = new fb.BufferContext.fromBytes(bytes);
172 return reader.read(rootRef, 0);
173 }
174
175 static const fb.Reader<Monster> reader = const _MonsterReader();
176
177 final fb.BufferContext _bc;
178 final int _bcOffset;
179
180 Vec3 get pos => Vec3.reader.vTableGet(_bc, _bcOffset, 4, null);
181 int get mana => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 6, 150);
182 int get hp => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 8, 100);
183 String get name => const fb.StringReader().vTableGet(_bc, _bcOffset, 10, null);
184 List<int> get inventory => const fb.ListReader<int>(const fb.Uint8Reader()).vTableGet(_bc, _bcOffset, 14, null);
185 Color get color => new Color.fromValue(const fb.Int8Reader().vTableGet(_bc, _bcOffset, 16, 2));
186 List<Weapon> get weapons => const fb.ListReader<Weapon>(Weapon.reader).vTableGet(_bc, _bcOffset, 18, null);
187 EquipmentTypeId get equippedType => new EquipmentTypeId.fromValue(const fb.Uint8Reader().vTableGet(_bc, _bcOffset, 20, null));
188 dynamic get equipped {
189 switch (equippedType?.value) {
190 case 1: return Weapon.reader.vTableGet(_bc, _bcOffset, 22, null);
191 default: return null;
192 }
193 }
194 List<Vec3> get path => const fb.ListReader<Vec3>(Vec3.reader).vTableGet(_bc, _bcOffset, 24, null);
195
196 @override
197 String toString() {
198 return 'Monster{pos: $pos, mana: $mana, hp: $hp, name: $name, inventory: $inventory, color: $color, weapons: $weapons, equippedType: $equippedType, equipped: $equipped, path: $path}';
199 }
200}
201
202class _MonsterReader extends fb.TableReader<Monster> {
203 const _MonsterReader();
204
205 @override
206 Monster createObject(fb.BufferContext bc, int offset) =>
207 new Monster._(bc, offset);
208}
209
210class MonsterBuilder {
211 MonsterBuilder(this.fbBuilder) {
212 assert(fbBuilder != null);
213 }
214
215 final fb.Builder fbBuilder;
216
217 void begin() {
218 fbBuilder.startTable();
219 }
220
221 int addPos(int offset) {
222 fbBuilder.addStruct(0, offset);
223 return fbBuilder.offset;
224 }
225 int addMana(int mana) {
226 fbBuilder.addInt16(1, mana);
227 return fbBuilder.offset;
228 }
229 int addHp(int hp) {
230 fbBuilder.addInt16(2, hp);
231 return fbBuilder.offset;
232 }
233 int addNameOffset(int offset) {
234 fbBuilder.addOffset(3, offset);
235 return fbBuilder.offset;
236 }
237 int addInventoryOffset(int offset) {
238 fbBuilder.addOffset(5, offset);
239 return fbBuilder.offset;
240 }
241 int addColor(Color color) {
242 fbBuilder.addInt8(6, color?.value);
243 return fbBuilder.offset;
244 }
245 int addWeaponsOffset(int offset) {
246 fbBuilder.addOffset(7, offset);
247 return fbBuilder.offset;
248 }
249 int addEquippedType(EquipmentTypeId equippedType) {
250 fbBuilder.addUint8(8, equippedType?.value);
251 return fbBuilder.offset;
252 }
253 int addEquippedOffset(int offset) {
254 fbBuilder.addOffset(9, offset);
255 return fbBuilder.offset;
256 }
257 int addPathOffset(int offset) {
258 fbBuilder.addOffset(10, offset);
259 return fbBuilder.offset;
260 }
261
262 int finish() {
263 return fbBuilder.endTable();
264 }
265}
266
267class MonsterObjectBuilder extends fb.ObjectBuilder {
268 final Vec3ObjectBuilder _pos;
269 final int _mana;
270 final int _hp;
271 final String _name;
272 final List<int> _inventory;
273 final Color _color;
274 final List<WeaponObjectBuilder> _weapons;
275 final EquipmentTypeId _equippedType;
276 final dynamic _equipped;
277 final List<Vec3ObjectBuilder> _path;
278
279 MonsterObjectBuilder({
280 Vec3ObjectBuilder pos,
281 int mana,
282 int hp,
283 String name,
284 List<int> inventory,
285 Color color,
286 List<WeaponObjectBuilder> weapons,
287 EquipmentTypeId equippedType,
288 dynamic equipped,
289 List<Vec3ObjectBuilder> path,
290 })
291 : _pos = pos,
292 _mana = mana,
293 _hp = hp,
294 _name = name,
295 _inventory = inventory,
296 _color = color,
297 _weapons = weapons,
298 _equippedType = equippedType,
299 _equipped = equipped,
300 _path = path;
301
302 /// Finish building, and store into the [fbBuilder].
303 @override
304 int finish(
305 fb.Builder fbBuilder) {
306 assert(fbBuilder != null);
307 final int nameOffset = fbBuilder.writeString(_name);
308 final int inventoryOffset = _inventory?.isNotEmpty == true
309 ? fbBuilder.writeListUint8(_inventory)
310 : null;
311 final int weaponsOffset = _weapons?.isNotEmpty == true
312 ? fbBuilder.writeList(_weapons.map((b) => b.getOrCreateOffset(fbBuilder)).toList())
313 : null;
314 final int equippedOffset = _equipped?.getOrCreateOffset(fbBuilder);
315 final int pathOffset = _path?.isNotEmpty == true
316 ? fbBuilder.writeListOfStructs(_path)
317 : null;
318
319 fbBuilder.startTable();
320 if (_pos != null) {
321 fbBuilder.addStruct(0, _pos.finish(fbBuilder));
322 }
323 fbBuilder.addInt16(1, _mana);
324 fbBuilder.addInt16(2, _hp);
325 if (nameOffset != null) {
326 fbBuilder.addOffset(3, nameOffset);
327 }
328 if (inventoryOffset != null) {
329 fbBuilder.addOffset(5, inventoryOffset);
330 }
331 fbBuilder.addInt8(6, _color?.value);
332 if (weaponsOffset != null) {
333 fbBuilder.addOffset(7, weaponsOffset);
334 }
335 fbBuilder.addUint8(8, _equippedType?.value);
336 if (equippedOffset != null) {
337 fbBuilder.addOffset(9, equippedOffset);
338 }
339 if (pathOffset != null) {
340 fbBuilder.addOffset(10, pathOffset);
341 }
342 return fbBuilder.endTable();
343 }
344
345 /// Convenience method to serialize to byte list.
346 @override
347 Uint8List toBytes([String fileIdentifier]) {
348 fb.Builder fbBuilder = new fb.Builder();
349 int offset = finish(fbBuilder);
350 return fbBuilder.finish(offset, fileIdentifier);
351 }
352}
353class Weapon {
354 Weapon._(this._bc, this._bcOffset);
355 factory Weapon(List<int> bytes) {
356 fb.BufferContext rootRef = new fb.BufferContext.fromBytes(bytes);
357 return reader.read(rootRef, 0);
358 }
359
360 static const fb.Reader<Weapon> reader = const _WeaponReader();
361
362 final fb.BufferContext _bc;
363 final int _bcOffset;
364
365 String get name => const fb.StringReader().vTableGet(_bc, _bcOffset, 4, null);
366 int get damage => const fb.Int16Reader().vTableGet(_bc, _bcOffset, 6, null);
367
368 @override
369 String toString() {
370 return 'Weapon{name: $name, damage: $damage}';
371 }
372}
373
374class _WeaponReader extends fb.TableReader<Weapon> {
375 const _WeaponReader();
376
377 @override
378 Weapon createObject(fb.BufferContext bc, int offset) =>
379 new Weapon._(bc, offset);
380}
381
382class WeaponBuilder {
383 WeaponBuilder(this.fbBuilder) {
384 assert(fbBuilder != null);
385 }
386
387 final fb.Builder fbBuilder;
388
389 void begin() {
390 fbBuilder.startTable();
391 }
392
393 int addNameOffset(int offset) {
394 fbBuilder.addOffset(0, offset);
395 return fbBuilder.offset;
396 }
397 int addDamage(int damage) {
398 fbBuilder.addInt16(1, damage);
399 return fbBuilder.offset;
400 }
401
402 int finish() {
403 return fbBuilder.endTable();
404 }
405}
406
407class WeaponObjectBuilder extends fb.ObjectBuilder {
408 final String _name;
409 final int _damage;
410
411 WeaponObjectBuilder({
412 String name,
413 int damage,
414 })
415 : _name = name,
416 _damage = damage;
417
418 /// Finish building, and store into the [fbBuilder].
419 @override
420 int finish(
421 fb.Builder fbBuilder) {
422 assert(fbBuilder != null);
423 final int nameOffset = fbBuilder.writeString(_name);
424
425 fbBuilder.startTable();
426 if (nameOffset != null) {
427 fbBuilder.addOffset(0, nameOffset);
428 }
429 fbBuilder.addInt16(1, _damage);
430 return fbBuilder.endTable();
431 }
432
433 /// Convenience method to serialize to byte list.
434 @override
435 Uint8List toBytes([String fileIdentifier]) {
436 fb.Builder fbBuilder = new fb.Builder();
437 int offset = finish(fbBuilder);
438 return fbBuilder.finish(offset, fileIdentifier);
439 }
440}