【命格】提交

dev_chengFeng
ZhangBiao 2021-12-14 15:31:30 +08:00
parent ad71840333
commit 85dfd5c299
2 changed files with 14 additions and 6 deletions

View File

@ -121,10 +121,10 @@ function BagPanel:BindEvent()
end) end)
Util.AddClick(this.oneKey, function() Util.AddClick(this.oneKey, function()
local list,num = GemManager.OneKeyConpound() local list,num = GemManager.OneKeyConpound()
-- LogGreen("金币:"..tostring(num)) LogGreen("====================金币:"..tostring(num).."=============")
-- for key, value in pairs(list) do for key, value in pairs(list) do
-- LogPink("key:"..tostring(key).." Value:"..tostring(value)) LogPink("key:"..tostring(key).." Value:"..tostring(value))
-- end end
if num <= 0 then if num <= 0 then
PopupTipPanel.ShowTip("无可合成的命石或金币不足!") PopupTipPanel.ShowTip("无可合成的命石或金币不足!")
return return

View File

@ -146,6 +146,7 @@ function this.DoCircle1(finalList,data)
if not tempData.NextGem or tempData.NextGem == 0 then if not tempData.NextGem or tempData.NextGem == 0 then
if lastGNum > 0 then if lastGNum > 0 then
finalList[tempData.Id] = lastGNum finalList[tempData.Id] = lastGNum
-- LogPurple("0:ID:"..tostring(tempData.Id).." num:"..tostring(finalList[tempData.Id]))
end end
else else
local bagGemNum = BagManager.GetTotalItemNum(tempData.Id)--当前背包中数量 local bagGemNum = BagManager.GetTotalItemNum(tempData.Id)--当前背包中数量
@ -159,6 +160,7 @@ function this.DoCircle1(finalList,data)
if lastGNum > 0 then if lastGNum > 0 then
finalList[tempData.Id] = lastGNum finalList[tempData.Id] = lastGNum
lastGNum = 0 lastGNum = 0
-- LogPurple("1:ID:"..tostring(tempData.Id).." num:"..tostring(finalList[tempData.Id]))
end end
else else
local remainNum = curGemNum%tempData.UpgradeNum--如果合成到下一级,本级所剩余的数量 local remainNum = curGemNum%tempData.UpgradeNum--如果合成到下一级,本级所剩余的数量
@ -168,20 +170,25 @@ function this.DoCircle1(finalList,data)
if curGemNum > 0 then if curGemNum > 0 then
local needMoneyNum = curGemNum/tempData.UpgradeNum * tempData.UpgradeCost[2]--按照命石可合成的数量,要花费的金币 local needMoneyNum = curGemNum/tempData.UpgradeNum * tempData.UpgradeCost[2]--按照命石可合成的数量,要花费的金币
local curMoneyNum = BagManager.GetTotalItemNum(tempData.UpgradeCost[1])--当前金币数量 local curMoneyNum = BagManager.GetTotalItemNum(tempData.UpgradeCost[1])--当前金币数量
-- LogYellow("needMoneyNum:"..tostring(needMoneyNum).." totalMoney:"..tostring(totalMoney))
if needMoneyNum + totalMoney > curMoneyNum then--如果当前金币不足要花费的数量,计算可以合成几个 if needMoneyNum + totalMoney > curMoneyNum then--如果当前金币不足要花费的数量,计算可以合成几个
local upNum = math.floor((curMoneyNum - totalMoney)/tempData.UpgradeCost[2])--实际真的合成了几个 local upNum = math.floor((curMoneyNum - totalMoney)/tempData.UpgradeCost[2])--实际真的合成了几个
totalMoney = totalMoney + upNum*tempData.UpgradeCost[2]--金币计入总数 totalMoney = totalMoney + upNum*tempData.UpgradeCost[2]--金币计入总数
local endCostNum = upNum*tempData.UpgradeNum--例如命石数量可消耗6实际合成2要把未使用的4加入最终list local endCostNum = upNum*tempData.UpgradeNum--例如命石数量可消耗6实际合成2要把未使用的4加入最终list
if lastGNum > endCostNum then if lastGNum > endCostNum then
finalList[tempData.Id] = lastGNum - endCostNum--要把未使用的加入最终list finalList[tempData.Id] = lastGNum - endCostNum--要把未使用的加入最终list
-- LogPurple("2:ID:"..tostring(tempData.Id).." num:"..tostring(finalList[tempData.Id]))
end end
finalList[tempData.NextGem] = upNum finalList[tempData.NextGem] = upNum
-- LogPurple("3:ID:"..tostring(tempData.NextGem).." num:"..tostring(upNum))
-- LogRed("Bool:"..tostring(false).." totalMoney:"..tostring(totalMoney))
return false,totalMoney return false,totalMoney
else--如果金币足额 else--如果金币足额
totalMoney = totalMoney + needMoneyNum--金币计入总数 totalMoney = totalMoney + needMoneyNum--金币计入总数
if bagGemNum > 0 then if remainNum > 0 then
if remainNum - bagGemNum > 0 then--如果扣除给下一次循环所需要的本次剩余如果大于0则全部加入最终list 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 end
end end
@ -191,6 +198,7 @@ function this.DoCircle1(finalList,data)
end end
end end
end end
-- LogRed("Bool:"..tostring(true).." totalMoney:"..tostring(totalMoney))
return true,totalMoney return true,totalMoney
end end