订单优化

This commit is contained in:
hahwu 2026-03-27 11:25:57 +08:00
parent 420d0d6d9e
commit dab7c252b4
2 changed files with 3 additions and 34 deletions

View File

@ -717,29 +717,6 @@ func (o *OrderMod) DelOrder(orderId int) (*Order, error) {
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() {
// o.ChessPool = make([]int, 0)
// o.EmitShuffle = nil

View File

@ -69,8 +69,8 @@ var orderCfgMap = map[int]orderConfig{
Pool: map[int]orderConfigInfo{
1: {lv: 6, energy: 32, t: 1},
2: {lv: 7, energy: 64, t: 1},
3: {lv: 8, energy: 128, t: 0},
4: {lv: 9, energy: 256, t: 0},
3: {lv: 8, energy: 128, t: 1},
4: {lv: 9, energy: 256, t: 1},
5: {lv: 10, energy: 512, 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)
}
// 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) {
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]) {
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)
}
if chessLv == 0 {