270 lines
9.7 KiB
Plaintext
270 lines
9.7 KiB
Plaintext
|
|
|||
|
require("LuaUtil")
|
|||
|
require("TextUtil")
|
|||
|
|
|||
|
EquipSuitTooltips = {}
|
|||
|
|
|||
|
local equipItem = null
|
|||
|
|
|||
|
local isInit = false
|
|||
|
local enableTime = 0
|
|||
|
|
|||
|
local actCnt = {1,2}
|
|||
|
|
|||
|
local suitLvTab
|
|||
|
local minLvTab = null
|
|||
|
|
|||
|
local maxStep1 = 1
|
|||
|
local maxStep2 = 8
|
|||
|
local minStep2 = 5
|
|||
|
|
|||
|
function EquipSuitTooltips.OnEnable()
|
|||
|
print(EquipSuitTooltips.OnEnable)
|
|||
|
isInit = false
|
|||
|
enableTime = CS.UnityEngine.Time.time
|
|||
|
EquipSuitTooltips.RefreshSuitAttrs()
|
|||
|
end
|
|||
|
|
|||
|
function EquipSuitTooltips.Update()
|
|||
|
|
|||
|
if(isInit == false) then
|
|||
|
if(CS.UnityEngine.Time.time - enableTime > 0.2) then
|
|||
|
isInit = true
|
|||
|
EquipSuitTooltips.GetEquipItem()
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
|
|||
|
end
|
|||
|
|
|||
|
function EquipSuitTooltips.GetEquipItem()
|
|||
|
|
|||
|
print("EquipSuitTooltips.GetEquipItem");
|
|||
|
equipItem = null
|
|||
|
local equipTooltipInfo = self:GetComponent("EquipTooltipsInfo");
|
|||
|
if(equipTooltipInfo ~= null) then
|
|||
|
local equipItems = CS.GameManager.gameManager.PlayerDataPool.EquipPack.Items
|
|||
|
local equipItemCnt = equipItems.Count
|
|||
|
for i=0,equipItemCnt-1,1 do
|
|||
|
local equipName = equipItems[i]:GetName()
|
|||
|
local idx,_ = string.find(equipName, "%(")
|
|||
|
|
|||
|
local nameMatch = null
|
|||
|
if(idx == null) then
|
|||
|
nameMatch = string.match(equipTooltipInfo._ItemName.text,equipName)
|
|||
|
else
|
|||
|
equipName = string.sub(equipName, 1, idx - 1)
|
|||
|
nameMatch = string.match(equipTooltipInfo._ItemName.text,equipName)
|
|||
|
end
|
|||
|
|
|||
|
if(nameMatch == equipName and
|
|||
|
equipTooltipInfo._EquipCombat.text == tostring(equipItems[i].EnchanceScore)) then
|
|||
|
equipItem = equipItems[i]
|
|||
|
end
|
|||
|
end
|
|||
|
else
|
|||
|
print("EquipSuitTooltips.GetEquipItem equipTooltipInfo is nil");
|
|||
|
end
|
|||
|
|
|||
|
|
|||
|
|
|||
|
if(equipItem ~= null) then
|
|||
|
print("EquipSuitTooltips.LuaDistributesEquipSuitGetInfoReq:"..equipItem.Guid);
|
|||
|
require("LuaDistributesEquipSuitGetInfoReq")
|
|||
|
local reqInfo = { equipGuid = equipItem.Guid}
|
|||
|
LuaDistributesEquipSuitGetInfoReq.SendPacket(reqInfo)
|
|||
|
|
|||
|
--test
|
|||
|
local packet = {}
|
|||
|
packet['suitValue1'] = 150
|
|||
|
|
|||
|
packet['suitValue2'] = 50
|
|||
|
|
|||
|
packet['suitClass1'] = 1
|
|||
|
|
|||
|
packet['suitClass2'] = 2
|
|||
|
|
|||
|
packet['fairyAttrId'] = {1000002,1010102,-1}
|
|||
|
|
|||
|
packet['fairyClassID'] = {-1,1,2}
|
|||
|
|
|||
|
packet['fairyEquipCnt'] = {1,2,3}
|
|||
|
|
|||
|
packet['godAttrId'] = {2000002,2010102,-1}
|
|||
|
|
|||
|
packet['godClassID'] = {1,-1,2}
|
|||
|
|
|||
|
packet['godEquipCnt'] = {2,3,4}
|
|||
|
|
|||
|
--require("LuaDistributesEquipSuitInfoRet")
|
|||
|
--LuaDistributesEquipSuitInfoRet.SendPacket(packet)
|
|||
|
--EquipSuitTooltips.RefreshSuitAttrs(packet)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
function EquipSuitTooltips.RefreshSuitAttrs(suitInfo)
|
|||
|
|
|||
|
print("EquipSuitTooltips.LuaDistributesEquipSuitGetInfoReq:");
|
|||
|
if(suitInfo == null) then
|
|||
|
EquipSuitTooltips.ClearSuitInfo()
|
|||
|
else
|
|||
|
actCnt[1] = suitInfo.fairyEquipCnt[1]
|
|||
|
actCnt[2] = suitInfo.godEquipCnt[1]
|
|||
|
print("suitInfo.fairyEquipCnt:"..suitInfo.fairyEquipCnt[1]..suitInfo.fairyEquipCnt[2]..suitInfo.fairyEquipCnt[3])
|
|||
|
print("suitInfo.godEquipCnt:"..suitInfo.godEquipCnt[1]..suitInfo.godEquipCnt[2]..suitInfo.godEquipCnt[3])
|
|||
|
local commonItemTab = TabMan.GetCommonItemByID(equipItem.DataID, 0);
|
|||
|
local Table_EquipSuitLvUp = require("Table_EquipSuitLvUp")
|
|||
|
suitLvTab = null
|
|||
|
minLvTab = null
|
|||
|
for i,v in ipairs(Table_EquipSuitLvUp) do
|
|||
|
if(v.Profession == CS.ObjManager.Instance.MainPlayer.BaseAttr.Profession and
|
|||
|
v.Quality == commonItemTab.Quality) then
|
|||
|
if (minLvTab == null) then
|
|||
|
minLvTab = v
|
|||
|
end
|
|||
|
if(v.Level == equipItem:GetEquipLevel()) then
|
|||
|
suitLvTab = v
|
|||
|
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
local stepCnt = #suitLvTab.SuitTypeStep
|
|||
|
minStep2 = 0
|
|||
|
for i=1,stepCnt,1 do
|
|||
|
if(suitLvTab.SuitTypeStep[i] < 100) then
|
|||
|
if( suitLvTab.SuitTypeStep[i] > 0) then
|
|||
|
maxStep1 = i
|
|||
|
end
|
|||
|
else
|
|||
|
if(minStep2 == 0) then
|
|||
|
minStep2 = i
|
|||
|
end
|
|||
|
if suitLvTab.SuitTypeStep[i] > 0 then
|
|||
|
maxStep2 = i
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
local suitAttrTab1 = EquipSuitTooltips.GetDefaultAttrTab(suitInfo.fairyAttrId[1])
|
|||
|
EquipSuitTooltips.SetAttr(suit1Attr1, suitAttrTab1.AttrType[1], suitAttrTab1.AttrValue[1], suitAttrTab1.EquipRequreNum[1], suitInfo.fairyAttrId[1] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit1Attr1Ex, suitAttrTab1.ExAttrType[1], suitAttrTab1.ExAttrValue[1], suitAttrTab1.EquipRequreNum[1], suitInfo.fairyAttrId[1] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit1Attr1NewEx, suitAttrTab1.NewExAttrType[1], suitAttrTab1.NewExAttrValue[1], suitAttrTab1.EquipRequreNum[1], suitInfo.fairyAttrId[1] >= 0)
|
|||
|
|
|||
|
local suitAttrTab2 = EquipSuitTooltips.GetDefaultAttrTab(suitInfo.fairyAttrId[2])
|
|||
|
EquipSuitTooltips.SetAttr(suit1Attr2, suitAttrTab2.AttrType[2], suitAttrTab2.AttrValue[2], suitAttrTab2.EquipRequreNum[2], suitInfo.fairyAttrId[2] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit1Attr2Ex, suitAttrTab2.ExAttrType[2], suitAttrTab2.ExAttrValue[2], suitAttrTab2.EquipRequreNum[2], suitInfo.fairyAttrId[2] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit1Attr2NewEx, suitAttrTab2.NewExAttrType[2], suitAttrTab2.NewExAttrValue[2], suitAttrTab2.EquipRequreNum[2], suitInfo.fairyAttrId[2] >= 0)
|
|||
|
|
|||
|
local suitAttrTab3 = EquipSuitTooltips.GetDefaultAttrTab(suitInfo.fairyAttrId[3])
|
|||
|
EquipSuitTooltips.SetAttr(suit1Attr3, suitAttrTab3.AttrType[3], suitAttrTab3.AttrValue[3], suitAttrTab3.EquipRequreNum[3], suitInfo.fairyAttrId[3] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit1Attr3Ex, suitAttrTab3.ExAttrType[3], suitAttrTab3.ExAttrValue[3], suitAttrTab3.EquipRequreNum[3], suitInfo.fairyAttrId[3] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit1Attr3NewEx, suitAttrTab3.NewExAttrType[3], suitAttrTab3.NewExAttrValue[3], suitAttrTab3.EquipRequreNum[3], suitInfo.fairyAttrId[3] >= 0)
|
|||
|
|
|||
|
suitLabel1:SetActive(true)
|
|||
|
local suitName = suitAttrTab1.SuitName..' ('..suitInfo.fairyEquipCnt[1]..'/2) '
|
|||
|
suitLabel1:GetComponent("Text").text = suitName
|
|||
|
|
|||
|
suitLabel12:SetActive(true)
|
|||
|
local suitName = suitAttrTab2.SuitName..' ('..suitInfo.fairyEquipCnt[2]..'/5) '
|
|||
|
suitLabel12:GetComponent("Text").text = suitName
|
|||
|
|
|||
|
suitLabel13:SetActive(true)
|
|||
|
local suitName = suitAttrTab3.SuitName..' ('..suitInfo.fairyEquipCnt[3]..'/10) '
|
|||
|
suitLabel13:GetComponent("Text").text = suitName
|
|||
|
|
|||
|
if(suitAttrTab2 ~= null) then
|
|||
|
|
|||
|
|
|||
|
local suitAttrTab4 = EquipSuitTooltips.GetDefaultAttrTab(suitInfo.godAttrId[1])
|
|||
|
EquipSuitTooltips.SetAttr(suit2Attr1, suitAttrTab4.AttrType[1], suitAttrTab4.AttrValue[1], suitAttrTab4.EquipRequreNum[1], suitInfo.godAttrId[1] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit2Attr1Ex, suitAttrTab4.ExAttrType[1], suitAttrTab4.ExAttrValue[1], suitAttrTab4.EquipRequreNum[1], suitInfo.godAttrId[1] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit2Attr1NewEx, suitAttrTab4.NewExAttrType[1], suitAttrTab4.NewExAttrValue[1], suitAttrTab4.EquipRequreNum[1], suitInfo.godAttrId[1] >= 0)
|
|||
|
|
|||
|
local suitAttrTab5 = EquipSuitTooltips.GetDefaultAttrTab(suitInfo.godAttrId[2])
|
|||
|
EquipSuitTooltips.SetAttr(suit2Attr2, suitAttrTab5.AttrType[2], suitAttrTab5.AttrValue[2], suitAttrTab5.EquipRequreNum[2], suitInfo.godAttrId[2] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit2Attr2Ex, suitAttrTab5.ExAttrType[2], suitAttrTab5.ExAttrValue[2], suitAttrTab5.EquipRequreNum[2], suitInfo.godAttrId[2] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit2Attr2NewEx, suitAttrTab5.NewExAttrType[2], suitAttrTab5.NewExAttrValue[2], suitAttrTab5.EquipRequreNum[2], suitInfo.godAttrId[2] >= 0)
|
|||
|
|
|||
|
local suitAttrTab6 = EquipSuitTooltips.GetDefaultAttrTab(suitInfo.godAttrId[3])
|
|||
|
EquipSuitTooltips.SetAttr(suit2Attr3, suitAttrTab6.AttrType[3], suitAttrTab6.AttrValue[3], suitAttrTab6.EquipRequreNum[3], suitInfo.godAttrId[3] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit2Attr3Ex, suitAttrTab6.ExAttrType[3], suitAttrTab6.ExAttrValue[3], suitAttrTab6.EquipRequreNum[3], suitInfo.godAttrId[3] >= 0)
|
|||
|
EquipSuitTooltips.SetAttr(suit2Attr3NewEx, suitAttrTab6.NewExAttrType[3], suitAttrTab6.NewExAttrValue[3], suitAttrTab6.EquipRequreNum[3], suitInfo.godAttrId[3] >= 0)
|
|||
|
|
|||
|
suitLabel2:SetActive(true)
|
|||
|
local suitName2 = suitAttrTab4.SuitName..' ('..suitInfo.godEquipCnt[1]..'/2) '
|
|||
|
suitLabel2:GetComponent("Text").text = suitName2
|
|||
|
|
|||
|
suitLabel22:SetActive(true)
|
|||
|
local suitName2 = suitAttrTab5.SuitName..' ('..suitInfo.godEquipCnt[2]..'/5) '
|
|||
|
suitLabel22:GetComponent("Text").text = suitName2
|
|||
|
|
|||
|
suitLabel23:SetActive(true)
|
|||
|
local suitName2 = suitAttrTab6.SuitName..' ('..suitInfo.godEquipCnt[3]..'/10) '
|
|||
|
suitLabel23:GetComponent("Text").text = suitName2
|
|||
|
end
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
function EquipSuitTooltips.GetDefaultAttrTab(suitAttrID)
|
|||
|
local Table_EquipSuitAttr = require("Table_EquipSuitAttr")
|
|||
|
local suitAttrTab = Table_EquipSuitAttr[suitAttrID]
|
|||
|
local isAct1 = true
|
|||
|
if(suitAttrTab == null) then
|
|||
|
isAct1 = false
|
|||
|
if(pageIdx == 1) then
|
|||
|
suitAttrTab = Table_EquipSuitAttr[suitLvTab.SuitAttrID[1]]
|
|||
|
else
|
|||
|
suitAttrTab = Table_EquipSuitAttr[suitLvTab.SuitAttrID[minStep2]]
|
|||
|
end
|
|||
|
end
|
|||
|
return suitAttrTab
|
|||
|
end
|
|||
|
|
|||
|
function EquipSuitTooltips.ClearSuitInfo()
|
|||
|
suitLabel1:SetActive(false)
|
|||
|
suitLabel12:SetActive(false)
|
|||
|
suitLabel13:SetActive(false)
|
|||
|
suit1Attr1:SetActive(false)
|
|||
|
suit1Attr1Ex:SetActive(false)
|
|||
|
suit1Attr1NewEx:SetActive(false)
|
|||
|
suit1Attr2:SetActive(false)
|
|||
|
suit1Attr2Ex:SetActive(false)
|
|||
|
suit1Attr2NewEx:SetActive(false)
|
|||
|
suit1Attr3:SetActive(false)
|
|||
|
suit1Attr3Ex:SetActive(false)
|
|||
|
suit1Attr3NewEx:SetActive(false)
|
|||
|
suitLabel2:SetActive(false)
|
|||
|
suitLabel22:SetActive(false)
|
|||
|
suitLabel23:SetActive(false)
|
|||
|
suit2Attr1:SetActive(false)
|
|||
|
suit2Attr1Ex:SetActive(false)
|
|||
|
suit2Attr1NewEx:SetActive(false)
|
|||
|
suit2Attr2:SetActive(false)
|
|||
|
suit2Attr2Ex:SetActive(false)
|
|||
|
suit2Attr2NewEx:SetActive(false)
|
|||
|
suit2Attr3:SetActive(false)
|
|||
|
suit2Attr3Ex:SetActive(false)
|
|||
|
suit2Attr3NewEx:SetActive(false)
|
|||
|
end
|
|||
|
|
|||
|
function EquipSuitTooltips.SetAttr(attrGO, attrType, attrValue, requreNum, isAct)
|
|||
|
print("EquipSuitTooltips.SetAttr"..attrType)
|
|||
|
if(attrType >= 0) then
|
|||
|
attrGO:SetActive(true)
|
|||
|
local attr = TextUtil.GetAttrValueName(attrType, -1, attrValue);
|
|||
|
local name = CS.GCGame.Table.StrDictionary.GetClientDictionaryString("#{5454}", requreNum);
|
|||
|
attr = attr.." ("..name..")"
|
|||
|
if(isAct == true) then
|
|||
|
attr = attr
|
|||
|
else
|
|||
|
attr = "<color=#828282FF>"..attr .."</color>"
|
|||
|
end
|
|||
|
attrGO.transform:Find("Value"):GetComponent("Text").text = attr
|
|||
|
else
|
|||
|
attrGO:SetActive(false)
|
|||
|
end
|
|||
|
end
|
|||
|
|
|||
|
|