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,86 @@
|
||||
local NoteCountItemCtrl = class("NoteCountItemCtrl", BaseCtrl)
|
||||
NoteCountItemCtrl._mapNodeConfig = {
|
||||
imgNoteBg = {sComponentName = "Image"},
|
||||
imgNote = {sComponentName = "Image"},
|
||||
txtNoteCount = {sComponentName = "TMP_Text"},
|
||||
red = {},
|
||||
green = {},
|
||||
blue = {},
|
||||
yellow = {},
|
||||
purple = {},
|
||||
goNoteFx = {
|
||||
sComponentName = "RectTransform"
|
||||
},
|
||||
imgNote_red = {},
|
||||
imgNote_yellow = {},
|
||||
imgNote_green = {},
|
||||
imgNote_blue = {},
|
||||
imgNote_purple = {}
|
||||
}
|
||||
NoteCountItemCtrl._mapEventConfig = {}
|
||||
NoteCountItemCtrl._mapRedDotConfig = {}
|
||||
function NoteCountItemCtrl:InitNote(nId)
|
||||
self.nId = nId
|
||||
local noteCfg = ConfigTable.GetData("Note", nId)
|
||||
if not noteCfg then
|
||||
return
|
||||
end
|
||||
self.nNoteType = noteCfg.Note
|
||||
self:SetPngSprite(self._mapNode.imgNoteBg, noteCfg.Style2)
|
||||
self:SetPngSprite(self._mapNode.imgNote, noteCfg.Style1)
|
||||
end
|
||||
function NoteCountItemCtrl:Init(nCount, nAllCount)
|
||||
self:RefreshCount(nCount, nAllCount)
|
||||
end
|
||||
function NoteCountItemCtrl:ResetNoteFx()
|
||||
self._mapNode.red.gameObject:SetActive(false)
|
||||
self._mapNode.green.gameObject:SetActive(false)
|
||||
self._mapNode.blue.gameObject:SetActive(false)
|
||||
self._mapNode.yellow.gameObject:SetActive(false)
|
||||
self._mapNode.purple.gameObject:SetActive(false)
|
||||
self._mapNode.imgNote_red.gameObject:SetActive(false)
|
||||
self._mapNode.imgNote_yellow.gameObject:SetActive(false)
|
||||
self._mapNode.imgNote_green.gameObject:SetActive(false)
|
||||
self._mapNode.imgNote_blue.gameObject:SetActive(false)
|
||||
self._mapNode.imgNote_purple.gameObject:SetActive(false)
|
||||
end
|
||||
function NoteCountItemCtrl:RefreshCount(nCount, nAllCount)
|
||||
local nFillAmount = 1
|
||||
NovaAPI.SetImageFillAmount(self._mapNode.imgNote, nFillAmount)
|
||||
NovaAPI.SetTMPText(self._mapNode.txtNoteCount, nCount)
|
||||
local typeCfg = AllEnum.NoteTypeCfg[self.nNoteType]
|
||||
local sFxName = typeCfg.sFxName
|
||||
nFillAmount = math.min(nFillAmount, 1)
|
||||
nFillAmount = math.max(nFillAmount, 0)
|
||||
for i = 0, self._mapNode.goNoteFx.childCount - 1 do
|
||||
local trChild = self._mapNode.goNoteFx:GetChild(i)
|
||||
trChild.gameObject:SetActive(false)
|
||||
end
|
||||
self._mapNode["imgNote_" .. sFxName].gameObject:SetActive(true)
|
||||
local nMax = -0.5
|
||||
local nMin = 0.5
|
||||
local nFillMax = 1
|
||||
local nFillMin = 0
|
||||
local nValue = (nFillAmount - nFillMin) / (nFillMax - nFillMin) * (nMax - nMin) + nMin
|
||||
GameUIUtils.SetUIMaterialAnimationTexValue2(self._mapNode["imgNote_" .. sFxName].gameObject, 1, 1, 0, nValue)
|
||||
end
|
||||
function NoteCountItemCtrl:Awake()
|
||||
self.animRoot = self.gameObject:GetComponent("Animator")
|
||||
self._mapNode.red.gameObject:SetActive(false)
|
||||
self._mapNode.green.gameObject:SetActive(false)
|
||||
self._mapNode.blue.gameObject:SetActive(false)
|
||||
self._mapNode.yellow.gameObject:SetActive(false)
|
||||
self._mapNode.purple.gameObject:SetActive(false)
|
||||
for i = 0, self._mapNode.goNoteFx.childCount - 1 do
|
||||
local trChild = self._mapNode.goNoteFx:GetChild(i)
|
||||
trChild.gameObject:SetActive(false)
|
||||
end
|
||||
end
|
||||
function NoteCountItemCtrl:PlayChangeAnim()
|
||||
self:ResetNoteFx()
|
||||
local typeCfg = AllEnum.NoteTypeCfg[self.nNoteType]
|
||||
local sFxName = typeCfg.sFxName
|
||||
self._mapNode[sFxName].gameObject:SetActive(true)
|
||||
self.animRoot:Play("NoteItem_up", 0, 0)
|
||||
end
|
||||
return NoteCountItemCtrl
|
||||
Reference in New Issue
Block a user