七日签到优化

This commit is contained in:
hahwu 2026-03-19 18:48:18 +08:00
parent 3fa38ea0c5
commit 0d5bfaab96
2 changed files with 28 additions and 15 deletions

View File

@ -54,6 +54,9 @@ func randReward(rewardData *gamedata.SevenLoginRewardData, lastType []int, jackp
// 召回玩家 每日体力数*2
energyNum = energyNum * energyMul
items1 := []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, int(energyNum))}
if rewardData.RewardNum == 3 {
remainEnergy -= 5
}
// 奖励2
newJackpot := make([]*gamedata.SevenLoginJackpotData, 0, len(jackpot))
for _, v := range jackpot {
@ -63,9 +66,6 @@ func randReward(rewardData *gamedata.SevenLoginRewardData, lastType []int, jackp
}
var items2 []*item.Item
itemType := []int{}
if rewardData.RewardNum == 3 {
remainEnergy -= 5
}
if GoUtil.InArray(rewardData.Id, cardPackIds) {
cardJackpot := make([]*gamedata.SevenLoginJackpotData, 0, len(jackpot))
for _, v := range jackpot {
@ -115,11 +115,27 @@ func randReward(rewardData *gamedata.SevenLoginRewardData, lastType []int, jackp
}
}
if len(newJackpot3) == 0 {
items3 = []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, int(remainEnergy))}
newJackpot3 := make([]*gamedata.SevenLoginJackpotData, 0, len(jackpot))
for _, v := range jackpot {
if v.Energy <= remainEnergy {
newJackpot3 = append(newJackpot3, v)
}
}
if len(newJackpot3) == 0 {
items3 = []*item.Item{item.NewItem(item.ITEM_ENERGY_ID, int(remainEnergy))}
return Reward{
Item1: items1,
Item2: items2,
Item3: items3,
}, itemType
}
sort.Slice(newJackpot3, func(i, j int) bool {
return newJackpot3[i].Energy > newJackpot3[j].Energy
})
return Reward{
Item1: items1,
Item2: items2,
Item3: items3,
Item3: newJackpot3[0].Items,
}, itemType
}
sort.Slice(newJackpot3, func(i, j int) bool {

View File

@ -18,15 +18,12 @@ func TestSevenLoginZeroUpdate(t *testing.T) {
p1 := new(game.Player)
p1.InitPlayer("3625212")
SevenLoginMod := p1.GetSevenLoginMod()
SevenLoginMod.WeekResetTime = 0
SevenLoginMod.MonthResetTime = 0
SevenLoginMod.ZeroUpdate(0, 0, p1.GetOrderFactor())
SevenLoginMod.BackData()
fmt.Printf("order factor:%v\n", p1.GetOrderFactor())
for k, v := range SevenLoginMod.LoginReward {
t.Logf("Reward:%v\n", v)
fmt.Printf("id :%d ; Reward:%v\n", k, v)
for i := 0; i < 100; i++ {
SevenLoginMod.WeekResetTime = 0
SevenLoginMod.MonthResetTime = 0
SevenLoginMod.ZeroUpdate(0, 0, p1.GetOrderFactor())
SevenLoginMod.BackData()
fmt.Printf("id :%d ; Reward:%v\n", 7, SevenLoginMod.LoginReward[7])
}
t.Logf("SevenLoginMod:%v\n", SevenLoginMod.MonthReward)
fmt.Printf("SevenLoginMod:%v\n", SevenLoginMod.MonthReward)
}