public void Sort(SortField[] sortFields) { MainDeck.Sort(sortFields); SideDeck.Sort(sortFields); ExtraDeck.Sort(sortFields); TempDeck.Sort(sortFields); }
public bool SaveFileForPRO(string filename) { try { StreamWriter sw = new StreamWriter(filename, false, System.Text.Encoding.ASCII); CardLibrary cardLibrary = CardLibrary.GetInstance(); sw.WriteLine("#created by DeckBuilder2"); //Êä³öÖ÷¿¨×é Card[] Cards = MainDeck.GetList(); sw.WriteLine("#main"); foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); sw.WriteLine(cd.cheatcode); } //Êä³ö¶îÍ⿨×é Cards = ExtraDeck.GetList(); if (Cards.Length > 0) { sw.WriteLine("#extra"); } foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); sw.WriteLine(cd.cheatcode); } //Êä³ö¸±¿¨×é Cards = SideDeck.GetList(); if (Cards.Length > 0) { sw.WriteLine("!side"); } foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); sw.WriteLine(cd.cheatcode); } //Êä³öºòÑ¡¿¨±í Cards = TempDeck.GetList(); if (Cards.Length > 0) { sw.WriteLine("#wait list"); } foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); sw.WriteLine("#" + cd.cheatcode); } sw.Close(); deckname = Regex.Replace(filename, @".[^.]*$", ""); deckname = Regex.Replace(deckname, @"^.*\\", ""); MainDeck.isChanged = false; SideDeck.isChanged = false; ExtraDeck.isChanged = false; TempDeck.isChanged = false; return(true); } catch { return(false); } }
public bool SaveFileForCGI(string filename) { try { StreamWriter sw = new StreamWriter(filename, false, System.Text.Encoding.Unicode); CardLibrary cardLibrary = CardLibrary.GetInstance(); Card[] Cards = MainDeck.GetList(); foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); string s = CharacterSet.JPDBCToSBC(cd.japName); sw.WriteLine(s); } Cards = SideDeck.GetList(); if (Cards.Length > 0) { sw.WriteLine("####"); } foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); sw.WriteLine(CharacterSet.JPDBCToSBC(cd.japName)); } Cards = ExtraDeck.GetList(); if (Cards.Length > 0) { sw.WriteLine("===="); } foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); sw.WriteLine(CharacterSet.JPDBCToSBC(cd.japName)); } Cards = TempDeck.GetList(); if (Cards.Length > 0) { sw.WriteLine("$$$$"); } foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); sw.WriteLine(CharacterSet.JPDBCToSBC(cd.japName)); } sw.Close(); deckname = Regex.Replace(filename, @".[^.]*$", ""); deckname = Regex.Replace(deckname, @"^.*\\", ""); MainDeck.isChanged = false; SideDeck.isChanged = false; ExtraDeck.isChanged = false; TempDeck.isChanged = false; return(true); } catch { return(false); } }
public bool SaveFile(string filename) { this.filename = filename; try { StreamWriter sw = new StreamWriter(filename, false, System.Text.Encoding.GetEncoding("gb2312")); CardLibrary cardLibrary = CardLibrary.GetInstance(); Card[] Cards = MainDeck.GetList(); foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); if (card.Text.Length > 0) { sw.WriteLine("[" + cd.name + "]#" + card.Text + "#"); } else { sw.WriteLine("[" + cd.name + "]"); } } Cards = SideDeck.GetList(); if (Cards.Length > 0) { sw.WriteLine("####"); } foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); if (card.Text.Length > 0) { sw.WriteLine("[" + cd.name + "]#" + card.Text + "#"); } else { sw.WriteLine("[" + cd.name + "]"); } } Cards = ExtraDeck.GetList(); if (Cards.Length > 0) { sw.WriteLine("===="); } foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); if (card.Text.Length > 0) { sw.WriteLine("[" + cd.name + "]#" + card.Text + "#"); } else { sw.WriteLine("[" + cd.name + "]"); } } Cards = TempDeck.GetList(); if (Cards.Length > 0) { sw.WriteLine("$$$$"); } foreach (Card card in Cards) { CardDescription cd = cardLibrary.GetCardByID(card.ID); if (card.Text.Length > 0) { sw.WriteLine("[" + cd.name + "]#" + card.Text + "#"); } else { sw.WriteLine("[" + cd.name + "]"); } } sw.Close(); deckname = Regex.Replace(filename, @".[^.]*$", ""); deckname = Regex.Replace(deckname, @"^.*\\", ""); MainDeck.isChanged = false; SideDeck.isChanged = false; ExtraDeck.isChanged = false; TempDeck.isChanged = false; return(true); } catch { return(false); } }
public ArrayList LoadFileByCharSetForPRO(string FileName, string CharSet) { try { Clear(); StreamReader sr = new StreamReader(FileName, System.Text.Encoding.GetEncoding(CharSet)); int lastNumber = 0; int currentDeck = 0; ArrayList lastList = new ArrayList(); while (!sr.EndOfStream) { string s = sr.ReadLine().Trim(); if (s.StartsWith("!side")) { currentDeck = 2; continue; } else if (s.StartsWith("#wait list")) { currentDeck = 3; continue; } else if (s.Length == 0 || s.StartsWith("#") || s.StartsWith("!")) { continue; } CardDescription card = null; string lastname = s; if (currentDeck == 3) { lastname = s.Substring(1); } card = CardLibrary.GetInstance().GetCardByCheatCode(lastname); string text = null; if (card != null) { string err = null; switch (currentDeck) { case 0: if (CardDescription.isExtraCard(card)) { err = ExtraDeck.AddCard(card.ID, -1, text); } else { err = MainDeck.AddCard(card.ID, -1, text); } break; case 1: err = ExtraDeck.AddCard(card.ID, -1, text); break; case 2: err = SideDeck.AddCard(card.ID, -1, text); break; case 3: err = TempDeck.AddCard(card.ID, -1, text); break; } if (err != null) { lastNumber++; lastList.Add(card.name); } } else { lastNumber++; lastList.Add(lastname); } } sr.Close(); deckname = Regex.Replace(FileName, @".[^.]*$", ""); deckname = Regex.Replace(deckname, @"^.*\\", ""); MainDeck.isChanged = false; SideDeck.isChanged = false; ExtraDeck.isChanged = false; TempDeck.isChanged = false; return(lastList); } catch { Clear(); return(null); } }
public ArrayList LoadFileByCharSet(string FileName, string CharSet) { try { Clear(); StreamReader sr = new StreamReader(FileName, System.Text.Encoding.GetEncoding(CharSet)); int lastNumber = 0; int currentDeck = 0; ArrayList lastList = new ArrayList(); while (!sr.EndOfStream) { string s = sr.ReadLine().Trim(); if (s.StartsWith("====")) { currentDeck = 1; continue; } else if (s.StartsWith("####")) { currentDeck = 2; continue; } else if (s.StartsWith("$$$$")) { currentDeck = 3; continue; } else if (s.Length == 0) { continue; } CardDescription card = null; string text = ""; string lastname = null; if (s[0] == '[') { Match match = regex1.Match(s); string name = match.Groups["name"].Value; text = match.Groups["text"].Value; //string name = s.Substring(s.LastIndexOf('[') + 1, s.LastIndexOf(']') - s.LastIndexOf('[') - 1); lastname = name; card = CardLibrary.GetInstance().GetCardByName(name); if (card == null) { card = CardLibrary.GetInstance().GetCardByOldName(name); } } else { string japname = CharacterSet.JPSBCToDBC(s); lastname = japname; card = CardLibrary.GetInstance().GetCardByJapName(japname); } if (card != null) { string err = null; switch (currentDeck) { case 0: if (CardDescription.isExtraCard(card)) { err = ExtraDeck.AddCard(card.ID, -1, text); } else { err = MainDeck.AddCard(card.ID, -1, text); } break; case 1: err = ExtraDeck.AddCard(card.ID, -1, text); break; case 2: err = SideDeck.AddCard(card.ID, -1, text); break; case 3: err = TempDeck.AddCard(card.ID, -1, text); break; } if (err != null) { lastNumber++; lastList.Add(card.name); } } else { lastNumber++; lastList.Add(lastname); } } sr.Close(); deckname = Regex.Replace(FileName, @".[^.]*$", ""); deckname = Regex.Replace(deckname, @"^.*\\", ""); MainDeck.isChanged = false; SideDeck.isChanged = false; ExtraDeck.isChanged = false; TempDeck.isChanged = false; return(lastList); } catch { Clear(); return(null); } }
public bool isEmpty() { return(MainDeck.Count() + SideDeck.Count() + ExtraDeck.Count() + TempDeck.Count() == 0); }