订单优化
This commit is contained in:
parent
420d0d6d9e
commit
dab7c252b4
@ -717,29 +717,6 @@ func (o *OrderMod) DelOrder(orderId int) (*Order, error) {
|
|||||||
return &order, nil
|
return &order, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (o *OrderMod) CreateComfortOrder(lv int, emit []int, energyMul, diff, chessNum int) error {
|
|
||||||
if len(emit) == 0 {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
randNum := 0
|
|
||||||
mergeList := make([]int, 0)
|
|
||||||
var err error
|
|
||||||
for {
|
|
||||||
if randNum > 50 {
|
|
||||||
break
|
|
||||||
}
|
|
||||||
randNum++
|
|
||||||
mergeList, _, err = randOrderChessWithDiff(o, emit, energyMul, diff, chessNum)
|
|
||||||
if err != nil {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
break
|
|
||||||
}
|
|
||||||
o.addOrder(mergeList, diff, COMFORT_TYPE)
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (o *OrderMod) ResetChessPool() {
|
func (o *OrderMod) ResetChessPool() {
|
||||||
// o.ChessPool = make([]int, 0)
|
// o.ChessPool = make([]int, 0)
|
||||||
// o.EmitShuffle = nil
|
// o.EmitShuffle = nil
|
||||||
|
|||||||
@ -69,8 +69,8 @@ var orderCfgMap = map[int]orderConfig{
|
|||||||
Pool: map[int]orderConfigInfo{
|
Pool: map[int]orderConfigInfo{
|
||||||
1: {lv: 6, energy: 32, t: 1},
|
1: {lv: 6, energy: 32, t: 1},
|
||||||
2: {lv: 7, energy: 64, t: 1},
|
2: {lv: 7, energy: 64, t: 1},
|
||||||
3: {lv: 8, energy: 128, t: 0},
|
3: {lv: 8, energy: 128, t: 1},
|
||||||
4: {lv: 9, energy: 256, t: 0},
|
4: {lv: 9, energy: 256, t: 1},
|
||||||
5: {lv: 10, energy: 512, t: 0},
|
5: {lv: 10, energy: 512, t: 0},
|
||||||
6: {lv: 11, energy: 1024, t: 0},
|
6: {lv: 11, energy: 1024, t: 0},
|
||||||
},
|
},
|
||||||
@ -434,14 +434,6 @@ func randSuperOrderChess(o *OrderMod, lv int, emit []int, energyMul, orderDiff i
|
|||||||
return buildMergeListFromDiff(o, chessDiff, emit, energyMul, orderDiff)
|
return buildMergeListFromDiff(o, chessDiff, emit, energyMul, orderDiff)
|
||||||
}
|
}
|
||||||
|
|
||||||
// randOrderChessWithDiff 随机生成订单棋子
|
|
||||||
func randOrderChessWithDiff(o *OrderMod, emit []int, energyMul, orderDiff, chessNum int) ([]int, int, error) {
|
|
||||||
initReflectChess(emit, energyMul)
|
|
||||||
filterPool(o)
|
|
||||||
chessDiff := getChessDiff(chessNum, orderDiff)
|
|
||||||
return buildMergeListFromDiff(o, chessDiff, emit, energyMul, orderDiff)
|
|
||||||
}
|
|
||||||
|
|
||||||
// 随机生成订单棋子
|
// 随机生成订单棋子
|
||||||
func randOrderChess(o *OrderMod, lv int, emit []int, energyMul, orderType int) ([]int, int, error) {
|
func randOrderChess(o *OrderMod, lv int, emit []int, energyMul, orderType int) ([]int, int, error) {
|
||||||
initReflectChess(emit, energyMul)
|
initReflectChess(emit, energyMul)
|
||||||
@ -749,7 +741,7 @@ func (o *OrderMod) getChessIdPool(emit []int, color string, energyMul, minEnergy
|
|||||||
if len(chessLvRand) > 0 && len(chessLvRand2) == 0 && o.ChessPoolChess(color, chessLvRand[len(chessLvRand)-1]) {
|
if len(chessLvRand) > 0 && len(chessLvRand2) == 0 && o.ChessPoolChess(color, chessLvRand[len(chessLvRand)-1]) {
|
||||||
chessLv = chessLvRand[len(chessLvRand)-1]
|
chessLv = chessLvRand[len(chessLvRand)-1]
|
||||||
}
|
}
|
||||||
if len(chessLvRand) > 0 && len(chessLvRand2) == 0 && !o.ChessPoolChess(color, chessLvRand[len(chessLvRand)-1]) && len(chessLvRand) > 0 {
|
if len(chessLvRand) > 0 && len(chessLvRand2) == 0 && !o.ChessPoolChess(color, chessLvRand[len(chessLvRand)-1]) {
|
||||||
chessLv = GoUtil.RandSlice(chessLvRand)
|
chessLv = GoUtil.RandSlice(chessLvRand)
|
||||||
}
|
}
|
||||||
if chessLv == 0 {
|
if chessLv == 0 {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user