public void Parse(BinaryPacker.Element meta) { meta.AttrIfBool("IgnoreLevelAudioLayerData", v => IgnoreLevelAudioLayerData = v); meta.AttrIf("Inventory", v => Inventory = v); meta.AttrIf("Path", v => Path = v); meta.AttrIf("PoemID", v => PoemID = v); meta.AttrIf("StartLevel", v => StartLevel = v); meta.AttrIfBool("HeartIsEnd", v => HeartIsEnd = v); meta.AttrIfBool("SeekerSlowdown", v => SeekerSlowdown = v); meta.AttrIfBool("TheoInBubble", v => TheoInBubble = v); BinaryPacker.Element child; child = meta.Children?.FirstOrDefault(el => el.Name == "audiostate"); if (child != null) { AudioState = new MapMetaAudioState(child); } child = meta.Children?.FirstOrDefault(el => el.Name == "checkpoints"); if (child != null) { Checkpoints = new MapMetaCheckpointData[child.Children?.Count ?? 0]; for (int i = 0; i < Checkpoints.Length; i++) { Checkpoints[i] = new MapMetaCheckpointData(child.Children[i]); } } }
public void Parse(BinaryPacker.Element meta) { meta.AttrIf("Icon", v => Icon = v); meta.AttrIfBool("Interlude", v => Interlude = v); meta.AttrIfInt("CassetteCheckpointIndex", v => CassetteCheckpointIndex = v); meta.AttrIf("TitleBaseColor", v => TitleBaseColor = v); meta.AttrIf("TitleAccentColor", v => TitleAccentColor = v); meta.AttrIf("TitleTextColor", v => TitleTextColor = v); meta.AttrIf("IntroType", v => IntroType = (Player.IntroTypes)Enum.Parse(typeof(Player.IntroTypes), v, true)); meta.AttrIfBool("Dreaming", v => Dreaming = v); meta.AttrIf("ColorGrade", v => ColorGrade = v); meta.AttrIf("Wipe", v => Wipe = v); meta.AttrIfFloat("DarknessAlpha", (float v) => DarknessAlpha = v); meta.AttrIfFloat("BloomBase", (float v) => BloomBase = v); meta.AttrIfFloat("BloomStrength", (float v) => BloomStrength = v); meta.AttrIf("Jumpthru", v => Jumpthru = v); meta.AttrIf("CoreMode", v => CoreMode = (Session.CoreModes)Enum.Parse(typeof(Session.CoreModes), v, true)); meta.AttrIf("CassetteNoteColor", v => CassetteNoteColor = v); meta.AttrIf("CassetteSong", v => CassetteSong = v); meta.AttrIf("ForegroundTiles", v => ForegroundTiles = v); meta.AttrIf("BackgroundTiles", v => BackgroundTiles = v); meta.AttrIf("AnimatedTiles", v => AnimatedTiles = v); meta.AttrIf("Sprites", v => Sprites = v); meta.AttrIf("Portraits", v => Portraits = v); meta.AttrIfBool("OverrideASideMeta", v => OverrideASideMeta = v); BinaryPacker.Element child; child = meta.Children?.FirstOrDefault(el => el.Name == "cassettemodifier"); if (child != null) { CassetteModifier = new MapMetaCassetteModifier(child); } Modes = new MapMetaModeProperties[3]; child = meta.Children?.FirstOrDefault(el => el.Name == "modes"); if (child != null && child.Children != null) { for (int i = 0; i < child.Children.Count; i++) { Modes[i] = new MapMetaModeProperties(child.Children[i]); } for (int i = child.Children?.Count ?? 0; i < Modes.Length; i++) { Modes[i] = null; } } }
public void Parse(BinaryPacker.Element meta) { meta.AttrIf("Level", v => Level = v); meta.AttrIf("Name", v => Name = v); meta.AttrIfBool("Dreaming", v => Dreaming = v); meta.AttrIf("Inventory", v => Inventory = v); meta.AttrIf("CoreMode", v => CoreMode = (Session.CoreModes)Enum.Parse(typeof(Session.CoreModes), v, true)); BinaryPacker.Element child; child = meta.Children?.FirstOrDefault(el => el.Name == "audiostate"); if (child != null) { AudioState = new MapMetaAudioState(child); } child = meta.Children?.FirstOrDefault(el => el.Name == "flags"); if (child != null) { Flags = new string[child.Children?.Count ?? 0]; for (int i = 0; i < Flags.Length; i++) { Flags[i] = child.Children[i].Attr("innerText"); } } }
public void Parse(BinaryPacker.Element meta) { meta.AttrIfBool("IgnoreLevelAudioLayerData", v => IgnoreLevelAudioLayerData = v); meta.AttrIf("Inventory", v => Inventory = v); meta.AttrIf("Path", v => Path = v); meta.AttrIf("PoemID", v => PoemID = v); meta.AttrIf("StartLevel", v => StartLevel = v); meta.AttrIf("HeartIsEnd", v => HeartIsEnd = string.IsNullOrEmpty(v) ? (bool?)null : (bool)bool.Parse(v)); BinaryPacker.Element child; child = meta.Children.FirstOrDefault(el => el.Name == "audiostate"); if (child != null) { AudioState = new MapMetaAudioState(child); } child = meta.Children.FirstOrDefault(el => el.Name == "checkpoints"); if (child != null) { Checkpoints = new MapMetaCheckpointData[child.Children.Count]; for (int i = 0; i < Checkpoints.Length; i++) { Checkpoints[i] = new MapMetaCheckpointData(child.Children[i]); } } }
public void Parse(BinaryPacker.Element meta) { meta.AttrIfFloat("TempoMult", v => TempoMult = v); meta.AttrIfInt("LeadBeats", v => LeadBeats = v); meta.AttrIfInt("BeatsPerTick", v => BeatsPerTick = v); meta.AttrIfInt("TicksPerSwap", v => TicksPerSwap = v); meta.AttrIfInt("Blocks", v => Blocks = v); meta.AttrIfInt("BeatsMax", v => BeatsMax = v); meta.AttrIfBool("OldBehavior", v => OldBehavior = v); }