Initial version - 1.2.0.60
EN: 1.2.0.60 CN: 1.2.0.61 JP: 1.2.0.63 KR: 1.2.0.67
This commit is contained in:
@@ -0,0 +1,179 @@
|
||||
local GachaNewBieShowResultCtrl = class("GachaNewBieShowResultCtrl", BaseCtrl)
|
||||
local WwiseAudioMgr = CS.WwiseAudioManager.Instance
|
||||
GachaNewBieShowResultCtrl._mapNodeConfig = {
|
||||
Item = {
|
||||
sCtrlName = "Game.UI.GachaEx.GachaShowResultGrid",
|
||||
nCount = 10
|
||||
},
|
||||
txt_newbie_result_save = {
|
||||
sComponentName = "TMP_Text",
|
||||
sLanguageId = "Gacha_NewBieSaveResult"
|
||||
},
|
||||
txt_newbie_result_summon = {
|
||||
sComponentName = "TMP_Text",
|
||||
sLanguageId = "Gacha_NewBieResultSummonAgain"
|
||||
},
|
||||
txt_newbie_result_summon_remain = {
|
||||
sComponentName = "TMP_Text",
|
||||
sLanguageId = "Gacha_NewBieRecordResultRemain"
|
||||
},
|
||||
txt_newbie_result_record = {
|
||||
sComponentName = "TMP_Text",
|
||||
sLanguageId = "Gacha_NewBieRecordResult"
|
||||
},
|
||||
btnClose = {
|
||||
sComponentName = "UIButton",
|
||||
callback = "OnBtnClick_Close"
|
||||
},
|
||||
btn_newbie_save = {
|
||||
sComponentName = "UIButton",
|
||||
callback = "OnBtnClick_Save"
|
||||
},
|
||||
btn_newbie_summon = {
|
||||
sComponentName = "UIButton",
|
||||
callback = "OnBtnClick_Summon"
|
||||
},
|
||||
btn_newbie_record = {
|
||||
sComponentName = "UIButton",
|
||||
callback = "OnBtnClick_Record"
|
||||
}
|
||||
}
|
||||
GachaNewBieShowResultCtrl._mapEventConfig = {
|
||||
Guide_GachaStart = "OnEvent_Guide_GachaStart"
|
||||
}
|
||||
function GachaNewBieShowResultCtrl:Awake()
|
||||
self.remainCount = -1
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:FadeIn()
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:FadeOut()
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:OnEnable()
|
||||
self.GuideBlock = false
|
||||
self.gameObject:SetActive(false)
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:OnDisable()
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:OnDestroy()
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:OnRelease()
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:RefreshInfo()
|
||||
if self.curPoolId == nil then
|
||||
return
|
||||
end
|
||||
local newbie = ConfigTable.GetData("GachaNewbie", self.curPoolId)
|
||||
if newbie == nil then
|
||||
return
|
||||
end
|
||||
local newbieData = PlayerData.Gacha:GetGachaNewbieData(self.curPoolId)
|
||||
if newbieData == nil then
|
||||
return
|
||||
end
|
||||
local c = tostring(#newbieData.Cards) .. "/" .. tostring(newbie.SaveCount)
|
||||
local nTotalCount = newbie.SpinCount
|
||||
local remainCount = nTotalCount - newbieData.Times
|
||||
if #newbieData.Temp == 0 or remainCount == 0 then
|
||||
self._mapNode.btn_newbie_save.gameObject:SetActive(false)
|
||||
else
|
||||
self._mapNode.btn_newbie_save.gameObject:SetActive(true)
|
||||
end
|
||||
NovaAPI.SetTMPText(self._mapNode.txt_newbie_result_record, orderedFormat(ConfigTable.GetUIText("Gacha_NewBieRecordResult") or "", c))
|
||||
NovaAPI.SetTMPText(self._mapNode.txt_newbie_result_summon_remain, orderedFormat(ConfigTable.GetUIText("Gacha_NewBieRecordResultRemain") or "", remainCount))
|
||||
if remainCount <= 0 then
|
||||
NovaAPI.SetTMPText(self._mapNode.txt_newbie_result_summon, ConfigTable.GetUIText("Gacha_Newbie_BtnShowRecord"))
|
||||
end
|
||||
self.remainCount = remainCount
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:ShowResult(tbReward, poolId)
|
||||
self.curPoolId = poolId
|
||||
WwiseAudioMgr:PlaySound("ui_recuit_gacha_result")
|
||||
self:RefreshInfo()
|
||||
self.curStep = 1
|
||||
local nDelayTime = 0
|
||||
self.hasSSR = false
|
||||
for i = 1, 10 do
|
||||
if tbReward[i] ~= nil then
|
||||
self._mapNode.Item[i].gameObject:SetActive(true)
|
||||
local itemTime = self._mapNode.Item[i]:Refresh(tbReward[i].id, tbReward[i].bNew, nDelayTime)
|
||||
local mapItemCfg = ConfigTable.GetData_Item(tbReward[i].id)
|
||||
nDelayTime = nDelayTime + itemTime
|
||||
if mapItemCfg ~= nil and mapItemCfg.Rarity == GameEnum.itemRarity.SSR then
|
||||
self.hasSSR = true
|
||||
end
|
||||
else
|
||||
self._mapNode.Item[i].gameObject:SetActive(false)
|
||||
end
|
||||
end
|
||||
local AllCardShowCallback = function()
|
||||
self.curStep = 2
|
||||
self.delayTimer = nil
|
||||
for i = 1, 10 do
|
||||
self._mapNode.Item[i]:ShowAllCardEnd()
|
||||
end
|
||||
EventManager.Hit("Guide_GachaFinish")
|
||||
self:BlockJump(0.5)
|
||||
end
|
||||
self.delayTimer = self:AddTimer(1, nDelayTime, AllCardShowCallback, true, true, nil, nil)
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:BlockJump(nTime)
|
||||
self.bBlockJump = true
|
||||
local unBlockJump = function()
|
||||
self.bBlockJump = false
|
||||
end
|
||||
self:AddTimer(1, nTime, unBlockJump, true, true, nil, nil)
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:OnBtnClick_Close()
|
||||
if self.bBlockJump then
|
||||
return
|
||||
end
|
||||
if self.curStep == 1 then
|
||||
for i = 1, 10 do
|
||||
self._mapNode.Item[i]:JumpDelay()
|
||||
end
|
||||
if self.delayTimer ~= nil then
|
||||
self.delayTimer:Cancel(true)
|
||||
end
|
||||
else
|
||||
self.gameObject:SetActive(false)
|
||||
WwiseAudioMgr:SetState("recruit_rarity", "None")
|
||||
for i = 1, 10 do
|
||||
self._mapNode.Item[i].gameObject:SetActive(false)
|
||||
end
|
||||
PlayerData.Item:TryOpenFragmentsOverflow(function()
|
||||
PlayerData.Phone:CheckNewChat()
|
||||
end)
|
||||
end
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:OnBtnClick_Save()
|
||||
if self.GuideBlock then
|
||||
return
|
||||
end
|
||||
EventManager.Hit("GachaNewbieSaveRecord")
|
||||
self.hasSSR = false
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:OnBtnClick_Summon()
|
||||
local ConfirmCallback = function()
|
||||
EventManager.Hit("GachaNewbieSpin")
|
||||
end
|
||||
local msg = {
|
||||
nType = AllEnum.MessageBox.Confirm,
|
||||
sContent = ConfigTable.GetUIText("Gacha_Newbie_RecordSSRHint"),
|
||||
callbackConfirm = ConfirmCallback,
|
||||
bDisableSnap = false
|
||||
}
|
||||
if self.remainCount == 0 then
|
||||
self:OnBtnClick_Record()
|
||||
elseif self.hasSSR then
|
||||
EventManager.Hit(EventId.OpenMessageBox, msg)
|
||||
else
|
||||
ConfirmCallback()
|
||||
end
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:OnBtnClick_Record()
|
||||
EventManager.Hit("GachaNewbieRecord")
|
||||
end
|
||||
function GachaNewBieShowResultCtrl:OnEvent_Guide_GachaStart(bBlock)
|
||||
self.GuideBlock = bBlock
|
||||
end
|
||||
return GachaNewBieShowResultCtrl
|
||||
Reference in New Issue
Block a user