战斗校验

This commit is contained in:
meixiongfeng 2023-09-27 17:38:41 +08:00
parent 5fc2a0bb3f
commit e9975bb591
7 changed files with 28 additions and 22 deletions

View File

@ -64,8 +64,10 @@ func (this *apiComp) ChallengeFinish(session comm.IUserSession, req *pb.GuildGve
}
for _, v := range req.Report.Info.Redflist[0].Team {
if v.Oid != "" {
member.Useheros = append(member.Useheros, v.Oid)
}
}
// if member.Boosticket <= 0 {
// errdata = &pb.ErrorData{
@ -122,10 +124,10 @@ func (this *apiComp) ChallengeFinish(session comm.IUserSession, req *pb.GuildGve
member.Record[req.Boosid] = record
go this.module.modelbattlerank.updateRank(req.Boosid, req.Report.Harm, record.User.Uid)
for i, v := range req.Report.Info.Redflist[0].Team {
if int32(i) == req.Report.Info.Redflist[0].Leadpos && v != nil {
if int32(i) == req.Report.Info.Redflist[0].Leadpos && v.Oid != "" {
record.CaptainHeroId = v.HeroID
}
if v != nil {
if v.Oid != "" {
record.Formation = append(record.Formation, &pb.DBSimpleHero{
HeroId: v.HeroID,
Star: v.Star,

View File

@ -161,7 +161,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.HuntingCha
var heroObjs []string
if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 {
for _, v := range req.Report.Info.Redflist[0].Team {
if !v.Ishelp { // 助战英雄不加经验
if v.Oid != "" && !v.Ishelp { // 助战英雄不加经验
heroObjs = append(heroObjs, v.Oid)
changExp[v.Oid] = cfgHunting.Heroexp
}

View File

@ -154,7 +154,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.MainlineCh
var heroObjs []string
if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 {
for _, v := range req.Report.Info.Redflist[0].Team {
if !v.Ishelp { // 助战英雄不加经验
if v.Oid != "" && !v.Ishelp { // 助战英雄不加经验
heroObjs = append(heroObjs, v.Oid)
}
}

View File

@ -99,7 +99,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.PagodaChal
var heroObjs []string
if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 {
for _, v := range req.Report.Info.Redflist[0].Team {
if !v.Ishelp { // 助战英雄不加经验
if v.Oid != "" && !v.Ishelp { // 助战英雄不加经验
heroObjs = append(heroObjs, v.Oid)
}
}
@ -139,7 +139,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.PagodaChal
leadpos := req.Report.Info.Redflist[0].Leadpos
szLine := make([]*pb.LineUp, 0)
for _, v := range req.Report.Info.Redflist[0].Team {
if v != nil {
if v.Oid != "" {
szLine = append(szLine, &pb.LineUp{
Cid: v.HeroID,
Star: v.Star,

View File

@ -97,7 +97,7 @@ func (this *apiComp) ChallengeRaceOver(session comm.IUserSession, req *pb.Pagoda
var heroObjs []string
if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 {
for _, v := range req.Report.Info.Redflist[0].Team {
if !v.Ishelp { // 助战英雄不加经验
if v.Oid != "" && !v.Ishelp { // 助战英雄不加经验
heroObjs = append(heroObjs, v.Oid)
}
}

View File

@ -479,6 +479,7 @@ func (this *apiComp) Event(session comm.IUserSession, req *pb.StonehengeEventReq
if eventConf.EventType == EventType28 { // 必须是战斗类型才可以触发
var job int32
for _, v := range req.Report.Info.Redflist[0].Team {
if v.HeroID != "" {
if h, err := this.module.ModuleTools.GetHeroConfig(v.HeroID); err == nil {
if job == 0 {
job = h.Job
@ -491,6 +492,7 @@ func (this *apiComp) Event(session comm.IUserSession, req *pb.StonehengeEventReq
maxHp := v.Property[battle.AttributesTransBase("hp")]
totalhp += v.Currhp * 1000 / maxHp
}
}
if job != 0 { // 上阵英雄都为指定职业
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype216, job, stone.StageID)) //上阵英雄都为指定职业,击败石阵秘境中指定关卡的首领
}

View File

@ -198,6 +198,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal
var heroObjs []string
if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 {
for _, v := range req.Report.Info.Redflist[0].Team {
if v.HeroID != "" {
if !v.Ishelp { // 助战英雄不加经验
heroObjs = append(heroObjs, v.Oid)
} else {
@ -205,6 +206,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal
}
}
}
}
this.module.ModuleHero.AddHerosExp(session, heroObjs, vikingCfg.Heroexp)
}
@ -227,7 +229,7 @@ func (this *apiComp) ChallengeOver(session comm.IUserSession, req *pb.VikingChal
if req.Report != nil && req.Report.Info != nil && len(req.Report.Info.Redflist) > 0 {
for _, v := range req.Report.Info.Redflist[0].Team {
if v.Ishelp { // 判断是否有助战
if v.Oid != "" && v.Ishelp { // 判断是否有助战
tasks = append(tasks, comm.GetBuriedParam(comm.Rtype79, req.Difficulty, req.BossId))
break
}