diff --git a/.vscode/launch.json b/.vscode/launch.json index e3a7fcce1..709ec8f7a 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -22,7 +22,7 @@ "request": "launch", "mode": "auto", "cwd": "${workspaceFolder}", - "args": ["-port=1"], + "args": ["-port=1"," -race"], "program": "${workspaceFolder}/logic", }, { diff --git a/logic/controller/pet.go b/logic/controller/pet.go index a24b7660e..e4eea67a6 100644 --- a/logic/controller/pet.go +++ b/logic/controller/pet.go @@ -121,12 +121,9 @@ func (h *Controller) PetOneCure( if ok { onpet.Hp = onpet.MaxHp for i := 0; i < 4; i++ { - // 跳过无效技能 - if onpet.SkillList[i].ID == 0 { - continue - } + maxPP, ok := xmlres.SkillMap[int(onpet.SkillList[i].ID)] // 恢复至最大PP值(从配置表获取) - if maxPP, ok := xmlres.SkillMap[int(onpet.SkillList[i].ID)]; ok { + if onpet.SkillList[i].ID != 0 && ok { onpet.SkillList[i].PP = uint32(maxPP.MaxPP) } diff --git a/logic/service/player/pet.go b/logic/service/player/pet.go index dccaca0ae..348c99d6b 100644 --- a/logic/service/player/pet.go +++ b/logic/service/player/pet.go @@ -61,7 +61,10 @@ func (p *Player) AddPetExp(pet *model.PetInfo, addExp uint32) { } // 重新计算面板 - pet.CalculatePetPane() + if originalLevel != pet.Level { + pet.CalculatePetPane() + } + // 发送经验更新消息 //player.SendMessage(generatePetUpdateInfo(petEntity, originalExp+addExp-exp, addition))