上传装备回收接口
This commit is contained in:
parent
936bed8757
commit
42c5e77294
@ -147,6 +147,8 @@ type (
|
||||
AddEquipment(session IUserSession, equip *pb.DB_Equipment) (code pb.ErrorCode)
|
||||
//出售装备
|
||||
SellEquipments(session IUserSession, equs []string) (code pb.ErrorCode, atno []*pb.UserAtno)
|
||||
//回收装备接口
|
||||
RecycleEquipments(session IUserSession, equs []string, discount int32) (code pb.ErrorCode, atno []*pb.UserAtno)
|
||||
}
|
||||
IMainline interface {
|
||||
ModifyMainlineDataByNanduID(uid string, nandu, id int32) (code pb.ErrorCode)
|
||||
|
@ -229,6 +229,59 @@ func (this *Equipment) SellEquipments(session comm.IUserSession, equs []string)
|
||||
return
|
||||
}
|
||||
|
||||
//回收装备接口
|
||||
func (this *Equipment) RecycleEquipments(session comm.IUserSession, equs []string, discount int32) (code pb.ErrorCode, atno []*pb.UserAtno) {
|
||||
var (
|
||||
err error
|
||||
equipments []*pb.DB_Equipment
|
||||
confs []*cfg.GameEquipData
|
||||
sale [][]*cfg.Gameatn
|
||||
)
|
||||
if equipments, err = this.modelEquipment.QueryUserEquipmentsByIds(session.GetUserId(), equs); err != nil {
|
||||
code = pb.ErrorCode_ReqParameterError
|
||||
return
|
||||
}
|
||||
confs = make([]*cfg.GameEquipData, len(equipments))
|
||||
sale = make([][]*cfg.Gameatn, len(equipments))
|
||||
for i, v := range equipments {
|
||||
if v.HeroId != "" || v.Islock {
|
||||
code = pb.ErrorCode_EquipmentNoCanSell
|
||||
this.Errorf("NoCanSell %v", v)
|
||||
return
|
||||
}
|
||||
if confs[i], err = this.configure.GetEquipmentConfigureById(v.CId); err != nil {
|
||||
this.Errorln(err)
|
||||
code = pb.ErrorCode_EquipmentOnFoundEquipment
|
||||
return
|
||||
}
|
||||
if confs[i].Sale == nil || len(confs[i].Sale) == 0 {
|
||||
code = pb.ErrorCode_EquipmentNoCanSell
|
||||
return
|
||||
}
|
||||
sale[i] = make([]*cfg.Gameatn, len(confs[i].Sale))
|
||||
for n, s := range confs[i].Sale {
|
||||
_s := &cfg.Gameatn{
|
||||
A: s.A,
|
||||
T: s.T,
|
||||
N: s.N + int32(math.Floor(float64(s.N*(v.Lv-1))*float64(confs[i].Salecoef))),
|
||||
}
|
||||
sale[i][n] = _s
|
||||
}
|
||||
}
|
||||
|
||||
sales := make([]*cfg.Gameatn, 0)
|
||||
for _, v := range sale {
|
||||
sales = append(sales, v...)
|
||||
}
|
||||
if code, atno = this.DispenseAtno(session, sales, true); code != pb.ErrorCode_Success {
|
||||
return
|
||||
}
|
||||
if code = this.DelEquipments(session, equs, true); code != pb.ErrorCode_Success {
|
||||
return
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
//Evens--------------------------------------------------------------------------------------------------------------------------------
|
||||
//推送道具变化消息
|
||||
func (this *Equipment) equipmentsChangePush(session comm.IUserSession, items []*pb.DB_Equipment) (err error) {
|
||||
|
Loading…
Reference in New Issue
Block a user