86d82306fe
EN: 1.7.0.88 CN: 1.7.0.90 JP: 1.7.0.91 KR: 1.7.0.94
189 lines
6.0 KiB
Lua
189 lines
6.0 KiB
Lua
local PenguinCardCtrl = class("PenguinCardCtrl", BaseCtrl)
|
|
local WwiseManger = CS.WwiseAudioManager.Instance
|
|
PenguinCardCtrl._mapNodeConfig = {
|
|
btnPause = {
|
|
nCount = 2,
|
|
sComponentName = "UIButton",
|
|
callback = "OnBtnClick_Pause"
|
|
},
|
|
Prepare = {
|
|
sNodeName = "---Prepare---",
|
|
sCtrlName = "Game.UI.Play_PenguinCard.PenguinCardPrepareCtrl"
|
|
},
|
|
Flip = {
|
|
sNodeName = "---Flip---",
|
|
sCtrlName = "Game.UI.Play_PenguinCard.PenguinCardFlipCtrl"
|
|
},
|
|
Slot = {
|
|
sNodeName = "---Slot---",
|
|
sCtrlName = "Game.UI.Play_PenguinCard.PenguinCardSlotCtrl"
|
|
},
|
|
Result = {
|
|
sNodeName = "---Result---",
|
|
sCtrlName = "Game.UI.Play_PenguinCard.PenguinCardResultCtrl"
|
|
},
|
|
CardInfo = {
|
|
sNodeName = "---CardInfo---",
|
|
sCtrlName = "Game.UI.Play_PenguinCard.PenguinCardInfoCtrl"
|
|
},
|
|
Pause = {
|
|
sNodeName = "---Pause---",
|
|
sCtrlName = "Game.UI.Play_PenguinCard.PenguinCardPauseCtrl"
|
|
},
|
|
HandRank = {
|
|
sNodeName = "---HandRank---",
|
|
sCtrlName = "Game.UI.Play_PenguinCard.PenguinCardHandRankCtrl"
|
|
},
|
|
Log = {
|
|
sNodeName = "---Log---",
|
|
sCtrlName = "Game.UI.Play_PenguinCard.PenguinCardLogCtrl"
|
|
},
|
|
Confirm = {
|
|
sNodeName = "---Confirm---",
|
|
sCtrlName = "Game.UI.Play_PenguinCard.PenguinCardConfirmCtrl"
|
|
}
|
|
}
|
|
PenguinCardCtrl._mapEventConfig = {
|
|
PenguinCard_RunState_Start = "RunState_Start",
|
|
PenguinCard_RunState_Prepare = "RunState_Prepare",
|
|
PenguinCard_RunState_Dealing = "RunState_Dealing",
|
|
PenguinCard_RunState_Flip = "RunState_Flip",
|
|
PenguinCard_RunState_Settlement = "RunState_Settlement",
|
|
PenguinCard_RunState_Complete = "RunState_Complete",
|
|
PenguinCard_QuitState_Start = "QuitState_Start",
|
|
PenguinCard_QuitState_Prepare = "QuitState_Prepare",
|
|
PenguinCard_QuitState_Dealing = "QuitState_Dealing",
|
|
PenguinCard_QuitState_Flip = "QuitState_Flip",
|
|
PenguinCard_QuitState_Settlement = "QuitState_Settlement",
|
|
PenguinCard_QuitState_Complete = "QuitState_Complete",
|
|
PenguinCard_Change = "OnEvent_Change"
|
|
}
|
|
function PenguinCardCtrl:RunState_Start()
|
|
self:CloseAll()
|
|
end
|
|
function PenguinCardCtrl:QuitState_Start()
|
|
end
|
|
function PenguinCardCtrl:RunState_Prepare()
|
|
self._mapNode.Prepare.gameObject:SetActive(true)
|
|
self._mapNode.Slot.gameObject:SetActive(true)
|
|
self._mapNode.Result.gameObject:SetActive(false)
|
|
self._mapNode.Flip.gameObject:SetActive(false)
|
|
self._mapNode.Prepare:Refresh()
|
|
self._mapNode.Slot:Refresh()
|
|
if self.bIn then
|
|
self.bIn = false
|
|
else
|
|
WwiseManger:PostEvent("Mode_Card_nextround")
|
|
end
|
|
EventManager.Hit("Guide_PassiveCheck_Msg", "Guide_PenguinCard_301")
|
|
local wait = function()
|
|
coroutine.yield(CS.UnityEngine.WaitForEndOfFrame())
|
|
EventManager.Hit("Guide_PassiveCheck_Msg", "Guide_PenguinCard_303")
|
|
end
|
|
cs_coroutine.start(wait)
|
|
end
|
|
function PenguinCardCtrl:QuitState_Prepare(nNextState)
|
|
if nNextState == 0 then
|
|
self._mapNode.Slot:PlayOutAni()
|
|
self._mapNode.Prepare:PlayOutAni()
|
|
WwiseManger:PostEvent("Mode_Card_dissolve")
|
|
elseif nNextState == 2 then
|
|
self._mapNode.Prepare:PlayOutAni()
|
|
WwiseManger:PostEvent("Mode_Card_dissolve")
|
|
elseif nNextState == 5 then
|
|
self._mapNode.Slot:PlayOutAni()
|
|
self._mapNode.Prepare:PlayOutAni()
|
|
self.animator:Play("PengUinCard_Bg_Result")
|
|
WwiseManger:PostEvent("Mode_Card_dissolve")
|
|
end
|
|
end
|
|
function PenguinCardCtrl:RunState_Dealing()
|
|
self._mapNode.Prepare.gameObject:SetActive(false)
|
|
self._mapNode.Flip.gameObject:SetActive(true)
|
|
self._mapNode.Flip:Refresh_Dealing()
|
|
EventManager.Hit("Guide_PassiveCheck_Msg", "Guide_PenguinCard_302")
|
|
end
|
|
function PenguinCardCtrl:QuitState_Dealing(nNextState)
|
|
if nNextState == 0 then
|
|
self._mapNode.Slot:PlayOutAni()
|
|
self._mapNode.Flip:PlayOutAni()
|
|
WwiseManger:PostEvent("Mode_Card_dissolve")
|
|
elseif nNextState == 5 then
|
|
self._mapNode.Slot:PlayOutAni()
|
|
self._mapNode.Flip:PlayOutAni()
|
|
self.animator:Play("PengUinCard_Bg_Result")
|
|
WwiseManger:PostEvent("Mode_Card_dissolve")
|
|
end
|
|
end
|
|
function PenguinCardCtrl:RunState_Flip()
|
|
self._mapNode.Flip:Refresh_Flip()
|
|
end
|
|
function PenguinCardCtrl:QuitState_Flip(nNextState)
|
|
self._mapNode.Flip:StopShowAllOn()
|
|
if nNextState == 0 then
|
|
self._mapNode.Slot:PlayOutAni()
|
|
self._mapNode.Flip:PlayOutAni()
|
|
WwiseManger:PostEvent("Mode_Card_dissolve")
|
|
elseif nNextState == 5 then
|
|
self._mapNode.Slot:PlayOutAni()
|
|
self._mapNode.Flip:PlayOutAni()
|
|
self.animator:Play("PengUinCard_Bg_Result")
|
|
WwiseManger:PostEvent("Mode_Card_dissolve")
|
|
end
|
|
end
|
|
function PenguinCardCtrl:RunState_Settlement()
|
|
self._mapNode.Flip:Refresh_Settlement()
|
|
end
|
|
function PenguinCardCtrl:QuitState_Settlement(nNextState)
|
|
if nNextState == 0 then
|
|
self._mapNode.Slot:PlayOutAni()
|
|
self._mapNode.Flip:PlayOutAni()
|
|
WwiseManger:PostEvent("Mode_Card_dissolve")
|
|
elseif nNextState == 1 then
|
|
self._mapNode.Flip:PlayOutAni()
|
|
WwiseManger:PostEvent("Mode_Card_dissolve")
|
|
elseif nNextState == 2 then
|
|
self._mapNode.Flip:PlayRoundAni()
|
|
elseif nNextState == 5 then
|
|
self._mapNode.Slot:PlayOutAni()
|
|
self._mapNode.Flip:PlayOutAni()
|
|
self.animator:Play("PengUinCard_Bg_Result")
|
|
WwiseManger:PostEvent("Mode_Card_dissolve")
|
|
end
|
|
end
|
|
function PenguinCardCtrl:RunState_Complete()
|
|
self._mapNode.Result:Open()
|
|
end
|
|
function PenguinCardCtrl:QuitState_Complete()
|
|
end
|
|
function PenguinCardCtrl:CloseAll()
|
|
self._mapNode.Prepare.gameObject:SetActive(false)
|
|
self._mapNode.Slot.gameObject:SetActive(false)
|
|
self._mapNode.Flip.gameObject:SetActive(false)
|
|
self._mapNode.CardInfo.gameObject:SetActive(false)
|
|
self._mapNode.Pause.gameObject:SetActive(false)
|
|
self._mapNode.HandRank.gameObject:SetActive(false)
|
|
self._mapNode.Result.gameObject:SetActive(false)
|
|
self._mapNode.Log.gameObject:SetActive(false)
|
|
self._mapNode.Confirm.gameObject:SetActive(false)
|
|
end
|
|
function PenguinCardCtrl:Awake()
|
|
self.bIn = true
|
|
self.animator = self.gameObject:GetComponent("Animator")
|
|
self:CloseAll()
|
|
end
|
|
function PenguinCardCtrl:OnEnable()
|
|
self._panel.mapLevel:StartGame()
|
|
self._mapNode.Flip:RefreshButton()
|
|
end
|
|
function PenguinCardCtrl:OnDisable()
|
|
self._panel.mapLevel = nil
|
|
end
|
|
function PenguinCardCtrl:OnBtnClick_Pause(btn)
|
|
self._mapNode.Pause:Open()
|
|
end
|
|
function PenguinCardCtrl:OnEvent_Change(callback)
|
|
callback(self, self._panel.mapLevel)
|
|
end
|
|
return PenguinCardCtrl
|