神兵升星强化优化

dev_chengFeng
yuanshuai 2023-04-04 14:54:14 +08:00
parent 3d5e8c8c5b
commit be268b9662
5 changed files with 221 additions and 34 deletions

View File

@ -743,7 +743,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 1}
m_AnchorMax: {x: 0.5, y: 1}
m_AnchoredPosition: {x: 0, y: 0.000022888184}
m_AnchoredPosition: {x: 0, y: 0.000030517578}
m_SizeDelta: {x: 921.6, y: 0}
m_Pivot: {x: 0.5, y: 1}
--- !u!222 &4363852263215371060
@ -865,6 +865,80 @@ MonoBehaviour:
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
--- !u!1 &1343978874305505988
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4615856825632851965}
- component: {fileID: 2145840975992949321}
- component: {fileID: 2899003703892769047}
m_Layer: 5
m_Name: redPoint
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4615856825632851965
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1343978874305505988}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 2521433971505799302}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 110, y: 38.2}
m_SizeDelta: {x: 21.86, y: 21.86}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2145840975992949321
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1343978874305505988}
m_CullTransparentMesh: 0
--- !u!114 &2899003703892769047
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1343978874305505988}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_Sprite: {fileID: 21300000, guid: f9ea4c4aff328ff4abcc21aae0a4fa10, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
--- !u!1 &1349198321532566410
GameObject:
m_ObjectHideFlags: 0
@ -1671,12 +1745,13 @@ RectTransform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 2521433973524405879}
- {fileID: 4615856825632851965}
m_Father: {fileID: 2521433973137916857}
m_RootOrder: 0
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 4.149994, y: -6.5999756}
m_AnchoredPosition: {x: 254, y: -6.5999756}
m_SizeDelta: {x: 298.28, y: 126}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2521433971505799301
@ -1916,7 +1991,7 @@ MonoBehaviour:
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: "\u5347\u661F"
m_Text: "\u5347\u7EA7"
--- !u!1 &2521433971823874626
GameObject:
m_ObjectHideFlags: 0
@ -3378,12 +3453,13 @@ RectTransform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 2521433972804930184}
- {fileID: 3089242332184937766}
m_Father: {fileID: 2521433973137916857}
m_RootOrder: 1
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 254, y: -6.5999756}
m_AnchoredPosition: {x: 4, y: -6.5999756}
m_SizeDelta: {x: 298.28, y: 126}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2521433973095257019
@ -3493,8 +3569,8 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 2521433971505799302}
- {fileID: 2521433973095257020}
- {fileID: 2521433971505799302}
- {fileID: 2521433973022598375}
m_Father: {fileID: 2521433971832506192}
m_RootOrder: 0
@ -6536,6 +6612,80 @@ MonoBehaviour:
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
--- !u!1 &5498939264413227699
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3089242332184937766}
- component: {fileID: 6316209906261454580}
- component: {fileID: 4468786604471759342}
m_Layer: 5
m_Name: redPoint
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &3089242332184937766
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5498939264413227699}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 2521433973095257020}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 110, y: 38.2}
m_SizeDelta: {x: 21.86, y: 21.86}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6316209906261454580
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5498939264413227699}
m_CullTransparentMesh: 0
--- !u!114 &4468786604471759342
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5498939264413227699}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_Sprite: {fileID: 21300000, guid: f9ea4c4aff328ff4abcc21aae0a4fa10, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
--- !u!1 &5503405369084009913
GameObject:
m_ObjectHideFlags: 0

View File

@ -15,6 +15,8 @@ function this:InitComponent()
this.skillGrid=Util.GetGameObject(self.gameObject,"infoLayout/skill/scroll/grid")
this.unloadBtn = Util.GetGameObject(self.gameObject, "infoLayout/unloadBtn")
this.changeBtn = Util.GetGameObject(self.gameObject, "infoLayout/changeBtn")
this.upLvBtnRedPoint = Util.GetGameObject(this.upLvBtn, "redPoint")
this.upStarBtnRedPoint = Util.GetGameObject(this.upStarBtn, "redPoint")
end
--绑定事件(用于子类重写)
@ -22,12 +24,13 @@ function this:BindEvent()
Util.AddClick(this.btnBack, function()
self:ClosePanel()
end)
Util.AddClick(this.upStarBtn, function()
Util.AddClick(this.upLvBtn, function()
UIManager.OpenPanel(UIName.GodWeaponUpPanel,1,godwData)
end)
Util.AddClick(this.upLvBtn, function()
Util.AddClick(this.upStarBtn, function()
UIManager.OpenPanel(UIName.GodWeaponUpPanel,2,godwData)
end)
Util.AddClick(this.unloadBtn, function()
local oldWarPower = FormationManager.GetFormationPower(FormationTypeDef.FORMATION_NORMAL)
NetManager.RequestMagicSoldierLocation(godwData.Did,0,function()
@ -65,6 +68,10 @@ end
function this.UpdateWin(_data)
godwData=_data
local upLvRed = GodWeaponManager.CheckUpLvRedPoint(godwData)
this.upLvBtnRedPoint:SetActive(upLvRed)
local upStarRed = GodWeaponManager.CheckUpStarRedPoint(godwData)
this.upStarBtnRedPoint:SetActive(upStarRed)
this.icon.sprite = this.spLoader:LoadSprite(GetResourcePath(_data.config.Icon))
this.nameText.text=_data.config.Name
local starSize = Vector2.New(65,65)

View File

@ -228,10 +228,10 @@ function this.ShowSinglePokemonList(go,singleData,liveIndex)
bgQuan:SetActive(false)
local curData = GodWeaponManager.GetSingleWeaponData(singleData.Did)
dragViewListGo[liveIndex].gameObject:SetActive(true)
--local upLvRed = PokemonManager.GetSinglePokemonUpLvRedPoint(curData)
--local upStarRed = PokemonManager.GetSinglePokemonUpStarRedPoint(curData)
local upLvRed = GodWeaponManager.CheckUpLvRedPoint(curData)
local upStarRed = GodWeaponManager.CheckUpStarRedPoint(curData)
-- LogPink("liveIndex "..liveIndex.." upLvRed "..tostring(upLvRed).." upStarRed "..tostring(upStarRed))
--PokemonGoListRedPoin[liveIndex]:SetActive(upLvRed or upStarRed)
PokemonGoListRedPoin[liveIndex]:SetActive(upLvRed or upStarRed)
upZhenInfo:SetActive(true)
local spiritAnimalConfig = ConfigManager.GetConfigData(ConfigName.ShenBing,curData.id)
local parent = Util.GetGameObject(go, "upZhenInfo/titleImage")

View File

@ -304,7 +304,7 @@ function this.GetSingleGodWeaponSkillDes(_did,_star)
return skillInfos
end
----获取升星需要材料
----获取升星可使用材料
function this.GetUpStarCost(_curData)
local costList={}
for key, value in pairs(allGodWeapons) do
@ -314,5 +314,28 @@ function this.GetUpStarCost(_curData)
end
return costList
end
--检测升级红点
function this.CheckUpLvRedPoint(_curData)
local levelConfig=ConfigManager.GetConfigDataByDoubleKey(ConfigName.ShenBingLevel,"Level",_curData.lv,"Quality",_curData.config.Quality)
if not levelConfig.Consume[1][2] then
return false
end
for i = 1, #levelConfig.Consume do
local haveCount=BagManager.GetItemCountById(levelConfig.Consume[i][1])
if haveCount<levelConfig.Consume[i][2] then
return false
end
end
return true
end
---检测升星红点
function this.CheckUpStarRedPoint(_curData)
local starConfig=ConfigManager.GetConfigDataByDoubleKey(ConfigName.ShenbingStar,"Star",_curData.star,"Quality",_curData.config.Quality)
if starConfig.ConsumeItemNum<=0 then
return false
end
local costList=this.GetUpStarCost(_curData)
return #costList>starConfig.ConsumeItemNum
end
return this

View File

@ -1,7 +1,7 @@
require("Base/BasePanel")
GodWeaponUpPanel = Inherit(BasePanel)
local this = GodWeaponUpPanel
local tabType=1 --1升星 2升级
local tabType=1 --1升级 2升星
local godWeaponData
--长按升级状态
@ -35,6 +35,8 @@ function this:InitComponent()
this.skillScroll=Util.GetGameObject(self.gameObject,"infoLayout/skillLayout/skillScroll/skillGrid")
this.curSkillInfo=Util.GetGameObject(self.gameObject,"infoLayout/skillLayout/skillScroll/skillGrid/curSkillInfo")
this.nextSkillInfo=Util.GetGameObject(self.gameObject,"infoLayout/skillLayout/skillScroll/skillGrid/nextSkillInfo")
this.upLvTabRedPoint = Util.GetGameObject(this.upLvTab, "redPoint")
this.upStarTabRedPoint = Util.GetGameObject(this.upStarTab, "redPoint")
this.costItemViews={}
this.UpView = SubUIManager.Open(SubUIConfig.UpView, self.gameObject.transform, { showType = UpViewOpenType.ShowLeft })
end
@ -44,16 +46,17 @@ function this:BindEvent()
Util.AddClick(this.btnBack, function()
self:ClosePanel()
end)
Util.AddClick(this.upStarTab, function()
Util.AddClick(this.upLvTab, function()
tabType=1
this.SetSelectBtn()
this.UpdateWinInfo()
end)
Util.AddClick(this.upLvTab, function()
Util.AddClick(this.upStarTab, function()
tabType=2
this.SetSelectBtn()
this.UpdateWinInfo()
end)
Util.AddClick(this.upStarBtn, function()
local oldWarPower = FormationManager.GetFormationPower(FormationTypeDef.FORMATION_NORMAL)
local haveUpStarCost=GodWeaponManager.GetUpStarCost(godWeaponData)
@ -173,11 +176,12 @@ end
function this.SetSelectBtn()
local _btnTab
if tabType==1 then
_btnTab=this.upLvTab
this.selectText.text="升级"
else
_btnTab=this.upStarTab
this.selectText.text="升星"
else
_btnTab=this.upLvTab
this.selectText.text="升级"
end
this.selectBtn.transform:SetParent(_btnTab.transform)
this.selectBtn.transform.localPosition = Vector3.zero
@ -201,6 +205,10 @@ function this:OnShow()
end
function this.UpdateWinInfo()
local upLvRed = GodWeaponManager.CheckUpLvRedPoint(godWeaponData)
this.upLvTabRedPoint:SetActive(upLvRed)
local upStarRed = GodWeaponManager.CheckUpStarRedPoint(godWeaponData)
this.upStarTabRedPoint:SetActive(upStarRed)
this.curLv.text="等级:"..godWeaponData.lv
local starSize = Vector2.New(80,80)
PokemonManager.SetHeroStars(this.spLoader, this.starGrid, godWeaponData.star,1,starSize)
@ -208,6 +216,18 @@ function this.UpdateWinInfo()
local nextPropDic
local isLimit=false
if tabType==1 then
isLimit=godWeaponData.lv>=200
this.skillLayout.gameObject:SetActive(false)
this.upStarBtn.gameObject:SetActive(false)
this.upLvBtn.gameObject:SetActive(true)
this.curLv.transform.parent.gameObject:SetActive(true)
curPropDic=GodWeaponManager.GetSinglePokemonAddProData(godWeaponData.Did,godWeaponData.star,godWeaponData.lv)
if not isLimit then
nextPropDic=GodWeaponManager.GetSinglePokemonAddProData(godWeaponData.Did,godWeaponData.star,godWeaponData.lv+1)
costItems=ConfigManager.GetConfigDataByDoubleKey(ConfigName.ShenBingLevel,"Level",godWeaponData.lv,"Quality",godWeaponData.config.Quality).Consume
end
this.limitText.text="等级已满"
else
isLimit=godWeaponData.star>=5
this.skillLayout.gameObject:SetActive(true)
this.upStarBtn.gameObject:SetActive(true)
@ -230,19 +250,6 @@ function this.UpdateWinInfo()
end
LayoutRebuilder.ForceRebuildLayoutImmediate(this.skillScroll.transform)
this.limitText.text="星级已满"
else
isLimit=godWeaponData.lv>=200
this.skillLayout.gameObject:SetActive(false)
this.upStarBtn.gameObject:SetActive(false)
this.upLvBtn.gameObject:SetActive(true)
this.curLv.transform.parent.gameObject:SetActive(true)
curPropDic=GodWeaponManager.GetSinglePokemonAddProData(godWeaponData.Did,godWeaponData.star,godWeaponData.lv)
if not isLimit then
nextPropDic=GodWeaponManager.GetSinglePokemonAddProData(godWeaponData.Did,godWeaponData.star,godWeaponData.lv+1)
costItems=ConfigManager.GetConfigDataByDoubleKey(ConfigName.ShenBingLevel,"Level",godWeaponData.lv,"Quality",godWeaponData.config.Quality).Consume
end
this.limitText.text="等级已满"
end
this.SetPropInfo(curPropDic,this.curPropGrid)
@ -254,7 +261,7 @@ function this.UpdateWinInfo()
this.limitText.gameObject:SetActive(true)
this.nextPropGrid.gameObject:SetActive(false)
this.costGrid.gameObject:SetActive(false)
local costItems={}
costItems={}
else
this.costGrid.gameObject:SetActive(true)
this.SetPropInfo(nextPropDic,this.nextPropGrid)
@ -320,7 +327,7 @@ function this.SetCostItemInfo(_costItems)
view:OnOpen(false,{_costItems[i][1],_costItems[i][2]},0.9,true,true,false,this.sortingOrder)
view.gameObject:SetActive(true)
view.addImage.gameObject:SetActive(false)
if tabType==1 then
if tabType==2 then
local haveUpStarCost=GodWeaponManager.GetUpStarCost(godWeaponData)
local needNum=_costItems[i][2]
view.num:GetComponent("Text").text=string.format("%s/%s",#haveUpStarCost,_costItems[i][2])