public BasicGameFinder(Tenhou.TenhouHashList Hashes) { // Create blank ResultList from hash table for (int h = 0; h < Hashes.Hashes.Count; h++ ) { string Hash = Hashes.Hashes[h]; Mahjong.Replay R = new Mahjong.Replay(); Console.Title = String.Format("Loading {0:d}/{1:d}", h + 1, Hashes.Hashes.Count); if (R.LoadXml(Hash)) { Result Res = new Result(); Res.Replay = R; Res.ReplayMark = true; for (int i = 0; i < 4; i++) Res.PlayerMark[i] = true; // Exclude 4th player in 3man game if (R.PlayerCount == 3) Res.PlayerMark[3] = false; for (int i = 0; i < R.Rounds.Count; i++) { bool[] Marks = new bool[4]; for (int j = 0; j < Res.Replay.PlayerCount; j++) Marks[j] = true; Res.RoundMark.Add(true); Res.HandMark.Add(Marks); } GameList.Add(Res); } else { Console.WriteLine(Hash + " - not found"); } } }
public YakuConfig() { var id = 0; aka_dora = new AkaDora(++id); tenhou = new Tenhou(++id); // Yaku situations tsumo = new Tsumo(++id); riichi = new Riichi(++id); open_riichi = new OpenRiichi(++id); ippatsu = new Ippatsu(++id); chankan = new Chankan(++id); rinshan = new Rinshan(++id); haitei = new Haitei(++id); houtei = new Houtei(++id); daburu_riichi = new DaburuRiichi(++id); daburu_open_riichi = new DaburuOpenRiichi(++id); nagashi_mangan = new NagashiMangan(++id); renhou = new Renhou(++id); // Yaku 1 Han pinfu = new Pinfu(++id); tanyao = new Tanyao(++id); iipeiko = new Iipeikou(++id); haku = new Haku(++id); hatsu = new Hatsu(++id); chun = new Chun(++id); east = new East(++id); south = new South(++id); west = new West(++id); north = new North(++id); yakuhai_place = new YakuhaiPlace(++id); yakuhai_round = new YakuhaiRound(++id); // Yaku 2 Hans sanshoku = new Sanshoku(++id); ittsu = new Ittsu(++id); chantai = new Chanta(++id); honroto = new Honroutou(++id); toitoi = new Toitoi(++id); sanankou = new Sanankou(++id); sankantsu = new Sankantsu(++id); sanshoku_douko = new SanshokuDoukou(++id); chiitoitsu = new Chiitoitsu(++id); shosangen = new Shousangen(++id); // Yaku 3 Hans honitsu = new Honitsu(++id); junchan = new Junchan(++id); ryanpeiko = new Ryanpeikou(++id); // Yaku 6 Hans chinitsu = new Chinitsu(++id); // Yakuman list kokushi = new Kokushi(++id); chuuren_poutou = new ChuurenPoutou(++id); suuankou = new Suuankou(++id); daisangen = new Daisangen(++id); shosuushi = new Shousuushii(++id); ryuisou = new Ryuuiisou(++id); suukantsu = new Suukantsu(++id); tsuisou = new Tsuisou(++id); chinroto = new Chinroutou(++id); daisharin = new Daisharin(++id); daichisei = new Daichisei(++id); // Double yakuman daisuushi = new Daisuushii(++id); daburu_kokushi = new DaburuKokushi(++id); suuankou_tanki = new SuuankouTanki(++id); daburu_chuuren_poutou = new DaburuChuurenPoutou(++id); // Yakuman situations tenhou = new Tenhou(id++); chiihou = new Chiihou(++id); renhou_yakuman = new RenhouYakuman(++id); sashikomi = new Sashikomi(++id); paarenchan = new Paarenchan(++id); // Other dora = new Dora(++id); aka_dora = new AkaDora(++id); }
public GameFinder(Tenhou.TenhouHashList Hashes) : base(Hashes) { }