public Entry1D(ref byte *ptr, bool olt = false) { Comp_id = MapDataHelper.LoadUint(ref ptr); Addr = MapDataHelper.LoadUint(ref ptr); if (!olt) { Addr ^= MapDataHelper.XorKey; unk1 = MapDataHelper.LoadBytes(ref ptr, 8); } else { unk1 = MapDataHelper.LoadBytes(ref ptr, 4); } Units = MapDataHelper.LoadString(ref ptr, 16); Lower_lim = MapDataHelper.LoadDouble(ref ptr); Upper_lim = MapDataHelper.LoadDouble(ref ptr); Const_type = *(ptr++); Precision = *(ptr++); Convert = new ConvertInfo(ref ptr); if (olt) { return; } Cs = MapDataHelper.LoadUshort(ref ptr); }
public IdentEntry(ref byte *ptr, bool olt = false) { Comp_id = MapDataHelper.LoadUint(ref ptr); Name = MapDataHelper.LoadString(ref ptr); Addr = new uint[8]; for (var i = 0; i < Addr.Length; i++) { Addr[i] = MapDataHelper.LoadUint(ref ptr); } if (!olt) { Addr[0] ^= MapDataHelper.XorKey; unk1 = MapDataHelper.LoadBytes(ref ptr, 8); } else { unk1 = MapDataHelper.LoadBytes(ref ptr, 4); } Length = MapDataHelper.LoadBytes(ref ptr, 8); ItemsName = new string[8]; for (int i = 0; i < ItemsName.Length; i++) { ItemsName[i] = MapDataHelper.LoadString(ref ptr); } if (olt) { return; } unk2 = MapDataHelper.LoadBytes(ref ptr, 16); Cs = MapDataHelper.LoadUshort(ref ptr); }
public Entry3D(ref byte *ptr, bool olt) { Comp_id = MapDataHelper.LoadUint(ref ptr); Addr = MapDataHelper.LoadUint(ref ptr); if (!olt) { Addr ^= MapDataHelper.XorKey; unk1 = MapDataHelper.LoadBytes(ref ptr, 8); } else { unk1 = MapDataHelper.LoadBytes(ref ptr, 4); } xUnits = MapDataHelper.LoadString(ref ptr, 32); Units = MapDataHelper.LoadString(ref ptr, 32); zUnits = MapDataHelper.LoadString(ref ptr, 32); xTable = MapDataHelper.LoadString(ref ptr, 255); zTable = MapDataHelper.LoadString(ref ptr, 255); xPoints = MapDataHelper.LoadUshort(ref ptr); ShiftMask = MapDataHelper.LoadUshort(ref ptr); zPoints = *(ptr++); xStart = MapDataHelper.LoadDouble(ref ptr); xEnd = MapDataHelper.LoadDouble(ref ptr); unk2 = *(ptr++); //FF Lower_lim = MapDataHelper.LoadDouble(ref ptr); Upper_lim = MapDataHelper.LoadDouble(ref ptr); unk3 = *(ptr++); //FF zStart = MapDataHelper.LoadDouble(ref ptr); zEnd = MapDataHelper.LoadDouble(ref ptr); unk4 = *(ptr++); //FF Const_type = *(ptr++); unk5 = *(ptr++); //00 gbc_thrott = *(ptr++); unk6 = MapDataHelper.LoadBytes(ref ptr, 2); //FF00 Convert = new ConvertInfo(ref ptr); if (olt) { return; } Cs = MapDataHelper.LoadUshort(ref ptr); }
public FlagsEntry(ref byte *ptr, bool olt = false) { Comp_id = MapDataHelper.LoadUint(ref ptr); Addr = new uint[8]; for (var i = 0; i < Addr.Length; i++) { Addr[i] = MapDataHelper.LoadUint(ref ptr); } if (!olt) { Addr[0] ^= MapDataHelper.XorKey; unk1 = MapDataHelper.LoadBytes(ref ptr, 8); } else { unk1 = MapDataHelper.LoadBytes(ref ptr, 4); } ItemsName = new string[8]; for (int i = 0; i < ItemsName.Length; i++) { ItemsName[i] = MapDataHelper.LoadString(ref ptr); } BitsName = new string[8, 8]; for (int i = 0; i < BitsName.GetLength(0); i++) { for (int j = 0; j < BitsName.GetLength(1); j++) { BitsName[i, j] = MapDataHelper.LoadString(ref ptr); } } if (olt) { return; } unk2 = MapDataHelper.LoadBytes(ref ptr, 16); Cs = MapDataHelper.LoadUshort(ref ptr); }
public MapEntry(ref byte *ptr, bool olt = false) { Name = MapDataHelper.LoadString(ref ptr); Level = *(ptr++); Type = *(ptr++); Length = MapDataHelper.LoadUshort(ref ptr); Comp_id = MapDataHelper.LoadUint(ref ptr); ptr -= 4; switch ((MapEntryType)Type) { case MapEntryType.Ident: IdentEntry = new IdentEntry(ref ptr, olt); break; case MapEntryType.Flags: FlagsEntry = new FlagsEntry(ref ptr, olt); break; case MapEntryType.Entry1D: Entry1D = new Entry1D(ref ptr, olt); break; case MapEntryType.Entry2D: Entry2D = new Entry2D(ref ptr, olt); break; case MapEntryType.Entry3D: Entry3D = new Entry3D(ref ptr, olt); break; default: Comp_id = 0; ptr += Length; break; } }