gltfxe 1 год назад
Родитель
Сommit
326f586a4f
2 измененных файлов с 30 добавлено и 14 удалено
  1. 26 13
      script/module/drawCard/DrawCardLogic.lua
  2. 4 1
      script/module/drawCard/Proto.lua

+ 26 - 13
script/module/drawCard/DrawCardLogic.lua

@@ -63,6 +63,8 @@ DRAWCARD_ID6 = 6	-- 高级召唤单抽
 DRAWCARD_ID7 = 7    -- 40高抽必出SSR
 DRAWCARD_ID8 = 8    -- 新英雄活动抽卡
 DRAWCARD_ID9 = 9    -- 100高抽必出新英雄
+DRAWCARD_ID10 = 10    -- 新英雄活动十抽
+DRAWCARD_ID11 = 11    -- 新英雄活动40抽必出
 
 DRAWCARD_OP_1 = 1	-- 召唤1次
 DRAWCARD_OP_2 = 2	-- 召唤10次
@@ -263,18 +265,21 @@ function fontDrawCardNet(net, id, human)
     net.canBuy = ItemExcel.buy[config.item1[1]] and 1 or 0
 end
 
--- 三个抽奖列表
+-- 抽奖列表
 function query(human)
     local msgRet = Msg.gc.GC_DRAWCARD_QUERY
     msgRet.jifen = getJifen(human)
     msgRet.left = getDrawNoSSRCnt(human, DRAWCARD_ID2)
     msgRet.leftNoSRRCnt = DRAWCARD_40 - getDrawNoSSRCnt(human, DRAWCARD_ID2)
-    msgRet.leftNewSRRCnt = getDrawNewSSRCnt(human, DRAWCARD_ID2)
+    msgRet.leftNewSRRCnt = getDrawNewSSRCnt(human, DRAWCARD_ID8)
+    msgRet.leftNewSRR40Cnt = DRAWCARD_40 - getDrawNoSSRCnt(human, DRAWCARD_ID8)
     msgRet.list[0] = 0
-    for id = DRAWCARD_ID1, DRAWCARD_ID3 do        
+
+    local ids = {DRAWCARD_ID1, DRAWCARD_ID2, DRAWCARD_ID3, DRAWCARD_ID8}
+    for i = 1, #ids do
         msgRet.list[0] = msgRet.list[0] + 1
         local net = msgRet.list[msgRet.list[0]]
-        fontDrawCardNet(net, id, human)
+        fontDrawCardNet(net, ids[i], human)
     end
 
     local needItemID = ItemDefine.ITEM_XIANZHI_BAOZHU_ID
@@ -288,7 +293,8 @@ function sendDrawOp(human, id, op, heroList, items, heroNewList, heroIndexList,i
     local msgRet = Msg.gc.GC_DRAWCARD_OP
     msgRet.isAct = isAct or 0
     msgRet.leftNoSRRCnt = DRAWCARD_40 - getDrawNoSSRCnt(human, DRAWCARD_ID2)
-    msgRet.leftNewSRRCnt = getDrawNewSSRCnt(human, DRAWCARD_ID2)
+    msgRet.leftNewSRRCnt = getDrawNewSSRCnt(human, DRAWCARD_ID8)
+    msgRet.leftNewSRR40Cnt = DRAWCARD_40 - getDrawNoSSRCnt(human, DRAWCARD_ID8)
     local dataNet = msgRet.data
     dataNet.jifen = getJifen(human)
     dataNet.id = id
@@ -520,6 +526,12 @@ local function draw(human, id, op, actConfig, skip,isAct)
         return
     end
 
+    local state, endTime, starTime = AbsActLogic.isStarted(human, NewHeroLogic.ABS_ACT_ID)
+
+    if id == DRAWCARD_ID8 and not state then
+        return
+    end
+
     if HeroLogic.getEmptyCnt(human) < heroCnt then
         return Broadcast.sendErr(human, Lang.HERO_BAG_FULL)
     end
@@ -548,12 +560,9 @@ local function draw(human, id, op, actConfig, skip,isAct)
             config = DrawCardExcel[DRAWCARD_ID6]
         end
 
-        local state, endTime, starTime = AbsActLogic.isStarted(human, NewHeroLogic.ABS_ACT_ID)
-        if state then
-            config = DrawCardExcel[DRAWCARD_ID8]
-            if id == DRAWCARD_ID2 and op == DRAWCARD_OP_2 and i == randomMin and getDraw2Cnt(human, id) > 3 then
-                config = DrawCardExcel[DRAWCARD_ID5]
-            end
+        
+        if id == DRAWCARD_ID8 and op == DRAWCARD_OP_2 and i == randomMin then
+            config = DrawCardExcel[DRAWCARD_ID10]
         end
 
         -- 第40抽必出SSR
@@ -561,7 +570,11 @@ local function draw(human, id, op, actConfig, skip,isAct)
             config = DrawCardExcel[DRAWCARD_ID7]
         end
 
-        if id == DRAWCARD_ID2 and getDrawNewSSRCnt(human, id) >= DRAWCARD_100 - 1 then
+        if id == DRAWCARD_ID8 and getDrawNoSSRCnt(human, id) >= DRAWCARD_40 - 1 then
+            config = DrawCardExcel[DRAWCARD_ID11]
+        end
+
+        if id == DRAWCARD_ID8 and getDrawNewSSRCnt(human, id) >= DRAWCARD_100 - 1 then
             config = DrawCardExcel[DRAWCARD_ID9]
         end
 
@@ -653,7 +666,7 @@ function op(human, id, op, skip,isAct)
         return
     end  
 
-    if id == DRAWCARD_ID1 or id == DRAWCARD_ID2 or id == DRAWCARD_ID3 or id == DRAWCARD_ID6 then
+    if id == DRAWCARD_ID1 or id == DRAWCARD_ID2 or id == DRAWCARD_ID3 or id == DRAWCARD_ID6 or id == DRAWCARD_ID8 then
         draw(human, id, op, nil, skip,isAct)
         return
     end

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

@@ -13,12 +13,14 @@ DrawCardNet = {
 }
 
 GC_DRAWCARD_QUERY = {
-	{"list",			3,		DrawCardNet},
+	{"list",			4,		DrawCardNet},
 	{"jifen",			1,		"int"},     -- 当前积分 
     {"qiyuan",			1,		ItemData},
     {"skip",		    1,		"byte"},   -- 是否跳过
     {"leftNoSRRCnt",    1,      "int"},    -- 还需高抽多少次,必出SSR
 	{"leftNewSRRCnt",   1,      "int"},    -- 新英雄活动期间,累计抽了多少次
+	{"leftNewSRR40Cnt", 1,      "int"},    -- 还需精灵召唤抽多少次,必出SSR
+	
 }
 
 CG_DRAWCARD_OP = {
@@ -42,6 +44,7 @@ GC_DRAWCARD_OP = {
     {"leftNoSRRCnt",    1,      "int"},    -- 还需高抽多少次,必出SSR
     {"isAct",           1,      "int"}, --是否选取up活动
 	{"leftNewSRRCnt",   1,      "int"},    -- 新英雄活动期间,累计抽了多少次
+	{"leftNewSRR40Cnt", 1,      "int"},    -- 还需精灵召唤抽多少次,必出SSR
 }
 
 CG_DRAWCARD_SKIP_SET = {