Procházet zdrojové kódy

提交抽卡不显示英雄和英雄可进阶红点

SCFC před 1 rokem
rodič
revize
4ef9e412cb

+ 1 - 1
script/common/ProtoID.lua

@@ -1375,5 +1375,5 @@ _ENV[1412]="GC_SERVEERCOMMERCE_ACT_SHOPQUERY"
 _ENV[1413]="CG_SERVEERCOMMERCE_ACT_SHOPGETPRIZE"
 _ENV[1414]="CG_SERVEERCOMMERCE_ACT_RANK_QUERY"
 _ENV[1415]="GC_SERVEERCOMMERCE_ACT_RANK_QUERY"
-
+_ENV[1420]="CG_DRAWCARD_SKIP_HEROSHOW"
 

+ 16 - 0
script/module/drawCard/DrawCardLogic.lua

@@ -176,10 +176,23 @@ function addDrawCnt(human, id, cnt)
     info.cntHero = (info.cntHero or 0) + cnt
 end
 
+-- 获取总抽卡次数
+function getAllDrawCnt(human, id)
+    local info = getDrawInfo(human, id)
+    if not info then return 0 end
+    local nAllCnt = info.cntHero or 0
+    nAllCnt = info.cntHero2 and nAllCnt + info.cntHero2 or nAllCnt
+    return nAllCnt
+end
+
 function setSkip(human, id, skip)
     human.db.drawCard.skip = skip or 0
 end
 
+function SetHeroSkip(human, bOperate)
+    human.db.drawCard.skipHero = bOperate
+end
+
 -- 连续1-4英雄次数
 function getDrawNoGoodCnt(human, id)
     local info = getDrawInfo(human, id)
@@ -314,6 +327,8 @@ function query(human)
     local needItemID = ItemDefine.ITEM_XIANZHI_BAOZHU_ID
     Grid.makeItem(msgRet.qiyuan, needItemID, 1)
     msgRet.skip = human.db.drawCard.skip or 0
+    msgRet.bShowHero = human.db.drawCard.skipHero or 0
+    msgRet.nHighCnt = getAllDrawCnt(human, DRAWCARD_ID2)
     Msg.send(msgRet, human.fd)
 end
 
@@ -324,6 +339,7 @@ function sendDrawOp(human, id, op, heroList, items, heroNewList, heroIndexList,i
     msgRet.leftNoSRRCnt = DRAWCARD_40 - getDrawNoSSRCnt(human, DRAWCARD_ID2)
     msgRet.leftNewSRRCnt = getDrawNewSSRCnt(human, DRAWCARD_ID8)
     msgRet.leftNewSRR40Cnt = DRAWCARD_40 - getDrawNoSSRCnt(human, DRAWCARD_ID8)
+    msgRet.nHighCnt = getAllDrawCnt(human, DRAWCARD_ID2)
     local dataNet = msgRet.data
     dataNet.jifen = getJifen(human)
     dataNet.id = id

+ 4 - 0
script/module/drawCard/Handler.lua

@@ -15,4 +15,8 @@ end
 
 function CG_DRAWCARD_GET_RECOMMEND_LINEUP(human, msg)
 	RecommendLineup.GetRecommendLineUp(human)
+end
+
+function CG_DRAWCARD_SKIP_HEROSHOW(human, msg)
+	DrawCardLogic.SetHeroSkip(human, msg.bOperate)
 end

+ 7 - 1
script/module/drawCard/Proto.lua

@@ -21,7 +21,8 @@ GC_DRAWCARD_QUERY = {
     {"leftNoSRRCnt",    1,      "int"},    -- 还需高抽多少次,必出SSR
 	{"leftNewSRRCnt",   1,      "int"},    -- 新英雄活动期间,累计抽了多少次
 	{"leftNewSRR40Cnt", 1,      "int"},    -- 还需精灵召唤抽多少次,必出SSR
-	
+	{"bShowHero",		1,		"byte"},	-- 是否播放英雄展示动画 1 不播放 0 播放
+	{"nHighCnt",		1,		"int"},		-- 高级抽卡次数
 }
 
 CG_DRAWCARD_OP = {
@@ -46,12 +47,17 @@ GC_DRAWCARD_OP = {
     {"isAct",           1,      "int"}, --是否选取up活动
 	{"leftNewSRRCnt",   1,      "int"},    -- 新英雄活动期间,累计抽了多少次
 	{"leftNewSRR40Cnt", 1,      "int"},    -- 还需精灵召唤抽多少次,必出SSR
+	{"nHighCnt",		1,		"int"},		-- 高级抽卡次数
 }
 
 CG_DRAWCARD_SKIP_SET = {
 	{"skip",		    1,		"byte"},   -- 是否跳过
 }
 
+CG_DRAWCARD_SKIP_HEROSHOW = {
+	{"bOperate",	1,		"byte"},		-- 1 跳过,0 不跳过
+}
+
 RecommendLineup = 
 {
 	{"data", 	7, 	HeroSimple},

+ 15 - 3
script/module/hero/HeroLogic.lua

@@ -1790,18 +1790,30 @@ function isHeroUpDot(human, heroGrid)
 	-- 进阶
 	local maxQuality = HeroGrid.getMaxQuality(star)
 	if quality >= maxQuality then
+		print("[isHeroUpDot] 当前quality 大于 总的星级 quality = "..quality.." maxQuality = "..maxQuality)
 		return
 	end
 
 	local maxLv = HeroGrid.getMaxLv(heroGrid.star, maxQuality)	
-	if lv < maxLv then
+	if lv >= maxLv then
+		print("[isHeroUpDot] 当前等级 大于 最大等级 lv = "..lv.." maxLv = "..maxLv)
 		return
 	end
 
 	local conf = UpNeedExcel.upQuality[quality + 1]
-	if not conf then return end
-	if human.db.jinbi < conf.money then return end
+	if not conf then
+		print("[isHeroUpDot] 不存在下一星级配置 nextquality = "..quality + 1)
+		return 
+	end
+
+	if human.db.jinbi < conf.money then
+		print("[isHeroUpDot] 玩家金币不足 jinbi = "..human.db.jinbi.." nNeedMoney = "..conf.money)
+		return
+	end
+
 	if BagLogic.getItemCnt(human, ItemDefine.ITEM_HERO_UPGRADE_ID) < conf.jinjieshi then
+		print("[isHeroUpDot] 玩家进阶道具不足 jinjieshi = "..BagLogic.getItemCnt(human, ItemDefine.ITEM_HERO_UPGRADE_ID)
+				.." nNeedjinjieshi = "..conf.jinjieshi)
 		return 
 	end 
 

+ 4 - 0
script/module/serverCommerce/Handler.lua

@@ -15,6 +15,10 @@ function CG_SERVEERCOMMERCE_ACT_GETTASKPOINTPRIZE(human, msg)
     
 end
 
+function CG_SERVEERCOMMERCE_ACT_TASKPOINTQUERY(human, msg)
+    
+end
+
 ----------------------------------------- 连充豪礼协议请求开始 -------------------------------------
 -- 请求连充豪礼-信息
 function CG_SERVEERCOMMERCE_ACT_CHARGEQUERY(human, msg)