【修行】提交

dev_chengFeng
ZhangBiao 2021-05-12 17:40:38 +08:00
parent 92b22fdc0c
commit 7d63d1e191
14 changed files with 1588 additions and 69 deletions

View File

@ -305,7 +305,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
m_IsActive: 0
--- !u!224 &8807105563129826786
RectTransform:
m_ObjectHideFlags: 0
@ -322,10 +322,10 @@ RectTransform:
m_Father: {fileID: 6999176096490070205}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 540, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 540, y: -40}
m_SizeDelta: {x: 154, y: 70}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4230894382925717242
CanvasRenderer:
@ -526,6 +526,7 @@ RectTransform:
m_Children:
- {fileID: 9191273193405951724}
- {fileID: 6999176096490070205}
- {fileID: 5372197318280130239}
- {fileID: 7687275820350529986}
m_Father: {fileID: 8503549196898394800}
m_RootOrder: 2
@ -680,6 +681,68 @@ Animator:
m_HasTransformHierarchy: 1
m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorControllerStateOnDisable: 0
--- !u!1 &2999680739887067492
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5372197318280130239}
- component: {fileID: 5974558750208915759}
m_Layer: 0
m_Name: Content
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!224 &5372197318280130239
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2999680739887067492}
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:
- {fileID: 2915832978086588178}
- {fileID: 4647201884304797506}
- {fileID: 3089880466673845363}
m_Father: {fileID: 3818728531437821566}
m_RootOrder: 2
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: 0, y: -131}
m_SizeDelta: {x: 1080, y: 80}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &5974558750208915759
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2999680739887067492}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: -405508275, guid: f70555f144d8491a825f0804e09c671c, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Padding:
m_Left: 0
m_Right: 0
m_Top: 0
m_Bottom: 0
m_ChildAlignment: 4
m_Spacing: 10
m_ChildForceExpandWidth: 0
m_ChildForceExpandHeight: 1
m_ChildControlWidth: 1
m_ChildControlHeight: 0
--- !u!1 &3245778189758882973
GameObject:
m_ObjectHideFlags: 0
@ -833,10 +896,10 @@ RectTransform:
m_Father: {fileID: 8807105563129826786}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 70}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 112, y: -35}
m_SizeDelta: {x: 84, y: 70}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7816951529445717412
CanvasRenderer:
@ -881,6 +944,202 @@ MonoBehaviour:
m_LineSpacing: 1
m_Text: 9999
LanguageIndex: 0
--- !u!1 &4417042985833577639
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3089880466673845363}
- component: {fileID: 33793932751881035}
- component: {fileID: 4346592910141442077}
m_Layer: 0
m_Name: Image
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &3089880466673845363
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4417042985833577639}
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: 5372197318280130239}
m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 741, y: -40}
m_SizeDelta: {x: 72, y: 70}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &33793932751881035
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4417042985833577639}
m_CullTransparentMesh: 0
--- !u!114 &4346592910141442077
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4417042985833577639}
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: 8908080ead3926f4e9e9951397b9e29b, 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 &5196531749690728303
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2915832978086588178}
- component: {fileID: 3842461532959549957}
- component: {fileID: 9203813319220798313}
- component: {fileID: 2943931107101536826}
m_Layer: 0
m_Name: Text
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2915832978086588178
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5196531749690728303}
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: 5372197318280130239}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 463, y: -40}
m_SizeDelta: {x: 320, y: 80}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &3842461532959549957
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5196531749690728303}
m_CullTransparentMesh: 0
--- !u!114 &9203813319220798313
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5196531749690728303}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 708705254, 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_FontData:
m_Font: {fileID: 12800000, guid: 4b73e9e4512d17e4daeea351e090d33c, type: 3}
m_FontSize: 40
m_FontStyle: 1
m_BestFit: 0
m_MinSize: 4
m_MaxSize: 50
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: "<color=#24F604>\u5C71\u6CB3\u793E\u7A37\u56FE</color>\u4E2D\u83B7\u5F97"
--- !u!114 &2943931107101536826
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5196531749690728303}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 0
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 9203813319220798313}
m_OnClick:
m_PersistentCalls:
m_Calls: []
m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=null
--- !u!1 &5369329383939908763
GameObject:
m_ObjectHideFlags: 0
@ -959,7 +1218,7 @@ MonoBehaviour:
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: "\u4EC0\u4E48\u662F\u5FEB\u4E50"
m_Text:
--- !u!1 &5449208659254963993
GameObject:
m_ObjectHideFlags: 0
@ -1609,7 +1868,7 @@ RectTransform:
m_Children:
- {fileID: 8218812462647253869}
m_Father: {fileID: 3818728531437821566}
m_RootOrder: 2
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
@ -1823,6 +2082,85 @@ MonoBehaviour:
m_Calls: []
m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
--- !u!1 &7756404515175255826
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4647201884304797506}
- component: {fileID: 2317278536197132997}
- component: {fileID: 3066389533789880932}
m_Layer: 0
m_Name: num
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4647201884304797506
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7756404515175255826}
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: 5372197318280130239}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 664, y: -40}
m_SizeDelta: {x: 62, y: 80}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &2317278536197132997
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7756404515175255826}
m_CullTransparentMesh: 0
--- !u!114 &3066389533789880932
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7756404515175255826}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 708705254, 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_FontData:
m_Font: {fileID: 12800000, guid: 4b73e9e4512d17e4daeea351e090d33c, type: 3}
m_FontSize: 40
m_FontStyle: 1
m_BestFit: 0
m_MinSize: 4
m_MaxSize: 50
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: 200
--- !u!1 &8439731279743654580
GameObject:
m_ObjectHideFlags: 0

View File

@ -1985,6 +1985,7 @@ GENERAL_POPUP_TYPE={
--大号通用弹窗
YiJingBaoKu = 30,--易经宝库
YiJingBaoKuRewardPreview = 32,--易经宝库奖励预览
PracticeStatePreview = 35,--修行境界预览
}
--抽卡类型

View File

@ -1397,6 +1397,12 @@ function GetResourcePath(id)
return GetLanguageStrById(ConfigManager.GetConfigData(ConfigName.ArtResourcesConfig, id).Name)
end
--- 根据ItemId获取资源名称
function GetSpriteNameByItemId(id)
local artId = ConfigManager.GetConfigData(ConfigName.ItemConfig, id).ResourceID
return GetLanguageStrById(ConfigManager.GetConfigData(ConfigName.ArtResourcesConfig, artId).Name)
end
--- 获取玩家头像资源
function GetPlayerHeadSprite(headId)
if headId == 0 then headId = 71000 end

View File

@ -7,16 +7,16 @@ local sorting = 0
--子模块脚本
local contentScripts = {
--易经宝库
[1] = {view = require("Modules/GeneralPanel/View/GeneralBigPopup_YiJingBaoKu"), panelName = "GeneralBigPopup_YiJingBaoKu",type=GENERAL_POPUP_TYPE.YiJingBaoKu},
[GENERAL_POPUP_TYPE.YiJingBaoKu] = {view = require("Modules/GeneralPanel/View/GeneralBigPopup_YiJingBaoKu"), panelName = "GeneralBigPopup_YiJingBaoKu"},
--易经宝库奖励预览
[2] = {view = require("Modules/GeneralPanel/View/GeneralBigPopup_YiJingBaoKuRewardPreview"), panelName = "GeneralBigPopup_YiJingBaoKuRewardPreview",type=GENERAL_POPUP_TYPE.YiJingBaoKuRewardPreview},
[GENERAL_POPUP_TYPE.YiJingBaoKuRewardPreview] = {view = require("Modules/GeneralPanel/View/GeneralBigPopup_YiJingBaoKuRewardPreview"), panelName = "GeneralBigPopup_YiJingBaoKuRewardPreview"},
--修行境界预览
[GENERAL_POPUP_TYPE.PracticeStatePreview] = {view = require("Modules/GeneralPanel/View/GeneralBigPopup_PracticeStatePreview"), panelName = "GeneralBigPopup_PracticeStatePreview"},
}
--子模块预设
local contentPrefabs={}
--打开弹窗类型
local popupType
--打开弹窗索引
local index=0
--初始化组件(用于子类重写)
function GeneralBigPopup:InitComponent()
@ -26,75 +26,69 @@ function GeneralBigPopup:InitComponent()
this.Mask=Util.GetGameObject(this.gameObject,"Mask")
--子模块脚本初始化
for i = 1, #contentScripts do
contentScripts[i].view:InitComponent(Util.GetGameObject(this.contents, contentScripts[i].panelName))
for key, value in pairs(contentScripts) do
value.view:InitComponent(Util.GetGameObject(this.contents, value.panelName))
end
--预设赋值
for i=1,#contentScripts do
contentPrefabs[i]=Util.GetGameObject(this.contents,contentScripts[i].panelName)
for key, value in pairs(contentScripts) do
contentPrefabs[key]=Util.GetGameObject(this.contents,value.panelName)
end
end
--绑定事件(用于子类重写)
function GeneralBigPopup:BindEvent()
for i = 1, #contentScripts do
contentScripts[i].view:BindEvent()
for key, value in pairs(contentScripts) do
value.view:BindEvent()
end
--返回按钮
Util.AddClick(this.backBtn,function()
Util.AddClick(this.backBtn,function()
Game.GlobalEvent:DispatchEvent(GameEvent.Bag.OnTempBagChanged)
self:ClosePanel()
end)
Util.AddClick(this.Mask,function()
Game.GlobalEvent:DispatchEvent(GameEvent.Bag.OnTempBagChanged)
self:ClosePanel()
end)
end
function GeneralBigPopup:AddListener()
for i = 1, #contentScripts do
contentScripts[i].view:AddListener()
for key, value in pairs(contentScripts) do
value.view:AddListener()
end
end
function GeneralBigPopup:RemoveListener()
for i = 1, #contentScripts do
contentScripts[i].view:RemoveListener()
for key, value in pairs(contentScripts) do
value.view:RemoveListener()
end
end
function GeneralBigPopup:OnSortingOrderChange()
this.sortingOrder = self.sortingOrder
end
local onOpenArgs--临时接的参数 需要onshow刷新的调用
function GeneralBigPopup:OnOpen(popupType,...)
onOpenArgs = ...
--根据传入类型打开对应面板
--LogGreen("显示的类型 = "..popupType)
for i,v in pairs(contentScripts) do
if popupType==v.type then
index=i
break
end
function GeneralBigPopup:OnOpen(popupKey,...)
for key, value in pairs(contentPrefabs) do
value.gameObject:SetActive(false)
end
for i=1,#contentPrefabs do
contentPrefabs[i].gameObject:SetActive(false)
end
this.Mask:SetActive(index ~= GENERAL_POPUP_TYPE.Onhook)
this.BG:SetActive(index ~= GENERAL_POPUP_TYPE.Onhook)
this.Mask:SetActive(popupKey ~= GENERAL_POPUP_TYPE.Onhook)
this.BG:SetActive(popupKey ~= GENERAL_POPUP_TYPE.Onhook)
contentPrefabs[index].gameObject:SetActive(true)
contentScripts[index].view:OnShow(this,...)--1、传入自己 2、传入不定参
contentPrefabs[popupKey].gameObject:SetActive(true)
contentScripts[popupKey].view:OnShow(this,...)--1、传入自己 2、传入不定参
end
function GeneralBigPopup:OnShow()
end
function GeneralBigPopup:OnClose()
for i = 1, #contentScripts do
contentScripts[i].view:OnClose()
for key, value in pairs(contentScripts) do
value.view:OnClose()
end
end
function GeneralBigPopup:OnDestroy()
for i = 1, #contentScripts do
contentScripts[i].view:OnDestroy()
for key, value in pairs(contentScripts) do
value.view:OnDestroy()
end
end

View File

@ -0,0 +1,116 @@
----- 修行境界预览弹窗 -----
PracticeStatePreview = {}
--传入父脚本模块
local parent
--传入特效层级
local sortingOrder=0
local data
function PracticeStatePreview:InitComponent(gameObject)
self.titleText = Util.GetGameObject(gameObject,"TitleText"):GetComponent("Text")
self.Grid = Util.GetGameObject(gameObject,"Scroll/Grid")
self.itemPre = Util.GetGameObject(gameObject,"Pre")
self.GameObject = Util.GetGameObject(gameObject,"GameObject")
local rootHight = self.GameObject.transform.rect.height
local width = self.GameObject.transform.rect.width
self.ScrollView = SubUIManager.Open(SubUIConfig.ScrollFitterView, self.GameObject.transform,
self.itemPre, Vector2.New(width, rootHight), 1, 0)
self.ScrollView.moveTween.MomentumAmount = 1
self.ScrollView.moveTween.Strength = 2
self.preList = {}
self.textList = {}
end
function PracticeStatePreview:BindEvent()
end
function PracticeStatePreview:AddListener()
end
function PracticeStatePreview:RemoveListener()
end
function PracticeStatePreview:OnShow(_parent,_args)
parent=_parent
data = _args
sortingOrder = _parent.sortingOrder
--不定参中包含的不定参 _args[1]为面板类型 _args[2]之后(包括)为打开面板后传入的不定参
self.titleText.text = "境界预览"
self.previewData = PracticeManager.GetPreViewData()
self.ScrollView:SetData(self.previewData, function(index, go)
self:SetSingleData(index,go,self.previewData[index])
end)
-- for i = 1, #self.previewData do
-- if not self.preList[i] then
-- self.preList[i] = newObject(self.itemPre)
-- self.preList[i].transform:SetParent(self.Grid.transform)
-- self.preList[i].transform.localScale = Vector3.one
-- self.preList[i].transform.localPosition = Vector3.zero
-- end
-- self.preList[i]:SetActive(false)
-- self:SetSingleData(i,self.preList[i],self.previewData[i])
-- end
ForceRebuildLayout(self.Grid.transform)
self.ScrollView:SetIndex(PracticeManager.PracticeBigLevel)
end
function PracticeStatePreview:SetSingleData(index,_go,_data)
local title = Util.GetGameObject(_go,"title/Text"):GetComponent("Text")
local specialText = Util.GetGameObject(_go,"SpecialText"):GetComponent("Text")
local textPre = Util.GetGameObject(_go,"Content/Text")
local content = Util.GetGameObject(_go,"Content")
if not self.textList[_go] then
self.textList[_go] = {}
end
local singleTextList = self.textList[_go]
for k,v in ipairs(singleTextList) do
v.gameObject:SetActive(false)
end
--进行排序
local templist = {}
for key, value in pairs(_data.AddList) do
local sData = {}
sData.id = key
sData.value = value
table.insert(templist,sData)
end
table.sort(templist,function (a,b)
return a.id < b.id
end)
--显示文字
for i = 1, #templist do
if not singleTextList[i] then
singleTextList[i] = newObject(textPre)
singleTextList[i].transform:SetParent(content.transform)
singleTextList[i].transform.localScale = Vector3.one
singleTextList[i].transform.localPosition = Vector3.zero
end
local Text = singleTextList[i]:GetComponent("Text")
local string = PracticeManager.GetPreviewSingleText(templist[i].id,templist[i].value)
singleTextList[i]:SetActive(true)
Text.text = string
if _data.IsActive then
Text.text = string.format("<color=#00ff00>%s</color>",string)
end
end
specialText.text = _data.RealmDesc
if _data.IsActive then
specialText.text = string.format("<color=#00ff00>%s</color>",_data.RealmDesc)
end
title.text = string.format("%s期",_data.RealmName)
ForceRebuildLayout(_go.transform)
_go:SetActive(true)
end
function PracticeStatePreview:OnClose()
end
function PracticeStatePreview:OnDestroy()
self.textList = {}
end
return PracticeStatePreview

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: e5ac41a4c429feb4998ac7349bff37b5
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -45,7 +45,7 @@ end
--绑定事件(用于子类重写)
function HandBookRoleInfoLayout:BindEvent()
Util.AddClick(self.allProButton, function()
UIManager.OpenPanel(UIName.RoleProInfoPopup,allAddProVal,heroConFigData,false,nil,true)
UIManager.OpenPanel(UIName.RoleProInfoPopup,allAddProVal,heroConFigData,false,nil)
end)
end

View File

@ -225,7 +225,7 @@ function this.PlayerInfoRequest(func)
PlayerManager.RefreshWorldLeveData(msg.worldLeve)
PlayerManager.InitSkinTitleMountData(msg.userSkinList,msg.userTitleList,msg.userMountList)
local test = {
level = 1,
level = 10,
}
PracticeManager.UpdataFromServer(test)
if func then

View File

@ -284,7 +284,7 @@ function this.RoleInfo1()
Util.AddOnceClick(this.proBtn,function()
local guildSkill = nil
if this.isOther then guildSkill = curHeroData.guildSkill end
UIManager.OpenPanel(UIName.RoleProInfoPopup,allAddProVal,curHeroData.heroConfig,true,guildSkill,true)
UIManager.OpenPanel(UIName.RoleProInfoPopup,allAddProVal,curHeroData.heroConfig,true,guildSkill)
end)

View File

@ -1,15 +1,18 @@
PracticeManager = {}
local this = PracticeManager
local XinXianConfig = ConfigManager.GetConfig(ConfigName.XiuXianConfig)
local PropertyConfig = ConfigManager.GetConfig(ConfigName.PropertyConfig)
function this.Initialize()
this.PracticeLevel = 1
this.PracticeBigLevel = 1
this.StarNum = 0
this.PracticeConfigData = {}
end
--从服务器更新当前修行等级
function this.UpdataFromServer(msg)
this.PracticeLevel = msg.level
this.PracticeBigLevel = XinXianConfig[this.PracticeLevel].RealmId
this.StarNum = PlayerManager.level
end
@ -40,7 +43,7 @@ function this.GetCurAllGetAdd()
if not curAllGetAddList[Pros[i][1]] then
curAllGetAddList[Pros[i][1]] = 0
end
curAllGetAddList[Pros[i][1]] = Pros[i][2]
curAllGetAddList[Pros[i][1]] = curAllGetAddList[Pros[i][1]] + Pros[i][2]
end
end
return curAllGetAddList
@ -53,15 +56,37 @@ function this.GetAddsList()
if not addsList[v.RealmId] then
addsList[v.RealmId] = {}
end
local Pros = v.TotalPros
for i = 1, #Pros do
if not addsList[v.RealmId][Pros[i][1]] then
addsList[v.RealmId][Pros[i][1]] = 0
if v.TotalPros then
local Pros = v.TotalPros
for i = 1, #Pros do
if not addsList[v.RealmId][Pros[i][1]] then
addsList[v.RealmId][Pros[i][1]] = 0
end
addsList[v.RealmId][Pros[i][1]] = addsList[v.RealmId][Pros[i][1]] + Pros[i][2]
end
addsList[v.RealmId][Pros[i][1]] = Pros[i][2]
end
end
return addsList
end
--获取预览界面数据
function this.GetPreViewData()
local AddListData = this.GetAddsList()
local previewList = {}
for i = 2, #AddListData do
local data = {}
local configData = ConfigManager.GetConfigDataByKey(ConfigName.XiuXianConfig,"RealmId",i)
data.RealmName = configData.RealmName
data.RealmDesc = configData.RealmDesc
data.IsActive = this.PracticeBigLevel >= i
data.AddList = AddListData[i]
table.insert(previewList,data)
end
return previewList
end
function this.GetPreviewSingleText(id,value)
return string.format("全体神将%s+%s",PropertyConfig[id].Info,value)
end
return PracticeManager

View File

@ -28,6 +28,10 @@ function Practice:InitComponent()
self.needPre = Util.GetGameObject(self.needs, "pre")
self.button = Util.GetGameObject(self.bottom, "Button")
self.buttonText = Util.GetGameObject(self.button, "Text"):GetComponent("Text")
self.content = Util.GetGameObject(self.bottom, "Content")
self.textBtn = Util.GetGameObject(self.content, "Text")
self.needStar = Util.GetGameObject(self.content, "num"):GetComponent("Text")
self.itemList = {}
end
function Practice:BindEvent()
@ -41,14 +45,20 @@ function Practice:BindEvent()
self:ClosePanel()
end)
Util.AddClick(self.previewBtn, function()
LogGreen("self.previewBtn")
UIManager.OpenPanel(UIName.GeneralBigPopup,GENERAL_POPUP_TYPE.PracticeStatePreview)
end)
Util.AddClick(self.additionBtn, function()
UIManager.OpenPanel(UIName.RoleProInfoPopup,PracticeManager.GetCurAllGetAdd(),nil,false,nil,false)
UIManager.OpenPanel(UIName.RoleProInfoPopup,PracticeManager.GetCurAllGetAdd(),nil,false,nil)
end)
Util.AddClick(self.imprintBtn, function()
LogGreen("self.imprintBtn")
end)
Util.AddClick(self.textBtn, function()
LogGreen("打开山河社稷图")
end)
Util.AddClick(self.starBtn, function()
LogGreen("打开山河社稷图")
end)
end
function Practice:AddListener()
@ -74,13 +84,60 @@ end
function Practice:OnShow()
FormationManager.RefreshMainFormationPower()
self.curLevelConfig = PracticeManager.GetCurConfigData()
self:RefreshMid()
self:RefreshPoints()
self:RefreshBtn()
end
function Practice:RefreshMid()
self.levelName.text = string.format("%s期",self.curLevelConfig.RealmName)
end
function Practice:RefreshPoints()
-- body
end
function Practice:RefreshBtn()
if self.curLevelConfig.LevelUpCost then--如果下级消耗不为空则为突破阶段
if not self.itemList then
self.itemList = {}
end
for k,v in ipairs(self.itemList) do
v.gameObject:SetActive(false)
end
for i = 1, #self.curLevelConfig.LevelUpCost do
local data = self.curLevelConfig.LevelUpCost[i]
if not self.itemList[i] then
self.itemList[i] = newObject(self.needPre)
self.itemList[i].transform:SetParent(self.needs.transform)
self.itemList[i].transform.localScale = Vector3.one
self.itemList[i].transform.localPosition = Vector3.zero
end
local icon = Util.GetGameObject(self.itemList[i],"icon"):GetComponent("Image")
local num = Util.GetGameObject(self.itemList[i],"num"):GetComponent("Text")
icon.sprite = Util.LoadSprite(GetSpriteNameByItemId(data[1]))
num.text = data[2]
if BagManager.GetTotalItemNum(data[1]) < data[2] then
num.text = string.format("<color=red>%s</color>",data[2])
end
self.itemList[i]:SetActive(true)
end
self.needs:SetActive(true)
self.content:SetActive(false)
self.buttonText.text = Language[11805]
else
self.needs:SetActive(false)
self.content:SetActive(true)
self.needStar.text = self.curLevelConfig.NeedStarNum
if self.curLevelConfig.NeedStarNum < 300 then
self.needStar.text = string.format("<color=red>%s</color>",self.curLevelConfig.NeedStarNum)
end
self.buttonText.text = "破 境"
end
end
function Practice:OnClose()
end
@ -93,6 +150,7 @@ function Practice:OnDestroy()
SubUIManager.Close(self.playerInfoView)
self.playerInfoView = nil
end
self.itemList = {}
end
return Practice

View File

@ -112,7 +112,7 @@ function RoleInfoLayout:BindEvent()
--显示所有属性
Util.AddClick(this.allProButton, function()
UIManager.OpenPanel(UIName.RoleProInfoPopup,allAddProVal,curHeroData.heroConfig,true,nil,true)
UIManager.OpenPanel(UIName.RoleProInfoPopup,allAddProVal,curHeroData.heroConfig,true,nil)
end)
end

View File

@ -14,7 +14,6 @@ local thirdlyProGoList = {}
local allAddProVal
local heroSConFig
local isShowGuild = true
local isShowExtraSkill = true
--初始化组件(用于子类重写)
function RoleProInfoPopup:InitComponent()
this.btnBack=Util.GetGameObject(self.transform, "btnBack")
@ -22,7 +21,6 @@ function RoleProInfoPopup:InitComponent()
this.proPre2=Util.GetGameObject(self.gameObject, "proPre2")
this.fristGrid=Util.GetGameObject(self.gameObject, "grid/ver/recordPer (1)/Mask")
this.secondGrid=Util.GetGameObject(self.gameObject, "grid/ver/recordPer (2)/Mask")
this.secondGridP=Util.GetGameObject(self.gameObject, "grid/ver/recordPer (2)")
this.thirdlyGrid=Util.GetGameObject(self.gameObject, "grid/ver/recordPer (3)/Mask")
this.thirdlyGridP=Util.GetGameObject(self.gameObject, "grid/ver/recordPer (3)")
end
@ -36,13 +34,12 @@ function RoleProInfoPopup:BindEvent()
end
local guildSkill = nil
--界面打开时调用(用于子类重写)
function RoleProInfoPopup:OnOpen(_allAddProVal,_configData,_isShowGuild,_guildSkill,_isShowExtraSkill)
function RoleProInfoPopup:OnOpen(_allAddProVal,_configData,_isShowGuild,_guildSkill)
allAddProVal = _allAddProVal
heroSConFig = _configData
isShowGuild = _isShowGuild--图鉴不显示公会技能等级特殊操作
guildSkill = _guildSkill and _guildSkill or nil--其他玩家公会技能等级特殊操作
isShowExtraSkill = _isShowExtraSkill
for i = 1, #sDataTable do
allPro[i] = {}
@ -66,7 +63,6 @@ function RoleProInfoPopup:OnOpen(_allAddProVal,_configData,_isShowGuild,_guildSk
end
if isShowGuild then
--加公会技能特殊属性
LogGreen("加公会技能特殊属性")
allPro[3][1] = {}
local allLv = isShowGuild and GuildSkillManager.GetAllGuildSkillLv(heroSConFig.Profession) or 0
if guildSkill then allLv = guildSkill end
@ -84,13 +80,10 @@ function RoleProInfoPopup:OnOpen(_allAddProVal,_configData,_isShowGuild,_guildSk
end
function this.ShowPanelData()
this.GridShowData(1,allPro[1],fristProGoList, this.proPre1,this.fristGrid)
if isShowExtraSkill then
this.GridShowData(2,allPro[2],secondProGoList, this.proPre1,this.secondGrid)
end
this.GridShowData(2,allPro[2],secondProGoList, this.proPre1,this.secondGrid)
if isShowGuild then
this.GridShowData(3,allPro[3],thirdlyProGoList, this.proPre2,this.thirdlyGrid)
end
this.secondGridP:SetActive(isShowExtraSkill)
this.thirdlyGridP:SetActive(isShowGuild)
end
function this.GridShowData(type,curAllPro,curProGoList,curPre,curGrid)