神魂提交

dev_chengFeng
jiaoyangna 2021-11-03 10:13:44 +08:00
parent a5aa425168
commit 125e37fe6d
22 changed files with 384 additions and 158 deletions

View File

@ -4628,8 +4628,8 @@ RectTransform:
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: 58.3, y: -53.318}
m_SizeDelta: {x: 45.4, y: 45.371}
m_AnchoredPosition: {x: -53.4, y: 54}
m_SizeDelta: {x: 74, y: 74}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2971183349112545884
CanvasRenderer:
@ -4659,7 +4659,7 @@ MonoBehaviour:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_Sprite: {fileID: 21300000, guid: 1c666beff78f70943be2712a7f73f982, type: 3}
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@ -6691,8 +6691,8 @@ RectTransform:
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: 58.3, y: -53.318}
m_SizeDelta: {x: 45.4, y: 45.371}
m_AnchoredPosition: {x: -53.4, y: 54}
m_SizeDelta: {x: 74, y: 74}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4918884167573549438
CanvasRenderer:
@ -6722,7 +6722,7 @@ MonoBehaviour:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_Sprite: {fileID: 21300000, guid: 1c666beff78f70943be2712a7f73f982, type: 3}
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@ -7590,7 +7590,7 @@ RectTransform:
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: 1, y: -96.7}
m_AnchoredPosition: {x: 1, y: -104.6}
m_SizeDelta: {x: 160, y: 33.43}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3018588732584725266
@ -9503,8 +9503,8 @@ RectTransform:
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: 58.3, y: -53.318}
m_SizeDelta: {x: 45.4, y: 45.371}
m_AnchoredPosition: {x: -53.4, y: 54}
m_SizeDelta: {x: 74, y: 74}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &9085591083035277729
CanvasRenderer:
@ -9534,7 +9534,7 @@ MonoBehaviour:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_Sprite: {fileID: 21300000, guid: 1c666beff78f70943be2712a7f73f982, type: 3}
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@ -10383,80 +10383,6 @@ MonoBehaviour:
m_Calls: []
m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null
--- !u!1 &2306851235904678933
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4417856561020287287}
- component: {fileID: 1163841914872802907}
- component: {fileID: 6968227363794347902}
m_Layer: 0
m_Name: select
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4417856561020287287
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2306851235904678933}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 93.25}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 1625255851888925010}
m_RootOrder: 4
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: -3249, y: -516.08}
m_SizeDelta: {x: 179.3, y: 179.3}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1163841914872802907
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2306851235904678933}
m_CullTransparentMesh: 0
--- !u!114 &6968227363794347902
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2306851235904678933}
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: 0
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: e0b47bc9a280e904f8fa3ee0e74d04ef, type: 3}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
--- !u!1 &2309764684928106543
GameObject:
m_ObjectHideFlags: 0
@ -10834,7 +10760,7 @@ RectTransform:
- {fileID: 8806954384395645047}
- {fileID: 5545889005609741519}
- {fileID: 316844683690989597}
- {fileID: 4417856561020287287}
- {fileID: 3961400146129058683}
- {fileID: 4356416785763333288}
- {fileID: 7936163679762898668}
- {fileID: 8283061599103962425}
@ -12384,7 +12310,7 @@ MonoBehaviour:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_Sprite: {fileID: 21300000, guid: b1a92f783ef44174cadd79d112420c8e, type: 3}
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@ -12825,7 +12751,7 @@ RectTransform:
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: 1, y: -96.7}
m_AnchoredPosition: {x: 1, y: -104.6}
m_SizeDelta: {x: 160, y: 33.43}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6472384340994486674
@ -14338,6 +14264,80 @@ MonoBehaviour:
m_EditorClassIdentifier:
m_HorizontalFit: 0
m_VerticalFit: 2
--- !u!1 &4183362912171865654
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3961400146129058683}
- component: {fileID: 227094268022384348}
- component: {fileID: 7188166793477601469}
m_Layer: 0
m_Name: select
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &3961400146129058683
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4183362912171865654}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 93.25}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 1625255851888925010}
m_RootOrder: 4
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: -274.8, y: -154.94014}
m_SizeDelta: {x: 195, y: 195}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &227094268022384348
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4183362912171865654}
m_CullTransparentMesh: 0
--- !u!114 &7188166793477601469
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4183362912171865654}
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: 0
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: e0b47bc9a280e904f8fa3ee0e74d04ef, type: 3}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
--- !u!1 &4186176485394922406
GameObject:
m_ObjectHideFlags: 0
@ -16122,8 +16122,8 @@ RectTransform:
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: -52.3, y: 52.314}
m_SizeDelta: {x: 45.4, y: 45.371}
m_AnchoredPosition: {x: -53.4, y: 54}
m_SizeDelta: {x: 74, y: 74}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6978024229221089289
CanvasRenderer:
@ -16153,7 +16153,7 @@ MonoBehaviour:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_Sprite: {fileID: 21300000, guid: 1c666beff78f70943be2712a7f73f982, type: 3}
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@ -18123,7 +18123,7 @@ MonoBehaviour:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_Sprite: {fileID: 21300000, guid: b1a92f783ef44174cadd79d112420c8e, type: 3}
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@ -18166,7 +18166,7 @@ RectTransform:
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: 1, y: -96.7}
m_AnchoredPosition: {x: 1, y: -104.6}
m_SizeDelta: {x: 160, y: 33.43}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1630550239404110981
@ -18774,7 +18774,7 @@ MonoBehaviour:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_Sprite: {fileID: 21300000, guid: b1a92f783ef44174cadd79d112420c8e, type: 3}
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@ -20909,7 +20909,7 @@ MonoBehaviour:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
m_Sprite: {fileID: 21300000, guid: b1a92f783ef44174cadd79d112420c8e, type: 3}
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@ -26363,7 +26363,7 @@ RectTransform:
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: 1, y: -96.7}
m_AnchoredPosition: {x: 1, y: -104.6}
m_SizeDelta: {x: 160, y: 33.43}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6868631576627592249

View File

@ -2063,7 +2063,7 @@ MonoBehaviour:
m_HorizontalOverflow: 1
m_VerticalOverflow: 1
m_LineSpacing: 1.1
m_Text: "\u795E\u5C06\uFF1A"
m_Text: "\u652F\u63F4\u795E\u5C06\uFF1A"
--- !u!1 &5782846765921437624
GameObject:
m_ObjectHideFlags: 0
@ -3116,7 +3116,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 141, y: -88.84995}
m_AnchoredPosition: {x: 141, y: -87.5}
m_SizeDelta: {x: 150, y: 152}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4428040313502013545

View File

@ -403,6 +403,8 @@ end
function GetStarOrGodSoulLv(index,data)
if data.godSoulLv and data.godSoulLv > 0 then
return data.godSoulLv,3
elseif data.star > 9 then
return data.godSoulLv,2
end
return data.star,index
end
@ -410,8 +412,10 @@ end
--把英雄星级父对象和星级传过来 type 1 第6-11个预设 type 2 第12-17个预设 type 3 第18-24个预设
function SetHeroStars(spLoader, starGrid, star, type,_starSize,_scale,_pivot,rotation)
local starSize
if type == 3 then
if not _starSize and type == 3 then
starSize = Vector2.New(35.75,89.42)
elseif not _starSize and type == 2 then
starSize = Vector2(60,57)
else
starSize = Vector2(35,35)
end
@ -489,15 +493,15 @@ function SetHeroStars(spLoader, starGrid, star, type,_starSize,_scale,_pivot,rot
starPre.transform:GetChild(i - 1).gameObject:SetActive(false)
end
end
elseif type and type == 2 then
for i = 1, 23 do
if i > 11 and i == star + 2 then
starPre.transform:GetChild(i - 1).gameObject:SetActive(true)
starPre.transform:GetChild(i - 1):GetComponent("RectTransform").sizeDelta = starSize
else
starPre.transform:GetChild(i - 1).gameObject:SetActive(false)
end
end
-- elseif type and type == 2 then
-- for i = 1, 23 do
-- if i > 11 and i == star + 2 then
-- starPre.transform:GetChild(i - 1).gameObject:SetActive(true)
-- starPre.transform:GetChild(i - 1):GetComponent("RectTransform").sizeDelta = starSize
-- else
-- starPre.transform:GetChild(i - 1).gameObject:SetActive(false)
-- end
-- end
else
for i = 1, 23 do
if i == star - 4 then

View File

@ -593,6 +593,8 @@ function this.UpdateHeroDatas(_msgHeroData)
heroData.GetStar = function(index)
if heroData.godSoulLv and heroData.godSoulLv > 0 then
return heroData.godSoulLv,3
elseif heroData.star > 9 then
return heroData.star,2
end
return heroData.star,index
end

View File

@ -778,6 +778,8 @@ function this.SingleHeroDataShow(_go, _heroData)
if starType == 3 then
starSize = Vector2.New(33.43,83.61)
starScale = -13.77
elseif starType == 2 then
starSize = Vector2.New(60,57)
end
SetHeroStars(this.spLoader, starGrid, star,starType,starSize,starScale)

View File

@ -85,29 +85,48 @@ function GeneralBigPopup_RoleGodSoulUp:BindEvent()
-- end)
Util.AddClick(self.sureBtn,function()
local isSave = false
if LengthOfTable(self.choosedIdList) >= #self.costItems then
if #curList == LengthOfTable(self.choosedIdList) then
for i = 1,#curList do
if self:CheckIsChooseId(curList[i]) < 1 then
--已激活
if #curList > 0 then
if self:CheckHaveEmptyValue() then
parent:ClosePanel()
else
if LengthOfTable(self.choosedIdList) >= #self.costItems then
if #curList == LengthOfTable(self.choosedIdList) then
for i = 1,#curList do
if self:CheckIsChooseId(curList[i]) < 1 then
isSave = true
break
end
end
else
isSave = true
break
end
if isSave then
NetManager.HeroGodSoulBindRequest(self.curHeroData.dynamicId,self.lv,self.choosedIdList,function()
parent:ClosePanel()
end)
else
parent:ClosePanel()
end
end
else
isSave = true
end
if isSave then
NetManager.HeroGodSoulBindRequest(self.curHeroData.dynamicId,self.lv,self.choosedIdList,function()
parent:ClosePanel()
end)
else
parent:ClosePanel()
end
elseif LengthOfTable(self.choosedIdList) == 0 then
PopupTipPanel.ShowTip("请选择神将!")
end
else
PopupTipPanel.ShowTip("所选神将无法激活神魂效果!")
end
if LengthOfTable(self.choosedIdList) >= #self.costItems then
if not self:CheckHaveEmptyValue() then
NetManager.HeroGodSoulBindRequest(self.curHeroData.dynamicId,self.lv,self.choosedIdList,function()
parent:ClosePanel()
end)
else
PopupTipPanel.ShowTip("所选神将无法激活神魂效果!")
end
else
if self:CheckEmptyList() then
PopupTipPanel.ShowTip("请选择神将!")
else
PopupTipPanel.ShowTip("所选神将无法激活神魂效果!")
end
end
end
end)
for i = 1,self.bglist.transform.childCount do
@ -122,6 +141,25 @@ function GeneralBigPopup_RoleGodSoulUp:BindEvent()
end
end
function GeneralBigPopup_RoleGodSoulUp:CheckHaveEmptyValue()
for k,v in pairs(self.choosedIdList) do
if not v or v == "" then
return true
end
end
return false
end
function GeneralBigPopup_RoleGodSoulUp:CheckEmptyList()
for k,v in pairs(self.choosedIdList) do
if v or v ~= "" then
return false
end
end
return true
end
--添加事件监听(用于子类重写)
function GeneralBigPopup_RoleGodSoulUp:AddListener()
@ -255,6 +293,8 @@ function GeneralBigPopup_RoleGodSoulUp:SetSingleData(index,go,heroData)
if starType == 3 then
starSize = Vector2.New(33.43,83.61)
starScale = -13.77
elseif starType == 2 then
starSize = Vector2.New(60,57)
end
SetHeroStars(self.spLoader, self.itemlist[index].starGrid, star,starType,starSize,starScale)
@ -305,6 +345,16 @@ function GeneralBigPopup_RoleGodSoulUp:SetSingleData(index,go,heroData)
self:SetSeclet(self.itemlist[index].select,self.itemlist[index].go.transform,Vector3.New(0,-72,0))
end
self:RefreshCostItemNums2(false)
if self.choosedIdList[self.curPage] ~= "" then
for m = self.curPage + 1,#self.costItems do
if not self.choosedIdList[m] or self.choosedIdList[m] == "" then
self.curPage = m
self:SetSeclet(self.select,self.reSelectList[self.curPage].go.transform,Vector3.New(0,-75,0))
self:Refresh(true,false)
break
end
end
end
end)
Util.AddLongPressClick(self.itemlist[index]._go, function()
@ -380,7 +430,7 @@ function GeneralBigPopup_RoleGodSoulUp:RefreshCostItemNums2(isAllRefresh)
for i = 1, #self.costItems do
if isAllRefresh or (not isAllRefresh and i == self.curPage) then
local str = ""
if self.costItems[i].star > 11 then
if self.costItems[i].star > 10 then
str = "觉醒"
else
str = "十星"
@ -402,7 +452,7 @@ function GeneralBigPopup_RoleGodSoulUp:RefreshCostItemNums2(isAllRefresh)
self.reSelectList[i].frame.sprite = self.spLoader:LoadSprite(GetHeroQuantityImageByquality(tempHeroData.heroConfig.Quality,tempHeroData.star))
SetHeroIcon(self.spLoader,tempHeroData,self.reSelectList[i].icon,tempHeroData.heroConfig)
local star,starType = tempHeroData.GetStar(1)
local starSize = Vector2.New(30,30)
local starSize = Vector2.New(60,60)
local starScale = -8
if starType == 3 then
starSize = Vector2.New(33.43,83.61)
@ -411,7 +461,9 @@ function GeneralBigPopup_RoleGodSoulUp:RefreshCostItemNums2(isAllRefresh)
SetHeroStars(self.spLoader,self.reSelectList[i].star,star,starType)
self.reSelectList[i].proIcon.sprite = self.spLoader:LoadSprite(GetProStrImageByProNum(tempHeroData.heroConfig.PropertyName))
self.reSelectList[i].posIcon.sprite = self.spLoader:LoadSprite(tempHeroData.professionIcon)
else
Util.SetGray(self.reSelectList[i].go,false)
Util.SetGray(self.select,false)
else
self.reSelectList[i].name.text = string.format("<color=#FFE18D>%s</color>",str)
self.reSelectList[i].frame.sprite = self.spLoader:LoadSprite(GetHeroQuantityImageByquality(self.costItems[i].star,self.costItems[i].star))
SetHeroStars(self.spLoader,self.reSelectList[i].star,self.costItems[i].star,1)
@ -430,6 +482,8 @@ function GeneralBigPopup_RoleGodSoulUp:RefreshCostItemNums2(isAllRefresh)
else
end
end
Util.SetGray(self.reSelectList[i].go,true)
Util.SetGray(self.select,false)
end
end
end

View File

@ -277,7 +277,7 @@ function this.CheckRedPointGodSoul(curHeroData)
return false
end
local lv = this.GetGodSoulLv(curHeroData.dynamicId)
local isShow = this.CheckCanUpGodSoul(curHeroData,lv + 1) or false
local isShow = this.CheckCanUpGodSoul2(curHeroData,lv + 1) or false
return isShow
end
@ -292,13 +292,15 @@ function this.GetGodSoulData(curHeroData,lv,conditionIndex)
local index = -1 --无法使用
for j = 1,#godData do
local isChoosed = this.CheckExistBindHeroDataByDid(curHeroData.dynamicId,v.dynamicId)
if godData[j].id > 0 and v.heroConfig.Id == godData[j].id then
if isChoosed and isChoosed == lv then
if godData[j].id > 0 and v.heroConfig.Id == godData[j].id then
if v.star < godData[j].star then
index = -1
elseif isChoosed and isChoosed == lv then
index = 666
elseif v.star >= godData[j].star then
index = 665
else
elseif isChoosed > 0 and isChoosed ~= lv then
index = 664
else
index = 665
end
break
elseif isChoosed > 0 and isChoosed ~= lv then
@ -410,6 +412,110 @@ function this.CheckCanUpGodSoul(curHeroData,lv,datas)
return false,enoughData,enoughDatas
end
--检测所选择神将是否满足激活神魂
function this.CheckCanUpGodSoul2(curHeroData,lv)
local godDatas = HeroManager.GetAllHeroList()
local godData = this.GetGodSoulDataByLv(curHeroData.heroConfig.Id,lv)
if godData and #godData > 0 then
local godSingleDatas = {}
for i = 1,#godData do
godSingleDatas[i] = 0
end
-- for k,v in pairs(godDatas) do
-- LogGreen("v.heroConfig.Id:"..v.heroConfig.Id)
-- end
-- coroutine.start(function()
-- this.PutQueen(godData, godDatas,1,godSingleDatas,curHeroData,lv)
-- end)
--用条件进行匹配,使得满足条件
--return this.PutQueen(godData, godDatas,1,godSingleDatas,curHeroData,lv)
else
return false
end
return false
end
-- 放置神将 --godData 条件 -- 神将列表 --下一个条件 --已经放置的条件 --当前神将 当前等级
function this.PutQueen(godData, godDatas, nextIndex,godSingleDatas,curHeroData,lv)
for k,v in pairs(godDatas) do
coroutine.wait(0.01)
if this.CheckoutCanPut(v,godSingleDatas,nextIndex,godData[nextIndex],curHeroData,lv) then
nextIndex = nextIndex + 1
if this.CheckConditionEnough(godSingleDatas)then
return true
else
if this.PutQueen(godData, godDatas, nextIndex,godSingleDatas,curHeroData,lv) then
return true
end
end
nextIndex = nextIndex - 1
godSingleDatas[nextIndex] = 0
end
end
return false
end
-- 是否满足条件
function this.CheckConditionEnough(godSingleDatas)
for i = 1,#godSingleDatas do
if not tonumber(godSingleDatas[i]) and godSingleDatas[i] and godSingleDatas[i].dynamicId then
else
return false
end
end
return true
end
--heroData 要放置的神将 heroList 已经放置的神将列表 index 放置位置 condition 放置条件 curHeroData当前神将 curHeroDatacurLv 当前等级
function this.CheckoutCanPut(heroData,heroList,index,condition,curHeroData,curLv)
--这个神将不是它本身 并且这个神将可以选择(没有被其他位置选择)
local returnValue = false
if heroData.dynamicId ~= curHeroData.dynamicId
and not this.HaveHeroData(heroData,heroList,index) then
--这个神将满足这个位置的条件
if this.CheckCanUpGodSoul3(heroData,condition,curHeroData,curLv) then
heroList[index] = heroData
returnValue = true
else
returnValue = false
end
end
return returnValue
end
--这个神将没有被其他位置选择并且这个神将不是他本身
function this.HaveHeroData(heroData,heroList,pos)
for i = 1,#heroList do
if not tonumber(heroList[i]) and heroList[i].dynamicId and heroData.dynamicId == heroList[i].dynamicId then
return true
end
end
return false
end
--检测所选择神将是否满足激活神魂
function this.CheckCanUpGodSoul3(heroData,condition,curHeroData,curLv)
if condition then
local isChoosed = this.CheckExistBindHeroDataByDid(curHeroData.dynamicId,heroData.dynamicId)
if isChoosed and isChoosed > 0 and isChoosed ~= curLv then
return false
else
if heroData.star >= condition.star then
if condition.id > 0 and heroData.heroConfig.Id == condition.id then
return true
elseif condition.property > 0 and heroData.property == condition.property then
return true
elseif condition.profession > 0 and heroData.profession == condition.profession then
return true
elseif condition.property == 0 and condition.profession == 0 and condition.id == 0 then
return true
end
end
end
end
return false
end
function this.GetHeroGodSoulDatas(dynamicId,id,_lv)
local lv = _lv or 0
if HeroManager.GetHongMengData(dynamicId) then

View File

@ -532,6 +532,8 @@ function this.GetHeroDatas(_msgHeroData, force, specialEffects,guildSkill)
heroData.GetStar = function(index)
if heroData.godSoulLv and heroData.godSoulLv > 0 then
return heroData.godSoulLv,3
elseif heroData.star > 9 then
return heroData.star,2
end
return heroData.star,index
end

View File

@ -109,7 +109,7 @@ function HandBookHeroInfoPanel:BindEvent()
end)
Util.AddClick(this.godSoulBtn,function()
UIManager.OpenPanel(UIName.RoleGodSoulLayout,heroConFigData)
UIManager.OpenPanel(UIName.RoleGodSoulLayout,heroConFigData,_curStar)
end)
end
@ -263,7 +263,7 @@ function this:UpdateHeroInfoData()
self:SetSelectBtn(_CurPageIndex)
self:OnPageTabChange(_CurPageIndex)
this.godSoulBtn.gameObject:SetActive(ActTimeCtrlManager.SingleFuncState(FUNCTION_OPEN_TYPE.shenhun) and heroConFigData.IsSoulOpen == 1 and _curStar > 10)
--角色定位按钮
this.posBtn.gameObject:SetActive(heroConFigData.ShowHeroLocation==1)
end

View File

@ -178,6 +178,8 @@ function this.UpdateHeroDatas(_msgHeroData, isFindHandBook)
local godSoulLv = GodSoulManager.GetGodSoulLv(heroData.dynamicId)
if godSoulLv and godSoulLv > 0 then
return godSoulLv,3
elseif heroData.star > 9 then
return heroData.star,2
end
return heroData.star,index
end

View File

@ -321,6 +321,18 @@ function this:OnOpen(...)
SoundManager.PlayMusic(SoundConfig.BGM_Login)
SoundManager.PlayAmbient(SoundConfig.Ambient_Login)
-- local data = {}
-- local godData = this.GetGodSoulDataByLv(10023,5)
-- local godSingleDatas = {}
-- for i = 1,#godData do
-- godSingleDatas[i] = 0
-- end
-- local curHeroData = {}
-- --用条件进行匹配,使得满足条件
-- GodSoulManager.PutQueen(godData, godDatas, 1,godSingleDatas,curHeroData,5)
end
--界面关闭时调用(用于子类重写)

View File

@ -358,6 +358,8 @@ function this.InitSingleEndlessHero(_msgHeroData)
heroData.GetStar = function(index)
if heroData.godSoulLv and heroData.godSoulLv > 0 then
return heroData.godSoulLv,3
elseif heroData.star > 9 then
return heroData.star,2
end
return heroData.star,index
end

View File

@ -380,6 +380,8 @@ function this.UpdateHeroDatas(_msgHeroData,_msgPlayerData)
heroData.GetStar = function(index)
if heroData.godSoulLv and heroData.godSoulLv > 0 then
return heroData.godSoulLv,3
elseif heroData.star > 9 then
return heroData.star,2
end
return heroData.star,index
end

View File

@ -339,6 +339,8 @@ function this.FormationAdapter(teamInfo)
local starSize = Vector2.New(35,35)
if starType == 3 then
starSize = Vector2.New(35.75,89.42)
elseif starType == 2 then
starSize = Vector2.New(60,57)
end
SetHeroStars(this.spLoader, Util.GetGameObject(heroGo, "starGrid"), star,starType,starSize)
local heroConfig = ConfigManager.GetConfigData(ConfigName.HeroConfig, demonId)

View File

@ -102,7 +102,7 @@ function RoleInfoPopup:BindEvent()
if lv >= i then
color = "00FF00"
end
table.insert(pro,string.format("<color=#%s>神魂%s:%s</color>",color,i,skillList[i].skill))
table.insert(pro,string.format("<color=#%s>神魂%s%s</color>",color,i,skillList[i].skill))
end
return pro
end

View File

@ -153,6 +153,8 @@ function this.RefreshPanel()
if starType == 3 then
starSize = Vector2.New(35.75,89.42)
starScale = -13.77
elseif starType == 2 then
starSize = Vector2.New(60,57)
end
SetHeroStars(this.spLoader, star, star,starType,starSize,starScale)
--血量相关

View File

@ -115,6 +115,8 @@ function this.SingleHeroDataShow(go,_heroData)
if starType == 3 then
starSize = Vector2.New(35.75,89.42)
starScale = -16.86
elseif starType == 2 then
starSize = Vector2.New(60,57)
end
SetHeroStars(this.spLoader, starGrid, star,starType,starSize,starScale)
local choosed =Util.GetGameObject(_go.transform, "choosed")

View File

@ -1,7 +1,7 @@
require("Base/BasePanel")
RoleGodSoulLayout = Inherit(BasePanel)
local heroConfig = ConfigManager.GetConfig(ConfigName.HeroConfig)
local heroRankupConfig = ConfigManager.GetConfig(ConfigName.HeroRankupConfig)
--初始化组件(用于子类重写)
function RoleGodSoulLayout:InitComponent()
self.spLoader = SpriteLoader.New()
@ -44,13 +44,24 @@ function RoleGodSoulLayout:RemoveListener()
end
--界面打开时调用(用于子类重写)
function RoleGodSoulLayout:OnOpen(_curHerodata)
function RoleGodSoulLayout:OnOpen(_curHerodata,_star,_lv)
self.curHeroData = _curHerodata
if self.curHeroData.dynamicId then
self.lv = GodSoulManager.GetGodSoulLv(self.curHeroData.dynamicId)
self.level = self.curHeroData.lv
self.star = self.curHeroData.star
self.addShow = true
self.heroConfig = self.curHeroData.heroConfig
else
if _star == 6 then
self.level = 145
elseif _star == 10 then
self.level = 255
elseif _star == 11 then
self.level = 330
else
self.level = 1
end
self.star = _star
self.lv = 0
self.addShow = false
self.heroConfig = self.curHeroData
@ -82,33 +93,46 @@ function RoleGodSoulLayout:SetHeroData(heroGo,heroData,isCur)
local proIcon = Util.GetGameObject(heroGo,"proIcon"):GetComponent("Image")
local starGrid = Util.GetGameObject(heroGo,"star")
if self.addShow then
local star,starType = heroData.GetStar(1)
local starSize = Vector2.New(19.69,19.69)
local starScale = -8
if isCur then
local lv = Util.GetGameObject(heroGo,"lv/Text"):GetComponent("Text")
lv.text = heroData.lv
if starType == 3 then
starSize = Vector2.New(34.4,86.1)
starScale = -13.77
elseif starType == 2 then
starSize = Vector2.New(34.485,32.76)
end
else
if starType == 3 then
starSize = Vector2.New(34.4,86.1)
starScale = -13.77
elseif starType == 2 then
starSize = Vector2.New(34.492,32.767)
end
end
frame.sprite = self.spLoader:LoadSprite(GetHeroQuantityImageByquality(heroData.heroConfig.Quality,heroData.star))
proIcon.sprite = self.spLoader:LoadSprite(GetProStrImageByProNum(heroData.heroConfig.PropertyName))
SetHeroIcon(self.spLoader,heroData,icon,heroData.heroConfig)
local star,starType = heroData.GetStar(1)
local starSize = Vector2.New(30,30)
local starScale = -8
if starType == 3 then
starSize = Vector2.New(33.43,83.61)
starScale = -13.77
end
SetHeroStars(self.spLoader, starGrid, star,starType,starSize,starScale)
else
local lv = Util.GetGameObject(heroGo,"lv/Text"):GetComponent("Text")
lv.text = heroData.Level
lv.text = self.lv
frame.sprite = self.spLoader:LoadSprite(GetHeroQuantityImageByquality(heroData.Quality,heroData.star))
proIcon.sprite = self.spLoader:LoadSprite(GetProStrImageByProNum(heroData.PropertyName))
SetHeroIcon(self.spLoader,heroData,icon,heroData)
SetHeroStars(self.spLoader, starGrid, heroData.Star,1)
SetHeroStars(self.spLoader, starGrid, self.star,1)
end
end
function RoleGodSoulLayout:UpdateGodList()
if self.curHeroData.dynamicId then
self.lv = GodSoulManager.GetGodSoulLv(self.curHeroData.dynamicId)
else
self.lv = 0
end
self.godDatas = GodSoulManager.GetGodSoulDataByLv(self.heroConfig.Id,0)
if not self.gridList then
@ -127,7 +151,8 @@ function RoleGodSoulLayout:UpdateGodList()
self.gridList[i].costGrid = Util.GetGameObject(self.gridList[i].go,"middle/costGrid")
self.gridList[i].costList = {}
self.gridList[i].add = Util.GetGameObject(self.gridList[i].go,"add")
self.gridList[i].red = Util.GetGameObject(self.gridList[i].add,"red")
self.gridList[i].addImage = Util.GetGameObject(self.gridList[i].go,"icon")
self.gridList[i].red = Util.GetGameObject(self.gridList[i].add,"icon/red")
self.gridList[i].red.gameObject:SetActive(false)
self.gridList[i].des = Util.GetGameObject(self.gridList[i].go,"bottom/des"):GetComponent("Text")
self.gridList[i].upHero = Util.GetGameObject(self.gridList[i].go,"upHero")
@ -235,14 +260,17 @@ function RoleGodSoulLayout:UpdataSingleGod(index)
--Util.SetGray(self.gridList[index].des.gameObject,false)
self.gridList[index].des.text = string.format("<color=#B5AA95>%s</color>",self.godDatas[index].skill) --神魂效果 绿色 未激活时置灰
elseif index <= self.lv + 1 then
self.gridList[index].add.gameObject:SetActive(true)
if index == self.lv + 1 then
self.gridList[index].add.gameObject:SetActive(true)
self.gridList[index].addImage.gameObject:SetActive(true)
Util.SetGray(self.gridList[index].godGrid,true) --勾魂图标 未激活时置灰
--Util.SetGray(self.gridList[index].des.gameObject,true)
self.gridList[index].des.text = string.format("<color=#B5AA95>%s</color>",self.godDatas[index].skill) --神魂效果 绿色 未激活时置灰
local isShow = GodSoulManager.CheckRedPointGodSoul(self.curHeroData) or false
self.gridList[index].red.gameObject:SetActive(isShow)
else
self.gridList[index].add.gameObject:SetActive(true)
self.gridList[index].addImage.gameObject:SetActive(false)
Util.SetGray(self.gridList[index].godGrid,false)
--Util.SetGray(self.gridList[index].des.gameObject,false)
self.gridList[index].des.text = string.format("<color=#00FF00>%s</color>",self.godDatas[index].skill) --神魂效果 绿色 未激活时置灰
@ -250,6 +278,7 @@ function RoleGodSoulLayout:UpdataSingleGod(index)
Util.SetGray(self.gridList[index].add,false)
else
self.gridList[index].add.gameObject:SetActive(true)
self.gridList[index].addImage.gameObject:SetActive(true)
--红色
Util.SetGray(self.gridList[index].godGrid,true)
--Util.SetGray(self.gridList[index].des.gameObject,true)

View File

@ -489,9 +489,9 @@ function this:UpdateBtnList()
local upStarRedPointState = HeroManager.IsShowUpStarRedPoint(curHeroData)
redpot.gameObject:SetActive(upStarRedPointState)
elseif k == RoleInfoPanelIndex.shenhun then
local upStarRedPointState = GodSoulManager.CheckRedPointGodSoul(curHeroData)
redpot.gameObject:SetActive(upStarRedPointState)
else
-- local upStarRedPointState = GodSoulManager.CheckRedPointGodSoul(curHeroData)
-- redpot.gameObject:SetActive(upStarRedPointState)
-- else
redpot.gameObject:SetActive(false)
end
Util.AddOnceClick(tabsList[k],function()
@ -642,7 +642,7 @@ function this:UpdateHeroInfoData()
this:SetDragView()
local starSize = Vector2.New(60,60)
local star,starType = curHeroData.GetStar(2)
local star,starType = curHeroData.GetStar(1)
local starScale = -10
if starType == 3 then
starSize = Vector2.New(55.3,138.2)

View File

@ -257,6 +257,8 @@ function this.SingleHeroDataShow(_go,_heroData)
if starType == 3 then
starSize = Vector2.New(35.75,89.42)
starScale = -13.2
elseif starType == 2 then
starSize = Vector2.New(60,57)
end
SetHeroStars(this.spLoader, starGrid, star,starType,starSize,starScale)
--local cardBtn = Util.GetGameObject(_go.transform, "card(Clone)")

View File

@ -119,7 +119,6 @@ function PlayerHeadView:SetEffectScale(scale)
Util.SetParticleScale(self.frameEffect, targetScale)
end
end
-- 头像框特效相关
function PlayerHeadView:LoadFrameEffect(frameId)

View File

@ -67,6 +67,8 @@ function RoleItemView:OnShowHeroData(effectLayer)
if starType == 3 then
starSize = Vector2.New(35.75,89.42)
starScale = -13
elseif starType == 2 then
starSize = Vector2.New(60,57)
end
SetHeroBg(this.spLoader, Util.GetGameObject(self.gameObject, "iconMask"),self.frame,star,self.heroData.heroConfig.Quality)
self.icon.sprite = this.spLoader:LoadSprite(self.heroData.painting)