零件消耗优化
This commit is contained in:
parent
2d3c42bcb5
commit
2b601c6d52
@ -596,6 +596,20 @@ func (p *Player) HandleItem(itemList []*item.Item, Label string) error {
|
||||
|
||||
case item.ITEM_TYPE_CHESS: // 棋子
|
||||
ChessMod := p.PlayMod.getChessMod()
|
||||
if v.Num < 0 {
|
||||
err := ChessMod.LosePart(v.Id, -v.Num)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
p.TeLog("chess_part_consume", map[string]interface{}{
|
||||
"chess_id": v.Id,
|
||||
"chess_name": mergeDataCfg.GetNameById(v.Id),
|
||||
"consume_num": -v.Num,
|
||||
"remain_num": ChessMod.PartBag.List[v.Id].Num,
|
||||
"consume_from": Label,
|
||||
})
|
||||
continue
|
||||
}
|
||||
for i := 0; i < v.Num; i++ {
|
||||
ChessMod.AddChessBuff(v.Id)
|
||||
}
|
||||
|
||||
@ -241,6 +241,11 @@ func UnitDecoratePartCost(p *Player) error {
|
||||
DecorateMod.PartClassPool = []int{}
|
||||
DecorateMod.PartPool = make(map[int]int)
|
||||
DecorateMod.InitData()
|
||||
Items, _ := DecorateMod.GetDecorateCostItem(1, 41)
|
||||
err := p.HandleLoseItem(Items, "")
|
||||
if err != nil {
|
||||
fmt.Print(err)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -252,5 +257,6 @@ func UnitOrderTrigger(p *Player) error {
|
||||
Emit := ChessMod.GetEmitList()
|
||||
EnergyMul := BaseMod.GetEnergyMul()
|
||||
OrderMod.TriggerOrder(Lv, order.TRIGGER_TYPE_ORDER, Emit, EnergyMul)
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -357,6 +357,16 @@ func (cb *ChessBorad) GetChessFromBuff(Chess int) error {
|
||||
return errors.New("chess id not exist")
|
||||
}
|
||||
|
||||
func (cb *ChessBorad) LosePart(PartId int, Num int) error {
|
||||
v, ok := cb.PartBag.List[PartId]
|
||||
if !ok || v.Num < Num {
|
||||
return errors.New("part id not exist or num not enough")
|
||||
}
|
||||
v.Num -= Num
|
||||
cb.PartBag.List[PartId] = v
|
||||
return nil
|
||||
}
|
||||
|
||||
// 返回数据
|
||||
func (cb *ChessBorad) BackData() *msg.ResPlayerChessInfo {
|
||||
var ChessBagGrids []*msg.ChessBagGrid
|
||||
|
||||
Loading…
Reference in New Issue
Block a user