Merge branch 'develop' into sdk

This commit is contained in:
hahwu 2025-09-15 10:19:55 +08:00
commit f17090d7f8
3 changed files with 96 additions and 11 deletions

View File

@ -45,7 +45,7 @@ func UnitOrder(p *Player) error {
ChessMod := p.PlayMod.getChessMod()
BaseMod := p.PlayMod.getBaseMod()
OrderMod.OrderList = make(map[int]order.Order)
for i := 0; i < 1000; i++ {
for i := 0; i < 5000; i++ {
OrderMod.ChessPool = nil
OrderMod.EmitShuffle = nil
err := OrderMod.CreateNormalOrder(BaseMod.GetLevel(), ChessMod.GetOrderEmit(), BaseMod.GetEnergyMul())
@ -54,6 +54,61 @@ func UnitOrder(p *Player) error {
}
}
p.FormatOrderReward()
NumMap := make(map[int]int)
for _, v := range OrderMod.OrderList {
NumMap[len(v.MergeId)]++
}
sum0 := 0
for _, v := range NumMap {
sum0 += v
}
for k, v := range NumMap {
fmt.Printf("棋子数量: %d, 占比: %.2f%% \n", k, float64(v)/float64(sum0)*100)
}
DiffMap := make(map[int]int)
for _, v := range OrderMod.OrderList {
DiffMap[v.Diff]++
}
sum := 0
for _, v := range DiffMap {
sum += v
}
for k, v := range DiffMap {
fmt.Printf("难度等级: %d, 占比: %.2f%% \n", k, float64(v)/float64(sum)*100)
}
AP := make(map[string]int, 0)
BP := make(map[string]int, 0)
for _, v := range OrderMod.OrderList {
for _, id := range v.MergeId {
Color := mergeDataCfg.GetColorById(id)
if Color == "Bath Toys" {
AP["Bath Toys"] += 1
}
if Color == "Cleaning Tools" {
AP["Cleaning Tools"] += 1
}
if Color == "Baby Toy" {
BP["Baby Toy"] += 1
}
if Color == "Books And Picture Books" {
BP["Books And Picture Books"] += 1
}
}
}
sum1 := 0
for _, v := range AP {
sum1 += v
}
sum2 := 0
for _, v := range BP {
sum2 += v
}
for k, v := range AP {
fmt.Printf("%s %.2f\n", k, float64(v)/float64(sum1)*100)
}
for k, v := range BP {
fmt.Printf("%s %.2f\n", k, float64(v)/float64(sum2)*100)
}
return nil
}

View File

@ -2,7 +2,6 @@ package order
import (
"fmt"
"log"
"server/GoUtil"
limitedTimeEventCfg "server/conf/limitedTimeEvent"
mergeDataCfg "server/conf/mergeData"
@ -431,7 +430,7 @@ func (o *OrderMod) CreateNormalOrder(lv int, Emit []int, EnergyMul int) error {
}
break
}
log.Printf("CreateNormalOrder: %v, %v, %v", mergeList, OrderDiff, err)
//log.Printf("CreateNormalOrder: %v, %v, %v", mergeList, OrderDiff, err)
o.addOrder(mergeList, OrderDiff, Common_type)
return nil
}

View File

@ -145,6 +145,7 @@ func getChessDiff(ChessNum, OrderDiff, OrderN int) map[int]int {
func getChessLv(Min, Max, Diff int) int {
Start := Min
End := Max
if Max-Min >= 5 {
switch Diff {
case DIFF_LOW:
End = Min + (Max-Min+1)/3 - 1
@ -154,6 +155,36 @@ func getChessLv(Min, Max, Diff int) int {
case DIFF_HIGH:
Start = Min + (Max-Min+1)/3*2
}
}
if Max-Min == 2 {
Start = Max - Diff + 1
End = Start
}
if Max-Min == 3 {
switch Diff {
case DIFF_LOW:
End = Min + 1
case DIFF_MID:
Start = Min + 2
End = Min + 2
case DIFF_HIGH:
Start = Min + 3
End = Min + 3
}
}
if Max-Min == 4 {
switch Diff {
case DIFF_LOW:
End = Min + 1
case DIFF_MID:
Start = Min + 2
End = Min + 3
case DIFF_HIGH:
Start = Min + 4
End = Min + 4
}
}
Start = max(Min, Start)
End = max(Start, End)
End = min(Max, End)