private string GetHaoBienExtraDesc(Hao haoBien, Hao haoGoc) { var result = ""; if (haoBien.NguHanh.Sinh == haoGoc.NguHanh) { result += ", hồi đầu sinh"; } else if (haoBien.NguHanh.Khac == haoGoc.NguHanh) { result += ", hồi đầu khắc"; } if (haoBien.Chi.Xung == haoGoc.Chi) { result += ", hồi đầu xung"; } if (VongTruongSinh.IsMo(haoBien.Chi.NguHanh, haoGoc.Chi)) { result += ", biến mộ"; } if (haoBien.Chi == haoGoc.Chi.Tan) { result += ", tấn thần"; } else if (haoBien.Chi == haoGoc.Chi.Thoai) { result += ", thoái thần"; } return(result); }
public void TestLucThanCuaHao() { var hao = new Hao { Chi = Hoi, HanhCuaQue = Kim }; Assert.AreEqual(hao.LucThan, TuTon); hao = new Hao { Chi = Hoi, HanhCuaQue = Thuy }; Assert.AreEqual(hao.LucThan, HuynhDe); hao = new Hao { Chi = Hoi, HanhCuaQue = Moc }; Assert.AreEqual(hao.LucThan, PhuMau); hao = new Hao { Chi = Hoi, HanhCuaQue = Hoa }; Assert.AreEqual(hao.LucThan, QuanQuy); hao = new Hao { Chi = Hoi, HanhCuaQue = Tho }; Assert.AreEqual(hao.LucThan, TheTai); }
private string GetHaoDesc(Hao hao, bool isHaoDong, CanChi nhatThan, CanChi nguyetKien, List <LucThan> lucThan) { var result = ""; var isAmDong = IsAmDong(hao, nhatThan, nguyetKien); result += GetDiaChiVaLucThanCuaHao(hao, isHaoDong, lucThan, isAmDong); result += GetSuyVuongCuaHao(hao, nhatThan, nguyetKien); return(result); }
private string GetDiaChiVaLucThanCuaHao(Hao hao, bool isHaoDong, List <LucThan> lucThan, bool isAmDong = false) { string result = ""; if (isHaoDong) { if (hao.Duong) { result = "o"; // Dương động biến âm. } else { result = "x"; // Âm động biến dương. } } else { if (isAmDong) { result = "+"; // Ám động. } } result = result.PadRight(3); result += $"{hao.Chi.Name} {hao.Chi.NguHanh.Name}"; result = result.PadRight(13); result += $"{hao.AmDuongString}"; result = result.PadRight(18); result += $"{hao.LucThan.Name}"; result = result.PadRight(28); if (hao.The) { result += "THẾ"; } else if (hao.Ung) { result += "ỨNG"; } else { result += " "; } if (lucThan != null) { result += $", {lucThan[hao.Id - 1].Name}"; result = result.PadRight(43); } return(result); }
/// <summary> /// Hào ám động là hào tĩnh, vượng tướng và xung với nhật thần. /// </summary> /// <param name="hao"></param> /// <param name="nhatThan"></param> /// <param name="nguyetKien"></param> /// <returns></returns> private bool IsAmDong(Hao hao, CanChi nhatThan, CanChi nguyetKien) { if (nhatThan.Chi.Xung == hao.Chi) { if (nhatThan.IsVuongTuong(hao.Chi) || nguyetKien.IsVuongTuong(hao.Chi)) { return(true); } } return(false); }
private string GetHaoBienDesc(Hao haoBien, Hao haoGoc, bool isHaoDong, CanChi nhatThan, CanChi nguyetKien) { var result = ""; result = GetDiaChiVaLucThanCuaHao(haoBien, isHaoDong, null); if (!isHaoDong) { return(result); } result += GetHaoBienExtraDesc(haoBien, haoGoc); result += GetSuyVuongCuaHao(haoBien, nhatThan, nguyetKien); return(result); }
protected string GetHaoDesc(Que que, Hao hao, bool isHaoDong) { if (que == null) { return(""); } string result = ""; if (isHaoDong) { if (hao.Duong) { result = "o"; // Dương động biến âm. } else { result = "x"; // Âm động biến dương. } } result = result.PadRight(3); if (hao.Id == 5) { result += $"{que.NgoaiQuai.Name} {que.NgoaiQuai.NguHanh.Name}"; } else if (hao.Id == 2) { result += $"{que.NoiQuai.Name} {que.NoiQuai.NguHanh.Name}"; } result = result.PadRight(13); result += $"{hao.AmDuongString}"; result = result.PadRight(18); if (hao.Id == 5) { if (que == QueChu) { result += QueChu.IsTheQuaiOTren ? "Quẻ thể" : "Quẻ dụng"; } else if (que == QueHo) { result += QueChu.IsTheQuaiOTren ? "Quẻ hỗ của thể" : "Quẻ hỗ của dụng"; } else { result += QueChu.IsTheQuaiOTren ? "Quẻ thể" : "Quẻ biến"; } } else if (hao.Id == 2) { if (que == QueChu) { result += QueChu.IsTheQuaiOTren ? "Quẻ dụng" : "Quẻ thể"; } else if (que == QueHo) { result += QueChu.IsTheQuaiOTren ? "Quẻ hỗ của dụng" : "Quẻ hỗ của thể"; } else { result += QueChu.IsTheQuaiOTren ? "Quẻ biến" : "Quẻ thể"; } } result = result.PadRight(28); return(result); }
private string GetSuyVuongCuaHao(Hao hao, CanChi nhatThan, CanChi nguyetKien) { var result = ""; if (nhatThan.IsLamKhong(hao.Chi)) { result += ", lâm không"; } // Nguyệt kiến if (nguyetKien.Chi.Xung == hao.Chi) { result += ", nguyệt phá"; } else if (nguyetKien.Chi.Hop == hao.Chi) { result += ", nguyệt hợp"; } if (nguyetKien.Chi == hao.Chi) { result += ", nguyệt kiến"; } else if (nguyetKien.IsVuongTuong(hao.Chi)) { result += ", nguyệt vượng"; } else if (nguyetKien.IsHuuTu(hao.Chi)) { result += ", nguyệt tù"; } // Tháng thổ (thìn tuất sửu mùi) sẽ có hào gặp mộ. if (nguyetKien.Chi.NguHanh == Tho) { if (VongTruongSinh.IsMo(hao.Chi.NguHanh, nguyetKien.Chi)) { result += ", nguyệt mộ"; } } // Nhật thần if (nhatThan.Chi == hao.Chi) { result += ", nhật kiến"; } else if (nhatThan.Chi.Xung == hao.Chi) { if (nhatThan.IsVuongTuong(hao.Chi) || nguyetKien.IsVuongTuong(hao.Chi)) { result += ", ám động"; } else { result += ", nhật phá"; } } else { if (nhatThan.IsVuongTuong(hao.Chi)) { result += ", nhật vượng"; } else if (nhatThan.IsHuuTu(hao.Chi)) { result += ", nhật tù"; } } // Ngày thổ (thìn tuất sửu mùi) sẽ có hào gặp mộ. if (nhatThan.Chi.NguHanh == Tho) { if (VongTruongSinh.IsMo(hao.Chi.NguHanh, nhatThan.Chi)) { result += ", nhật mộ"; } } return(result); }