설명 없음
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

FotoUtil.cs 25KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322
  1. using System;
  2. using System.Collections.Generic;
  3. // ReSharper disable InconsistentNaming
  4. // ReSharper disable IdentifierTypo
  5. // ReSharper disable MemberCanBePrivate.Global
  6. namespace Lunar.Util
  7. {
  8. /// <summary>
  9. /// 佛历工具
  10. /// </summary>
  11. public static class FotoUtil
  12. {
  13. /// <summary>
  14. /// 观音斋日期
  15. /// </summary>
  16. public static readonly string[] DAY_ZHAI_GUAN_YIN = { "1-8", "2-7", "2-9", "2-19", "3-3", "3-6", "3-13", "4-22", "5-3", "5-17", "6-16", "6-18", "6-19", "6-23", "7-13", "8-16", "9-19", "9-23", "10-2", "11-19", "11-24", "12-25" };
  17. private const string DJ = "犯者夺纪";
  18. private const string JS = "犯者减寿";
  19. private const string SS = "犯者损寿";
  20. private const string XL = "犯者削禄夺纪";
  21. private const string JW = "犯者三年内夫妇俱亡";
  22. private static readonly FotoFestival Y = new FotoFestival("杨公忌");
  23. private static readonly FotoFestival T = new FotoFestival("四天王巡行", "", true);
  24. private static readonly FotoFestival D = new FotoFestival("斗降", DJ, true);
  25. private static readonly FotoFestival S = new FotoFestival("月朔", DJ, true);
  26. private static readonly FotoFestival W = new FotoFestival("月望", DJ, true);
  27. private static readonly FotoFestival H = new FotoFestival("月晦", JS, true);
  28. private static readonly FotoFestival L = new FotoFestival("雷斋日", JS, true);
  29. private static readonly FotoFestival J = new FotoFestival("九毒日", "犯者夭亡,奇祸不测");
  30. private static readonly FotoFestival R = new FotoFestival("人神在阴", "犯者得病", true, "宜先一日即戒");
  31. private static readonly FotoFestival M = new FotoFestival("司命奏事", JS, true, "如月小,即戒廿九");
  32. private static readonly FotoFestival HH = new FotoFestival("月晦", JS, true, "如月小,即戒廿九");
  33. /// <summary>
  34. /// 因果犯忌
  35. /// </summary>
  36. public static readonly Dictionary<string, List<FotoFestival>> FESTIVAL = new Dictionary<string, List<FotoFestival>>
  37. {
  38. {"1-1", new List<FotoFestival>(new[] { new FotoFestival("天腊,玉帝校世人神气禄命", XL), S })},
  39. {"1-3", new List<FotoFestival>(new[] { new FotoFestival("万神都会", DJ), D })},
  40. {"1-5", new List<FotoFestival>(new[] { new FotoFestival("五虚忌") })},
  41. {"1-6", new List<FotoFestival>(new[] { new FotoFestival("六耗忌"), L })},
  42. {"1-7", new List<FotoFestival>(new[] { new FotoFestival("上会日", SS) })},
  43. {"1-8", new List<FotoFestival>(new[] { new FotoFestival("五殿阎罗天子诞", DJ), T })},
  44. {"1-9", new List<FotoFestival>(new[] { new FotoFestival("玉皇上帝诞", DJ) })},
  45. {"1-13", new List<FotoFestival>(new[] { Y })},
  46. {"1-14", new List<FotoFestival>(new[] { new FotoFestival("三元降", JS), T })},
  47. {"1-15", new List<FotoFestival>(new[] { new FotoFestival("三元降", JS), new FotoFestival("上元神会", DJ), W, T })},
  48. {"1-16", new List<FotoFestival>(new[] { new FotoFestival("三元降", JS) })},
  49. {"1-19", new List<FotoFestival>(new[] { new FotoFestival("长春真人诞") })},
  50. {"1-23", new List<FotoFestival>(new[] { new FotoFestival("三尸神奏事"), T })},
  51. {"1-25", new List<FotoFestival>(new[] { H, new FotoFestival("天地仓开日", "犯者损寿,子带疾") })},
  52. {"1-27", new List<FotoFestival>(new[] { D })},
  53. {"1-28", new List<FotoFestival>(new[] { R })},
  54. {"1-29", new List<FotoFestival>(new[] { T })},
  55. {"1-30", new List<FotoFestival>(new[] { HH, M, T })},
  56. {"2-1", new List<FotoFestival>(new[] { new FotoFestival("一殿秦广王诞", DJ), S })},
  57. {"2-2", new List<FotoFestival>(new[] { new FotoFestival("万神都会", DJ), new FotoFestival("福德土地正神诞", "犯者得祸") })},
  58. {"2-3", new List<FotoFestival>(new[] { new FotoFestival("文昌帝君诞", XL), D })},
  59. {"2-6", new List<FotoFestival>(new[] { new FotoFestival("东华帝君诞"), L })},
  60. {"2-8", new List<FotoFestival>(new[] { new FotoFestival("释迦牟尼佛出家", DJ), new FotoFestival("三殿宋帝王诞", DJ), new FotoFestival("张大帝诞", DJ), T })},
  61. {"2-11", new List<FotoFestival>(new[] { Y })},
  62. {"2-14", new List<FotoFestival>(new[] { T })},
  63. {"2-15", new List<FotoFestival>(new[] { new FotoFestival("释迦牟尼佛涅槃", XL), new FotoFestival("太上老君诞", XL), new FotoFestival("月望", XL, true), T })},
  64. {"2-17", new List<FotoFestival>(new[] { new FotoFestival("东方杜将军诞") })},
  65. {"2-18", new List<FotoFestival>(new[] { new FotoFestival("四殿五官王诞", XL), new FotoFestival("至圣先师孔子讳辰", XL) })},
  66. {"2-19", new List<FotoFestival>(new[] { new FotoFestival("观音大士诞", DJ) })},
  67. {"2-21", new List<FotoFestival>(new[] { new FotoFestival("普贤菩萨诞") })},
  68. {"2-23", new List<FotoFestival>(new[] { T })},
  69. {"2-25", new List<FotoFestival>(new[] { H })},
  70. {"2-27", new List<FotoFestival>(new[] { D })},
  71. {"2-28", new List<FotoFestival>(new[] { R })},
  72. {"2-29", new List<FotoFestival>(new[] { T })},
  73. {"2-30", new List<FotoFestival>(new[] { HH, M, T })},
  74. {"3-1", new List<FotoFestival>(new[] { new FotoFestival("二殿楚江王诞", DJ), S })},
  75. {"3-3", new List<FotoFestival>(new[] { new FotoFestival("玄天上帝诞", DJ), D })},
  76. {"3-6", new List<FotoFestival>(new[] { L })},
  77. {"3-8", new List<FotoFestival>(new[] { new FotoFestival("六殿卞城王诞", DJ), T })},
  78. {"3-9", new List<FotoFestival>(new[] { new FotoFestival("牛鬼神出", "犯者产恶胎"), Y })},
  79. {"3-12", new List<FotoFestival>(new[] { new FotoFestival("中央五道诞") })},
  80. {"3-14", new List<FotoFestival>(new[] { T })},
  81. {"3-15", new List<FotoFestival>(new[] { new FotoFestival("昊天上帝诞", DJ), new FotoFestival("玄坛诞", DJ), W, T })},
  82. {"3-16", new List<FotoFestival>(new[] { new FotoFestival("准提菩萨诞", DJ) })},
  83. {"3-19", new List<FotoFestival>(new[] { new FotoFestival("中岳大帝诞"), new FotoFestival("后土娘娘诞"), new FotoFestival("三茅降") })},
  84. {"3-20", new List<FotoFestival>(new[] { new FotoFestival("天地仓开日", SS), new FotoFestival("子孙娘娘诞") })},
  85. {"3-23", new List<FotoFestival>(new[] { T })},
  86. {"3-25", new List<FotoFestival>(new[] { H })},
  87. {"3-27", new List<FotoFestival>(new[] { new FotoFestival("七殿泰山王诞"), D })},
  88. {"3-28", new List<FotoFestival>(new[] { R, new FotoFestival("苍颉至圣先师诞", XL), new FotoFestival("东岳大帝诞") })},
  89. {"3-29", new List<FotoFestival>(new[] { T })},
  90. {"3-30", new List<FotoFestival>(new[] { HH, M, T })},
  91. {"4-1", new List<FotoFestival>(new[] { new FotoFestival("八殿都市王诞", DJ), S })},
  92. {"4-3", new List<FotoFestival>(new[] { D })},
  93. {"4-4", new List<FotoFestival>(new[] { new FotoFestival("万神善会", "犯者失瘼夭胎"), new FotoFestival("文殊菩萨诞") })},
  94. {"4-6", new List<FotoFestival>(new[] { L })},
  95. {"4-7", new List<FotoFestival>(new[] { new FotoFestival("南斗、北斗、西斗同降", JS), Y })},
  96. {"4-8", new List<FotoFestival>(new[] { new FotoFestival("释迦牟尼佛诞", DJ), new FotoFestival("万神善会", "犯者失瘼夭胎"), new FotoFestival("善恶童子降", "犯者血死"), new FotoFestival("九殿平等王诞"), T })},
  97. {"4-14", new List<FotoFestival>(new[] { new FotoFestival("纯阳祖师诞", JS), T })},
  98. {"4-15", new List<FotoFestival>(new[] { W, new FotoFestival("钟离祖师诞"), T })},
  99. {"4-16", new List<FotoFestival>(new[] { new FotoFestival("天地仓开日", SS) })},
  100. {"4-17", new List<FotoFestival>(new[] { new FotoFestival("十殿转轮王诞", DJ) })},
  101. {"4-18", new List<FotoFestival>(new[] { new FotoFestival("天地仓开日", SS), new FotoFestival("紫徽大帝诞", SS) })},
  102. {"4-20", new List<FotoFestival>(new[] { new FotoFestival("眼光圣母诞") })},
  103. {"4-23", new List<FotoFestival>(new[] { T })},
  104. {"4-25", new List<FotoFestival>(new[] { H })},
  105. {"4-27", new List<FotoFestival>(new[] { D })},
  106. {"4-28", new List<FotoFestival>(new[] { R })},
  107. {"4-29", new List<FotoFestival>(new[] { T })},
  108. {"4-30", new List<FotoFestival>(new[] { HH, M, T })},
  109. {"5-1", new List<FotoFestival>(new[] { new FotoFestival("南极长生大帝诞", DJ), S })},
  110. {"5-3", new List<FotoFestival>(new[] { D })},
  111. {"5-5", new List<FotoFestival>(new[] { new FotoFestival("地腊", XL), new FotoFestival("五帝校定生人官爵", XL), J, Y })},
  112. {"5-6", new List<FotoFestival>(new[] { J, L })},
  113. {"5-7", new List<FotoFestival>(new[] { J })},
  114. {"5-8", new List<FotoFestival>(new[] { new FotoFestival("南方五道诞"), T })},
  115. {"5-11", new List<FotoFestival>(new[] { new FotoFestival("天地仓开日", SS), new FotoFestival("天下都城隍诞") })},
  116. {"5-12", new List<FotoFestival>(new[] { new FotoFestival("炳灵公诞") })},
  117. {"5-13", new List<FotoFestival>(new[] { new FotoFestival("关圣降", XL) })},
  118. {"5-14", new List<FotoFestival>(new[] { new FotoFestival("夜子时为天地交泰", JW), T })},
  119. {"5-15", new List<FotoFestival>(new[] { W, J, T })},
  120. {"5-16", new List<FotoFestival>(new[] { new FotoFestival("九毒日", JW), new FotoFestival("天地元气造化万物之辰", JW) })},
  121. {"5-17", new List<FotoFestival>(new[] { J })},
  122. {"5-18", new List<FotoFestival>(new[] { new FotoFestival("张天师诞") })},
  123. {"5-22", new List<FotoFestival>(new[] { new FotoFestival("孝娥神诞", DJ) })},
  124. {"5-23", new List<FotoFestival>(new[] { T })},
  125. {"5-25", new List<FotoFestival>(new[] { J, H })},
  126. {"5-26", new List<FotoFestival>(new[] { J })},
  127. {"5-27", new List<FotoFestival>(new[] { J, D })},
  128. {"5-28", new List<FotoFestival>(new[] { R })},
  129. {"5-29", new List<FotoFestival>(new[] { T })},
  130. {"5-30", new List<FotoFestival>(new[] { HH, M, T })},
  131. {"6-1", new List<FotoFestival>(new[] { S })},
  132. {"6-3", new List<FotoFestival>(new[] { new FotoFestival("韦驮菩萨圣诞"), D, Y })},
  133. {"6-5", new List<FotoFestival>(new[] { new FotoFestival("南赡部洲转大轮", SS) })},
  134. {"6-6", new List<FotoFestival>(new[] { new FotoFestival("天地仓开日", SS), L })},
  135. {"6-8", new List<FotoFestival>(new[] { T })},
  136. {"6-10", new List<FotoFestival>(new[] { new FotoFestival("金粟如来诞") })},
  137. {"6-14", new List<FotoFestival>(new[] { T })},
  138. {"6-15", new List<FotoFestival>(new[] { W, T })},
  139. {"6-19", new List<FotoFestival>(new[] { new FotoFestival("观世音菩萨成道", DJ) })},
  140. {"6-23", new List<FotoFestival>(new[] { new FotoFestival("南方火神诞", "犯者遭回禄"), T })},
  141. {"6-24", new List<FotoFestival>(new[] { new FotoFestival("雷祖诞", XL), new FotoFestival("关帝诞", XL) })},
  142. {"6-25", new List<FotoFestival>(new[] { H })},
  143. {"6-27", new List<FotoFestival>(new[] { D })},
  144. {"6-28", new List<FotoFestival>(new[] { R })},
  145. {"6-29", new List<FotoFestival>(new[] { T })},
  146. {"6-30", new List<FotoFestival>(new[] { HH, M, T })},
  147. {"7-1", new List<FotoFestival>(new[] { S, Y })},
  148. {"7-3", new List<FotoFestival>(new[] { D })},
  149. {"7-5", new List<FotoFestival>(new[] { new FotoFestival("中会日", SS, false, "一作初七") })},
  150. {"7-6", new List<FotoFestival>(new[] { L })},
  151. {"7-7", new List<FotoFestival>(new[] { new FotoFestival("道德腊", XL), new FotoFestival("五帝校生人善恶", XL), new FotoFestival("魁星诞", XL) })},
  152. {"7-8", new List<FotoFestival>(new[] { T })},
  153. {"7-10", new List<FotoFestival>(new[] { new FotoFestival("阴毒日", "", false, "大忌") })},
  154. {"7-12", new List<FotoFestival>(new[] { new FotoFestival("长真谭真人诞") })},
  155. {"7-13", new List<FotoFestival>(new[] { new FotoFestival("大势至菩萨诞", JS) })},
  156. {"7-14", new List<FotoFestival>(new[] { new FotoFestival("三元降", JS), T })},
  157. {"7-15", new List<FotoFestival>(new[] { W, new FotoFestival("三元降", DJ), new FotoFestival("地官校籍", DJ), T })},
  158. {"7-16", new List<FotoFestival>(new[] { new FotoFestival("三元降", JS) })},
  159. {"7-18", new List<FotoFestival>(new[] { new FotoFestival("西王母诞", DJ) })},
  160. {"7-19", new List<FotoFestival>(new[] { new FotoFestival("太岁诞", DJ) })},
  161. {"7-22", new List<FotoFestival>(new[] { new FotoFestival("增福财神诞", XL) })},
  162. {"7-23", new List<FotoFestival>(new[] { T })},
  163. {"7-25", new List<FotoFestival>(new[] { H })},
  164. {"7-27", new List<FotoFestival>(new[] { D })},
  165. {"7-28", new List<FotoFestival>(new[] { R })},
  166. {"7-29", new List<FotoFestival>(new[] { Y, T })},
  167. {"7-30", new List<FotoFestival>(new[] { new FotoFestival("地藏菩萨诞", DJ), HH, M, T })},
  168. {"8-1", new List<FotoFestival>(new[] { S, new FotoFestival("许真君诞") })},
  169. {"8-3", new List<FotoFestival>(new[] { D, new FotoFestival("北斗诞", XL), new FotoFestival("司命灶君诞", "犯者遭回禄") })},
  170. {"8-5", new List<FotoFestival>(new[] { new FotoFestival("雷声大帝诞", DJ) })},
  171. {"8-6", new List<FotoFestival>(new[] { L })},
  172. {"8-8", new List<FotoFestival>(new[] { T })},
  173. {"8-10", new List<FotoFestival>(new[] { new FotoFestival("北斗大帝诞") })},
  174. {"8-12", new List<FotoFestival>(new[] { new FotoFestival("西方五道诞") })},
  175. {"8-14", new List<FotoFestival>(new[] { T })},
  176. {"8-15", new List<FotoFestival>(new[] { W, new FotoFestival("太明朝元", "犯者暴亡", false, "宜焚香守夜"), T })},
  177. {"8-16", new List<FotoFestival>(new[] { new FotoFestival("天曹掠刷真君降", "犯者贫夭") })},
  178. {"8-18", new List<FotoFestival>(new[] { new FotoFestival("天人兴福之辰", "", false, "宜斋戒,存想吉事") })},
  179. {"8-23", new List<FotoFestival>(new[] { new FotoFestival("汉恒候张显王诞"), T })},
  180. {"8-24", new List<FotoFestival>(new[] { new FotoFestival("灶君夫人诞") })},
  181. {"8-25", new List<FotoFestival>(new[] { H })},
  182. {"8-27", new List<FotoFestival>(new[] { D, new FotoFestival("至圣先师孔子诞", XL), Y })},
  183. {"8-28", new List<FotoFestival>(new[] { R, new FotoFestival("四天会事") })},
  184. {"8-29", new List<FotoFestival>(new[] { T })},
  185. {"8-30", new List<FotoFestival>(new[] { new FotoFestival("诸神考校", "犯者夺算"), HH, M, T })},
  186. {"9-1", new List<FotoFestival>(new[] { S, new FotoFestival("南斗诞", XL), new FotoFestival("北斗九星降世", DJ, false, "此九日俱宜斋戒") })},
  187. {"9-3", new List<FotoFestival>(new[] { D, new FotoFestival("五瘟神诞") })},
  188. {"9-6", new List<FotoFestival>(new[] { L })},
  189. {"9-8", new List<FotoFestival>(new[] { T })},
  190. {"9-9", new List<FotoFestival>(new[] { new FotoFestival("斗母诞", XL), new FotoFestival("酆都大帝诞"), new FotoFestival("玄天上帝飞升") })},
  191. {"9-10", new List<FotoFestival>(new[] { new FotoFestival("斗母降", DJ) })},
  192. {"9-11", new List<FotoFestival>(new[] { new FotoFestival("宜戒") })},
  193. {"9-13", new List<FotoFestival>(new[] { new FotoFestival("孟婆尊神诞") })},
  194. {"9-14", new List<FotoFestival>(new[] { T })},
  195. {"9-15", new List<FotoFestival>(new[] { W, T })},
  196. {"9-17", new List<FotoFestival>(new[] { new FotoFestival("金龙四大王诞", "犯者遭水厄") })},
  197. {"9-19", new List<FotoFestival>(new[] { new FotoFestival("日宫月宫会合", JS), new FotoFestival("观世音菩萨诞", JS) })},
  198. {"9-23", new List<FotoFestival>(new[] { T })},
  199. {"9-25", new List<FotoFestival>(new[] { H, Y })},
  200. {"9-27", new List<FotoFestival>(new[] { D })},
  201. {"9-28", new List<FotoFestival>(new[] { R })},
  202. {"9-29", new List<FotoFestival>(new[] { T })},
  203. {"9-30", new List<FotoFestival>(new[] { new FotoFestival("药师琉璃光佛诞", "犯者危疾"), HH, M, T })},
  204. {"10-1", new List<FotoFestival>(new[] { S, new FotoFestival("民岁腊", DJ), new FotoFestival("四天王降", "犯者一年内死") })},
  205. {"10-3", new List<FotoFestival>(new[] { D, new FotoFestival("三茅诞") })},
  206. {"10-5", new List<FotoFestival>(new[] { new FotoFestival("下会日", JS), new FotoFestival("达摩祖师诞", JS) })},
  207. {"10-6", new List<FotoFestival>(new[] { L, new FotoFestival("天曹考察", DJ) })},
  208. {"10-8", new List<FotoFestival>(new[] { new FotoFestival("佛涅槃日", "", false, "大忌色欲"), T })},
  209. {"10-10", new List<FotoFestival>(new[] { new FotoFestival("四天王降", "犯者一年内死") })},
  210. {"10-11", new List<FotoFestival>(new[] { new FotoFestival("宜戒") })},
  211. {"10-14", new List<FotoFestival>(new[] { new FotoFestival("三元降", JS), T })},
  212. {"10-15", new List<FotoFestival>(new[] { W, new FotoFestival("三元降", DJ), new FotoFestival("下元水府校籍", DJ), T })},
  213. {"10-16", new List<FotoFestival>(new[] { new FotoFestival("三元降", JS), T })},
  214. {"10-23", new List<FotoFestival>(new[] { Y, T })},
  215. {"10-25", new List<FotoFestival>(new[] { H })},
  216. {"10-27", new List<FotoFestival>(new[] { D, new FotoFestival("北极紫徽大帝降") })},
  217. {"10-28", new List<FotoFestival>(new[] { R })},
  218. {"10-29", new List<FotoFestival>(new[] { T })},
  219. {"10-30", new List<FotoFestival>(new[] { HH, M, T })},
  220. {"11-1", new List<FotoFestival>(new[] { S })},
  221. {"11-3", new List<FotoFestival>(new[] { D })},
  222. {"11-4", new List<FotoFestival>(new[] { new FotoFestival("至圣先师孔子诞", XL) })},
  223. {"11-6", new List<FotoFestival>(new[] { new FotoFestival("西岳大帝诞") })},
  224. {"11-8", new List<FotoFestival>(new[] { T })},
  225. {"11-11", new List<FotoFestival>(new[] { new FotoFestival("天地仓开日", DJ), new FotoFestival("太乙救苦天尊诞", DJ) })},
  226. {"11-14", new List<FotoFestival>(new[] { T })},
  227. {"11-15", new List<FotoFestival>(new[] { new FotoFestival("月望", "上半夜犯男死 下半夜犯女死"), new FotoFestival("四天王巡行", "上半夜犯男死 下半夜犯女死") })},
  228. {"11-17", new List<FotoFestival>(new[] { new FotoFestival("阿弥陀佛诞") })},
  229. {"11-19", new List<FotoFestival>(new[] { new FotoFestival("太阳日宫诞", "犯者得奇祸") })},
  230. {"11-21", new List<FotoFestival>(new[] { Y })},
  231. {"11-23", new List<FotoFestival>(new[] { new FotoFestival("张仙诞", "犯者绝嗣"), T })},
  232. {"11-25", new List<FotoFestival>(new[] { new FotoFestival("掠刷大夫降", "犯者遭大凶"), H })},
  233. {"11-26", new List<FotoFestival>(new[] { new FotoFestival("北方五道诞") })},
  234. {"11-27", new List<FotoFestival>(new[] { D })},
  235. {"11-28", new List<FotoFestival>(new[] { R })},
  236. {"11-29", new List<FotoFestival>(new[] { T })},
  237. {"11-30", new List<FotoFestival>(new[] { HH, M, T })},
  238. {"12-1", new List<FotoFestival>(new[] { S })},
  239. {"12-3", new List<FotoFestival>(new[] { D })},
  240. {"12-6", new List<FotoFestival>(new[] { new FotoFestival("天地仓开日", JS), L })},
  241. {"12-7", new List<FotoFestival>(new[] { new FotoFestival("掠刷大夫降", "犯者得恶疾") })},
  242. {"12-8", new List<FotoFestival>(new[] { new FotoFestival("王侯腊", DJ), new FotoFestival("释迦如来成佛之辰"), T, new FotoFestival("初旬内戊日,亦名王侯腊", DJ) })},
  243. {"12-12", new List<FotoFestival>(new[] { new FotoFestival("太素三元君朝真") })},
  244. {"12-14", new List<FotoFestival>(new[] { T })},
  245. {"12-15", new List<FotoFestival>(new[] { W, T })},
  246. {"12-16", new List<FotoFestival>(new[] { new FotoFestival("南岳大帝诞") })},
  247. {"12-19", new List<FotoFestival>(new[] { Y })},
  248. {"12-20", new List<FotoFestival>(new[] { new FotoFestival("天地交道", "犯者促寿") })},
  249. {"12-21", new List<FotoFestival>(new[] { new FotoFestival("天猷上帝诞") })},
  250. {"12-23", new List<FotoFestival>(new[] { new FotoFestival("五岳诞降"), T })},
  251. {"12-24", new List<FotoFestival>(new[] { new FotoFestival("司今朝天奏人善恶", "犯者得大祸") })},
  252. {"12-25", new List<FotoFestival>(new[] { new FotoFestival("三清玉帝同降,考察善恶", "犯者得奇祸"), H })},
  253. {"12-27", new List<FotoFestival>(new[] { D })},
  254. {"12-28", new List<FotoFestival>(new[] { R })},
  255. {"12-29", new List<FotoFestival>(new[] { new FotoFestival("华严菩萨诞"), T })},
  256. {"12-30", new List<FotoFestival>(new[] { new FotoFestival("诸神下降,察访善恶", "犯者男女俱亡") })}
  257. };
  258. /// <summary>
  259. /// 纪念日
  260. /// </summary>
  261. public static readonly Dictionary<string, List<string>> OTHER_FESTIVAL = new Dictionary<string, List<string>>
  262. {
  263. {"1-1", new List<string>(new[] { "弥勒菩萨圣诞" })},
  264. {"1-6", new List<string>(new[] { "定光佛圣诞" })},
  265. {"2-8", new List<string>(new[] { "释迦牟尼佛出家" })},
  266. {"2-15", new List<string>(new[] { "释迦牟尼佛涅槃" })},
  267. {"2-19", new List<string>(new[] { "观世音菩萨圣诞" })},
  268. {"2-21", new List<string>(new[] { "普贤菩萨圣诞" })},
  269. {"3-16", new List<string>(new[] { "准提菩萨圣诞" })},
  270. {"4-4", new List<string>(new[] { "文殊菩萨圣诞" })},
  271. {"4-8", new List<string>(new[] { "释迦牟尼佛圣诞" })},
  272. {"4-15", new List<string>(new[] { "佛吉祥日" })},
  273. {"4-28", new List<string>(new[] { "药王菩萨圣诞" })},
  274. {"5-13", new List<string>(new[] { "伽蓝菩萨圣诞" })},
  275. {"6-3", new List<string>(new[] { "韦驮菩萨圣诞" })},
  276. {"6-19", new List<string>(new[] { "观音菩萨成道" })},
  277. {"7-13", new List<string>(new[] { "大势至菩萨圣诞" })},
  278. {"7-15", new List<string>(new[] { "佛欢喜日" })},
  279. {"7-24", new List<string>(new[] { "龙树菩萨圣诞" })},
  280. {"7-30", new List<string>(new[] { "地藏菩萨圣诞" })},
  281. {"8-15", new List<string>(new[] { "月光菩萨圣诞" })},
  282. {"8-22", new List<string>(new[] { "燃灯佛圣诞" })},
  283. {"9-9", new List<string>(new[] { "摩利支天菩萨圣诞" })},
  284. {"9-19", new List<string>(new[] { "观世音菩萨出家" })},
  285. {"9-30", new List<string>(new[] { "药师琉璃光佛圣诞" })},
  286. {"10-5", new List<string>(new[] { "达摩祖师圣诞" })},
  287. {"10-20", new List<string>(new[] { "文殊菩萨出家" })},
  288. {"11-17", new List<string>(new[] { "阿弥陀佛圣诞" })},
  289. {"11-19", new List<string>(new[] { "日光菩萨圣诞" })},
  290. {"12-8", new List<string>(new[] { "释迦牟尼佛成道" })},
  291. {"12-23", new List<string>(new[] { "监斋菩萨圣诞" })},
  292. {"12-29", new List<string>(new[] { "华严菩萨圣诞" })}
  293. };
  294. /// <summary>
  295. /// 27星宿,佛教从印度传入中国,印度把28星宿改为27星宿,把牛宿(牛金牛)纳入了女宿(女土蝠)。
  296. /// </summary>
  297. public static readonly string[] XIU_27 = { "角", "亢", "氐", "房", "心", "尾", "箕", "斗", "女", "虚", "危", "室", "壁", "奎", "娄", "胃", "昴", "毕", "觜", "参", "井", "鬼", "柳", "星", "张", "翼", "轸" };
  298. /// <summary>
  299. /// 每月初一的27星宿偏移
  300. /// </summary>
  301. private static readonly int[] XIU_OFFSET = { 11, 13, 15, 17, 19, 21, 24, 0, 2, 4, 7, 9 };
  302. /// <summary>
  303. /// 获取27星宿
  304. /// </summary>
  305. /// <param name="month">佛历月</param>
  306. /// <param name="day">佛历日</param>
  307. /// <returns>星宿</returns>
  308. public static string GetXiu(int month, int day)
  309. {
  310. return XIU_27[(XIU_OFFSET[Math.Abs(month) - 1] + day - 1) % XIU_27.Length];
  311. }
  312. }
  313. }