private void Parse(DataReader reader) { reader.Assert(0L, 0, "UNKNOWN", "Part", "First 4 bytes"); model = reader.ReadString(13); reader.Assert((byte)0xCC, 0, "Model: " + model, "UNKNOWN PART", "Model"); icon = reader.ReadString(13); name = reader.ReadString(25); description = reader.ReadString(200); group = reader.ReadShort(); techtree = new Techtree(reader); reader.Assert((ushort)0xCCCC, 0, name, "UNKNOWN PART", "Techtree"); mass = reader.ReadFloat(); sigmod = reader.ReadFloat(); uid = reader.ReadUShort(); specUID = uid; overriding_uid = reader.ReadShort(); parttype = reader.ReadShort(); usemask = new BitArray(reader.ReadBytes(2)); slot = reader.ReadString(13); string PartTypeName = PartType.GetName(typeof(PartType), parttype); //reader.Assert((byte)0xCC, uid, name, PartTypeName, "Slot"); reader.Skip(1); reader.Assert((ushort)0xCCCC, uid, name, PartTypeName, "Slot"); }
private void Parse(DataReader reader) { percentRed = reader.ReadFloat(); percentGreen = reader.ReadFloat(); percentBlue = reader.ReadFloat(); percentAlpha = reader.ReadFloat(); stats_s1 = reader.ReadFloat(); stats_s2 = reader.ReadFloat(); file_model = reader.ReadString(13); file_texture = reader.ReadString(13); reader.Assert((ushort)0xCCCC, 0, "Texture: " + file_texture, "Projectile", "Texture"); stats_s3 = reader.ReadFloat(); stats_s4 = reader.ReadFloat(); stats_s5 = reader.ReadFloat(); stats_s6 = reader.ReadFloat(); stats_s7 = reader.ReadFloat(); uid = reader.ReadUShort(); DM = reader.ReadByte(); stats_ss1 = reader.ReadByte(); stats_ss2 = reader.ReadByte(); reader.Assert((byte)0xCC, uid, file_texture, "Projectile", "Directional"); reader.Assert((byte)0xCC, uid, file_texture, "Projectile", "Directional"); reader.Assert((byte)0xCC, uid, file_texture, "Projectile", "Directional"); stats_s8 = reader.ReadFloat(); ambient_sound = reader.ReadUShort(); reader.Assert((ushort)0xCCCC, uid, file_model, "Projectile", "Ambient Sound"); }
private void Parse(DataReader reader) { percentRed = reader.ReadFloat(); percentGreen = reader.ReadFloat(); percentBlue = reader.ReadFloat(); percentAlpha = reader.ReadFloat(); stats_s1 = reader.ReadFloat(); stats_s2 = reader.ReadFloat(); file_model = reader.ReadString(13); file_texture = reader.ReadString(13); reader.Skip(2); stats_s3 = reader.ReadFloat(); stats_s4 = reader.ReadFloat(); stats_s5 = reader.ReadFloat(); stats_s6 = reader.ReadFloat(); stats_s7 = reader.ReadFloat(); uid = reader.ReadUShort(); DM = reader.ReadByte(); stats_ss1 = reader.ReadByte(); stats_ss2 = reader.ReadByte(); reader.Assert((byte)0xCC, "Unexpected data encountered in IGCCoreProjectile after stats"); reader.Assert((byte)0xCC, "Unexpected data encountered in IGCCoreProjectile after stats"); reader.Assert((byte)0xCC, "Unexpected data encountered in IGCCoreProjectile after stats"); stats_s8 = reader.ReadFloat(); ambient_sound = reader.ReadUShort(); reader.Assert((byte)0xCC, "Unexpected data encountered at end of IGCCoreProjectile"); reader.Assert((byte)0xCC, "Unexpected data encountered at end of IGCCoreProjectile"); }
/// <summary> /// Loads the IGCCoreMissile values from the specified DataReader /// </summary> /// <param name="reader">The DataReader from which to read the IGCCoreMissile</param> private void Parse(DataReader reader) { reader.Assert(0L, "Invalid header found while trying to parse IGCCoreMissile"); reader.Assert(0L, "Invalid header found while trying to parse IGCCoreMissile"); stats_s1 = reader.ReadFloat(); stats_s2 = reader.ReadFloat(); ldbmp = reader.ReadString(13); reader.Seek(13); reader.Skip(2); stats_s3 = reader.ReadFloat(); stats_s4 = reader.ReadFloat(); stats_s5 = reader.ReadFloat(); cost = reader.ReadInt(); reader.Assert((int)0, "Unexpected data found while trying to parse IGCCoreMissile"); model = reader.ReadString(13); reader.Assert((byte)0xCC, "Unexpected data found while trying to parse IGCCoreMissile"); type = reader.ReadString(13); name = reader.ReadString(25); description = reader.ReadString(200); group = reader.ReadShort(); techtree = new Techtree(reader); reader.Assert((byte)0xCD, "Unexpected data found while trying to parse IGCCoreMissile"); reader.Assert((byte)0xCD, "Unexpected data found while trying to parse IGCCoreMissile"); sigmod = reader.ReadFloat(); mass = reader.ReadFloat(); usemask = new BitArray(reader.ReadBytes(2)); amount = reader.ReadUShort(); stats_s16 = reader.ReadFloat(); AC = reader.ReadByte(); reader.Assert((byte)0xCD, "Unexpected data found while trying to parse IGCCoreMissile"); uid = reader.ReadUShort(); special_effect = reader.ReadUShort(); icon = reader.ReadString(13); reader.Assert((byte)0xCD, "Unexpected data found while trying to parse IGCCoreMissile"); stats_s7 = reader.ReadFloat(); // accel stats_s8 = reader.ReadFloat(); // turn radius stats_s9 = reader.ReadFloat(); // launch velocity stats_s10 = reader.ReadFloat(); // lock time stats_s11 = reader.ReadFloat(); // ready time stats_s12 = reader.ReadFloat(); // max lock stats_s13 = reader.ReadFloat(); // CM resistance stats_s14 = reader.ReadFloat(); // salvo ratio stats_s15 = reader.ReadFloat(); // lock radius stats_damage = reader.ReadFloat(); stats_unused1 = reader.ReadFloat(); // 0 Checked stats_damage_radius = reader.ReadFloat(); stats_unused2 = reader.ReadFloat(); // 0 Checked DM = reader.ReadUShort(); stats_ss3 = reader.ReadUShort(); //sound launch stats_ss4 = reader.ReadUShort(); //sound flight reader.Assert((byte)0xCD, "Unexpected footer found while trying to parse IGCCoreMissile"); reader.Assert((byte)0xCD, "Unexpected footer found while trying to parse IGCCoreMissile"); }
private void Parse(DataReader reader) { shld_stats_s1 = reader.ReadFloat(); shld_stats_s2 = reader.ReadFloat(); shld_AC = (IGCArmorClass)reader.ReadByte(); reader.Assert((byte)0xCC, "Unexpected data found when trying to read IGCCorePartShield"); shld_sound1 = reader.ReadUShort(); shld_sound2 = reader.ReadUShort(); reader.Assert((byte)0xCC, "Unexpected data found when trying to read IGCCorePartShield"); reader.Assert((byte)0xCC, "Unexpected data found when trying to read IGCCorePartShield"); }
private void Parse(DataReader reader) { shld_stats_s1 = reader.ReadFloat(); shld_stats_s2 = reader.ReadFloat(); shld_AC = (IGCArmorClass)reader.ReadByte(); string PartTypeName = PartType.GetName(typeof(PartType), parttype); reader.Assert((byte)0xCC, uid, name, PartTypeName, "ShieldAC"); shld_sound1 = reader.ReadUShort(); shld_sound2 = reader.ReadUShort(); reader.Assert((ushort)0xCCCC, uid, name, PartTypeName, "Deactivate Sound"); }
private void Parse(DataReader reader) { wep_stats_s1 = reader.ReadFloat(); wep_stats_s2 = reader.ReadFloat(); wep_stats_s3 = reader.ReadFloat(); wep_stats_s4 = reader.ReadFloat(); wep_stats_ss1 = reader.ReadUShort(); wep_projectile_uid = reader.ReadUShort(); wep_stats_ss2 = reader.ReadUShort(); wep_stats_ss3 = reader.ReadUShort(); wep_stats_ss4 = reader.ReadUShort(); reader.Assert((byte)0xCC, "Unexpected end bytes encountered when reading IGCCorePartWeapon"); reader.Assert((byte)0xCC, "Unexpected end bytes encountered when reading IGCCorePartWeapon"); }
/// <summary> /// Loads the IGCCoreMissile values from the specified DataReader /// </summary> /// <param name="reader">The DataReader from which to read the IGCCoreMissile</param> private void Parse(DataReader reader) { reader.Assert(0L, 0, "UNKNOWN", "Part: Missile", "First 8 bytes"); reader.Assert(0L, 0, "UNKNOWN", "Part: Missile", "2nd 8 bytes"); stats_s1 = reader.ReadFloat(); stats_s2 = reader.ReadFloat(); ldbmp = reader.ReadString(13); reader.Seek(13); reader.Assert((ushort)0xCCCC, 0, "Unknown", "Part: Missile", "13-byte spacer after LDBMP"); stats_s3 = reader.ReadFloat(); stats_s4 = reader.ReadFloat(); stats_s5 = reader.ReadFloat(); cost = reader.ReadInt(); reader.Assert((int)0, uid, "UNKNOWN", "Part: Missile", "Cost"); model = reader.ReadString(13); reader.Assert((byte)0xCC, 0, "UNKNOWN", "Part: Missile", "Model"); type = reader.ReadString(13); name = reader.ReadString(25); description = reader.ReadString(200); group = reader.ReadShort(); techtree = new Techtree(reader); reader.Assert((ushort)0xCDCD, 0, name, "Part: Missile", "Techtree"); sigmod = reader.ReadFloat(); mass = reader.ReadFloat(); usemask = new BitArray(reader.ReadBytes(2)); amount = reader.ReadUShort(); stats_s16 = reader.ReadFloat(); AC = reader.ReadByte(); reader.Assert((byte)0xCD, 0, name, "Part: Missile", "AC"); uid = reader.ReadUShort(); special_effect = reader.ReadUShort(); icon = reader.ReadString(13); reader.Assert((byte)0xCD, uid, name, "Part: Missile", "Icon"); stats_s7 = reader.ReadFloat(); // accel stats_s8 = reader.ReadFloat(); // turn radius stats_s9 = reader.ReadFloat(); // launch velocity stats_s10 = reader.ReadFloat(); // lock time stats_s11 = reader.ReadFloat(); // ready time stats_s12 = reader.ReadFloat(); // max lock stats_s13 = reader.ReadFloat(); // CM resistance stats_s14 = reader.ReadFloat(); // salvo ratio stats_s15 = reader.ReadFloat(); // lock radius stats_damage = reader.ReadFloat(); stats_unused1 = reader.ReadFloat(); // 0 Checked stats_damage_radius = reader.ReadFloat(); stats_unused2 = reader.ReadFloat(); // 0 Checked DM = reader.ReadUShort(); stats_ss3 = reader.ReadUShort(); //sound launch stats_ss4 = reader.ReadUShort(); //sound flight reader.Assert((ushort)0xCDCD, uid, name, "Part: Missile", "Flight Sound"); }
/// <summary> /// Parses the IGCCoreCiv from the specified DataReader /// </summary> /// <param name="reader">The DataReader to use to read the IGCCoreCiv</param> private void Parse(DataReader reader) { ukf[0] = reader.ReadFloat(); ukf[1] = reader.ReadFloat(); name = reader.ReadString(25); model = reader.ReadString(13); obj = reader.ReadString(13); techtree = new Techtree(reader); reader.Assert((byte)0xCD, 0, name, "Faction", "Techtree"); factors = new Factors(reader); suk = reader.ReadUShort(); uid = reader.ReadUShort(); gar_uid = reader.ReadUShort(); reader.Assert((ushort)0xCDCD, uid, name, "Faction", "Garrison UID"); }
/// <summary> /// Parses the IGCCoreCiv from the specified DataReader /// </summary> /// <param name="reader">The DataReader to use to read the IGCCoreCiv</param> private void Parse(DataReader reader) { ukf[0] = reader.ReadFloat(); ukf[1] = reader.ReadFloat(); name = reader.ReadString(25); model = reader.ReadString(13); obj = reader.ReadString(13); techtree = new Techtree(reader); reader.Assert((byte)0xCD, string.Concat("Unexpected value found when reading IGCCoreCiv ", name)); factors = new Factors(reader); suk = reader.ReadUShort(); uid = reader.ReadUShort(); gar_uid = reader.ReadUShort(); reader.Assert((byte)0xCD, string.Concat("Unexpected end bytes found when reading IGCCoreCiv ", name)); reader.Assert((byte)0xCD, string.Concat("Unexpected end bytes found when reading IGCCoreCiv ", name)); }
public void Parse(DataReader reader) { cost = reader.ReadInt(); research_time = reader.ReadInt(); model = reader.ReadString(13); reader.ReadByte(); icon = reader.ReadString(13); name = reader.ReadString(25); description = reader.ReadString(200); group = reader.ReadByte(); zero = reader.ReadByte(); techtree = new Techtree(reader); reader.Assert((ushort)0xCDCD, 0, name, "Station", "Techtree"); stats_s1 = reader.ReadFloat(); stats_s2 = reader.ReadFloat(); stats_s3 = reader.ReadFloat(); stats_s4 = reader.ReadFloat(); stats_s5 = reader.ReadFloat(); stats_s6 = reader.ReadFloat(); stats_income = reader.ReadInt(); stats_s7 = reader.ReadFloat(); techtreelocal = new BitArray(reader.ReadBytes(50)); // // uid = reader.ReadUShort(); overriding_uid = reader.ReadShort(); ACHull = reader.ReadByte(); ACShld = reader.ReadByte(); AbilityBitMask = new BitArray(reader.ReadBytes(2)); buildon = (BuildOn)Enum.Parse(typeof(BuildOn), reader.ReadUShort().ToString()); type = reader.ReadByte(); reader.Assert((byte)0xCD, uid, name, "Station", "Type"); stats_ss0 = reader.ReadUShort(); for (int i = 0; i < 13; i++) { sounds[i] = reader.ReadUShort(); } uk3 = reader.ReadBytes(13); constructor = reader.ReadString(25); }
/// <summary> /// Parses an IGCCoreDevel from the specified DataReader /// </summary> /// <param name="reader">The DataReader from which to read this IGCCoreDevel</param> private void Parse(DataReader reader) { cost = reader.ReadUInt(); research_time = reader.ReadUInt(); model = reader.ReadString(13); reader.Assert((byte)0xCC, 0, "Model: " + model, "Development", "Model"); icon = reader.ReadString(13); name = reader.ReadString(25); description = reader.ReadString(200); reader.Assert((byte)0, 0, name, "Development", "Description"); root_tree = reader.ReadByte(); techtree = new Techtree(reader); reader.Assert((ushort)0xCDCD, 0, name, "Development", "Techtree"); factors = new Factors(reader); uid = reader.ReadUShort(); cat = reader.ReadUShort(); }
private void Parse(DataReader reader) { amount = reader.ReadUShort(); uid = reader.ReadUShort(); overriding_uid = reader.ReadShort(); parttype = reader.ReadShort(); group = reader.ReadShort(); slot = reader.ReadString(13); reader.Assert((byte)0xCC, uid, name, PartType.GetName(typeof(PartType), parttype), "Slot"); }
private void Parse(DataReader reader) { pcRED = reader.ReadFloat(); // all zero = percent RGBA pcGreen = reader.ReadFloat(); pcBlue = reader.ReadFloat(); pcAlpha = reader.ReadFloat(); reader.Assert((uint)0xCCCCCCCC, 0, "UNKNOWN", "Part: Mine", "RGBA Colours"); stats_s1 = reader.ReadFloat(); // rate rotation reader.Skip(13); icon = reader.ReadString(13); // Length [13]; //fxmine reader.Assert((ushort)0xCCCC, 0, "UNKNOWN", "Part: Mine", "Icon"); stats_s2 = reader.ReadFloat(); // load time stats_duration = reader.ReadFloat(); stats_s3 = reader.ReadFloat(); // sig cost = reader.ReadInt(); reader.Assert((int)0, 0, "UNKNOWN", "Part: Mine", "Cost"); model = reader.ReadString(13); // Length [13];// inactive & loadout bmp (prefix with 'l') reader.Assert((byte)0xCC, 0, "UNKNOWN", "Part: Mine", "Model"); type = reader.ReadString(13); // Length [13]; //part name = reader.ReadString(25); // Length [25]; description = reader.ReadString(200); // Length [200]; group = reader.ReadShort(); techtree = new Techtree(reader); reader.Assert((ushort)0xCDCD, 0, name, "Part: Mine", "Techtree"); sigmod = reader.ReadFloat(); // ship sig% mass = reader.ReadFloat(); // mass usemask = new BitArray(reader.ReadBytes(2)); //usemask (2) amount = reader.ReadUShort(); //cargo payload stats_s6 = reader.ReadFloat(); // hitpoints AC = (IGCArmorClass)reader.ReadByte(); // OB reader.Assert((byte)0xCD, 0, name, "Part: Mine", "Armour Class"); uid = reader.ReadUShort(); reader.Assert((short)0, uid, name, "Part: Mine", "UID"); ukbmp = reader.ReadString(13); // length [13]; // icon bmp reader.Assert((byte)0xCD, uid, name, "Part: Mine", "UKBMP"); stats_radius = reader.ReadFloat(); stats_damage = reader.ReadFloat(); stats_endurance = reader.ReadFloat(); // endurance DM = reader.ReadByte(); // 10 reader.Assert((byte)0xCD, uid, name, "Part: Mine", "Damage Index"); reader.Assert((ushort)0xCDCD, uid, name, "Part: Mine", "Damage Index"); }
/// <summary> /// Parses an IGCCoreDevel from the specified DataReader /// </summary> /// <param name="reader">The DataReader from which to read this IGCCoreDevel</param> private void Parse(DataReader reader) { cost = reader.ReadUInt(); research_time = reader.ReadUInt(); model = reader.ReadString(13); reader.Assert((byte)0xCC, "Unexpected value encountered when parsing IGCCoreDevel"); icon = reader.ReadString(13); name = reader.ReadString(25); description = reader.ReadString(200); reader.Skip(1); root_tree = reader.ReadByte(); techtree = new Techtree(reader); reader.Assert((byte)0xCD, string.Concat("Unexpected value encountered after techtree when parsing IGCCoreDevel ", name)); reader.Assert((byte)0xCD, string.Concat("Unexpected value encountered after techtree when parsing IGCCoreDevel ", name)); factors = new Factors(reader); uid = reader.ReadUShort(); cat = reader.ReadUShort(); }
private void Parse(DataReader reader) { reader.Assert(0L, "Unexpected data found when reading IGCCorePart header"); model = reader.ReadString(13); reader.Skip(1); icon = reader.ReadString(13); name = reader.ReadString(25); description = reader.ReadString(200); group = reader.ReadShort(); techtree = new Techtree(reader); reader.Assert((byte)0xCC, "Unexpected data found after Techtree in IGCCorePart"); reader.Assert((byte)0xCC, "Unexpected data found after Techtree in IGCCorePart"); mass = reader.ReadFloat(); sigmod = reader.ReadFloat(); uid = reader.ReadUShort(); specUID = uid; overriding_uid = reader.ReadShort(); parttype = reader.ReadShort(); usemask = new BitArray(reader.ReadBytes(2)); slot = reader.ReadString(13); reader.Assert((byte)0xCC, "Unexpected data found at end of IGCCorePart"); reader.Assert((byte)0xCC, "Unexpected data found at end of IGCCorePart"); reader.Assert((byte)0xCC, "Unexpected data found at end of IGCCorePart"); }
/// <summary> /// Reads an IGCCoreProbe from the specified DataReader /// </summary> /// <param name="reader">The DataReader from which to read the IGCCoreProbe</param> private void Parse(DataReader reader) { reader.Assert(0L, 0, "UNKNOWN", "Part: Probe", "First 8 bytes"); reader.Assert(0L, 0, "UNKNOWN", "Part: Probe", "Second 8 bytes"); stats_s1 = reader.ReadFloat(); stats_s2 = reader.ReadFloat(); model = reader.ReadString(13); model1 = reader.ReadString(13); reader.Assert((ushort)0xCCCC, 0, "Model: " + model, "Part: Probe", "Model1"); stats_s3 = reader.ReadFloat(); stats_s4 = reader.ReadFloat(); sigmod = reader.ReadFloat(); cost = reader.ReadInt(); reader.Assert((int)0, 0, "UNKNOWN", "Part: Probe", "Cost"); ukbmp = reader.ReadString(13); reader.Assert((byte)0xCC, 0, "UNKNOWN", "Part: Probe", "UKBMP"); type = reader.ReadString(13); name = reader.ReadString(25); description = reader.ReadString(200); group = reader.ReadShort(); techtree = new Techtree(reader); reader.Assert((ushort)0xCDCD, 0, name, "Part: Probe", "Techtree"); stats_s5 = reader.ReadFloat(); mass = reader.ReadFloat(); usemask = new BitArray(reader.ReadBytes(2)); amount = reader.ReadUShort(); stats_s7 = reader.ReadFloat(); AC = (IGCArmorClass)reader.ReadByte(); reader.Assert((byte)0xCD, 0, name, "Part: Probe", "Armour Class"); uid = reader.ReadUShort(); stats_ss3 = new BitArray(reader.ReadBytes(2)); icon = reader.ReadString(13); reader.Assert((byte)0xCD, uid, name, "Part: Probe", "Icon"); stats_s8 = reader.ReadFloat(); stats_s9 = reader.ReadFloat(); stats_s10 = reader.ReadFloat(); stats_s11 = reader.ReadFloat(); stats_ss4 = reader.ReadShort(); stats_projectile = reader.ReadShort(); stats_sound = reader.ReadShort(); reader.Assert((ushort)0xCDCD, uid, name, "Part: Probe", "Sound"); stats_activation_delay = reader.ReadFloat(); }
private void Parse(DataReader reader) { pcRED = reader.ReadFloat(); pcGreen = reader.ReadFloat(); pcBlue = reader.ReadFloat(); pcAlpha = reader.ReadFloat(); stats_s1 = reader.ReadFloat(); // radius stats_s2 = reader.ReadFloat(); // rate rotation reader.Skip(13); icon = reader.ReadString(13); // Length [13]; reader.Assert((ushort)0xCCCC, 0, "UNKNOWN", "Part: Counter", "Icon"); stats_s3 = reader.ReadFloat(); // load time stats_s4 = reader.ReadFloat(); // life span stats_s5 = reader.ReadFloat(); // sigfloating stats_s6 = reader.ReadInt(); // cost stats_s7 = reader.ReadInt(); // build time (seconds) model = reader.ReadString(13); // Length[13]; reader.Assert((byte)0xCC, 0, "Model: " + model, "Part: Counter", "Model"); type = reader.ReadString(13); // Length [13]; //part name = reader.ReadString(25); // Length [25]; description = reader.ReadString(200); // Length [200]; group = reader.ReadShort(); techtree = new Techtree(reader); reader.Assert((ushort)0xCDCD, 0, name, "Part: Counter", "Techtree"); sigmod = reader.ReadFloat(); // sig mod (%) mass = reader.ReadFloat(); // mass usemask = new BitArray(reader.ReadBytes(2)); //2 amount = reader.ReadUShort(); //1 - todo stats_s10 = reader.ReadFloat(); // hitpoints AC = (IGCArmorClass)reader.ReadByte(); // 0B default (part) reader.Assert((byte)0xCD, 0, name, "Part: Counter", "Armour Class"); uid = reader.ReadUShort(); stats_ss2 = reader.ReadUShort(); //0 ukbmp = reader.ReadString(13); // Length [13]; reader.Assert((byte)0xCD, uid, name, "Part: Counter", "ukbmp"); stats_s11 = reader.ReadFloat(); // strength }
private void Parse(DataReader reader) { wep_stats_s1 = reader.ReadFloat(); wep_stats_s2 = reader.ReadFloat(); wep_stats_s3 = reader.ReadFloat(); wep_stats_s4 = reader.ReadFloat(); wep_stats_ss1 = reader.ReadUShort(); wep_projectile_uid = reader.ReadUShort(); wep_stats_ss2 = reader.ReadUShort(); wep_stats_ss3 = reader.ReadUShort(); wep_stats_ss4 = reader.ReadUShort(); reader.Assert((ushort)0xCCCC, uid, name, PartType.GetName(typeof(PartType), parttype), "Burst sound"); }
private void Parse(DataReader reader) { pcRED = reader.ReadFloat(); pcGreen = reader.ReadFloat(); pcBlue = reader.ReadFloat(); pcAlpha = reader.ReadFloat(); stats_s1 = reader.ReadFloat(); // radius stats_s2 = reader.ReadFloat(); // rate rotation reader.Skip(13); icon = reader.ReadString(13); // Length [13]; reader.Assert((byte)0xCC, "Unexpected data found after icon in IGCCoreCounter"); reader.Assert((byte)0xCC, "Unexpected data found after icon in IGCCoreCounter"); stats_s3 = reader.ReadFloat(); // load time stats_s4 = reader.ReadFloat(); // life span stats_s5 = reader.ReadFloat(); // sigfloating stats_s6 = reader.ReadInt(); // cost stats_s7 = reader.ReadInt(); // build time (seconds) model = reader.ReadString(13); // Length[13]; reader.Skip(1); type = reader.ReadString(13); // Length [13]; //part name = reader.ReadString(25); // Length [25]; description = reader.ReadString(200); // Length [200]; group = reader.ReadShort(); techtree = new Techtree(reader); reader.Assert((byte)0xCD, "Unexpected data found after techtree in IGCCoreCounter"); reader.Assert((byte)0xCD, "Unexpected data found after techtree in IGCCoreCounter"); sigmod = reader.ReadFloat(); // sig mod (%) mass = reader.ReadFloat(); // mass usemask = new BitArray(reader.ReadBytes(2)); //2 amount = reader.ReadUShort(); //1 - todo stats_s10 = reader.ReadFloat(); // hitpoints AC = (IGCArmorClass)reader.ReadByte(); // 0B default (part) reader.Assert((byte)0xCD, "Unexpected data found after AC in IGCCoreCounter"); uid = reader.ReadUShort(); stats_ss2 = reader.ReadUShort(); //0 ukbmp = reader.ReadString(13); // Length [13]; reader.Assert((byte)0xCD, "Unexpected data found after ukbmp in IGCCoreCounter"); stats_s11 = reader.ReadFloat(); // strength }
private void Parse(DataReader reader) { pak_stats_ss1 = reader.ReadByte(); reader.Assert((byte)0xCC, uid, name, "Part: Pack", "Packtype"); pak_stats_ss2 = reader.ReadUShort(); }
public void Parse(DataReader reader) { cost = reader.ReadInt(); reader.Assert((int)0, 0, "UNKNOWN", "Ship", "Cost"); model = reader.ReadString(13); // Length 13; reader.Assert((byte)0, 0, "Model: " + model, "Ship", "Model"); icon = reader.ReadString(13); // Length 13; name = reader.ReadString(25); // Length 25; description = reader.ReadString(200); //Length 200; zero = reader.ReadByte(); // Length 1; group = reader.ReadByte(); // Length 1; techtree = new Techtree(reader); // Length 100; reader.Assert((short)0, 0, name, "Ship", "Techtree"); stats_s1 = reader.ReadFloat(); // mass stats_s2 = reader.ReadFloat(); // sig% stats_s3 = reader.ReadFloat(); // speed stats_s4 = reader.ReadFloat(); // SAX = MaxRollRate in radians stats_s5 = reader.ReadFloat(); // SAY = MaxPitchRate in radians stats_s6 = reader.ReadFloat(); // SAZ = MaxYawRate in radians stats_s7 = reader.ReadFloat(); // SBX = DriftRoll (unit ?) stats_s8 = reader.ReadFloat(); // SBY = DriftPitch (unit ?) stats_s9 = reader.ReadFloat(); // SBZ = DriftYaw (unit ?) stats_s10 = reader.ReadFloat(); // max thrust stats_s11 = reader.ReadFloat(); // STM (side thrust multiplier) stats_s12 = reader.ReadFloat(); // RTM (reverse thrust multiplier) stats_s13 = reader.ReadFloat(); // scan stats_s14 = reader.ReadFloat(); // fuel stats_s15 = reader.ReadFloat(); // lock mode (ecm) stats_s16 = reader.ReadFloat(); // scale stats_s17 = reader.ReadFloat(); // energy stats_s18 = reader.ReadFloat(); // recharge stats_s19 = reader.ReadFloat(); // rip time stats_s20 = reader.ReadFloat(); // rip cost stats_ss1 = reader.ReadUShort(); // ammo capacity uid = reader.ReadUShort(); // confirmed overriding_uid = reader.ReadShort(); // -1 if none nb_parts = reader.ReadByte(); // Length 1; part size = 30 mnt_nbwpslots = reader.ReadByte(); // Length 1 stats_hp = reader.ReadFloat(); reader.Assert((ushort)0x021C, uid, name, "Ship", "Hitpoints"); AC = reader.ReadByte(); reader.Assert((byte)0, uid, name, "Ship", "Armour Class"); stats_ld1 = reader.ReadUShort(); // missiles capacity stats_ld2 = reader.ReadUShort(); // pack capacity stats_ld3 = reader.ReadUShort(); // CM capacity for (int i = 0; i < 14; i++) { def_loadout[i] = reader.ReadShort(); // Length 14; -1 or part uid } hullability = new BitArray(reader.ReadBytes(2)); reader.Skip(14); // all zero for (int i = 0; i < 8; i++) { can_use[i] = new BitArray(reader.ReadBytes(2)); // Length 8; usage masks,see IGCShipUseMasks } Sound_Interior = reader.ReadUShort(); Sound_Exterior = reader.ReadUShort(); Sound_ThrustInterior = reader.ReadUShort(); Sound_ThrustExterior = reader.ReadUShort(); Sound_TurnInterior = reader.ReadUShort(); Sound_TurnExterior = reader.ReadUShort(); reader.Assert((short)0, uid, name, "Ship", "Exterior Turn Sound"); parts = new IGCCoreShipMP[nb_parts]; for (int i = 0; i < nb_parts; i++) { IGCCoreShipMP Part = new IGCCoreShipMP(reader); parts[i] = Part; // Length 20 } }
private void Parse(DataReader reader) { pak_stats_ss1 = reader.ReadByte(); reader.Assert((byte)0xCC, "Error while parsing IGCCorePartPack"); pak_stats_ss2 = reader.ReadUShort(); }
/// <summary> /// Reads an IGCCoreProbe from the specified DataReader /// </summary> /// <param name="reader">The DataReader from which to read the IGCCoreProbe</param> private void Parse(DataReader reader) { reader.Assert(0L, "Invalid header found while trying to parse IGCCoreProbe"); reader.Assert(0L, "Invalid header found while trying to parse IGCCoreProbe"); stats_s1 = reader.ReadFloat(); stats_s2 = reader.ReadFloat(); model = reader.ReadString(13); model1 = reader.ReadString(13); reader.Assert((byte)0xCC, "Unexpected data found while trying to parse IGCCoreProbe"); reader.Assert((byte)0xCC, "Unexpected data found while trying to parse IGCCoreProbe"); stats_s3 = reader.ReadFloat(); stats_s4 = reader.ReadFloat(); sigmod = reader.ReadFloat(); cost = reader.ReadInt(); reader.Assert((int)0, "Unexpected data found while trying to parse IGCCoreProbe"); ukbmp = reader.ReadString(13); reader.Assert((byte)0xCC, "Unexpected data found while trying to parse IGCCoreProbe"); type = reader.ReadString(13); name = reader.ReadString(25); description = reader.ReadString(200); group = reader.ReadShort(); techtree = new Techtree(reader); reader.Assert((byte)0xCD, "Unexpected data found while trying to parse IGCCoreProbe"); reader.Assert((byte)0xCD, "Unexpected data found while trying to parse IGCCoreProbe"); stats_s5 = reader.ReadFloat(); mass = reader.ReadFloat(); usemask = new BitArray(reader.ReadBytes(2)); amount = reader.ReadUShort(); stats_s7 = reader.ReadFloat(); AC = (IGCArmorClass)reader.ReadByte(); reader.Assert((byte)0xCD, "Unexpected data found while trying to parse IGCCoreProbe"); uid = reader.ReadUShort(); stats_ss3 = new BitArray(reader.ReadBytes(2)); icon = reader.ReadString(13); reader.Assert((byte)0xCD, "Unexpected data found while trying to parse IGCCoreProbe"); stats_s8 = reader.ReadFloat(); stats_s9 = reader.ReadFloat(); stats_s10 = reader.ReadFloat(); stats_s11 = reader.ReadFloat(); stats_ss4 = reader.ReadShort(); stats_projectile = reader.ReadShort(); stats_sound = reader.ReadShort(); reader.Assert((byte)0xCD, "Unexpected data found while trying to parse IGCCoreProbe"); reader.Assert((byte)0xCD, "Unexpected data found while trying to parse IGCCoreProbe"); stats_activation_delay = reader.ReadFloat(); }
private void Parse(DataReader reader) { pcRED = reader.ReadFloat(); // all zero = percent RGBA pcGreen = reader.ReadFloat(); pcBlue = reader.ReadFloat(); pcAlpha = reader.ReadFloat(); reader.Assert((byte)0xCC, "Unexpected data encountered after colours in IGCCoreMine"); reader.Assert((byte)0xCC, "Unexpected data encountered after colours in IGCCoreMine"); reader.Assert((byte)0xCC, "Unexpected data encountered after colours in IGCCoreMine"); reader.Assert((byte)0xCC, "Unexpected data encountered after colours in IGCCoreMine"); stats_s1 = reader.ReadFloat(); // rate rotation reader.Skip(13); icon = reader.ReadString(13); // Length [13]; //fxmine reader.Assert((byte)0xCC, "Unexpected data encountered after icon in IGCCoreMine"); reader.Assert((byte)0xCC, "Unexpected data encountered after icon in IGCCoreMine"); stats_s2 = reader.ReadFloat(); // load time stats_duration = reader.ReadFloat(); stats_s3 = reader.ReadFloat(); // sig cost = reader.ReadInt(); reader.Assert((byte)0, "Unexpected data encountered after cost in IGCCoreMine"); reader.Assert((byte)0, "Unexpected data encountered after cost in IGCCoreMine"); reader.Assert((byte)0, "Unexpected data encountered after cost in IGCCoreMine"); reader.Assert((byte)0, "Unexpected data encountered after cost in IGCCoreMine"); model = reader.ReadString(13); // Length [13];// inactive & loadout bmp (prefix with 'l') reader.Assert((byte)0xCC, "Unexpected data encountered after model in IGCCoreMine"); type = reader.ReadString(13); // Length [13]; //part name = reader.ReadString(25); // Length [25]; description = reader.ReadString(200); // Length [200]; group = reader.ReadShort(); techtree = new Techtree(reader); reader.Assert((byte)0xCD, "Unexpected data encountered after techtree in IGCCoreMine"); reader.Assert((byte)0xCD, "Unexpected data encountered after techtree in IGCCoreMine"); sigmod = reader.ReadFloat(); // ship sig% mass = reader.ReadFloat(); // mass usemask = new BitArray(reader.ReadBytes(2)); //usemask (2) amount = reader.ReadUShort(); //cargo payload stats_s6 = reader.ReadFloat(); // hitpoints AC = (IGCArmorClass)reader.ReadByte(); // OB reader.Assert((byte)0xCD, "Unexpected data encountered after ArmorClass in IGCCoreMine"); uid = reader.ReadUShort(); reader.Assert((short)0, "Unexpected data encountered after uid in IGCCoreMine"); ukbmp = reader.ReadString(13); // length [13]; // icon bmp reader.Assert((byte)0xCD, "Unexpected data encountered after ukbmp in IGCCoreMine"); stats_radius = reader.ReadFloat(); stats_damage = reader.ReadFloat(); stats_endurance = reader.ReadFloat(); // endurance DM = reader.ReadByte(); // 10 reader.Assert((byte)0xCD, "Unexpected data encountered at end of IGCCoreMine"); reader.Assert((byte)0xCD, "Unexpected data encountered at end of IGCCoreMine"); reader.Assert((byte)0xCD, "Unexpected data encountered at end of IGCCoreMine"); }