public void Parse(ChunkData data, ref int listOffset) { ObjectReference obj = new ObjectReference(); obj.Parse(data.DataEntries[listOffset++].Data); Object = obj; Unknown1 = data.DataEntries[listOffset++].Data[0]; Unknown2 = data.DataEntries[listOffset++].Data[0]; Unknown3 = EndianessSwitchableBitConverter.ToInt32(data.DataEntries[listOffset++].Data, 0); Unknown4 = EndianessSwitchableBitConverter.ToSingle(data.DataEntries[listOffset++].Data, 0); }
public void Parse(ChunkData data, ref short listOffset) { ChallengeObject = new ObjectReference(); ChallengeObject.Parse(data[listOffset++].Data); Time = EndianessSwitchableBitConverter.ToSingle(data[listOffset++].Data, 0); }
public void Parse(ChunkData data) { Unknown1 = EndianessSwitchableBitConverter.ToSingle(data[0].Data, 0); Unknown2 = EndianessSwitchableBitConverter.ToSingle(data[1].Data, 0); }
public StatisticEntry(short index, string name, ChunkData data, ValueType type) { ChunkDataEntry ce = data[index]; if (ce == null) { throw new ArgumentOutOfRangeException("index"); } Index = index; Name = name; Type = type; switch (type) { case ValueType.Bool: { if (ce.Length != 1 + 6) { throw new Exception("not a Bool"); } Value = data[index].Data[0] != 0; break; } case ValueType.Float: { if (ce.Length != 4 + 6) { throw new Exception("not a Float"); } Value = EndianessSwitchableBitConverter.ToSingle(data[index].Data, 0); break; } case ValueType.Int: { if (ce.Length != 4 + 6) { throw new Exception("not an Int"); } Value = EndianessSwitchableBitConverter.ToInt32(data[index].Data, 0); break; } case ValueType.TimeSpan: { if (ce.Length != 8 + 6) { throw new Exception("not a TimeSpan"); } Value = TimeSpan.FromSeconds(EndianessSwitchableBitConverter.ToInt64(data[index].Data, 0)); break; } case ValueType.HashedStringList: { try { int count = EndianessSwitchableBitConverter.ToInt32(data[index++].Data, 0); List <HashedString> val = new List <HashedString>(); for (int i = 0; i < count; i++) { val.Add(new HashedString(data[index++].Data)); } Value = val; } catch { throw new Exception("not a list of hashed strings"); } break; } default: { throw new NotSupportedException("StatisticEntry: unsupported type"); } } }