秘境buff 1选1

This commit is contained in:
meixiongfeng 2023-12-08 18:54:30 +08:00
parent d2efca4c3e
commit 3fe5e4dc8c
2 changed files with 31 additions and 23 deletions

View File

@ -37,12 +37,16 @@ func (this *apiComp) ResetBuff(session comm.IUserSession, req *pb.StonehengeRese
if v == pb.StonehengePrivilege_StonehengePrivilege_7 { //随机buff三选一事件新增重置功能 if v == pb.StonehengePrivilege_StonehengePrivilege_7 { //随机buff三选一事件新增重置功能
if eventConf, err := this.module.configure.GetStoneEventDataById(req.Eventid); err != nil { if eventConf, err := this.module.configure.GetStoneEventDataById(req.Eventid); err != nil {
//if p, err := this.module.configure.getGameStonePrivilegeData(int32(v)); err != nil { //if p, err := this.module.configure.getGameStonePrivilegeData(int32(v)); err != nil {
for _, v := range stone.Addweight { // 这个map 目前只会存在一条数据 var addtype int32
for key := range stone.Addweight { // 这个map 目前只会存在一条数据
addtype = key
break
}
ownerbuff := make(map[int32]struct{}, 0) ownerbuff := make(map[int32]struct{}, 0)
for k := range stone.Userbuff { for k := range stone.Userbuff {
ownerbuff[k] = struct{}{} ownerbuff[k] = struct{}{}
} }
stone.Rooms.Selectbuff = this.module.configure.GetBuffGroupDataByLottery(eventConf.Value1, v, ownerbuff) stone.Rooms.Selectbuff = this.module.configure.GetBuffGroupDataByLottery(eventConf.Value1, addtype, ownerbuff)
stone.Rooms.Resetcount += 1 stone.Rooms.Resetcount += 1
// 更新数据 // 更新数据
@ -53,7 +57,7 @@ func (this *apiComp) ResetBuff(session comm.IUserSession, req *pb.StonehengeRese
Selectbuff: stone.Rooms.Selectbuff, Selectbuff: stone.Rooms.Selectbuff,
}) })
return return
}
} }
break break
} }

View File

@ -124,14 +124,18 @@ func (this *MStonehenge) AddNewEvent(event []int32, stone *pb.DBStonehenge) {
switch newEventConf.EventType { switch newEventConf.EventType {
case EventType25: // buff是3选1 case EventType25: // buff是3选1
for _, v := range stone.Addweight { var addtype int32
for key := range stone.Addweight { // 这个map 目前只会存在一条数据
addtype = key
break
}
ownerbuff := make(map[int32]struct{}, 0) ownerbuff := make(map[int32]struct{}, 0)
for k := range stone.Userbuff { for k := range stone.Userbuff {
ownerbuff[k] = struct{}{} ownerbuff[k] = struct{}{}
} }
stone.Rooms.Selectbuff = this.module.configure.GetBuffGroupDataByLottery(newEventConf.Value1, v, ownerbuff) stone.Rooms.Selectbuff = this.module.configure.GetBuffGroupDataByLottery(newEventConf.Value1, addtype, ownerbuff)
stone.Rooms.Resetcount = 0 // 重置buff 三选一次数 stone.Rooms.Resetcount = 0 // 重置buff 三选一次数
} //}
case EventType10: // 宝箱事件 case EventType10: // 宝箱事件
if _, ok := stone.Rooms.Box[newEventConf.EventId]; !ok { if _, ok := stone.Rooms.Box[newEventConf.EventId]; !ok {
stone.Rooms.Box[newEventConf.EventId] = 0 stone.Rooms.Box[newEventConf.EventId] = 0