限时事件优化

This commit is contained in:
hahwu 2025-06-06 15:55:22 +08:00
parent bc1e788bd9
commit 41531e52fb

View File

@ -86,7 +86,9 @@ func (l *LimitedTimeEventMod) InitData(Lv int) {
l.Triggered = make(map[int]struct{}) l.Triggered = make(map[int]struct{})
} }
if l.ProgressReward == nil { if l.ProgressReward == nil {
// 初始化进度奖励
l.ProgressReward = make(map[int]int) l.ProgressReward = make(map[int]int)
} }
if l.ProgressMax == 0 { if l.ProgressMax == 0 {
l.Lv = Lv l.Lv = Lv
@ -100,6 +102,29 @@ func (l *LimitedTimeEventMod) InitData(Lv int) {
} }
l.LastOption = []int{EventId} l.LastOption = []int{EventId}
} }
if len(l.ProgressReward) == 0 {
SelectNum := limitedTimeEventCfg.GetProgressSelectNum(Lv)
BonusLv := limitedTimeEventCfg.GetBonusLv(Lv)
RandMap := limitedTimeEventCfg.GetProgressRewardRand(BonusLv)
n := 0
r := make([]int, 0)
LastOption := l.LastOption
for n < 10 {
n++
r = GoUtil.RandMapNum(RandMap, SelectNum)
Id := 1
for _, v := range r {
l.ProgressReward[Id] = v
Id++
}
if !GoUtil.SliceEqual(LastOption, r) {
break
}
}
l.LastOption = r
}
} }
func (l *LimitedTimeEventMod) ZeroUpdate(Lv int) { func (l *LimitedTimeEventMod) ZeroUpdate(Lv int) {
@ -324,26 +349,6 @@ func (l *LimitedTimeEventMod) SelectProgressReward(Id, Lv int) ([]*item.Item, ma
l.Progress = 0 l.Progress = 0
l.BonusNum++ l.BonusNum++
l.ProgressMax = limitedTimeEventCfg.GetProgressMax(l.Lv, l.BonusNum) l.ProgressMax = limitedTimeEventCfg.GetProgressMax(l.Lv, l.BonusNum)
SelectNum := limitedTimeEventCfg.GetProgressSelectNum(Lv)
BonusLv := limitedTimeEventCfg.GetBonusLv(Lv)
RandMap := limitedTimeEventCfg.GetProgressRewardRand(BonusLv)
n := 0
r := make([]int, 0)
LastOption := l.LastOption
for n < 10 {
n++
r = GoUtil.RandMapNum(RandMap, SelectNum)
Id := 1
for _, v := range r {
l.ProgressReward[Id] = v
Id++
}
if !GoUtil.SliceEqual(LastOption, r) {
break
}
}
l.LastOption = r
return Item, r1, r2, nil return Item, r1, r2, nil
} }