feat(fight_boss): 更新BOSS战斗效果逻辑以使用新的服务接口 将原来直接访问xmlres.EffectMAP获取效果信息的方式, 替换为通过service.NewEffectService().Args方法获取EID与参数, 提高代码解耦性与可维护性。 refactor(item_buy): 调整金币商品购买时的价格计算逻辑 修复购买金币商品时价格未正确乘以100的问题, 确保消耗金币数量准确无
41 lines
718 B
Go
41 lines
718 B
Go
package service
|
|
|
|
import (
|
|
"blazing/cool"
|
|
"blazing/modules/blazing/model"
|
|
)
|
|
|
|
type EffectService struct {
|
|
*cool.Service
|
|
}
|
|
|
|
func (s *EffectService) Args(id uint32) (int, []int) {
|
|
|
|
m := cool.DBM(s.Model).Where("se_idx", id)
|
|
var tt model.PlayerPetSpecialEffect
|
|
err := m.Scan(&tt)
|
|
if err != nil {
|
|
return 0, nil
|
|
}
|
|
|
|
ret := tt.Args
|
|
|
|
return int(tt.Eid), ret
|
|
|
|
}
|
|
func NewEffectService() *EffectService {
|
|
return &EffectService{
|
|
&cool.Service{
|
|
// PageQueryOp: &cool.QueryOp{
|
|
// ModifyResult: func(ctx g.Ctx, data interface{}) interface{} {
|
|
|
|
// // t, _ := json.Marshal(data)
|
|
// // gjson.GetBytes(t, "list")
|
|
// return data
|
|
// },
|
|
// },
|
|
Model: model.NewPlayerPetSpecialEffect(),
|
|
},
|
|
}
|
|
}
|