This commit is contained in:
wh_zcy 2022-12-26 18:31:05 +08:00
commit 316487582e
10 changed files with 36 additions and 41 deletions

View File

@ -34,7 +34,7 @@ type (
///添加单个物品到背包 (可以加物品和减物品)
AddItem(session IUserSession, itemid string, addnum int32, bPush bool) (code pb.ErrorCode)
///添加多个物品到背包 (可以加物品和减物品)
AddItems(session IUserSession, items map[string]int32, bPush bool) (code pb.ErrorCode)
AddItems(session IUserSession, items map[string]int32, bPush bool) (change []*pb.DB_UserItemData, code pb.ErrorCode)
}
//英雄
@ -129,7 +129,7 @@ type (
//查询服务资源数量 参数武器配置id
QueryEquipmentAmount(uid string, equipmentId string) (amount uint32)
//添加新武器
AddNewEquipments(session IUserSession, cIds map[string]uint32, bPush bool) (code pb.ErrorCode)
AddNewEquipments(session IUserSession, cIds map[string]uint32, bPush bool) (change []*pb.DB_Equipment, code pb.ErrorCode)
//创建装备
NewEquipment(uid, cid string) (code pb.ErrorCode, equip *pb.DB_Equipment)
//添加装备

View File

@ -48,15 +48,15 @@ func (this *apiComp) GetList(session comm.IUserSession, req *pb.EnchantGetListRe
code = pb.ErrorCode_ConfigNoFound
return
}
iContt := conf.EnchantbossInitial
iCont := conf.EnchantbossInitial
atn := conf.EnchantbossCos
if iContt > 0 {
this.module.DispenseRes(session, []*cfg.Gameatn{&cfg.Gameatn{
if iCont > 0 {
res := &cfg.Gameatn{
A: atn.A,
T: atn.T,
N: iContt,
}}, true)
N: iCont,
}
this.module.DispenseRes(session, []*cfg.Gameatn{res}, true)
}
} else if err != nil {
code = pb.ErrorCode_DBError

View File

@ -54,7 +54,7 @@ func (this *apiComp) Forg(session comm.IUserSession, req *pb.EquipmentForgReq) (
return
}
if code = this.module.AddNewEquipments(session, equis, true); code != pb.ErrorCode_Success {
if _, code = this.module.AddNewEquipments(session, equis, true); code != pb.ErrorCode_Success {
return
}

View File

@ -95,10 +95,9 @@ func (this *Equipment) QueryEquipmentAmount(uid string, equipmentId string) (amo
}
//添加武器
func (this *Equipment) AddNewEquipments(session comm.IUserSession, cIds map[string]uint32, bPush bool) (code pb.ErrorCode) {
func (this *Equipment) AddNewEquipments(session comm.IUserSession, cIds map[string]uint32, bPush bool) (change []*pb.DB_Equipment, code pb.ErrorCode) {
var (
err error
change []*pb.DB_Equipment
err error
)
if change, err = this.modelEquipment.AddEquipments(session, cIds); err != nil {
this.Errorf("err%v", err)

View File

@ -54,12 +54,12 @@ func (this *apiComp) GetList(session comm.IUserSession, req *pb.HuntingGetListRe
iCont := conf.HuntingNum
atn := conf.HuntingCos
if iCont > 0 {
this.module.DispenseRes(session, []*cfg.Gameatn{&cfg.Gameatn{
res := &cfg.Gameatn{
A: atn.A,
T: atn.T,
N: iCont,
}}, true)
}
this.module.DispenseRes(session, []*cfg.Gameatn{res}, true)
}
} else if err != nil {

View File

@ -125,10 +125,9 @@ func (this *Items) AddItem(session comm.IUserSession, itemid string, addnum int3
}
///添加多个物品到背包 (可以加物品和减物品)
func (this *Items) AddItems(session comm.IUserSession, items map[string]int32, bPush bool) (code pb.ErrorCode) {
func (this *Items) AddItems(session comm.IUserSession, items map[string]int32, bPush bool) (change []*pb.DB_UserItemData, code pb.ErrorCode) {
var (
err error
change []*pb.DB_UserItemData
err error
)
defer this.Debugf("给用户添加物品 uId:%s items:%v items:%v", session.GetUserId(), items, err == nil)

View File

@ -307,7 +307,7 @@ func (this *ModuleBase) ConsumeRes(session comm.IUserSession, res []*cfg.Gameatn
}
}
if len(items) > 0 {
code = this.ModuleItems.AddItems(session, items, bPush)
_, code = this.ModuleItems.AddItems(session, items, bPush)
if code != pb.ErrorCode_Success {
return
}
@ -356,7 +356,7 @@ func (this *ModuleBase) DispenseRes(session comm.IUserSession, res []*cfg.Gameat
this.Debugf("发放用户资源: %v [%v]", attrs, code)
}
if len(items) > 0 { //道具资源
code = this.ModuleItems.AddItems(session, items, bPush)
_, code = this.ModuleItems.AddItems(session, items, bPush)
this.Debugf("发放道具资源: %v [%v]", items, code)
}
if len(heros) > 0 { //卡片资源
@ -364,7 +364,7 @@ func (this *ModuleBase) DispenseRes(session comm.IUserSession, res []*cfg.Gameat
this.Debugf("发放英雄资源: %v [%v]", heros, code)
}
if len(equips) > 0 {
code = this.ModuleEquipment.AddNewEquipments(session, equips, bPush)
_, code = this.ModuleEquipment.AddNewEquipments(session, equips, bPush)
this.Debugf("发放装备资源: %v [%v]", equips, code)
}
if len(vip) > 0 { //卡片资源

View File

@ -5,6 +5,7 @@ import (
"go_dreamfactory/pb"
"go_dreamfactory/sys/configure"
cfg "go_dreamfactory/sys/configure/structs"
"strconv"
"google.golang.org/protobuf/proto"
)
@ -21,11 +22,10 @@ func (this *apiComp) ChallengeOverCheck(session comm.IUserSession, req *pb.Vikin
///挑战完成
func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChallengeOverReq) (code pb.ErrorCode, data proto.Message) {
var (
mapData map[string]interface{}
newChallenge bool // 新的关卡
reward []*cfg.Gameatn
asset []*pb.UserAssets
bWin bool // 战斗是否胜利
mapData map[string]interface{}
reward []*cfg.Gameatn
asset []*pb.UserAssets
bWin bool // 战斗是否胜利
)
mapData = make(map[string]interface{}, 0)
reward = make([]*cfg.Gameatn, 0)
@ -63,9 +63,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal
if !ok { // 类型校验
viking.Boss[req.BossId] = 1
}
if value == req.Difficulty {
newChallenge = true
} else if value < req.Difficulty {
if value < req.Difficulty {
code = pb.ErrorCode_HuntingLvErr
return
}
@ -90,11 +88,8 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal
mapData["recoveryTime"] = viking.RecoveryTime
}
}
if bWin {
this.module.CheckRank(session.GetUserId(), req.BossId, req.Difficulty, viking, req.Report)
}
mapData["bossTime"] = viking.BossTime // 更新时间
if newChallenge && bWin { // 新关卡挑战通过 发放首通奖励
key := strconv.Itoa(int(req.BossId)) + "_" + strconv.Itoa(int(req.Difficulty))
if viking.BossTime[key] == 0 { // 新关卡挑战通过 发放首通奖励
viking.Boss[req.BossId]++
mapData["boss"] = viking.Boss
if code = this.module.DispenseRes(session, vikingCfg.Firstprize, true); code != pb.ErrorCode_Success {
@ -107,7 +102,9 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal
N: v.N,
})
}
} else {
}
if bWin {
this.module.CheckRank(session.GetUserId(), req.BossId, req.Difficulty, viking, req.Report)
reward = this.module.configure.GetDropReward(vikingCfg.Drop) // 获取掉落奖励
if code = this.module.DispenseRes(session, reward, true); code != pb.ErrorCode_Success {
return
@ -120,6 +117,8 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal
})
}
}
mapData["bossTime"] = viking.BossTime // 更新时间
code = this.module.ModifyVikingData(session.GetUserId(), mapData)
// 发放通关随机奖励
session.SendMsg(string(this.module.GetType()), VikingChallengeOverResp, &pb.VikingChallengeOverResp{

View File

@ -54,12 +54,12 @@ func (this *apiComp) GetList(session comm.IUserSession, req *pb.VikingGetListReq
iCont := conf.VikingNum
atn := conf.VikingExpeditionCos
if iCont > 0 {
this.module.DispenseRes(session, []*cfg.Gameatn{&cfg.Gameatn{
res := &cfg.Gameatn{
A: atn.A,
T: atn.T,
N: iCont,
}}, true)
}
this.module.DispenseRes(session, []*cfg.Gameatn{res}, true)
}
}

View File

@ -178,9 +178,7 @@ func (this *Viking) CompleteAllLevel(session comm.IUserSession) (code pb.ErrorCo
}
mapData["boss"] = list.Boss
code = this.ModifyVikingData(session.GetUserId(), mapData)
for k := range list.Boss {
list.Boss[k] += 1
}
session.SendMsg(string(this.GetType()), VikingGetListResp, &pb.VikingGetListResp{Data: list})
return
}