@@ -139,49 +139,55 @@ let shiGanGong = 0
139
139
let shiZhiGong = 0
140
140
let xunShouGong = 0
141
141
142
- const shiGan = ref (' 辛 ' )
143
- const shiZhi = ref (' 未 ' )
144
- const juShu = ref (- 6 )
142
+ const shiGan = ref (' ' )
143
+ const shiZhi = ref (' ' )
144
+ const juShu = ref (0 )
145
145
const xunShou = ref (' ' )
146
146
const zhiFu = ref (' ' )
147
147
const zhiShi = ref (' ' )
148
148
const cfg = ref ({1 : {},2 : {},3 : {},4 : {},5 : {},6 : {},7 : {},8 : {},9 : {}})
149
149
150
- function paiQiYi () {
150
+ function paiQiYi () { // 地盘奇仪
151
151
const qiYiList = juShu .value > 0 ? QI_YI : [QI_YI [0 ], ... QI_YI .slice ().reverse ()]
152
152
for (let i = 0 ; i < 9 ; i++ ) {
153
153
cfg .value [(i + Math .abs (juShu .value ) - 1 ) % 9 + 1 ][9 ] = qiYiList[i]
154
154
}
155
155
}
156
- function paiFeiPan () {
156
+ function paiFeiPan () { // 飞盘
157
157
zhiFu .value = XING_F [xunShouGong - 1 ]
158
158
zhiShi .value = xunShouGong === 5 ? ' 死' : [... MEN_F .slice (0 , 4 ), ' ' , ... MEN_F .slice (- 3 )][xunShouGong - 1 ]
159
- for (let i = 0 ; i < 9 ; i++ ) {
159
+ for (let i = 0 ; i < 9 ; i++ ) { // 星
160
160
cfg .value [(shiGanGong + i - 1 ) % 9 + 1 ][5 ] = [... XING_F, ... XING_F][XING_F .indexOf (zhiFu .value ) + i]
161
161
}
162
+ for (let i = 0 ; i < 9 ; i++ ) { // 天盘奇仪
163
+ cfg .value [+ Object .keys (cfg .value ).find (k => cfg .value [k][5 ] === XING_F [i])][6 ] = cfg .value [i + 1 ][9 ]
164
+ }
162
165
let mark = 0
163
- for (let i = 0 ; i < 8 ; i++ ) {
166
+ for (let i = 0 ; i < 8 ; i++ ) { // 门
164
167
if ((shiZhiGong + i) % 9 === 5 ) mark = 1
165
168
cfg .value [(shiZhiGong + i + mark - 1 ) % 9 + 1 ][8 ] = [... MEN_F, ... MEN_F][MEN_F .indexOf (zhiShi .value ) + i]
166
169
}
167
- for (let i = 0 ; i < 9 ; i++ ) {
170
+ for (let i = 0 ; i < 9 ; i++ ) { // 神
168
171
const shenList = juShu .value > 0 ? SHEN_F : [SHEN_F [0 ], ... SHEN_F .slice ().reverse ()]
169
172
cfg .value [(shiGanGong + i - 1 ) % 9 + 1 ][2 ] = shenList[i]
170
173
}
171
174
}
172
- function paiZhuanPan () {
175
+ function paiZhuanPan () { // 转盘
173
176
const transer = [1 ,8 ,3 ,4 ,9 ,2 ,7 ,6 , 1 ,8 ,3 ,4 ,9 ,2 ,7 ,6 ]
174
177
zhiFu .value = xunShouGong === 5 ? ' 禽' : XING_Z [transer .indexOf (xunShouGong)]
175
178
zhiShi .value = xunShouGong === 5 ? ' 死' : MEN_Z [transer .indexOf (xunShouGong)]
176
- for (let i = 0 ; i < 8 ; i++ ) {
179
+ for (let i = 0 ; i < 8 ; i++ ) { // 星
177
180
const j = transer[transer .indexOf (shiGanGong) + i]
178
181
cfg .value [j][5 ] = [... XING_Z, ... XING_Z][XING_Z .indexOf (zhiFu .value === ' 禽' ? ' 芮' : zhiFu .value ) + i]
179
182
}
180
- for (let i = 0 ; i < 8 ; i++ ) {
183
+ for (let i = 0 ; i < 8 ; i++ ) { // 天盘奇仪
184
+ cfg .value [+ Object .keys (cfg .value ).find (k => cfg .value [k][5 ] === XING_Z [i])][6 ] = cfg .value [transer[i]][9 ]
185
+ }
186
+ for (let i = 0 ; i < 8 ; i++ ) { // 门
181
187
const j = transer[transer .indexOf (shiZhiGong) + i]
182
188
cfg .value [j][8 ] = [... MEN_Z, ... MEN_Z][MEN_Z .indexOf (zhiShi .value ) + i]
183
189
}
184
- for (let i = 0 ; i < 8 ; i++ ) {
190
+ for (let i = 0 ; i < 8 ; i++ ) { // 神
185
191
const j = transer[transer .indexOf (shiGanGong) + i]
186
192
const shenList = juShu .value > 0 ? SHEN_Z : [SHEN_Z [0 ], ... SHEN_Z .slice ().reverse ()]
187
193
cfg .value [j][2 ] = shenList[i]
@@ -194,7 +200,7 @@ function paiPan(type) {
194
200
const jiaZiIndex = JIA_ZI .indexOf (shiGan .value + shiZhi .value )
195
201
xunShou .value = XUN_SHOU [(jiaZiIndex - jiaZiIndex % 10 ) / 10 ]
196
202
xunShouGong = + Object .keys (cfg .value ).find (k => cfg .value [k][9 ] === xunShou .value [2 ])
197
- shiGanGong = + Object .keys (cfg .value ).find (k => cfg .value [k][9 ] === shiGan .value )
203
+ shiGanGong = + Object .keys (cfg .value ).find (k => cfg .value [k][9 ] === shiGan .value ) || xunShouGong
198
204
shiZhiGong = (xunShouGong + jiaZiIndex % 10 * (juShu .value > 0 ? 1 : - 1 ) + 9 - 1 ) % 9 + 1
199
205
if (type === ' f' ) paiFeiPan ()
200
206
else if (type === ' z' ) paiZhuanPan ()
0 commit comments