Update - 1.9.0.107

EN: 1.9.0.107
CN: 1.9.0.108
JP: 1.9.0.112
KR: 1.9.0.112
This commit is contained in:
SL1900
2026-05-14 16:00:00 +09:00
parent 4b880806ef
commit eafd8f4088
1034 changed files with 809589 additions and 23067 deletions
@@ -78,7 +78,7 @@ function MonsterHudCtrl:ResetHit()
self.nBeforeHpMax = 0
end
function MonsterHudCtrl:SetMonsterId(nEntityId)
if self.nEntityId ~= nil or self.nEntityId ~= 0 then
if self.nEntityId ~= nil and self.nEntityId ~= 0 then
EventManager.RemoveEntityEvent("HpChanged", self.nEntityId, self, self.OnEvent_HpChanged)
end
self.nEntityId = nEntityId
@@ -25,6 +25,7 @@ function TowerDefenseHUDCtrl:Awake()
self.damageHudPrefab = self:LoadAsset("UI/Play_TowerDefence/HUD/DamageHUDNumber_UI.prefab")
self.minDamageHUDNumber = self:LoadAsset("UI/HUD/MinDamageHUDNumber_UI.prefab")
self.wordHudPrefab = self:LoadAsset("UI/HUD/WordHud_UI.prefab")
self.healHudPrefab = self:LoadAsset("UI/HUD/HealHUDNumber_UI.prefab")
self.monsterHuds = {}
self.playerHuds = {}
self.numberHuds = {}
@@ -39,6 +40,7 @@ function TowerDefenseHUDCtrl:OnDestroy()
self.damageHudPrefab = nil
self.minDamageHUDNumber = nil
self.wordHudPrefab = nil
self.healHudPrefab = nil
for key, value in pairs(self.monsterHuds) do
self:DespawnPrefabInstance(value, "HUD")
end
@@ -1,5 +1,5 @@
local TowerDefenseCharacterDetailCtrl = class("TowerDefenseCharacterDetailCtrl", BaseCtrl)
local SelectedColor = Color(0.9803921568627451, 0.9803921568627451, 10.0)
local SelectedColor = Color(0.9803921568627451, 0.9803921568627451, 0.9803921568627451)
local NormalColor = Color(0.14901960784313725, 0.25882352941176473, 0.47058823529411764)
local AdventureModuleHelper = CS.AdventureModuleHelper
local GamepadUIManager = require("GameCore.Module.GamepadUIManager")
@@ -10,6 +10,7 @@ local bar_item_maxX = 215
local Time = CS.UnityEngine.Time
local cardAnimCD = 0.1
local ItemType = {
None = 0,
CD = 1,
Count = 2,
Charge = 3,
@@ -49,7 +50,8 @@ TowerDefenseCtrl._mapNodeConfig = {
btn_dic = {
sComponentName = "NaviButton",
callback = "OnBtnClick_OpenDic",
sAction = "Depot"
sAction = "Depot",
sActionIconType = "Dark"
},
txt_dic = {
nCount = 2,
@@ -620,7 +622,7 @@ function TowerDefenseCtrl:OnEvent_HoldCard(pos)
return
end
if self.nDragType == DragType.Item and self.bPointItem then
if self.ItemType == ItemType.Count or self.ItemType == ItemType.CD_And_Count and self.nItemCount == 0 then
if (self.ItemType == ItemType.Count or self.ItemType == ItemType.CD_And_Count) and self.nItemCount == 0 then
return
end
self:SetDragState(DragType.Item)
@@ -716,7 +718,7 @@ function TowerDefenseCtrl:OnDrag_CharacterCard(mDrag)
end
end
function TowerDefenseCtrl:OnDrag_Item(mDrag)
if self.ItemType == ItemType.Count or self.ItemType == ItemType.CD_And_Count and self.nItemCount == 0 then
if (self.ItemType == ItemType.Count or self.ItemType == ItemType.CD_And_Count) and self.nItemCount == 0 then
return
end
if self.CardDragType == CardDragType.Pointer then
@@ -751,7 +753,8 @@ function TowerDefenseCtrl:CharacterLevelUp(characterId)
if config == nil then
return
end
if config.PointNeeded[oldLevel] > self.point then
local nPointNeeded = config.PointNeeded[oldLevel]
if nPointNeeded == nil or nPointNeeded > self.point then
return
end
self.TowerDefenseData.TowerDefenseLevelData:CharacterLevelUp(characterId)
@@ -1185,7 +1188,7 @@ function TowerDefenseCtrl:OnEvent_ShowPointUI(bIsShow)
self._mapNode.go_characterFunc:SetLevelBtnState(bIsShow)
end
function TowerDefenseCtrl:OnEvent_ShowTips(tipsId, Time)
EventManager.Hit("BattlePopupTips", tipsId, Time:AsFloat() or 0, true)
EventManager.Hit("BattlePopupTips", tipsId, Time or 0, true)
end
function TowerDefenseCtrl:OnEvent_OpenDic(dicId)
if self.bHasDic then
@@ -121,6 +121,7 @@ function TowerDefenseLevelCellCtrl:OnBtnClick_SelectLevel()
end
if not self.actData:IsPreLevelPass(self.levelData.nLevelId) then
EventManager.Hit(EventId.OpenMessageBox, ConfigTable.GetUIText("TowerDef_NeedPassPreLevel"))
return
end
EventManager.Hit("TowerDefenseLevelCell_OnSelected", self.levelData.nLevelId)
end
@@ -67,7 +67,12 @@ TowerDefenseLevelDetailCtrl._mapNodeConfig = {
sComponentName = "UIButton",
callback = "OnBtnClick_EditorTeam"
},
team_character = {nCount = 6},
team_character = {
nCount = 6,
sCtrlName = "Game.UI.TowerDefense.TowerDefenseSelectedCharCtrl"
},
goDragMin = {sComponentName = "Transform"},
goDragMax = {sComponentName = "Transform"},
special_item = {},
animator = {
sNodeName = "----SafeAreaRoot_Detail---",
@@ -94,7 +99,11 @@ TowerDefenseLevelDetailCtrl._mapEventConfig = {
TowerDefense_CharUpdate = "OnEvent_UpdateCharData",
TowerDefense_ItemUpdate = "OnEvent_UpdateItemData",
TowerDefenseTeamPanelConfirm = "OnEvent_Go",
TowerDefenseTeamPanelClose = "OnEvent_UpdateTeamEditorPanelClose"
TowerDefenseTeamPanelClose = "OnEvent_UpdateTeamEditorPanelClose",
TowerDefense_EditorTeam = "OnEvent_OpenTeamEditorPanel",
TowerDefenseItemDragStart = "OnEvent_TowerDefenseItemDragStart",
TowerDefenseItemDragEnd = "OnEvent_TowerDefenseItemDragEnd",
TowerDefenseItemDragging = "OnEvent_TowerDefenseItemDragging"
}
TowerDefenseLevelDetailCtrl._mapRedDotConfig = {}
function TowerDefenseLevelDetailCtrl:Awake()
@@ -107,9 +116,13 @@ function TowerDefenseLevelDetailCtrl:Awake()
self.TowerDefenseData = PlayerData.Activity:GetActivityDataById(self.nActId)
self._mapNode.teamCtrl.gameObject:SetActive(false)
self._mapNode.miniMapCtrl:Close()
self:UpdateData()
self:InitGuide()
end
function TowerDefenseLevelDetailCtrl:OnEnable()
for k, v in ipairs(self._mapNode.team_character) do
v:InitSortingOrder(self._nSortingOrder, self._mapNode.goDragMin, self._mapNode.goDragMax)
end
self:UpdateData()
self:UpdateQuestInfo()
self:UpdateItem()
end
@@ -121,6 +134,20 @@ function TowerDefenseLevelDetailCtrl:UpdateData()
self:InitTeamData()
self._mapNode.miniMapCtrl:SetData(self.levelConfig.FloorId)
end
function TowerDefenseLevelDetailCtrl:InitGuide()
local levelConfig = ConfigTable.GetData("TowerDefenseLevel", self.nLevelId)
if levelConfig == nil then
return
end
local floorConfig = ConfigTable.GetData("TowerDefenseFloor", levelConfig.FloorId)
if floorConfig == nil then
return
end
if floorConfig.MemberNum == 0 then
return
end
EventManager.Hit("Guide_PassiveCheck_Msg", "Guide_TowerDefense_401")
end
function TowerDefenseLevelDetailCtrl:UpdateQuestInfo()
local levelData = self.TowerDefenseData:GetLevelData(self.nLevelId)
local nStar = levelData.nStar
@@ -199,6 +226,7 @@ function TowerDefenseLevelDetailCtrl:InitTeamData()
end
self.nItemGuideId = tempTeamData.itemGuideId
end
self:InitDragOrderList()
self:UpdateCharacter()
self:UpdateSpecialItem_V1()
local floorConfig = ConfigTable.GetData("TowerDefenseFloor", self.levelConfig.FloorId)
@@ -223,53 +251,21 @@ function TowerDefenseLevelDetailCtrl:UpdateCharacter()
ForEachTableLine(DataTable.TowerDefenseGuide, foreach)
end
for i = 1, 6 do
local go_add = self._mapNode.team_character[i].transform:Find("img_add")
local btn_add = self._mapNode.team_character[i]:GetComponent("UIButton")
local go_none = self._mapNode.team_character[i].transform:Find("img_none")
local go_icon = self._mapNode.team_character[i].transform:Find("img_icon")
local txt_name = self._mapNode.team_character[i].transform:Find("img_icon/txt_name"):GetComponent("TMP_Text")
go_add.gameObject:SetActive(false)
go_none.gameObject:SetActive(false)
go_icon.gameObject:SetActive(false)
btn_add.interactable = false
if teamCharacterCount == 0 then
if i > #self.tbCharGuideId then
go_none.gameObject:SetActive(true)
self._mapNode.team_character[i]:SetData(-1, false, i)
else
local guideConfig = ConfigTable.GetData("TowerDefenseGuide", self.tbCharGuideId[i])
local characterConfig = ConfigTable.GetData("TowerDefenseCharacter", guideConfig.ObjectId)
if characterConfig ~= nil then
local icon_char = go_icon.transform:Find("icon_char")
self:SetPngSprite(icon_char:GetComponent("Image"), characterConfig.Icon .. AllEnum.CharHeadIconSurfix.QM)
NovaAPI.SetTMPText(txt_name, characterConfig.Name)
end
go_icon.gameObject:SetActive(true)
self._mapNode.team_character[i]:SetData(self.tbCharGuideId[i], false, i)
end
NovaAPI.SetTMPText(self._mapNode.txt_charCount, string.format("<color=#ffde6a>%d</color>/%d", #self.tbCharGuideId, #self.tbCharGuideId))
self:InitDragOrderList()
else
if teamCharacterCount < i then
go_none.gameObject:SetActive(true)
self._mapNode.team_character[i]:SetData(-1, false, i)
elseif i > #self.tbCharGuideId then
go_add.gameObject:SetActive(true)
btn_add.interactable = true
btn_add.onClick:RemoveAllListeners()
btn_add.onClick:AddListener(function()
self:OnBtnClick_EditorTeam()
end)
self._mapNode.team_character[i]:SetData(0, true, i)
else
local guideConfig = ConfigTable.GetData("TowerDefenseGuide", self.tbCharGuideId[i])
local characterConfig = ConfigTable.GetData("TowerDefenseCharacter", guideConfig.ObjectId)
if characterConfig ~= nil then
local icon_char = go_icon.transform:Find("icon_char")
self:SetPngSprite(icon_char:GetComponent("Image"), characterConfig.Icon .. AllEnum.CharHeadIconSurfix.QM)
NovaAPI.SetTMPText(txt_name, characterConfig.Name)
end
go_icon.gameObject:SetActive(true)
btn_add.interactable = true
btn_add.onClick:RemoveAllListeners()
btn_add.onClick:AddListener(function()
self:OnBtnClick_EditorTeam()
end)
self._mapNode.team_character[i]:SetData(self.tbCharGuideId[i], true, i)
end
NovaAPI.SetTMPText(self._mapNode.txt_charCount, string.format("<color=#ffde6a>%d</color>/%d", #self.tbCharGuideId, teamCharacterCount))
end
@@ -404,6 +400,15 @@ function TowerDefenseLevelDetailCtrl:CloseTeamEditorPanel()
self._mapNode.btn_Team.interactable = true
self._mapNode.btn_go1.interactable = true
end
function TowerDefenseLevelDetailCtrl:InitDragOrderList()
self.tbDragOrderList = {}
for k, v in ipairs(self.tbCharGuideId) do
self.tbDragOrderList[k] = {}
self.tbDragOrderList[k].nSortIndex = k
self.tbDragOrderList[k].nId = v
self.tbDragOrderList[k].itemCtrl = self._mapNode.team_character[k]
end
end
function TowerDefenseLevelDetailCtrl:OnBtnClick_MonsterInfo()
EventManager.Hit("OpenTowerDefenseMonsterInfo", self.levelConfig.Id)
end
@@ -472,6 +477,7 @@ function TowerDefenseLevelDetailCtrl:OnBtnClick_Close()
end
function TowerDefenseLevelDetailCtrl:OnEvent_UpdateCharData(tbCharGuideId)
self.tbCharGuideId = tbCharGuideId
self:InitDragOrderList()
self:UpdateCharacter()
end
function TowerDefenseLevelDetailCtrl:OnEvent_UpdateItemData(nItemGuideId)
@@ -503,4 +509,54 @@ end
function TowerDefenseLevelDetailCtrl:OnBtnClick_MiniMap()
self._mapNode.miniMapCtrl:Open()
end
function TowerDefenseLevelDetailCtrl:OnEvent_OpenTeamEditorPanel()
self:OnBtnClick_EditorTeam()
end
function TowerDefenseLevelDetailCtrl:OnEvent_TowerDefenseItemDragStart(objInsId)
end
function TowerDefenseLevelDetailCtrl:OnEvent_TowerDefenseItemDragEnd()
self.tbCharGuideId = {}
for _, v in ipairs(self.tbDragOrderList) do
table.insert(self.tbCharGuideId, v.nId)
end
self:InitDragOrderList()
self:UpdateCharacter()
if self.bInEditorPanel then
self._mapNode.teamCtrl:UpdateSelectedChar(self.tbCharGuideId)
end
end
function TowerDefenseLevelDetailCtrl:OnEvent_TowerDefenseItemDragging(nDragInsId, nPointerInsId)
self.nExchangeIdx1 = nil
self.nExchangeIdx2 = nil
for k, v in ipairs(self.tbDragOrderList) do
local nInsId = v.itemCtrl:GetItemBtnInstanceId()
if nInsId == nDragInsId then
self.nExchangeIdx1 = k
end
if nInsId == nPointerInsId then
self.nExchangeIdx2 = k
end
end
if nil ~= self.nExchangeIdx1 and nil ~= self.nExchangeIdx2 and self.nExchangeIdx1 ~= self.nExchangeIdx2 then
self.tbDragOrderList[self.nExchangeIdx1].nSortIndex = self.nExchangeIdx2
if self.nExchangeIdx1 > self.nExchangeIdx2 then
for i = self.nExchangeIdx2, self.nExchangeIdx1 - 1 do
local nCurSort = self.tbDragOrderList[i].nSortIndex + 1
nCurSort = nCurSort > #self.tbCharGuideId and #self.tbCharGuideId or nCurSort
self.tbDragOrderList[i].nSortIndex = nCurSort
self.tbDragOrderList[i].itemCtrl:PlayItemMoveAnim(nCurSort)
end
elseif self.nExchangeIdx1 < self.nExchangeIdx2 then
for i = self.nExchangeIdx1 + 1, self.nExchangeIdx2 do
local nCurSort = self.tbDragOrderList[i].nSortIndex - 1
nCurSort = nCurSort <= 0 and 1 or nCurSort
self.tbDragOrderList[i].nSortIndex = nCurSort
self.tbDragOrderList[i].itemCtrl:PlayItemMoveAnim(nCurSort)
end
end
table.sort(self.tbDragOrderList, function(a, b)
return a.nSortIndex < b.nSortIndex
end)
end
end
return TowerDefenseLevelDetailCtrl
@@ -105,7 +105,7 @@ function TowerDefenseLevelTipsCtrl:ShowCharTips(charData)
end
obj:SetActive(true)
animator:Play("TowerDefenseMonsterTipsPanel_in")
self.timer = self:AddTimer(1, 5, close, true, true, true)
self:AddTimer(1, 5, close, true, true, true)
end
function TowerDefenseLevelTipsCtrl:ShowMonsterTips(monsterData)
local config = ConfigTable.GetData("TowerDefenseMonster", monsterData.nId)
@@ -147,7 +147,7 @@ function TowerDefenseLevelTipsCtrl:ShowMonsterTips(monsterData)
end
obj:SetActive(true)
animator:Play("TowerDefenseMonsterTipsPanel_in")
self.timer = self:AddTimer(1, 5, close, true, true, true)
self:AddTimer(1, 5, close, true, true, true)
end
function TowerDefenseLevelTipsCtrl:MoveOtherUI()
if #self.tbMoveTweer > 0 then
@@ -24,17 +24,20 @@ TowerDefensePauseCtrl._mapNodeConfig = {
btn_exit = {
sComponentName = "NaviButton",
callback = "OnBtnClick_Exit",
sAction = "Giveup"
sAction = "Giveup",
sActionIconType = "Dark"
},
btn_restart = {
sComponentName = "NaviButton",
callback = "OnBtnClick_Restart",
sAction = "Retry"
sAction = "Retry",
sActionIconType = "Dark"
},
btn_continue = {
sComponentName = "NaviButton",
callback = "OnBtnClick_Continue",
sAction = "Back"
sAction = "Back",
sActionIconType = "Dark"
}
}
TowerDefensePauseCtrl._mapEventConfig = {}
@@ -237,7 +237,7 @@ function TowerDefenseSelectCtrl:OnBtnClick_LevelTab1()
end
self.scrollPos = 1
self._panel.nlevelId = 0
self.scrollType = self.scrollPos
self.scrollType = scrollType.pos
self.TowerDefenseData:RefreshRedDotbyTab(self._panel.nSelectedTabIndex)
self._panel.nSelectedTabIndex = 1
self:SetTabUI()
@@ -249,7 +249,7 @@ function TowerDefenseSelectCtrl:OnBtnClick_LevelTab2()
end
self.scrollPos = 1
self._panel.nlevelId = 0
self.scrollType = self.scrollPos
self.scrollType = scrollType.pos
self.TowerDefenseData:RefreshRedDotbyTab(self._panel.nSelectedTabIndex)
self._panel.nSelectedTabIndex = 2
self:SetTabUI()
@@ -0,0 +1,151 @@
local TowerDefenseSelectedCharCtrl = class("TowerDefenseSelectedCharCtrl", BaseCtrl)
TowerDefenseSelectedCharCtrl._mapNodeConfig = {
drag = {
sNodeName = "go_char",
sComponentName = "UIDrag",
callback = "OnUIDrag_Drag"
},
trSortItem = {
sNodeName = "go_char",
sComponentName = "RectTransform"
},
raySortItem = {
sNodeName = "go_char",
sComponentName = "Empty4Raycast"
},
rayDragEvent = {
sNodeName = "rayDragEvent",
sComponentName = "Empty4Raycast"
},
btn_add = {
sNodeName = "img_add",
sComponentName = "UIButton",
callback = "OnBtnClick_EditorTeam"
},
img_icon = {},
icon_char = {sComponentName = "Image"},
txt_name = {sComponentName = "TMP_Text"},
img_add = {},
img_none = {}
}
TowerDefenseSelectedCharCtrl._mapEventConfig = {
TowerDefenseItemDragStart = "OnTowerDefenseItemDragStart",
TowerDefenseItemDragEnd = "OnTowerDefenseItemDragEnd"
}
TowerDefenseSelectedCharCtrl._mapRedDotConfig = {}
local item_Width = 198
local item_spacing = 8.6
function TowerDefenseSelectedCharCtrl:Awake()
self.tweener = nil
self.nGuideId = 0
self.bCanChange = true
self.nItemHeight = self.gameObject:GetComponent("RectTransform").rect.height
self.nItemWidth = self.gameObject:GetComponent("RectTransform").rect.width
end
function TowerDefenseSelectedCharCtrl:OnEnable()
end
function TowerDefenseSelectedCharCtrl:OnDisable()
end
function TowerDefenseSelectedCharCtrl:OnDestroy()
end
function TowerDefenseSelectedCharCtrl:SetData(guideId, bCanChange, nIndex)
self.nGuideId = guideId
self.bCanChange = bCanChange
self.nIndex = nIndex
self._mapNode.btn_add.interactable = bCanChange
self._mapNode.drag:SetDragEnable(bCanChange and self.nGuideId > 0)
self._mapNode.img_none.gameObject:SetActive(self.nGuideId == -1)
self._mapNode.img_add.gameObject:SetActive(self.nGuideId == 0)
self._mapNode.img_icon.gameObject:SetActive(self.nGuideId > 0)
if self.nGuideId > 0 then
local guideConfig = ConfigTable.GetData("TowerDefenseGuide", self.nGuideId)
local characterConfig = ConfigTable.GetData("TowerDefenseCharacter", guideConfig.ObjectId)
if characterConfig ~= nil then
self:SetPngSprite(self._mapNode.icon_char, characterConfig.Icon .. AllEnum.CharHeadIconSurfix.QM)
NovaAPI.SetTMPText(self._mapNode.txt_name, characterConfig.Name)
end
end
if nil ~= self.tweener then
self.tweener:Kill()
self.tweener = nil
end
self._mapNode.trSortItem.localPosition = Vector3(0, 0, 0)
self.itemCanvas = self.gameObject:GetComponent("Canvas")
NovaAPI.SetCanvasOverrideSorting(self.itemCanvas, false)
self._mapNode.rayDragEvent.gameObject:SetActive(false)
end
local clamp = function(x, min, max)
return math.max(math.min(x, max), min)
end
function TowerDefenseSelectedCharCtrl:InitSortingOrder(nSortOrder, goDragMin, goDragMax)
self.nInitSortingOrder = nSortOrder
self.goDragMin = goDragMin
self.goDragMax = goDragMax
end
function TowerDefenseSelectedCharCtrl:GetItemBtnInstanceId()
return self._mapNode.rayDragEvent.gameObject:GetInstanceID()
end
function TowerDefenseSelectedCharCtrl:PlayItemMoveAnim(nIndex)
local nEndPosX = (self.nItemWidth + item_spacing) * (nIndex - self.nIndex)
local endPos = Vector2(nEndPosX, 0)
self.tweener = self._mapNode.trSortItem:DOAnchorPos(endPos, 0.1):SetUpdate(true)
end
function TowerDefenseSelectedCharCtrl:SetItemPos(dragPos)
local localPos = GameUIUtils.ScreenPointToLocalPoint(dragPos, self.gameObject.transform)
localPos.x = clamp(localPos.x, self.nDragMinPosX, self.nDragMaxPosX)
self._mapNode.trSortItem.localPosition = Vector3(localPos.x, self.nItemHeight * 0.25, 0)
end
function TowerDefenseSelectedCharCtrl:CalDragRange()
if nil == self.nDragMinPosX or nil == self.nDragMaxPosX then
local transform = self.gameObject:GetComponent("Transform")
self.nDragMinPosX = transform:InverseTransformPoint(self.goDragMin.position).x + item_Width / 2
self.nDragMaxPosX = transform:InverseTransformPoint(self.goDragMax.position).x - item_Width / 2
end
end
function TowerDefenseSelectedCharCtrl:OnUIDrag_Drag(mDrag)
if self.nGuideId <= 0 then
return
end
if mDrag.DragEventType == AllEnum.UIDragType.DragStart then
self.nLastPointerInsId = nil
self:CalDragRange()
self:SetItemPos(mDrag.EventData.position)
self._mapNode.raySortItem.enabled = false
self._mapNode.rayDragEvent.enabled = false
EventManager.Hit("TowerDefenseItemDragStart", self.gameObject:GetInstanceID())
elseif mDrag.DragEventType == AllEnum.UIDragType.Drag then
self:SetItemPos(mDrag.EventData.position)
local pointerObj = mDrag.EventData.pointerCurrentRaycast
if nil ~= pointerObj and nil ~= pointerObj.gameObject then
local nPointerInsId = pointerObj.gameObject:GetInstanceID()
if nPointerInsId ~= self.nLastPointerInsId then
self.nLastPointerInsId = nPointerInsId
EventManager.Hit("TowerDefenseItemDragging", self:GetItemBtnInstanceId(), nPointerInsId)
end
end
elseif mDrag.DragEventType == AllEnum.UIDragType.DragEnd then
EventManager.Hit("TowerDefenseItemDragEnd")
NovaAPI.SetCanvasOverrideSorting(self.itemCanvas, false)
NovaAPI.SetCanvasSortingOrder(self.itemCanvas, self.nInitSortingOrder)
self._mapNode.raySortItem.enabled = true
self._mapNode.rayDragEvent.enabled = true
end
end
function TowerDefenseSelectedCharCtrl:OnBtnClick_EditorTeam()
EventManager.Hit("TowerDefense_EditorTeam")
end
function TowerDefenseSelectedCharCtrl:OnTowerDefenseItemDragStart(objInsId)
self._mapNode.rayDragEvent.gameObject:SetActive(true)
NovaAPI.SetCanvasOverrideSorting(self.itemCanvas, true)
NovaAPI.SetCanvasSortingName(self.itemCanvas, AllEnum.SortingLayerName.UI)
if self.gameObject:GetInstanceID() ~= objInsId then
NovaAPI.SetCanvasSortingOrder(self.itemCanvas, self.nInitSortingOrder + 1)
else
NovaAPI.SetCanvasSortingOrder(self.itemCanvas, self.nInitSortingOrder + 2)
end
end
function TowerDefenseSelectedCharCtrl:OnTowerDefenseItemDragEnd()
NovaAPI.SetCanvasSortingOrder(self.itemCanvas, self.nInitSortingOrder + 1)
self._mapNode.rayDragEvent.gameObject:SetActive(false)
end
return TowerDefenseSelectedCharCtrl
@@ -162,6 +162,10 @@ function TowerDefenseTeamCtrl:CreateItem()
end
end
end
function TowerDefenseTeamCtrl:UpdateSelectedChar(tbCharGuideIds)
self.tbSelectedCharGuideIds = tbCharGuideIds
EventManager.Hit("TowerDefense_CharUpdate", self.tbSelectedCharGuideIds)
end
function TowerDefenseTeamCtrl:OnCharacterGridBtnClick(nIndex)
local charIndex = table.indexof(self.tbSelectedCharGuideIds, self.tbCharGuideIds[nIndex])
if 0 < charIndex then
@@ -183,7 +187,7 @@ function TowerDefenseTeamCtrl:OnItemGridBtnClick(goGrid, nIndex)
go_selectMask.gameObject:SetActive(false)
self.nSelectedItemId = 0
EventManager.Hit("TowerDefense_ItemUpdate", self.nSelectedItemId)
elseif self.nSelectedItemId ~= nil or self.nSelectedItemId ~= 0 then
elseif self.nSelectedItemId ~= nil and self.nSelectedItemId ~= 0 then
local selected = goGrid.transform:Find("btn_grid/AnimRoot/go_select")
selected.gameObject:SetActive(true)
local go_selectMask = goGrid.transform:Find("btn_grid/AnimRoot/go_selectMask")