diff --git a/logic/controller/fight_boss.go b/logic/controller/fight_boss.go index 250f1e7f7..44b3b5d9d 100644 --- a/logic/controller/fight_boss.go +++ b/logic/controller/fight_boss.go @@ -105,7 +105,7 @@ func (h Controller) PlayerFightBoss(data *fight.ChallengeBossInboundInfo, c *pla }) fight.NewFight(c, ai, func(foi *info.FightOverInfo) { - c.Done.Done(model.MilestoneMode.BOSS, data.BossId) + c.Done.Exec(model.MilestoneMode.BOSS, []uint32{data.BossId}) }) diff --git a/logic/service/player/done.go b/logic/service/player/done.go index 5e730ebea..0e746099e 100644 --- a/logic/service/player/done.go +++ b/logic/service/player/done.go @@ -45,7 +45,7 @@ func (d *Done) SPT(mapid, bossid, count uint32, fn func()) { } // 分发事件 ,指定事件+1 并触发是否完成 -func (d *Done) Done(Donetype model.EnumMilestone, id []uint32) { +func (d *Done) Exec(Donetype model.EnumMilestone, id []uint32) { d.Service.Done.Exec(Donetype, id, func(t *model.MilestoneEX) bool { diff --git a/logic/service/player/player.go b/logic/service/player/player.go index 4338fee2f..99cf54f89 100644 --- a/logic/service/player/player.go +++ b/logic/service/player/player.go @@ -96,6 +96,9 @@ func (p *Player) CanFight() bool { return false } + if p.GetSpace().ARENA.ChallengerID == p.Info.UserID || p.GetSpace().ARENA.Id == p.Info.UserID { + return false + } for _, v := range p.Info.PetList { if v.Hp > 0 { // 只要找到一个血量大于0的宠物,就可以战斗 return true