public Party(DataStore data) : this() { Clock = new Clock(); InitCharacters(data); AddCharacters(); _party[0] = Cloud; Materiatory = new Materiatory(); Inventory = new Inventory(); Reserves = new Character[3, 3]; Gil = 100; BattleSpeed = DEFAULT_BATTLE_SPEED; }
public Party(DataStore data, XmlNode savegame) : this() { InitCharacters(savegame, data); AddCharacters(); for (int k = 0; k <= 2; k++) { XmlNode node = savegame.SelectSingleNode("./slot" + k.ToString()); if (node != null) { if (!String.IsNullOrEmpty(node.InnerText)) { _party[k] = _characters[node.InnerText]; } } } Materiatory = new Materiatory(data, savegame); Inventory = new Inventory(data, savegame); Reserves = new Character[3, 3]; int i = 0; int j = 0; foreach (XmlNode node in savegame.SelectNodes("./reserve")) { if (node.NodeType == XmlNodeType.Comment) { continue; } Reserves[j, i] = _characters[node.InnerXml]; i++; if (i % 3 == 0) { j++; i = 0; } } Gil = Int32.Parse(savegame.SelectSingleNode("./gil").InnerXml); int time = Int32.Parse(savegame.SelectSingleNode("./time").InnerText); Clock = new Clock(time, true); BattleSpeed = Int32.Parse(savegame.SelectSingleNode("./battleSpeed").InnerText); for (int a = 0; a < 4; a++) { XmlNode cornerNode = savegame.SelectSingleNode("./config/menu/corner" + a); int r = Int32.Parse(cornerNode.Attributes["r"].Value); int g = Int32.Parse(cornerNode.Attributes["g"].Value); int b = Int32.Parse(cornerNode.Attributes["b"].Value); Menu.Menu.SetCornerColor(a, r, g, b); } }
private void InitCharacters(DataStore data) { XmlDocument characterData = Resource.GetXmlFromResource("data.characters.xml", data.Assembly); Cloud = new Character(characterData.SelectSingleNode("./characters/Cloud"), data); Tifa = new Character(characterData.SelectSingleNode("./characters/Tifa"), data); Aeris = new Character(characterData.SelectSingleNode("./characters/Aeris"), data); Barret = new Character(characterData.SelectSingleNode("./characters/Barret"), data); RedXIII = new Character(characterData.SelectSingleNode("./characters/RedXIII"), data); Yuffie = new Character(characterData.SelectSingleNode("./characters/Yuffie"), data); CaitSith = new Character(characterData.SelectSingleNode("./characters/CaitSith"), data); Vincent = new Character(characterData.SelectSingleNode("./characters/Vincent"), data); Cid = new Character(characterData.SelectSingleNode("./characters/Cid"), data); Sephiroth = new Character(characterData.SelectSingleNode("./characters/Sephiroth"), data); }
public void Swap(SlotHolder @from, SlotHolder to, Character c) { for (int i = 0; i < @from.Slots.Length; i++) { MateriaOrb m = @from.Slots[i]; if (m != null) { if (i >= to.Slots.Length) { m.Detach(c); Put(m); } else { to.Slots[i] = m; } } @from.Slots[i] = null; } }