diff --git a/src/server/game/mod/limited_time_event/limited_time_event.go b/src/server/game/mod/limited_time_event/limited_time_event.go index 69995d02..adf99169 100644 --- a/src/server/game/mod/limited_time_event/limited_time_event.go +++ b/src/server/game/mod/limited_time_event/limited_time_event.go @@ -297,10 +297,10 @@ func (l *LimitedTimeEventMod) GetChestReward(MergeList, EmitList []int) []*item. continue } NewChessLv := mergeDataCfg.DynamicLevRev(ChessLv, EmitId, Color) - eneryg += int(math.Pow(2, float64(NewChessLv))) + eneryg += int(math.Pow(2, float64(NewChessLv-1))) } - - return limitedTimeEventCfg.GetChestReward(eneryg) + star := math.Ceil(float64(eneryg) / 10 / 2.5) + return []*item.Item{item.NewItem(item.ITEM_STAR_ID, int(star))} } // 获取场景冲刺奖励 diff --git a/src/server/test/order_test.go b/src/server/test/order_test.go index ff7a89f7..a8eb5bc6 100644 --- a/src/server/test/order_test.go +++ b/src/server/test/order_test.go @@ -31,3 +31,12 @@ func TestOrderFinish(t *testing.T) { t.Errorf("finish order failed:%v", err) } } + +func TestChestRain(t *testing.T) { + p1 := new(game.Player) + p1.InitPlayer("GSTTEST011") + ChessMod := p1.GetChessMod() + LimitEventMod := p1.GetLimitEventMod() + f := LimitEventMod.GetChestReward([]int{928}, ChessMod.GetStarEmitList()) + fmt.Printf("chest rain reward:%v", f) +}