internal static object Write(SubRecordWriteContext context) { var creatureData = (CreatureData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Type)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Level)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Strength)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Intelligence)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Willpower)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Agility)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Speed)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Endurance)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Personality)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Luck)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Health)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.SpellPoints)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Fatigue)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Soul)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Combat)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Magic)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Stealth)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.AttackMin1)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.AttackMax1)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.AttackMin2)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.AttackMax2)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.AttackMin3)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.AttackMax3)); WriteBytes(context.stream, BitConverter.GetBytes(creatureData.Gold)); return(null); }
internal static object Write(SubRecordWriteContext context) { var factionData = (FactionData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(factionData.Attribute1)); WriteBytes(context.stream, BitConverter.GetBytes(factionData.Attribute2)); for (var i = 0; i < Constants.FACT_MAX_RANKS; ++i) { var rankData = factionData.RankData[i]; WriteBytes(context.stream, BitConverter.GetBytes(rankData.Attribute1)); WriteBytes(context.stream, BitConverter.GetBytes(rankData.Attribute2)); WriteBytes(context.stream, BitConverter.GetBytes(rankData.FirstSkill)); WriteBytes(context.stream, BitConverter.GetBytes(rankData.SecondSkill)); WriteBytes(context.stream, BitConverter.GetBytes(rankData.Faction)); } for (var i = 0; i < Constants.FACT_MAX_SKILL_IDS; ++i) { WriteBytes(context.stream, BitConverter.GetBytes(factionData.SkillIds[i])); } WriteBytes(context.stream, BitConverter.GetBytes(factionData.Flags)); return(null); }
internal static object Write(SubRecordWriteContext context) { var textureMap = (LandTextureSubRecord)context.subRecord; var map = textureMap.Data; var initiallyUnswizzled = !map.Swizzled; if (initiallyUnswizzled) { map.Swizzle(); } for (var i = 0; i < 16; ++i) { for (var j = 0; j < 16; ++j) { WriteBytes(context.stream, BitConverter.GetBytes(map[i, j])); } } if (initiallyUnswizzled) { map.UnSwizzle(); } return(null); }
internal static object Write(SubRecordWriteContext context) { var item = (InventoryItemSubRecord)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(item.Count)); WriteBytes(context.stream, GetBytes(item.ItemName, Constants.NPCO_ITEM_NAME_LENGTH, "CONT.NPCO.ItemName")); return(null); }
internal static object Write(SubRecordWriteContext context) { var regionSoundData = (RegionSoundData)context.subRecord; WriteBytes(context.stream, GetBytes(regionSoundData.SoundName, Constants.REGN_SOUND_NAME_LENGTH, "REGN.SNAM.SoundName")); context.stream.WriteByte(regionSoundData.Chance); return(null); }
internal static object Write(SubRecordWriteContext context) { var gridData = (GridSubRecord)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(gridData.GridX)); WriteBytes(context.stream, BitConverter.GetBytes(gridData.GridY)); return(null); }
internal static object Write(SubRecordWriteContext context) { var aiData = (AIActivateData)context.subRecord; WriteBytes(context.stream, GetBytes(aiData.TargetName, Constants.AI_X_ID_LENGTH, "NPC_.AI_A.TargetName")); context.stream.WriteByte(aiData.Unknown); return(null); }
internal static object Write(SubRecordWriteContext context) { var spellData = (SpellData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(spellData.Type)); WriteBytes(context.stream, BitConverter.GetBytes(spellData.SpellCost)); WriteBytes(context.stream, BitConverter.GetBytes(spellData.Flags)); return(null); }
internal static object Write(SubRecordWriteContext context) { var miscItemData = (MiscItemData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(miscItemData.Weight)); WriteBytes(context.stream, BitConverter.GetBytes(miscItemData.Value)); WriteBytes(context.stream, BitConverter.GetBytes(miscItemData.Unknown)); return(null); }
internal static object Write(SubRecordWriteContext context) { var potionData = (PotionData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(potionData.Weight)); WriteBytes(context.stream, BitConverter.GetBytes(potionData.Value)); WriteBytes(context.stream, BitConverter.GetBytes(potionData.AutoCalc)); return(null); }
internal static object Write(SubRecordWriteContext context) { var soundData = (SoundData)context.subRecord; context.stream.WriteByte(soundData.Volume); context.stream.WriteByte(soundData.MinRange); context.stream.WriteByte(soundData.MaxRange); return(null); }
internal static object Write(SubRecordWriteContext context) { var apparatusData = (AlchemyApparatusData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(apparatusData.Type)); WriteBytes(context.stream, BitConverter.GetBytes(apparatusData.Quality)); WriteBytes(context.stream, BitConverter.GetBytes(apparatusData.Weight)); WriteBytes(context.stream, BitConverter.GetBytes(apparatusData.Value)); return(null); }
internal static object Write(SubRecordWriteContext context) { var repairData = (RepairData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(repairData.Weight)); WriteBytes(context.stream, BitConverter.GetBytes(repairData.Value)); WriteBytes(context.stream, BitConverter.GetBytes(repairData.Uses)); WriteBytes(context.stream, BitConverter.GetBytes(repairData.Quality)); return(null); }
internal static object Write(SubRecordWriteContext context) { var enchantData = (EnchantData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(enchantData.Type)); WriteBytes(context.stream, BitConverter.GetBytes(enchantData.Cost)); WriteBytes(context.stream, BitConverter.GetBytes(enchantData.Charge)); WriteBytes(context.stream, BitConverter.GetBytes(enchantData.AutoCalc)); return(null); }
internal static object Write(SubRecordWriteContext context) { var aiData = (AITravelData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(aiData.X)); WriteBytes(context.stream, BitConverter.GetBytes(aiData.Y)); WriteBytes(context.stream, BitConverter.GetBytes(aiData.Z)); WriteBytes(context.stream, BitConverter.GetBytes(aiData.Unknown)); return(null); }
internal static object Write(SubRecordWriteContext context) { var clothingData = (ClothingData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(clothingData.Type)); WriteBytes(context.stream, BitConverter.GetBytes(clothingData.Weight)); WriteBytes(context.stream, BitConverter.GetBytes(clothingData.Value)); WriteBytes(context.stream, BitConverter.GetBytes(clothingData.EnchantPoints)); return(null); }
internal static object Write(SubRecordWriteContext context) { var bodyData = (BodyPartData)context.subRecord; context.stream.WriteByte(bodyData.Part); context.stream.WriteByte(bodyData.Vampire); context.stream.WriteByte(bodyData.Flags); context.stream.WriteByte(bodyData.PartType); return(null); }
internal static object Write(SubRecordWriteContext context) { var lightData = (InteriorLightSubRecord)context.subRecord; WriteColorRef(context.stream, lightData.AmbientColor); WriteColorRef(context.stream, lightData.SunlightColor); WriteColorRef(context.stream, lightData.FogColor); WriteBytes(context.stream, BitConverter.GetBytes(lightData.FogDensity)); return(null); }
internal static object Write(SubRecordWriteContext context) { var connectionData = (PathGridConnectionSubRecord)context.subRecord; foreach (var connection in connectionData.Connections) { WriteBytes(context.stream, BitConverter.GetBytes(connection)); } return(null); }
internal static object Write(SubRecordWriteContext context) { var pathGridData = (PathGridDataSubRecord)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(pathGridData.GridX)); WriteBytes(context.stream, BitConverter.GetBytes(pathGridData.GridY)); WriteBytes(context.stream, BitConverter.GetBytes(pathGridData.Granularity)); WriteBytes(context.stream, BitConverter.GetBytes(pathGridData.PointCount)); return(null); }
internal static object Write(SubRecordWriteContext context) { var fileHeader = (TES3HeaderData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(fileHeader.Version)); WriteBytes(context.stream, BitConverter.GetBytes(fileHeader.FileType)); WriteBytes(context.stream, GetBytes(fileHeader.CompanyName, Constants.TES3_COMPANY_NAME_LENGTH, "TES3.HEDR.CompanyName")); WriteBytes(context.stream, GetBytes(fileHeader.Description, Constants.TES3_DESCRIPTION_LENGTH, "TES3.HEDR.Description")); WriteBytes(context.stream, BitConverter.GetBytes(fileHeader.NumRecords)); return(null); }
internal static object Write(SubRecordWriteContext context) { var bookData = (BookData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(bookData.Weight)); WriteBytes(context.stream, BitConverter.GetBytes(bookData.Value)); WriteBytes(context.stream, BitConverter.GetBytes(bookData.Scroll)); WriteBytes(context.stream, BitConverter.GetBytes(bookData.SkillId)); WriteBytes(context.stream, BitConverter.GetBytes(bookData.EnchantPoints)); return(null); }
internal static object Write(SubRecordWriteContext context) { var armorData = (ArmorData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(armorData.Type)); WriteBytes(context.stream, BitConverter.GetBytes(armorData.Weight)); WriteBytes(context.stream, BitConverter.GetBytes(armorData.Value)); WriteBytes(context.stream, BitConverter.GetBytes(armorData.Health)); WriteBytes(context.stream, BitConverter.GetBytes(armorData.EnchantPoints)); WriteBytes(context.stream, BitConverter.GetBytes(armorData.Armor)); return(null); }
internal static object Write(SubRecordWriteContext context) { var lightData = (LightData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(lightData.Weight)); WriteBytes(context.stream, BitConverter.GetBytes(lightData.Value)); WriteBytes(context.stream, BitConverter.GetBytes(lightData.Time)); WriteBytes(context.stream, BitConverter.GetBytes(lightData.Radius)); WriteColorRef(context.stream, lightData.Color); WriteBytes(context.stream, BitConverter.GetBytes(lightData.Flags)); return(null); }
internal static object Write(SubRecordWriteContext context) { var scriptHeader = (ScriptHeader)context.subRecord; WriteBytes(context.stream, GetBytes(scriptHeader.ScriptName, Constants.Script.SCHD_NAME_MAX_LENGTH, "SCPT.SCHD.ScriptName")); WriteBytes(context.stream, BitConverter.GetBytes(scriptHeader.NumShorts)); WriteBytes(context.stream, BitConverter.GetBytes(scriptHeader.NumLongs)); WriteBytes(context.stream, BitConverter.GetBytes(scriptHeader.NumFloats)); WriteBytes(context.stream, BitConverter.GetBytes(scriptHeader.DataSize)); WriteBytes(context.stream, BitConverter.GetBytes(scriptHeader.LocalVarSize)); return(null); }
internal static object Write(SubRecordWriteContext context) { if (context.subRecord is ByteSubRecord byteRecord) { context.stream.WriteByte(byteRecord.Data); } else if (context.subRecord is IntSubRecord intRecord) { WriteBytes(context.stream, BitConverter.GetBytes(intRecord.Data)); } return(null); }
internal static object Write(SubRecordWriteContext context) { var paletteData = (WorldMapPaletteSubRecord)context.subRecord; for (var i = 0; i < WorldMapPaletteSubRecord.PALETTE_SIDE_LENGTH; ++i) { for (var j = 0; j < WorldMapPaletteSubRecord.PALETTE_SIDE_LENGTH; ++j) { context.stream.WriteByte(paletteData.Palette[i, j]); } } return(null); }
internal static object Write(SubRecordWriteContext context) { var infoData = (DialogueInfoData) context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(infoData.Unknown)); WriteBytes(context.stream, BitConverter.GetBytes(infoData.Disposition)); context.stream.WriteByte(infoData.Rank); context.stream.WriteByte(infoData.Gender); context.stream.WriteByte(infoData.PCRank); context.stream.WriteByte(infoData.Unknown1); return null; }
internal static object Write(SubRecordWriteContext context) { var skillData = (SkillData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(skillData.Attribute)); WriteBytes(context.stream, BitConverter.GetBytes(skillData.Specialization)); for (int i = 0; i < Constants.SKIL_USE_VALUE_LENGTH; ++i) { WriteBytes(context.stream, BitConverter.GetBytes(skillData.UseValue[i])); } return(null); }
internal static object Write(SubRecordWriteContext context) { var aiData = (AIWanderData)context.subRecord; WriteBytes(context.stream, BitConverter.GetBytes(aiData.Distance)); WriteBytes(context.stream, BitConverter.GetBytes(aiData.Duration)); context.stream.WriteByte(aiData.TimeOfDay); WriteBytes(context.stream, aiData.Idle); context.stream.WriteByte(aiData.Unknown); return(null); }