public void LoadRoster() { if (!File.Exists("Content/Roster.bin")) { return; } FileStream FS = new FileStream("Content/Roster.bin", FileMode.Open, FileAccess.Read); BinaryReader BR = new BinaryReader(FS); int ListCharacterCount = BR.ReadInt32(); ListCharacter = new List <Character>(ListCharacterCount); for (int C = 0; C < ListCharacterCount; C++) { Character NewCharacter = new Character(BR.ReadString(), null, DicRequirement, DicEffect, DicAutomaticSkillTarget, DicManualSkillTarget); lstCharacters.Items.Add(NewCharacter.FullName); lstCharactersToShareFrom.Items.Add(NewCharacter.FullName); ListCharacter.Add(NewCharacter); int DicCharacterLinkCount = BR.ReadInt32(); for (int L = 0; L < DicCharacterLinkCount; L++) { string Key = BR.ReadString(); Character.CharacterLinkTypes CharacterLinkType = (Character.CharacterLinkTypes)BR.ReadByte(); NewCharacter.DicCharacterLink.Add(Key, CharacterLinkType); } } int ListUnitCount = BR.ReadInt32(); ListUnit = new List <Unit>(ListUnitCount); for (int U = 0; U < ListUnitCount; U++) { string UnitTypeName = BR.ReadString(); string UnitName = BR.ReadString(); string EventID = BR.ReadString(); Unit NewUnit = Unit.FromType(UnitTypeName, UnitName, null, DicUnitType, DicRequirement, DicEffect, DicAutomaticSkillTarget); NewUnit.TeamEventID = EventID; lstUnits.Items.Add(NewUnit.ItemName); lstUnitsToShareFrom.Items.Add(NewUnit.ItemName); ListUnit.Add(NewUnit); int DicUnitLinkCount = BR.ReadInt32(); for (int L = 0; L < DicUnitLinkCount; L++) { string Key = BR.ReadString(); UnitStats.UnitLinkTypes UnitLinkType = (UnitStats.UnitLinkTypes)BR.ReadByte(); NewUnit.UnitStat.DicUnitLink.Add(Key, UnitLinkType); } } BR.Close(); FS.Close(); }
public void LoadRoster() { if (!File.Exists("Content/Roster.bin")) { return; } FileStream FS = new FileStream("Content/Roster.bin", FileMode.Open, FileAccess.Read); BinaryReader BR = new BinaryReader(FS); int DicCharacterCount = BR.ReadInt32(); DicRosterCharacter = new Dictionary <string, RosterCharacter>(DicCharacterCount); for (int C = 0; C < DicCharacterCount; C++) { RosterCharacter NewCharacter = new RosterCharacter(BR.ReadString()); DicRosterCharacter.Add(NewCharacter.FilePath, NewCharacter); int DicCharacterLinkCount = BR.ReadInt32(); for (int L = 0; L < DicCharacterLinkCount; L++) { string Key = BR.ReadString(); Character.CharacterLinkTypes CharacterLinkType = (Character.CharacterLinkTypes)BR.ReadByte(); NewCharacter.DicCharacterLink.Add(Key, CharacterLinkType); } } int DicUnitCount = BR.ReadInt32(); DicRosterUnit = new Dictionary <string, RosterUnit>(DicUnitCount); for (int U = 0; U < DicUnitCount; U++) { string UnitTypeName = BR.ReadString(); string UnitName = BR.ReadString(); string EventID = BR.ReadString(); RosterUnit NewUnit = new RosterUnit(UnitTypeName, UnitName, EventID); DicRosterUnit.Add(EventID, NewUnit); int DicUnitLinkCount = BR.ReadInt32(); for (int L = 0; L < DicUnitLinkCount; L++) { string Key = BR.ReadString(); UnitStats.UnitLinkTypes UnitLinkType = (UnitStats.UnitLinkTypes)BR.ReadByte(); NewUnit.DicUnitLink.Add(Key, UnitLinkType); } } BR.Close(); FS.Close(); CreateCharacterRosterDependencies(); CreateUnitRosterDependencies(); }
private void lstCharacters_SelectedIndexChanged(object sender, EventArgs e) { if (lstCharacters.SelectedIndex >= 0) { Character ActiveCharacter = ListCharacter[lstCharacters.SelectedIndex]; lblMEL.Text = ActiveCharacter.MEL.ToString(); lblRNG.Text = ActiveCharacter.RNG.ToString(); lblDEF.Text = ActiveCharacter.DEF.ToString(); lblSKL.Text = ActiveCharacter.SKL.ToString(); lblEVA.Text = ActiveCharacter.EVA.ToString(); lblHIT.Text = ActiveCharacter.HIT.ToString(); Character.CharacterLinkTypes CharacterLinkType = Character.CharacterLinkTypes.None; if (lstCharactersToShareFrom.SelectedIndex >= 0) { string OtherCharacterName = ListCharacter[lstCharactersToShareFrom.SelectedIndex].FullName; if (ActiveCharacter.DicCharacterLink.ContainsKey(OtherCharacterName)) { CharacterLinkType = ActiveCharacter.DicCharacterLink[OtherCharacterName]; } if ((CharacterLinkType & Character.CharacterLinkTypes.Level) == Character.CharacterLinkTypes.Level) { cbShareLevel.Checked = true; } else { cbShareLevel.Checked = false; } if ((CharacterLinkType & Character.CharacterLinkTypes.EXP) == Character.CharacterLinkTypes.EXP) { cbShareEXP.Checked = true; } else { cbShareEXP.Checked = false; } if ((CharacterLinkType & Character.CharacterLinkTypes.MEL) == Character.CharacterLinkTypes.MEL) { cbShareMEL.Checked = true; } else { cbShareMEL.Checked = false; } if ((CharacterLinkType & Character.CharacterLinkTypes.RNG) == Character.CharacterLinkTypes.RNG) { cbShareRNG.Checked = true; } else { cbShareRNG.Checked = false; } if ((CharacterLinkType & Character.CharacterLinkTypes.DEF) == Character.CharacterLinkTypes.DEF) { cbShareDEF.Checked = true; } else { cbShareDEF.Checked = false; } if ((CharacterLinkType & Character.CharacterLinkTypes.SKL) == Character.CharacterLinkTypes.SKL) { cbShareSKL.Checked = true; } else { cbShareSKL.Checked = false; } if ((CharacterLinkType & Character.CharacterLinkTypes.EVA) == Character.CharacterLinkTypes.EVA) { cbShareEVA.Checked = true; } else { cbShareEVA.Checked = false; } if ((CharacterLinkType & Character.CharacterLinkTypes.HIT) == Character.CharacterLinkTypes.HIT) { cbShareHIT.Checked = true; } else { cbShareHIT.Checked = false; } } } }
private void cbCharacterShare_CheckedChanged(object sender, EventArgs e) { if (lstCharacters.SelectedIndex >= 0 && lstCharactersToShareFrom.SelectedIndex >= 0) { Character ActiveCharacter = ListCharacter[lstCharacters.SelectedIndex]; string OtherCharacterName = ListCharacter[lstCharactersToShareFrom.SelectedIndex].FullName; if (!ActiveCharacter.DicCharacterLink.ContainsKey(OtherCharacterName)) { ActiveCharacter.DicCharacterLink.Add(OtherCharacterName, Character.CharacterLinkTypes.None); } Character.CharacterLinkTypes CharacterLinkType = Character.CharacterLinkTypes.None; if (cbShareLevel.Checked) { CharacterLinkType = CharacterLinkType | Character.CharacterLinkTypes.Level; } else { CharacterLinkType = CharacterLinkType & ~Character.CharacterLinkTypes.Level; } if (cbShareEXP.Checked) { CharacterLinkType = CharacterLinkType | Character.CharacterLinkTypes.EXP; } else { CharacterLinkType = CharacterLinkType & ~Character.CharacterLinkTypes.EXP; } if (cbShareMEL.Checked) { CharacterLinkType = CharacterLinkType | Character.CharacterLinkTypes.MEL; } else { CharacterLinkType = CharacterLinkType & ~Character.CharacterLinkTypes.MEL; } if (cbShareRNG.Checked) { CharacterLinkType = CharacterLinkType | Character.CharacterLinkTypes.RNG; } else { CharacterLinkType = CharacterLinkType & ~Character.CharacterLinkTypes.RNG; } if (cbShareDEF.Checked) { CharacterLinkType = CharacterLinkType | Character.CharacterLinkTypes.DEF; } else { CharacterLinkType = CharacterLinkType & ~Character.CharacterLinkTypes.DEF; } if (cbShareSKL.Checked) { CharacterLinkType = CharacterLinkType | Character.CharacterLinkTypes.SKL; } else { CharacterLinkType = CharacterLinkType & ~Character.CharacterLinkTypes.SKL; } if (cbShareEVA.Checked) { CharacterLinkType = CharacterLinkType | Character.CharacterLinkTypes.EVA; } else { CharacterLinkType = CharacterLinkType & ~Character.CharacterLinkTypes.EVA; } if (cbShareHIT.Checked) { CharacterLinkType = CharacterLinkType | Character.CharacterLinkTypes.HIT; } else { CharacterLinkType = CharacterLinkType & ~Character.CharacterLinkTypes.HIT; } ActiveCharacter.DicCharacterLink[OtherCharacterName] = CharacterLinkType; } }