```
feat(fight): 实现精灵大乱斗模式并优化对战逻辑 新增大乱斗模式(PET_MELEE)支持,重构原有精灵王之战相关逻辑。 更新战斗初始化流程,添加随机精灵选择机制。 调整玩家匹配与取消邀请接口实现方式。 完善战斗结束处理函数,移除未实现异常抛出。 ```
This commit is contained in:
@@ -2,12 +2,14 @@ package player
|
||||
|
||||
import (
|
||||
"blazing/logic/service/common"
|
||||
|
||||
"blazing/logic/service/fight/info"
|
||||
"blazing/logic/service/space"
|
||||
)
|
||||
|
||||
// 邀请玩家加入战斗 邀请者,被邀请者,邀请模式
|
||||
func (lw *Player) InvitePlayerToBattle() {
|
||||
|
||||
pinfo := lw.PVPinfo
|
||||
space.GetSpace(lw.Info.MapID).User.IterCb(func(key uint32, v common.PlayerI) {
|
||||
|
||||
@@ -28,11 +30,25 @@ func (lw *Player) InvitePlayerToBattle() {
|
||||
})
|
||||
|
||||
}
|
||||
func (p *Player) PET_MELEE() *Player {
|
||||
var lw *Player
|
||||
//pinfo := lw.PVPinfo
|
||||
space.GetSpace(p.Info.MapID).User.IterCb(func(key uint32, v common.PlayerI) {
|
||||
|
||||
// 取消对战邀请
|
||||
func (lw *Player) CancelBattle() {
|
||||
value := v.(*Player)
|
||||
|
||||
lw.PVPinfo = nil
|
||||
if value.PVPinfo != nil && value != p {
|
||||
//确认是乱斗模式
|
||||
|
||||
if value.PVPinfo.Mode == info.BattleMode.PET_MELEE {
|
||||
lw = value
|
||||
return
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
})
|
||||
return lw
|
||||
}
|
||||
|
||||
func (p *Player) SendLoadPercent(b info.LoadPercentOutboundInfo) {
|
||||
|
||||
Reference in New Issue
Block a user