增加退役领取奖励接口
This commit is contained in:
parent
2b816c3370
commit
8428678712
@ -1,6 +1,7 @@
|
||||
package baseCfg
|
||||
|
||||
import (
|
||||
"server/game/mod/item"
|
||||
"server/gamedata"
|
||||
"server/pkg/github.com/name5566/leaf/log"
|
||||
"strconv"
|
||||
@ -39,6 +40,15 @@ func GetEnergyByMul(T int) float64 {
|
||||
}
|
||||
}
|
||||
|
||||
func GetFriendReplyReward() []*item.Item {
|
||||
data, err := gamedata.GetDataByKey(CFG_BASE, "friend_reply")
|
||||
if err != nil {
|
||||
log.Debug("GetFriendReplyReward err:%v", err)
|
||||
return nil
|
||||
}
|
||||
return gamedata.GetItemList(data, "Value")
|
||||
}
|
||||
|
||||
func GetMaxEnergyMul(Lv int, Energy int) int {
|
||||
Mul := 0
|
||||
for i := 1; i < 999; i++ {
|
||||
|
||||
@ -392,6 +392,16 @@ func GetHighSourceChestItem() []*item.Item {
|
||||
r = append(r, item.NewItem(item.ITEM_ENERGY_ID, B4))
|
||||
return r
|
||||
}
|
||||
|
||||
func GetRetireReward() []*item.Item {
|
||||
data, err := gamedata.GetDataByKey(CONST_NAME, "retire_reward")
|
||||
if err != nil {
|
||||
log.Debug("GetRetireReward GetOne not found")
|
||||
return nil
|
||||
}
|
||||
return gamedata.GetItemList(data, "Value")
|
||||
}
|
||||
|
||||
func DynamicLevRev(Lv int, EmitId int, Color string) int {
|
||||
data, err := gamedata.GetDataByIntKey(CFG_NAME, EmitId)
|
||||
if err != nil {
|
||||
|
||||
@ -735,6 +735,7 @@ func (ad *GameLogic) RegisterNetWorkFunc() {
|
||||
RegisterMsgProcessFunc("ReqSeparateChess", ReqSeparateChess) // 分解棋子
|
||||
RegisterMsgProcessFunc("ReqUpgradeChess", ReqUpgradeChess) // 升级棋子
|
||||
RegisterMsgProcessFunc("ReqSellChessNum", ReqSellChessNum) //购买能量
|
||||
RegisterMsgProcessFunc("ReqGetChessRetireReward", ReqGetChessRetireReward) //领取棋子退役奖励
|
||||
|
||||
//领取图鉴奖励
|
||||
RegisterMsgProcessFunc("ReqGetHandbookReward", ReqGetHandbookReward) //领取图鉴奖励
|
||||
|
||||
@ -6,6 +6,7 @@ import (
|
||||
"math"
|
||||
"server/GoUtil"
|
||||
"server/conf"
|
||||
baseCfg "server/conf/base"
|
||||
cardCfg "server/conf/card"
|
||||
champshipCfg "server/conf/champship"
|
||||
collectCfg "server/conf/collect"
|
||||
@ -5268,9 +5269,7 @@ func ReqFriendReplyHandle(player *Player, buf []byte) error {
|
||||
})
|
||||
}
|
||||
}
|
||||
Items := []*item.Item{
|
||||
item.NewItem(item.ITEM_ENERGY_ID, 5),
|
||||
}
|
||||
Items := baseCfg.GetFriendReplyReward()
|
||||
err := player.HandleItem(Items, msg.ITEM_POP_LABEL_FriendReplyHandle.String())
|
||||
if err != nil {
|
||||
player.SendErrClienRes(&msg.ResFriendReplyHandle{
|
||||
@ -5286,3 +5285,36 @@ func ReqFriendReplyHandle(player *Player, buf []byte) error {
|
||||
})
|
||||
return nil
|
||||
}
|
||||
|
||||
func ReqGetChessRetireReward(player *Player, buf []byte) error {
|
||||
req := &msg.ReqGetChessRetireReward{}
|
||||
proto.Unmarshal(buf, req)
|
||||
ChessMod := player.PlayMod.getChessMod()
|
||||
Items, err := ChessMod.GetRetireReward(req.Id)
|
||||
if err != nil {
|
||||
player.SendErrClienRes(&msg.ResGetChessRetireReward{
|
||||
Code: msg.RES_CODE_FAIL,
|
||||
Msg: err.Error(),
|
||||
})
|
||||
return err
|
||||
}
|
||||
err = player.HandleItem(Items, msg.ITEM_POP_LABEL_GetChessRetireReward.String())
|
||||
if err != nil {
|
||||
player.SendErrClienRes(&msg.ResGetChessRetireReward{
|
||||
Code: msg.RES_CODE_FAIL,
|
||||
Msg: err.Error(),
|
||||
})
|
||||
return err
|
||||
}
|
||||
player.TeLog("get_chess_retire_reward", map[string]interface{}{
|
||||
"EmitSerise": req.Id,
|
||||
"Items": Items,
|
||||
})
|
||||
player.PushClientRes(ChessMod.BackData())
|
||||
player.PlayMod.save()
|
||||
player.PushClientRes(&msg.ResGetChessRetireReward{
|
||||
Code: msg.RES_CODE_SUCCESS,
|
||||
Id: req.Id,
|
||||
})
|
||||
return nil
|
||||
}
|
||||
|
||||
@ -44,6 +44,7 @@ type ChessBorad struct {
|
||||
ChessMap map[string]int32
|
||||
Honor map[int]int // 荣誉室
|
||||
Retire map[string]int // 退役发射器系列
|
||||
RetireReward map[string]bool
|
||||
RetireChessMap map[string][]int
|
||||
}
|
||||
|
||||
@ -96,6 +97,9 @@ func (cb *ChessBorad) ver() {
|
||||
cb.ChessBag.List[i] = ChessBagGrid{}
|
||||
}
|
||||
}
|
||||
if cb.RetireReward == nil {
|
||||
cb.RetireReward = make(map[string]bool)
|
||||
}
|
||||
if cb.PartBag.List == nil {
|
||||
cb.PartBag.List = make(map[int]PartBagGrid)
|
||||
}
|
||||
@ -418,10 +422,17 @@ func (cb *ChessBorad) BackData() *msg.ResPlayerChessInfo {
|
||||
for k := range cb.Honor {
|
||||
Ho = append(Ho, int32(k))
|
||||
}
|
||||
Rw := make([]string, 0)
|
||||
for k, v := range cb.RetireReward {
|
||||
if v == true {
|
||||
Rw = append(Rw, k)
|
||||
}
|
||||
}
|
||||
return &msg.ResPlayerChessInfo{
|
||||
ChessList: GoUtil.SliceIntToInt32(cb.ChessList),
|
||||
ChessBuff: GoUtil.SliceIntToInt32(cb.ChessBuff),
|
||||
RetireEmit: Re,
|
||||
RetireReward: Rw,
|
||||
Honor: Ho,
|
||||
ChessBag: &msg.ChessBag{
|
||||
ChessBagGrids: ChessBagGrids,
|
||||
@ -671,3 +682,14 @@ func (cb *ChessBorad) GetPartBag() map[int]int {
|
||||
}
|
||||
return res
|
||||
}
|
||||
|
||||
func (cb *ChessBorad) GetRetireReward(Id string) ([]*item.Item, error) {
|
||||
if cb.RetireReward[Id] == true {
|
||||
return nil, errors.New("emit retire reward has been get")
|
||||
}
|
||||
if cb.Retire[Id] != EMIT_RETIRE_END {
|
||||
return nil, errors.New("emit not finish retire")
|
||||
}
|
||||
cb.RetireReward[Id] = true
|
||||
return mergeDataCfg.GetRetireReward(), nil
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user