1 // <auto-generated>
2 //  automatically generated by the FlatBuffers compiler, do not modify
3 // </auto-generated>
4 
5 namespace MyGame
6 {
7 
8 using global::System;
9 using global::System.Collections.Generic;
10 using global::FlatBuffers;
11 
12 public struct MonsterExtra : IFlatbufferObject
13 {
14   private Table __p;
15   public ByteBuffer ByteBuffer { get { return __p.bb; } }
ValidateVersionMyGame.MonsterExtra16   public static void ValidateVersion() { FlatBufferConstants.FLATBUFFERS_2_0_0(); }
GetRootAsMonsterExtraMyGame.MonsterExtra17   public static MonsterExtra GetRootAsMonsterExtra(ByteBuffer _bb) { return GetRootAsMonsterExtra(_bb, new MonsterExtra()); }
GetRootAsMonsterExtraMyGame.MonsterExtra18   public static MonsterExtra GetRootAsMonsterExtra(ByteBuffer _bb, MonsterExtra obj) { return (obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }
MonsterExtraBufferHasIdentifierMyGame.MonsterExtra19   public static bool MonsterExtraBufferHasIdentifier(ByteBuffer _bb) { return Table.__has_identifier(_bb, "MONE"); }
__initMyGame.MonsterExtra20   public void __init(int _i, ByteBuffer _bb) { __p = new Table(_i, _bb); }
__assignMyGame.MonsterExtra21   public MonsterExtra __assign(int _i, ByteBuffer _bb) { __init(_i, _bb); return this; }
22 
23   public double D0 { get { int o = __p.__offset(4); return o != 0 ? __p.bb.GetDouble(o + __p.bb_pos) : (double)Double.NaN; } }
MutateD0MyGame.MonsterExtra24   public bool MutateD0(double d0) { int o = __p.__offset(4); if (o != 0) { __p.bb.PutDouble(o + __p.bb_pos, d0); return true; } else { return false; } }
25   public double D1 { get { int o = __p.__offset(6); return o != 0 ? __p.bb.GetDouble(o + __p.bb_pos) : (double)Double.NaN; } }
MutateD1MyGame.MonsterExtra26   public bool MutateD1(double d1) { int o = __p.__offset(6); if (o != 0) { __p.bb.PutDouble(o + __p.bb_pos, d1); return true; } else { return false; } }
27   public double D2 { get { int o = __p.__offset(8); return o != 0 ? __p.bb.GetDouble(o + __p.bb_pos) : (double)Double.PositiveInfinity; } }
MutateD2MyGame.MonsterExtra28   public bool MutateD2(double d2) { int o = __p.__offset(8); if (o != 0) { __p.bb.PutDouble(o + __p.bb_pos, d2); return true; } else { return false; } }
29   public double D3 { get { int o = __p.__offset(10); return o != 0 ? __p.bb.GetDouble(o + __p.bb_pos) : (double)Double.NegativeInfinity; } }
MutateD3MyGame.MonsterExtra30   public bool MutateD3(double d3) { int o = __p.__offset(10); if (o != 0) { __p.bb.PutDouble(o + __p.bb_pos, d3); return true; } else { return false; } }
31   public float F0 { get { int o = __p.__offset(12); return o != 0 ? __p.bb.GetFloat(o + __p.bb_pos) : (float)Single.NaN; } }
MutateF0MyGame.MonsterExtra32   public bool MutateF0(float f0) { int o = __p.__offset(12); if (o != 0) { __p.bb.PutFloat(o + __p.bb_pos, f0); return true; } else { return false; } }
33   public float F1 { get { int o = __p.__offset(14); return o != 0 ? __p.bb.GetFloat(o + __p.bb_pos) : (float)Single.NaN; } }
MutateF1MyGame.MonsterExtra34   public bool MutateF1(float f1) { int o = __p.__offset(14); if (o != 0) { __p.bb.PutFloat(o + __p.bb_pos, f1); return true; } else { return false; } }
35   public float F2 { get { int o = __p.__offset(16); return o != 0 ? __p.bb.GetFloat(o + __p.bb_pos) : (float)Single.PositiveInfinity; } }
MutateF2MyGame.MonsterExtra36   public bool MutateF2(float f2) { int o = __p.__offset(16); if (o != 0) { __p.bb.PutFloat(o + __p.bb_pos, f2); return true; } else { return false; } }
37   public float F3 { get { int o = __p.__offset(18); return o != 0 ? __p.bb.GetFloat(o + __p.bb_pos) : (float)Single.NegativeInfinity; } }
MutateF3MyGame.MonsterExtra38   public bool MutateF3(float f3) { int o = __p.__offset(18); if (o != 0) { __p.bb.PutFloat(o + __p.bb_pos, f3); return true; } else { return false; } }
DvecMyGame.MonsterExtra39   public double Dvec(int j) { int o = __p.__offset(20); return o != 0 ? __p.bb.GetDouble(__p.__vector(o) + j * 8) : (double)0; }
40   public int DvecLength { get { int o = __p.__offset(20); return o != 0 ? __p.__vector_len(o) : 0; } }
41 #if ENABLE_SPAN_T
GetDvecBytesMyGame.MonsterExtra42   public Span<double> GetDvecBytes() { return __p.__vector_as_span<double>(20, 8); }
43 #else
GetDvecBytesMyGame.MonsterExtra44   public ArraySegment<byte>? GetDvecBytes() { return __p.__vector_as_arraysegment(20); }
45 #endif
GetDvecArrayMyGame.MonsterExtra46   public double[] GetDvecArray() { return __p.__vector_as_array<double>(20); }
MutateDvecMyGame.MonsterExtra47   public bool MutateDvec(int j, double dvec) { int o = __p.__offset(20); if (o != 0) { __p.bb.PutDouble(__p.__vector(o) + j * 8, dvec); return true; } else { return false; } }
FvecMyGame.MonsterExtra48   public float Fvec(int j) { int o = __p.__offset(22); return o != 0 ? __p.bb.GetFloat(__p.__vector(o) + j * 4) : (float)0; }
49   public int FvecLength { get { int o = __p.__offset(22); return o != 0 ? __p.__vector_len(o) : 0; } }
50 #if ENABLE_SPAN_T
GetFvecBytesMyGame.MonsterExtra51   public Span<float> GetFvecBytes() { return __p.__vector_as_span<float>(22, 4); }
52 #else
GetFvecBytesMyGame.MonsterExtra53   public ArraySegment<byte>? GetFvecBytes() { return __p.__vector_as_arraysegment(22); }
54 #endif
GetFvecArrayMyGame.MonsterExtra55   public float[] GetFvecArray() { return __p.__vector_as_array<float>(22); }
MutateFvecMyGame.MonsterExtra56   public bool MutateFvec(int j, float fvec) { int o = __p.__offset(22); if (o != 0) { __p.bb.PutFloat(__p.__vector(o) + j * 4, fvec); return true; } else { return false; } }
57 
CreateMonsterExtraMyGame.MonsterExtra58   public static Offset<MyGame.MonsterExtra> CreateMonsterExtra(FlatBufferBuilder builder,
59       double d0 = Double.NaN,
60       double d1 = Double.NaN,
61       double d2 = Double.PositiveInfinity,
62       double d3 = Double.NegativeInfinity,
63       float f0 = Single.NaN,
64       float f1 = Single.NaN,
65       float f2 = Single.PositiveInfinity,
66       float f3 = Single.NegativeInfinity,
67       VectorOffset dvecOffset = default(VectorOffset),
68       VectorOffset fvecOffset = default(VectorOffset)) {
69     builder.StartTable(11);
70     MonsterExtra.AddD3(builder, d3);
71     MonsterExtra.AddD2(builder, d2);
72     MonsterExtra.AddD1(builder, d1);
73     MonsterExtra.AddD0(builder, d0);
74     MonsterExtra.AddFvec(builder, fvecOffset);
75     MonsterExtra.AddDvec(builder, dvecOffset);
76     MonsterExtra.AddF3(builder, f3);
77     MonsterExtra.AddF2(builder, f2);
78     MonsterExtra.AddF1(builder, f1);
79     MonsterExtra.AddF0(builder, f0);
80     return MonsterExtra.EndMonsterExtra(builder);
81   }
82 
StartMonsterExtraMyGame.MonsterExtra83   public static void StartMonsterExtra(FlatBufferBuilder builder) { builder.StartTable(11); }
AddD0MyGame.MonsterExtra84   public static void AddD0(FlatBufferBuilder builder, double d0) { builder.AddDouble(0, d0, Double.NaN); }
AddD1MyGame.MonsterExtra85   public static void AddD1(FlatBufferBuilder builder, double d1) { builder.AddDouble(1, d1, Double.NaN); }
AddD2MyGame.MonsterExtra86   public static void AddD2(FlatBufferBuilder builder, double d2) { builder.AddDouble(2, d2, Double.PositiveInfinity); }
AddD3MyGame.MonsterExtra87   public static void AddD3(FlatBufferBuilder builder, double d3) { builder.AddDouble(3, d3, Double.NegativeInfinity); }
AddF0MyGame.MonsterExtra88   public static void AddF0(FlatBufferBuilder builder, float f0) { builder.AddFloat(4, f0, Single.NaN); }
AddF1MyGame.MonsterExtra89   public static void AddF1(FlatBufferBuilder builder, float f1) { builder.AddFloat(5, f1, Single.NaN); }
AddF2MyGame.MonsterExtra90   public static void AddF2(FlatBufferBuilder builder, float f2) { builder.AddFloat(6, f2, Single.PositiveInfinity); }
AddF3MyGame.MonsterExtra91   public static void AddF3(FlatBufferBuilder builder, float f3) { builder.AddFloat(7, f3, Single.NegativeInfinity); }
AddDvecMyGame.MonsterExtra92   public static void AddDvec(FlatBufferBuilder builder, VectorOffset dvecOffset) { builder.AddOffset(8, dvecOffset.Value, 0); }
CreateDvecVectorMyGame.MonsterExtra93   public static VectorOffset CreateDvecVector(FlatBufferBuilder builder, double[] data) { builder.StartVector(8, data.Length, 8); for (int i = data.Length - 1; i >= 0; i--) builder.AddDouble(data[i]); return builder.EndVector(); }
CreateDvecVectorBlockMyGame.MonsterExtra94   public static VectorOffset CreateDvecVectorBlock(FlatBufferBuilder builder, double[] data) { builder.StartVector(8, data.Length, 8); builder.Add(data); return builder.EndVector(); }
StartDvecVectorMyGame.MonsterExtra95   public static void StartDvecVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(8, numElems, 8); }
AddFvecMyGame.MonsterExtra96   public static void AddFvec(FlatBufferBuilder builder, VectorOffset fvecOffset) { builder.AddOffset(9, fvecOffset.Value, 0); }
CreateFvecVectorMyGame.MonsterExtra97   public static VectorOffset CreateFvecVector(FlatBufferBuilder builder, float[] data) { builder.StartVector(4, data.Length, 4); for (int i = data.Length - 1; i >= 0; i--) builder.AddFloat(data[i]); return builder.EndVector(); }
CreateFvecVectorBlockMyGame.MonsterExtra98   public static VectorOffset CreateFvecVectorBlock(FlatBufferBuilder builder, float[] data) { builder.StartVector(4, data.Length, 4); builder.Add(data); return builder.EndVector(); }
StartFvecVectorMyGame.MonsterExtra99   public static void StartFvecVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 4); }
EndMonsterExtraMyGame.MonsterExtra100   public static Offset<MyGame.MonsterExtra> EndMonsterExtra(FlatBufferBuilder builder) {
101     int o = builder.EndTable();
102     return new Offset<MyGame.MonsterExtra>(o);
103   }
FinishMonsterExtraBufferMyGame.MonsterExtra104   public static void FinishMonsterExtraBuffer(FlatBufferBuilder builder, Offset<MyGame.MonsterExtra> offset) { builder.Finish(offset.Value, "MONE"); }
FinishSizePrefixedMonsterExtraBufferMyGame.MonsterExtra105   public static void FinishSizePrefixedMonsterExtraBuffer(FlatBufferBuilder builder, Offset<MyGame.MonsterExtra> offset) { builder.FinishSizePrefixed(offset.Value, "MONE"); }
UnPackMyGame.MonsterExtra106   public MonsterExtraT UnPack() {
107     var _o = new MonsterExtraT();
108     this.UnPackTo(_o);
109     return _o;
110   }
UnPackToMyGame.MonsterExtra111   public void UnPackTo(MonsterExtraT _o) {
112     _o.D0 = this.D0;
113     _o.D1 = this.D1;
114     _o.D2 = this.D2;
115     _o.D3 = this.D3;
116     _o.F0 = this.F0;
117     _o.F1 = this.F1;
118     _o.F2 = this.F2;
119     _o.F3 = this.F3;
120     _o.Dvec = new List<double>();
121     for (var _j = 0; _j < this.DvecLength; ++_j) {_o.Dvec.Add(this.Dvec(_j));}
122     _o.Fvec = new List<float>();
123     for (var _j = 0; _j < this.FvecLength; ++_j) {_o.Fvec.Add(this.Fvec(_j));}
124   }
PackMyGame.MonsterExtra125   public static Offset<MyGame.MonsterExtra> Pack(FlatBufferBuilder builder, MonsterExtraT _o) {
126     if (_o == null) return default(Offset<MyGame.MonsterExtra>);
127     var _dvec = default(VectorOffset);
128     if (_o.Dvec != null) {
129       var __dvec = _o.Dvec.ToArray();
130       _dvec = CreateDvecVector(builder, __dvec);
131     }
132     var _fvec = default(VectorOffset);
133     if (_o.Fvec != null) {
134       var __fvec = _o.Fvec.ToArray();
135       _fvec = CreateFvecVector(builder, __fvec);
136     }
137     return CreateMonsterExtra(
138       builder,
139       _o.D0,
140       _o.D1,
141       _o.D2,
142       _o.D3,
143       _o.F0,
144       _o.F1,
145       _o.F2,
146       _o.F3,
147       _dvec,
148       _fvec);
149   }
150 };
151 
152 public class MonsterExtraT
153 {
154   [Newtonsoft.Json.JsonProperty("d0")]
155   public double D0 { get; set; }
156   [Newtonsoft.Json.JsonProperty("d1")]
157   public double D1 { get; set; }
158   [Newtonsoft.Json.JsonProperty("d2")]
159   public double D2 { get; set; }
160   [Newtonsoft.Json.JsonProperty("d3")]
161   public double D3 { get; set; }
162   [Newtonsoft.Json.JsonProperty("f0")]
163   public float F0 { get; set; }
164   [Newtonsoft.Json.JsonProperty("f1")]
165   public float F1 { get; set; }
166   [Newtonsoft.Json.JsonProperty("f2")]
167   public float F2 { get; set; }
168   [Newtonsoft.Json.JsonProperty("f3")]
169   public float F3 { get; set; }
170   [Newtonsoft.Json.JsonProperty("dvec")]
171   public List<double> Dvec { get; set; }
172   [Newtonsoft.Json.JsonProperty("fvec")]
173   public List<float> Fvec { get; set; }
174 
MonsterExtraT()175   public MonsterExtraT() {
176     this.D0 = Double.NaN;
177     this.D1 = Double.NaN;
178     this.D2 = Double.PositiveInfinity;
179     this.D3 = Double.NegativeInfinity;
180     this.F0 = Single.NaN;
181     this.F1 = Single.NaN;
182     this.F2 = Single.PositiveInfinity;
183     this.F3 = Single.NegativeInfinity;
184     this.Dvec = null;
185     this.Fvec = null;
186   }
187 
DeserializeFromJson(string jsonText)188   public static MonsterExtraT DeserializeFromJson(string jsonText) {
189     return Newtonsoft.Json.JsonConvert.DeserializeObject<MonsterExtraT>(jsonText);
190   }
SerializeToJson()191   public string SerializeToJson() {
192     return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented);
193   }
DeserializeFromBinary(byte[] fbBuffer)194   public static MonsterExtraT DeserializeFromBinary(byte[] fbBuffer) {
195     return MonsterExtra.GetRootAsMonsterExtra(new ByteBuffer(fbBuffer)).UnPack();
196   }
SerializeToBinary()197   public byte[] SerializeToBinary() {
198     var fbb = new FlatBufferBuilder(0x10000);
199     MonsterExtra.FinishMonsterExtraBuffer(fbb, MonsterExtra.Pack(fbb, this));
200     return fbb.DataBuffer.ToSizedArray();
201   }
202 }
203 
204 
205 }
206