parent
a14fd59ea1
commit
7edf0a66db
|
|
@ -4,31 +4,33 @@ function ItemView:New(gameObject)
|
|||
local b = {}
|
||||
b.gameObject = gameObject
|
||||
b.transform = gameObject.transform
|
||||
setmetatable(b, { __index = ItemView })
|
||||
setmetatable(b, {
|
||||
__index = ItemView
|
||||
})
|
||||
return b
|
||||
end
|
||||
|
||||
--初始化组件(用于子类重写)
|
||||
-- 初始化组件(用于子类重写)
|
||||
function ItemView:InitComponent()
|
||||
self.btn = Util.GetGameObject(self.gameObject, "item/frame")
|
||||
--框
|
||||
-- 框
|
||||
self.frame = Util.GetGameObject(self.gameObject, "item/frame"):GetComponent("Image")
|
||||
--
|
||||
self.icon = Util.GetGameObject(self.gameObject, "item/icon"):GetComponent("Image")
|
||||
--
|
||||
self.frameMask = Util.GetGameObject(self.gameObject, "item/frameMask")
|
||||
--属性
|
||||
-- 属性
|
||||
self.pro = Util.GetGameObject(self.gameObject, "item/pro"):GetComponent("Image")
|
||||
self.proIcon = Util.GetGameObject(self.gameObject, "item/pro/icon"):GetComponent("Image")
|
||||
--星级
|
||||
-- 星级
|
||||
self.starGrid = Util.GetGameObject(self.gameObject, "item/starGrid")
|
||||
--数量
|
||||
-- 数量
|
||||
self.num = Util.GetGameObject(self.gameObject, "item/num"):GetComponent("Text")
|
||||
self.add = Util.GetGameObject(self.gameObject, "item/add")
|
||||
--名字
|
||||
-- 名字
|
||||
self.upName = Util.GetGameObject(self.gameObject, "upName"):GetComponent("Text")
|
||||
self.downName = Util.GetGameObject(self.gameObject, "downName"):GetComponent("Text")
|
||||
--红点
|
||||
-- 红点
|
||||
self.redPoint = Util.GetGameObject(self.gameObject, "redPoint")
|
||||
|
||||
self.EffectOrginLayer = 0
|
||||
|
|
@ -39,7 +41,7 @@ function ItemView:InitComponent()
|
|||
self.effects = Util.GetGameObject(self.gameObject, "effects")
|
||||
-- 角标
|
||||
self.Corner = Util.GetGameObject(self.gameObject, "Corner")
|
||||
--基因等级
|
||||
-- 基因等级
|
||||
self.geneLv = Util.GetGameObject(self.gameObject, "geneLv"):GetComponent("Image")
|
||||
self.duiImage = Util.GetGameObject(self.gameObject, "Corner/Received")
|
||||
end
|
||||
|
|
@ -47,26 +49,26 @@ end
|
|||
function ItemView:ToEffect(num)
|
||||
end
|
||||
|
||||
--绑定事件(用于子类重写)
|
||||
-- 绑定事件(用于子类重写)
|
||||
function ItemView:BindEvent()
|
||||
end
|
||||
|
||||
--添加事件监听(用于子类重写)
|
||||
-- 添加事件监听(用于子类重写)
|
||||
function ItemView:AddListener()
|
||||
end
|
||||
|
||||
--移除事件监听(用于子类重写)
|
||||
-- 移除事件监听(用于子类重写)
|
||||
function ItemView:RemoveListener()
|
||||
end
|
||||
|
||||
--isGet 是否获得
|
||||
--itemDatas 数据
|
||||
--scale 缩放值
|
||||
--isShowName 是否显示名字(默认不显示)
|
||||
--isShowAddImage 是否显示道具不足加号(默认不显示)
|
||||
--isPlayAnim 是否播放获得动画(默认不播)
|
||||
--effectLayer 当前界面层级(显示粒子特效用)
|
||||
--界面打开时调用(用于子类重写)
|
||||
-- isGet 是否获得
|
||||
-- itemDatas 数据
|
||||
-- scale 缩放值
|
||||
-- isShowName 是否显示名字(默认不显示)
|
||||
-- isShowAddImage 是否显示道具不足加号(默认不显示)
|
||||
-- isPlayAnim 是否播放获得动画(默认不播)
|
||||
-- effectLayer 当前界面层级(显示粒子特效用)
|
||||
-- 界面打开时调用(用于子类重写)
|
||||
function ItemView:OnOpen(isGet, itemDatas, _scale, isShowName, isShowAddImage, isPlayAnim, effectLayer, cornerType)
|
||||
isShowName = isShowName or false
|
||||
isShowAddImage = isShowAddImage or false
|
||||
|
|
@ -80,7 +82,7 @@ function ItemView:OnOpen(isGet, itemDatas, _scale, isShowName, isShowAddImage, i
|
|||
self.add:SetActive(isShowAddImage)
|
||||
self.gameObject:GetComponent("PlayFlyAnim").enabled = isPlayAnim
|
||||
self.scale = _scale or 1
|
||||
--self.gameObject:GetComponent("RectTransform").localScale = Vector2.New(scale, scale)
|
||||
-- self.gameObject:GetComponent("RectTransform").localScale = Vector2.New(scale, scale)
|
||||
self.gameObject:GetComponent("RectTransform").sizeDelta = Vector2.New(193, 202)
|
||||
|
||||
if isGet and itemDatas then
|
||||
|
|
@ -128,14 +130,14 @@ function ItemView:GetRewardShow(_itemData, effectLayer)
|
|||
local itemType = {
|
||||
NoType = 0,
|
||||
NoType_1 = 1,
|
||||
Equip = 2, --装备
|
||||
Hero = 3, --英雄
|
||||
Weapon = 4, --法宝
|
||||
Equip = 2, -- 装备
|
||||
Hero = 3, -- 英雄
|
||||
Weapon = 4, -- 法宝
|
||||
Jewel = 5,
|
||||
Reward = 6,
|
||||
Medal = 7,
|
||||
Gene = 8,
|
||||
Title = 9, --称号
|
||||
Title = 9 -- 称号
|
||||
}
|
||||
|
||||
if _itemData.itemType == itemType.NoType or _itemData.itemType == itemType.NoType_1 then
|
||||
|
|
@ -146,8 +148,8 @@ function ItemView:GetRewardShow(_itemData, effectLayer)
|
|||
if _itemData.configData.ItemType == ItemType.HeroDebris then
|
||||
self.frameMask:SetActive(true)
|
||||
self.pro.gameObject:SetActive(true)
|
||||
self.frameMask:GetComponent("Image").sprite = Util.LoadSprite(GetHeroChipQuantityImageByquality(_itemData
|
||||
.configData.Quantity))
|
||||
self.frameMask:GetComponent("Image").sprite = Util.LoadSprite(
|
||||
GetHeroChipQuantityImageByquality(_itemData.configData.Quantity))
|
||||
self.pro.sprite = Util.LoadSprite(GetQuantityProBgImageByquality(_itemData.configData.Quantity))
|
||||
self.proIcon.sprite = Util.LoadSprite(GetProStrImageByProNum(_itemData.configData.PropertyName))
|
||||
|
||||
|
|
@ -167,9 +169,9 @@ function ItemView:GetRewardShow(_itemData, effectLayer)
|
|||
end)
|
||||
elseif _itemData.configData.ItemType == ItemType.Gift then
|
||||
Util.AddOnceClick(self.btn, function()
|
||||
--local equipConfigData = ConfigManager.GetConfigData(ConfigName.EquipConfig, tonumber(_itemData.backData.itemId))
|
||||
--LogError("cccccccccccccc"..tostring(_itemData.backData.itemId))
|
||||
--ogError("cccccccccccccc"..tostring(equipConfigData.Id))
|
||||
-- local equipConfigData = ConfigManager.GetConfigData(ConfigName.EquipConfig, tonumber(_itemData.backData.itemId))
|
||||
-- LogError("cccccccccccccc"..tostring(_itemData.backData.itemId))
|
||||
-- ogError("cccccccccccccc"..tostring(equipConfigData.Id))
|
||||
local data = {}
|
||||
data.type = 1
|
||||
data.qua = 0
|
||||
|
|
@ -293,6 +295,10 @@ function ItemView:GetRewardShow(_itemData, effectLayer)
|
|||
-- UIManager.OpenPanel(UIName.RewardItemSingleShowPopup, _itemData.configData.Id, nil, self.isRewardItemPop)
|
||||
UIManager.OpenPanel(UIName.LeadGeneTopLevelPanel, nil, _itemData.configData.Id, false)
|
||||
end)
|
||||
elseif _itemData.itemType == ItemType.ItemDebris then
|
||||
self.frameMask:SetActive(true)
|
||||
self.frameMask:GetComponent("Image").sprite = Util.LoadSprite(
|
||||
GetHeroChipQuantityImageByquality(_itemData.configData.Quantity))
|
||||
end
|
||||
self.gameObject:GetComponent("RectTransform").localScale = Vector2.New(self.scale, self.scale)
|
||||
end
|
||||
|
|
@ -317,7 +323,6 @@ function ItemView:NoGetRewardShow(_reward, effectLayer, isShowAddImage)
|
|||
|
||||
self.upName.text = GetLanguageStrById(itemDataConFig.Name)
|
||||
self.EffectOrginScale = self.scale
|
||||
|
||||
if itemDataConFig.ItemType == ItemType.NoType then
|
||||
self.num.text = PrintWanNum(itemNum)
|
||||
self.frame.sprite = Util.LoadSprite(GetQuantityImageByquality(itemConfig[itemSId].Quantity))
|
||||
|
|
@ -332,10 +337,10 @@ function ItemView:NoGetRewardShow(_reward, effectLayer, isShowAddImage)
|
|||
|
||||
local heroConfigData = ConfigManager.GetConfigData(ConfigName.HeroConfig, itemConfig[itemSId].HeroStar[1])
|
||||
self.num.text = PrintWanNum(itemNum)
|
||||
local star = _reward[4] or itemConfig[itemSId].HeroStar[2] --获取星级
|
||||
local star = _reward[4] or itemConfig[itemSId].HeroStar[2] -- 获取星级
|
||||
SetHeroStars(self.starGrid, star)
|
||||
self.frame.sprite = Util.LoadSprite(GetHeroQuantityImageByquality(itemConfig[itemSId].Quantity))
|
||||
if itemSId == 20000 then --高级回溯背景问题
|
||||
if itemSId == 20000 then -- 高级回溯背景问题
|
||||
self.frame.sprite = Util.LoadSprite(GetQuantityImageByquality(nil, star))
|
||||
end
|
||||
|
||||
|
|
@ -350,23 +355,20 @@ function ItemView:NoGetRewardShow(_reward, effectLayer, isShowAddImage)
|
|||
elseif itemDataConFig.ItemType == ItemType.HeroDebris then
|
||||
self.frameMask:SetActive(true)
|
||||
self.starGrid:SetActive(true)
|
||||
--催化精粹做特殊处理不显示pro
|
||||
-- 催化精粹做特殊处理不显示pro
|
||||
if itemConfig[itemSId].PropertyName == 0 then
|
||||
self.pro.gameObject:SetActive(false)
|
||||
else
|
||||
self.pro.gameObject:SetActive(true)
|
||||
end
|
||||
|
||||
self.frameMask:GetComponent("Image").sprite = Util.LoadSprite(GetHeroChipQuantityImageByquality(itemConfig
|
||||
[itemSId].Quantity))
|
||||
self.frame.sprite = Util.LoadSprite(GetQuantityImageByquality(itemConfig[itemSId]
|
||||
.Quantity))
|
||||
self.icon.sprite = Util.LoadSprite(GetResourcePath(itemConfig[itemSId].ResourceID))
|
||||
self.pro.sprite = Util.LoadSprite(GetQuantityProBgImageByquality(itemConfig[itemSId]
|
||||
.Quantity))
|
||||
self.proIcon.sprite = Util.LoadSprite(GetProStrImageByProNum(itemConfig[itemSId]
|
||||
.PropertyName))
|
||||
local star = itemConfig[itemSId].Quantity
|
||||
self.frameMask:GetComponent("Image").sprite = Util.LoadSprite(
|
||||
GetHeroChipQuantityImageByquality(itemConfig[itemSId].Quantity))
|
||||
self.frame.sprite = Util.LoadSprite(GetQuantityImageByquality(itemConfig[itemSId].Quantity))
|
||||
self.icon.sprite = Util.LoadSprite(GetResourcePath(itemConfig[itemSId].ResourceID))
|
||||
self.pro.sprite = Util.LoadSprite(GetQuantityProBgImageByquality(itemConfig[itemSId].Quantity))
|
||||
self.proIcon.sprite = Util.LoadSprite(GetProStrImageByProNum(itemConfig[itemSId].PropertyName))
|
||||
local star = itemConfig[itemSId].Quantity
|
||||
SetHeroStars(self.starGrid, star)
|
||||
|
||||
Util.AddOnceClick(self.btn, function()
|
||||
|
|
@ -455,7 +457,10 @@ function ItemView:NoGetRewardShow(_reward, effectLayer, isShowAddImage)
|
|||
self.frame.sprite = Util.LoadSprite(GetQuantityImageByquality(itemConfig[itemSId].Quantity))
|
||||
self.icon.sprite = Util.LoadSprite(GetResourcePath(itemConfig[itemSId].ResourceID))
|
||||
Util.AddOnceClick(self.btn, function()
|
||||
local data = { ["itemConfig"] = itemConfig[itemSId], ["id"] = 10 }
|
||||
local data = {
|
||||
["itemConfig"] = itemConfig[itemSId],
|
||||
["id"] = 10
|
||||
}
|
||||
UIManager.OpenPanel(UIName.RewardBoxPanel, data, function()
|
||||
UIManager.ClosePanel(UIName.RewardBoxPanel)
|
||||
end)
|
||||
|
|
@ -470,6 +475,16 @@ function ItemView:NoGetRewardShow(_reward, effectLayer, isShowAddImage)
|
|||
-- UIManager.OpenPanel(UIName.RewardItemSingleShowPopup, itemSId, nil, self.isRewardItemPop)
|
||||
UIManager.OpenPanel(UIName.LeadGeneTopLevelPanel, nil, itemSId, false)
|
||||
end)
|
||||
elseif itemDataConFig.ItemType == ItemType.ItemDebris then
|
||||
self.frameMask:SetActive(true)
|
||||
self.frameMask:GetComponent("Image").sprite = Util.LoadSprite(
|
||||
GetHeroChipQuantityImageByquality(itemDataConFig.Quantity))
|
||||
self.num.text = PrintWanNum(itemNum)
|
||||
self.frame.sprite = Util.LoadSprite(GetQuantityImageByquality(itemConfig[itemSId].Quantity))
|
||||
self.icon.sprite = Util.LoadSprite(GetResourcePath(itemConfig[itemSId].ResourceID))
|
||||
Util.AddOnceClick(self.btn, function()
|
||||
UIManager.OpenPanel(UIName.RewardItemSingleShowPopup, itemSId, nil, self.isRewardItemPop)
|
||||
end)
|
||||
else
|
||||
self.num.text = PrintWanNum(itemNum)
|
||||
self.frame.sprite = Util.LoadSprite(GetQuantityImageByquality(itemConfig[itemSId].Quantity))
|
||||
|
|
@ -518,7 +533,7 @@ function ItemView:OnBtnCkickEvent(itemSId)
|
|||
end
|
||||
end
|
||||
|
||||
--显示扫光特效
|
||||
-- 显示扫光特效
|
||||
function ItemView:OnShowUIeffectItemViewSaoguang()
|
||||
if not self.effect_saoguang then
|
||||
self.effect_saoguang = poolManager:LoadAsset("UI_effect_ItemView_saoguang", PoolManager.AssetType.GameObject)
|
||||
|
|
@ -533,7 +548,7 @@ function ItemView:OnShowUIeffectItemViewSaoguang()
|
|||
end
|
||||
end
|
||||
|
||||
--设置特效
|
||||
-- 设置特效
|
||||
function ItemView:SetEffect(str, quantity)
|
||||
local effect = Util.GetGameObject(self.effects, str .. "(Clone)")
|
||||
if effect then
|
||||
|
|
@ -554,12 +569,12 @@ function ItemView:SetEffect(str, quantity)
|
|||
return effect
|
||||
end
|
||||
|
||||
--重设属性
|
||||
--OnOpen ItemView时 只对isGet=false时生效 否则会报错
|
||||
--该方法根据对ItemView的不同需求自己拓展
|
||||
--该方法可有可无 不调用时走默认的赋值 调用时根据自定义的设置赋值
|
||||
--_reward为数据 便于物品类型与传入的type类型相匹配
|
||||
--settings为表类型 传入的参数需要与自定义配置相对应
|
||||
-- 重设属性
|
||||
-- OnOpen ItemView时 只对isGet=false时生效 否则会报错
|
||||
-- 该方法根据对ItemView的不同需求自己拓展
|
||||
-- 该方法可有可无 不调用时走默认的赋值 调用时根据自定义的设置赋值
|
||||
-- _reward为数据 便于物品类型与传入的type类型相匹配
|
||||
-- settings为表类型 传入的参数需要与自定义配置相对应
|
||||
function ItemView:Reset(_reward, type, settings)
|
||||
local itemSId = tonumber(_reward[1])
|
||||
local itemDataConFig = ConfigManager.GetConfigData(ConfigName.ItemConfig, itemSId)
|
||||
|
|
@ -567,7 +582,7 @@ function ItemView:Reset(_reward, type, settings)
|
|||
local data = settings
|
||||
-- self.posImage.enabled = data[1]
|
||||
self.pro.enabled = data[2]
|
||||
--self.heroStage.enabled = data[3]
|
||||
-- self.heroStage.enabled = data[3]
|
||||
self.num.enabled = data[4]
|
||||
end
|
||||
end
|
||||
|
|
@ -576,43 +591,43 @@ function ItemView:ResetNameColor(v4)
|
|||
self.upName.color = GetLanguageStrById(v4)
|
||||
end
|
||||
|
||||
--设置名字大小位置
|
||||
-- 设置名字大小位置
|
||||
function ItemView:ResetNameSize(v2, v3)
|
||||
self.upName.gameObject:GetComponent("RectTransform").anchoredPosition3D = v2
|
||||
self.upName.gameObject:GetComponent("RectTransform").localScale = v3
|
||||
end
|
||||
|
||||
--设置数量显隐
|
||||
-- 设置数量显隐
|
||||
function ItemView:ShowNum(isShow)
|
||||
self.num.gameObject:SetActive(isShow)
|
||||
end
|
||||
|
||||
--设置图片框
|
||||
-- 设置图片框
|
||||
function ItemView:SetKuangSprite(resName)
|
||||
self.frame.sprite = Util.LoadSprite(resName)
|
||||
end
|
||||
|
||||
--设置星级显隐
|
||||
-- 设置星级显隐
|
||||
function ItemView:ShowStar(isShow)
|
||||
self.starGrid.gameObject:SetActive(isShow)
|
||||
end
|
||||
|
||||
--设置按钮点击响应
|
||||
-- 设置按钮点击响应
|
||||
function ItemView:ClickEnable(isEnable)
|
||||
self.btn:GetComponent("Button").enabled = isEnable
|
||||
end
|
||||
|
||||
--设置数量
|
||||
-- 设置数量
|
||||
function ItemView:SetNum(str)
|
||||
self.num.text = str
|
||||
end
|
||||
|
||||
--1:首通 2:锁 3:概率获得 4:已领取 5:特效 6:等级 7:基因等级
|
||||
-- 1:首通 2:锁 3:概率获得 4:已领取 5:特效 6:等级 7:基因等级
|
||||
function ItemView:SetCorner(type, isShow, arg)
|
||||
if type == 1 then
|
||||
if isShow then
|
||||
Util.GetGameObject(self.Corner, "CornerModel/Image"):GetComponent("Image").sprite = Util.LoadSprite(
|
||||
GetPictureFont("X1_fuhuazhizhan_shoutong"))
|
||||
GetPictureFont("X1_fuhuazhizhan_shoutong"))
|
||||
end
|
||||
Util.GetGameObject(self.Corner, "CornerModel"):SetActive(isShow)
|
||||
elseif type == 2 then
|
||||
|
|
@ -620,7 +635,7 @@ function ItemView:SetCorner(type, isShow, arg)
|
|||
elseif type == 3 then
|
||||
if isShow then
|
||||
Util.GetGameObject(self.Corner, "ProbabilityGet"):GetComponent("Image").sprite = Util.LoadSprite(
|
||||
GetPictureFont("X1_gonghui_gailvhuode"))
|
||||
GetPictureFont("X1_gonghui_gailvhuode"))
|
||||
end
|
||||
Util.GetGameObject(self.Corner, "ProbabilityGet"):SetActive(isShow)
|
||||
elseif type == 4 then
|
||||
|
|
@ -630,18 +645,18 @@ function ItemView:SetCorner(type, isShow, arg)
|
|||
elseif type == 6 then
|
||||
Util.GetGameObject(self.Corner, "Lv"):SetActive(isShow)
|
||||
Util.GetGameObject(self.Corner, "Lv"):GetComponent("Image").sprite = Util.LoadSprite(
|
||||
GetQuantityImageByqualityHexagon(nil, arg.star))
|
||||
GetQuantityImageByqualityHexagon(nil, arg.star))
|
||||
Util.GetGameObject(self.Corner, "Lv/Text"):GetComponent("Text").text = arg.lv
|
||||
self.frame.sprite = Util.LoadSprite(GetHeroQuantityImageByquality(nil, arg.star))
|
||||
SetHeroStars(self.starGrid, arg.star)
|
||||
elseif type == 7 then
|
||||
Util.GetGameObject(self.Corner, "geneLv"):SetActive(isShow)
|
||||
Util.GetGameObject(self.Corner, "geneLv"):GetComponent("Image").sprite = Util.LoadSprite(AircraftCarrierManager
|
||||
.GetSkillLvImgForId(arg.id).lvImg)
|
||||
Util.GetGameObject(self.Corner, "geneLv"):GetComponent("Image").sprite = Util.LoadSprite(
|
||||
AircraftCarrierManager.GetSkillLvImgForId(arg.id).lvImg)
|
||||
end
|
||||
end
|
||||
|
||||
--重写点击
|
||||
-- 重写点击
|
||||
function ItemView:ClickEvent(func)
|
||||
Util.AddOnceClick(self.btn, function()
|
||||
if func then
|
||||
|
|
@ -650,7 +665,7 @@ function ItemView:ClickEvent(func)
|
|||
end)
|
||||
end
|
||||
|
||||
--设置红点显隐
|
||||
-- 设置红点显隐
|
||||
function ItemView:SetRedPointState(isShow)
|
||||
self.redPoint.gameObject:SetActive(isShow)
|
||||
end
|
||||
|
|
@ -665,7 +680,7 @@ function ItemView:SetColorNum(id, num)
|
|||
SetItemCountColor(self.num, id, num)
|
||||
end
|
||||
|
||||
--设置数量
|
||||
-- 设置数量
|
||||
function ItemView:CompareNum(bagNum, needNum)
|
||||
self.num.text = CompareNum(bagNum, needNum)
|
||||
end
|
||||
|
|
|
|||
Loading…
Reference in New Issue