feat(boss_fight): 完善宠物捕获和战斗奖励机制 - 在宠物捕获时记录当前地图ID作为CatchMap - 将经验值奖励改为通过道具系统发放,统一使用ItemAdd方法处理 - 调整EXP奖励的计算方式,移除原有S2C_GET_BOSS_MONSTER中的EXP字段 feat(arena): 优化竞技场对战奖励和EV分配 - 将竞技场胜利奖励的EV值
This commit is contained in:
@@ -180,6 +180,7 @@ func (Controller) OnPlayerFightNpcMonster(data1 *fight.FightNpcMonsterInboundInf
|
||||
|
||||
int(refPet.Lv),
|
||||
refPet.ShinyInfo, -1)
|
||||
monster.CatchMap = p.Info.MapID //设置当前地图
|
||||
if refPet.Ext != 0 {
|
||||
if grand.Meet(2, 1000) {
|
||||
monster.RandShiny()
|
||||
@@ -203,11 +204,13 @@ func (Controller) OnPlayerFightNpcMonster(data1 *fight.FightNpcMonsterInboundInf
|
||||
addlevel, poolevel := p.CanGetExp()
|
||||
addexp := gconv.Float32(addlevel * gconv.Float32(exp))
|
||||
poolexp := gconv.Float32(poolevel) * gconv.Float32((exp))
|
||||
items := &info.S2C_GET_BOSS_MONSTER{
|
||||
//EV: 45,
|
||||
EXP: uint32(poolexp),
|
||||
}
|
||||
p.Info.ExpPool += int64(poolexp + addexp)
|
||||
items := &info.S2C_GET_BOSS_MONSTER{}
|
||||
|
||||
p.ItemAdd(3, int64(poolexp+addexp))
|
||||
items.ItemList = append(items.ItemList, data.ItemInfo{
|
||||
ItemId: 3,
|
||||
ItemCnt: int64(poolexp),
|
||||
})
|
||||
p.AddPetExp(foi.Winpet, int64(addexp))
|
||||
if refPet.Item != 0 {
|
||||
count := int64(grand.Intn(2) + 1)
|
||||
|
||||
Reference in New Issue
Block a user