From 85dfd5c2999c7715c23d27119cf3f26fb0f418f5 Mon Sep 17 00:00:00 2001 From: ZhangBiao Date: Tue, 14 Dec 2021 15:31:30 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E5=91=BD=E6=A0=BC=E3=80=91=E6=8F=90?= =?UTF-8?q?=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ManagedResources/~Lua/Modules/Bag/BagPanel.lua | 8 ++++---- .../ManagedResources/~Lua/Modules/Gem/GemManager.lua | 12 ++++++++++-- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/Assets/ManagedResources/~Lua/Modules/Bag/BagPanel.lua b/Assets/ManagedResources/~Lua/Modules/Bag/BagPanel.lua index 02b4aa5f51..d2953cd8cc 100644 --- a/Assets/ManagedResources/~Lua/Modules/Bag/BagPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Bag/BagPanel.lua @@ -121,10 +121,10 @@ function BagPanel:BindEvent() end) Util.AddClick(this.oneKey, function() local list,num = GemManager.OneKeyConpound() - -- LogGreen("金币:"..tostring(num)) - -- for key, value in pairs(list) do - -- LogPink("key:"..tostring(key).." Value:"..tostring(value)) - -- end + LogGreen("====================金币:"..tostring(num).."=============") + for key, value in pairs(list) do + LogPink("key:"..tostring(key).." Value:"..tostring(value)) + end if num <= 0 then PopupTipPanel.ShowTip("无可合成的命石或金币不足!") return diff --git a/Assets/ManagedResources/~Lua/Modules/Gem/GemManager.lua b/Assets/ManagedResources/~Lua/Modules/Gem/GemManager.lua index 1ad31a5fa8..3bcdb8dfee 100644 --- a/Assets/ManagedResources/~Lua/Modules/Gem/GemManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Gem/GemManager.lua @@ -146,6 +146,7 @@ function this.DoCircle1(finalList,data) if not tempData.NextGem or tempData.NextGem == 0 then if lastGNum > 0 then finalList[tempData.Id] = lastGNum + -- LogPurple("0:ID:"..tostring(tempData.Id).." num:"..tostring(finalList[tempData.Id])) end else local bagGemNum = BagManager.GetTotalItemNum(tempData.Id)--当前背包中数量 @@ -159,6 +160,7 @@ function this.DoCircle1(finalList,data) if lastGNum > 0 then finalList[tempData.Id] = lastGNum lastGNum = 0 + -- LogPurple("1:ID:"..tostring(tempData.Id).." num:"..tostring(finalList[tempData.Id])) end else local remainNum = curGemNum%tempData.UpgradeNum--如果合成到下一级,本级所剩余的数量 @@ -168,20 +170,25 @@ function this.DoCircle1(finalList,data) if curGemNum > 0 then local needMoneyNum = curGemNum/tempData.UpgradeNum * tempData.UpgradeCost[2]--按照命石可合成的数量,要花费的金币 local curMoneyNum = BagManager.GetTotalItemNum(tempData.UpgradeCost[1])--当前金币数量 + -- LogYellow("needMoneyNum:"..tostring(needMoneyNum).." totalMoney:"..tostring(totalMoney)) if needMoneyNum + totalMoney > curMoneyNum then--如果当前金币不足要花费的数量,计算可以合成几个 local upNum = math.floor((curMoneyNum - totalMoney)/tempData.UpgradeCost[2])--实际真的合成了几个 totalMoney = totalMoney + upNum*tempData.UpgradeCost[2]--金币计入总数 local endCostNum = upNum*tempData.UpgradeNum--例如命石数量可消耗6,实际合成2,要把未使用的4加入最终list if lastGNum > endCostNum then finalList[tempData.Id] = lastGNum - endCostNum--要把未使用的加入最终list + -- LogPurple("2:ID:"..tostring(tempData.Id).." num:"..tostring(finalList[tempData.Id])) end finalList[tempData.NextGem] = upNum + -- LogPurple("3:ID:"..tostring(tempData.NextGem).." num:"..tostring(upNum)) + -- LogRed("Bool:"..tostring(false).." totalMoney:"..tostring(totalMoney)) return false,totalMoney else--如果金币足额 totalMoney = totalMoney + needMoneyNum--金币计入总数 - if bagGemNum > 0 then + if remainNum > 0 then if remainNum - bagGemNum > 0 then--如果扣除给下一次循环所需要的,本次剩余如果大于0,则全部加入最终list - finalList[tempData.NextGem] = remainNum - bagGemNum + finalList[tempData.Id] = remainNum - bagGemNum + -- LogPurple("4:ID:"..tostring(tempData.Id).." num:"..tostring(finalList[tempData.Id])) end end end @@ -191,6 +198,7 @@ function this.DoCircle1(finalList,data) end end end + -- LogRed("Bool:"..tostring(true).." totalMoney:"..tostring(totalMoney)) return true,totalMoney end