秘境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,23 +37,27 @@ 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
ownerbuff := make(map[int32]struct{}, 0) for key := range stone.Addweight { // 这个map 目前只会存在一条数据
for k := range stone.Userbuff { addtype = key
ownerbuff[k] = struct{}{} break
}
stone.Rooms.Selectbuff = this.module.configure.GetBuffGroupDataByLottery(eventConf.Value1, v, ownerbuff)
stone.Rooms.Resetcount += 1
// 更新数据
update["rooms"] = stone.Rooms
this.module.modelStonehenge.ChangeStonehengeData(session.GetUserId(), update)
session.SendMsg(string(this.module.GetType()), "resetbuff", &pb.StonehengeResetBuffResp{
Selectbuff: stone.Rooms.Selectbuff,
})
return
} }
ownerbuff := make(map[int32]struct{}, 0)
for k := range stone.Userbuff {
ownerbuff[k] = struct{}{}
}
stone.Rooms.Selectbuff = this.module.configure.GetBuffGroupDataByLottery(eventConf.Value1, addtype, ownerbuff)
stone.Rooms.Resetcount += 1
// 更新数据
update["rooms"] = stone.Rooms
this.module.modelStonehenge.ChangeStonehengeData(session.GetUserId(), update)
session.SendMsg(string(this.module.GetType()), "resetbuff", &pb.StonehengeResetBuffResp{
Selectbuff: stone.Rooms.Selectbuff,
})
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
ownerbuff := make(map[int32]struct{}, 0) for key := range stone.Addweight { // 这个map 目前只会存在一条数据
for k := range stone.Userbuff { addtype = key
ownerbuff[k] = struct{}{} break
}
stone.Rooms.Selectbuff = this.module.configure.GetBuffGroupDataByLottery(newEventConf.Value1, v, ownerbuff)
stone.Rooms.Resetcount = 0 // 重置buff 三选一次数
} }
ownerbuff := make(map[int32]struct{}, 0)
for k := range stone.Userbuff {
ownerbuff[k] = struct{}{}
}
stone.Rooms.Selectbuff = this.module.configure.GetBuffGroupDataByLottery(newEventConf.Value1, addtype, ownerbuff)
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