Quellcode durchsuchen

1.新增秘宝相关代码 2.优化种族试炼系统代码

gitxsm vor 1 Jahr
Ursprung
Commit
b6c0e64097

+ 8 - 1
script/module/bar/BarTaskLogic.lua

@@ -24,7 +24,7 @@ local HeroLogLogic = require("absAct.HeroLogLogic")
 local HeroGrowUp = require("absAct.HeroGrowUp")
 local MengxinLogic = require("present.MengxinLogic")
 local YunYingLogic = require("yunying.YunYingLogic")
-
+local TalismanLogic = require("talisman.TalismanLogic")
 
 DEFAULT_BASE_TASK_CNT = 6         -- 默认基本任务数
 DEFAULT_REFRESH_ZUANSHI_CNT = 30  -- 默认刷新所需钻石数量
@@ -136,6 +136,11 @@ function query(human)
     msgRet.freeCnt = BARTASK_DAY_FREE - human.db.bar.refresCnt
     msgRet.freeCnt = msgRet.freeCnt > 0 and msgRet.freeCnt or 0
     msgRet.doubleCnt = 0
+
+    --秘宝对悬赏情报上限加成
+    local qingBaoAdd = TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.XUANSHANG_QB_MAX) or 0
+    msgRet.qingBaoMax = msgRet.qingBaoMax + qingBaoAdd
+
     Grid.makeItem(msgRet.refresItem, ItemDefine.ITEM_BASE_JUANZHOU_ID, 1)
 
     if double and human.db.bar.doubleCnt <= DEFAULT_MAX_DOUBLE_CNT then
@@ -749,6 +754,8 @@ function addBarQingBao(human, cnt)
     end
 
     local max = RoleExcel.exp[human.db.lv].qingBaoMax
+    local qingBaoAdd = TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.XUANSHANG_QB_MAX) or 0
+    max = max + qingBaoAdd
 
     if human.db.bar.qingbao + cnt < max then
         human.db.bar.qingbao = human.db.bar.qingbao + cnt

+ 6 - 0
script/module/battle/BattleLogic.lua

@@ -1385,6 +1385,12 @@ function query(human)
     -- 悬赏情报数量
     msgRet.xushang = human.db.bar and human.db.bar.qingbao or 0
     msgRet.xushangMax = RoleExcel.exp[human.db.lv].qingBaoMax
+
+    --秘宝对悬赏情报上限加成
+    local qingBaoAdd = TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.XUANSHANG_QB_MAX) or 0
+    msgRet.xushangMax = msgRet.xushangMax + qingBaoAdd
+
+
     -- 悬赏红点
     msgRet.xsDot = 0
     if BarTaskLogic.isDot(human) then

+ 21 - 15
script/module/copy/CopyLogic.lua

@@ -36,7 +36,14 @@ local function getTalismanAdd(human)
 	local jinbiAdd = (TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_JB) or 0) / 100
 	local heroExpAdd = (TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_HERO_EXP) or 0) / 100
 	local longhunshiAdd = (TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_LHS) or 0) / 100
-	return jinbiAdd, heroExpAdd, longhunshiAdd
+	local fuwenJinghuaAdd = (TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_FWJH) or 0) / 100
+	return jinbiAdd, heroExpAdd, longhunshiAdd, fuwenJinghuaAdd
+end
+
+--获取秘宝方面的加成
+local function getTalismanChallengeleAdd(human)
+	local challengeAdd = TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_CHALLENGE_TIMES) or 0
+	return challengeAdd
 end
 
 
@@ -140,13 +147,9 @@ function challengeQuery(human, copyType)
 	local now = os.time()
 	local ts1 = Util.getDayStartTime(now)
 	msgRet.nextRefreshTime = 24 * 60 * 60 - (now - ts1)
-	
-	--秘宝加成
-	local jinbiAdd, heroExpAdd, longhunshiAdd = getTalismanAdd(human)
-	-- local talismanAdd_jinbi = (TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_JB) or 0) / 100
-	-- local talismanAdd_hero_exp = (TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_HERO_EXP) or 0) / 100
-	-- local talismanAdd_lhs = (TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_LHS) or 0) / 100
 
+	--秘宝加成
+	local jinbiAdd, heroExpAdd, longhunshiAdd, fuwenJinghuaAdd = getTalismanAdd(human)
 
 	local j = 0  -- 存储相同副本类型的数量
 	for i=1, #CopyExcel.copy do
@@ -168,6 +171,8 @@ function challengeQuery(human, copyType)
 					itemCnt = itemCnt + math.ceil(itemCnt * heroExpAdd)
 				elseif itemID == ItemDefine.ITEM_LONGHUNSHI_ID and longhunshiAdd > 0 then
 					itemCnt = itemCnt + math.ceil(itemCnt * longhunshiAdd)
+				elseif itemID == ItemDefine.ITEM_FUWEN_JINGHUA and fuwenJinghuaAdd > 0 then
+					itemCnt = itemCnt + math.ceil(itemCnt * fuwenJinghuaAdd)
 				end
 				Grid.makeItem(msgRet.list[j].reward[key], itemID, itemCnt)
 			end
@@ -239,10 +244,7 @@ function doFightEnd(human,copyID,combatInfo, touch)
 
 
 	--秘宝加成
-	local jinbiAdd, heroExpAdd, longhunshiAdd = getTalismanAdd(human)
-	-- local talismanAdd_jinbi = (TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_JB) or 0) / 100
-	-- local talismanAdd_hero_exp = (TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_HERO_EXP) or 0) / 100
-	-- local talismanAdd_lhs = (TalismanLogic.getTalismanAdd(human, TalismanLogic.OTHER_EFFECT_TBL.NW_LHS) or 0) / 100
+	local jinbiAdd, heroExpAdd, longhunshiAdd, fuwenJinghuaAdd = getTalismanAdd(human)
 
 
 	-- 给奖励
@@ -259,6 +261,8 @@ function doFightEnd(human,copyID,combatInfo, touch)
 			finalCnt = finalCnt + math.ceil(finalCnt * heroExpAdd)
 		elseif itemID == ItemDefine.ITEM_LONGHUNSHI_ID and longhunshiAdd > 0 then
 			finalCnt = finalCnt + math.ceil(finalCnt * longhunshiAdd)
+		elseif itemID == ItemDefine.ITEM_FUWEN_JINGHUA and fuwenJinghuaAdd > 0 then
+			finalCnt = finalCnt + math.ceil(finalCnt * fuwenJinghuaAdd)
 		end
 		BagLogic.addItem(human, itemID, finalCnt, "copy_win")
 		local index = #itemList+1
@@ -271,7 +275,8 @@ function doFightEnd(human,copyID,combatInfo, touch)
 				local nowTotalCnt = #combatInfo.rewardItem
 				combatInfo.rewardItem[nowTotalCnt + 1] = {}
 				combatInfo.rewardItem[nowTotalCnt + 1][1] = itemID
-				if itemID == ItemDefine.ITEM_JINBI_ID or itemID == ItemDefine.ITEM_GREEN_EXP_ID or itemID == ItemDefine.ITEM_LONGHUNSHI_ID then
+				if itemID == ItemDefine.ITEM_JINBI_ID or itemID == ItemDefine.ITEM_GREEN_EXP_ID
+					or itemID == ItemDefine.ITEM_LONGHUNSHI_ID or itemID == ItemDefine.ITEM_FUWEN_JINGHUA then
 					combatInfo.rewardItem[nowTotalCnt + 1][2] = finalCnt
 				else
 					combatInfo.rewardItem[nowTotalCnt + 1][2] = itemCnt * rewardRate * fightCnt
@@ -395,25 +400,26 @@ function getLeftCnt(human, copyType)
 	if human.db.copy and human.db.copy[copyType] then
 		nowCnt = human.db.copy[copyType].cnt or 0
 	end
-	
 	return maxCnt - nowCnt
 end
 
 function getCurMaxCnt(human, copyType)
 	local challengeCnt = CopyExcel.richang[copyType].challengeCnt
 	local buyCnt = getMaxBuyCnt(human, copyType)
+	local talismanAdd = getTalismanChallengeleAdd(human)
 	local nowCnt = 0
 	if human.db.copy and human.db.copy[copyType] then
 		nowCnt = human.db.copy[copyType].cnt or 0
 	end
 
-	return buyCnt +  challengeCnt - nowCnt
+	return buyCnt +  challengeCnt + talismanAdd - nowCnt
 end
 
 function getMaxCnt(human, copyType)
 	local curBuyCnt = getCurBuyCnt(human, copyType)
 	local challengeCnt = CopyExcel.richang[copyType].challengeCnt
-	return challengeCnt + curBuyCnt
+	local talismanAdd = getTalismanChallengeleAdd(human)
+	return challengeCnt + curBuyCnt + talismanAdd
 end
 
 function getCanBuyCnt(human, copyType)

+ 6 - 12
script/module/racialTrial/RacialTrialLogic.lua

@@ -196,7 +196,7 @@ function isDot(human,config)
     end
 
     --入口的红点
-    if config.id == 1210 then
+    if config.id == RoleSystemDefine.ROLE_SYS_ID_1210 then
         --如果当天一个试炼都没有开启,则入口也不显示红点
         local bl = false
         for _, v in ipairs(RACIAL_OPENTIME) do
@@ -231,13 +231,13 @@ function isDot(human,config)
     else
         --具体某个种族关卡的红点
         local camp = 0
-        if config.id == 1211 then
+        if config.id == RoleSystemDefine.ROLE_SYS_ID_1211 then
             camp = 1
-        elseif config.id == 1212 then
+        elseif config.id == RoleSystemDefine.ROLE_SYS_ID_1212 then
             camp = 2
-        elseif config.id == 1213 then
+        elseif config.id == RoleSystemDefine.ROLE_SYS_ID_1213 then
             camp = 3
-        elseif config.id == 1214 then
+        elseif config.id == RoleSystemDefine.ROLE_SYS_ID_1214 then
             camp = 4
         else
             return false
@@ -290,15 +290,9 @@ function updateDaily(human)
     end
 end
 
+
 function onLogin(human)
     updateCondValue()
-    -- if human.db.lv < openCondLevel then
-    --     return
-    -- end
-
-    -- if not next(racialCfg) then
-    --     generateCfg()
-    -- end
 end
 
 --GM 修改某个种族的关卡, levelCnt表示要往前/后打多少关,但是不增加每日领奖次数

+ 3 - 0
script/module/talisman/TalismanLogic.lua

@@ -39,6 +39,9 @@ OTHER_EFFECT_TBL = {
     ["DRILL_JINBI"] = "DRILL_JINBI",                --勇者试炼金币类型
     ["ZHANBU_MAX_POINTS"] = "ZHANBU_MAX_POINTS",    --占卜最大积分类型
     ["JYZH_LOTTERY10"] = "JYZH_LOTTERY10",          --精英召唤10连类型
+    ["NW_FWJH"] = "NW_FWJH",                        --女巫森林符文精华
+    ["NW_CHALLENGE_TIMES"] = "NW_CHALLENGE_TIMES",  --女巫森林所有类型挑战次数
+    ["XUANSHANG_QB_MAX"] = "XUANSHANG_QB_MAX",      --悬赏情报上限
 }
 
 --是否开启本系统