【玉虚论道】其他人编队信息界面

dev_chengFeng
ZhangBiao 2021-08-26 17:14:13 +08:00
parent 6345a18ebe
commit c0ea5e1b7f
8 changed files with 18291 additions and 3 deletions

View File

@ -39,6 +39,86 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &19528397298507817
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3106103603612885941}
- component: {fileID: 7134195463200651096}
- component: {fileID: 6190706099676883686}
m_Layer: 5
m_Name: title
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &3106103603612885941
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 19528397298507817}
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: 2778119602345671483}
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: 0, y: 610}
m_SizeDelta: {x: 393.09998, y: 55}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7134195463200651096
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 19528397298507817}
m_CullTransparentMesh: 0
--- !u!114 &6190706099676883686
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 19528397298507817}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ebfe0e44da74fbd44b1b744995de2324, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 0.92156863, g: 0.85882354, b: 0.7294118, 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: 50
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 4
m_MaxSize: 50
m_Alignment: 4
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 1
m_VerticalOverflow: 1
m_LineSpacing: 1
m_Text: "\u7389\u865A\u8BBA\u9053\u7F16\u961F"
LanguageIndex: 0
--- !u!1 &30801768066975280
GameObject:
m_ObjectHideFlags: 0
@ -1383,7 +1463,7 @@ RectTransform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 2778119602345671483}
m_RootOrder: 1
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}
@ -10419,6 +10499,7 @@ RectTransform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 694760365003239870}
- {fileID: 3106103603612885941}
- {fileID: 694762005450041926}
- {fileID: 177132382028097515}
m_Father: {fileID: 694931557968458218}
@ -12494,7 +12575,7 @@ RectTransform:
- {fileID: 4471029195818818880}
- {fileID: 8589114534415247913}
m_Father: {fileID: 2778119602345671483}
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}

View File

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

View File

@ -56096,6 +56096,14 @@ MonoBehaviour:
extension: .prefab
resPathIndex: 702
resAbNameIndex: 3233
- resName: WorldArenaOtherTeamPanel
extension: .prefab
resPathIndex: 702
resAbNameIndex: 3233
- resName: WorldArenaUpRewardPanel
extension: .prefab
resPathIndex: 702
resAbNameIndex: 3233
- resName: WorldCelebrationPanel
extension: .prefab
resPathIndex: 703

View File

@ -403,6 +403,7 @@ UIName = {
XunBaoMiZongMapPanel = 407, --寻宝迷踪地图界面
taiChuMiJuan = 408, --太初密卷
WorldArenaMyTeamPanel = 410, --玉虚论道我的编队
WorldArenaOtherTeamPanel = 411, --玉虚论道其他的编队
}
SubUIConfig = {

View File

@ -302,7 +302,7 @@ function this.SetHeadsInfo(data,root,index,name,level)
-- UIManager.OpenPanel(UIName.PlayerInfoPopup, data.uid)
-- end
LogGreen("data.uid:"..tostring(data.uid))
UIManager.OpenPanel(UIName.WorldArenaMyTeamPanel, data.uid)
UIManager.OpenPanel(UIName.WorldArenaOtherTeamPanel, data.uid)
end)
end

View File

@ -0,0 +1,241 @@
require("Base/BasePanel")
local WorldArenaOtherTeamPanel = Inherit(BasePanel)
local XiuXianSkillConfig = ConfigManager.GetConfig(ConfigName.XiuXianSkillConfig)
function WorldArenaOtherTeamPanel:InitComponent()
self.spLoader = SpriteLoader.New()
self.btnBack = Util.GetGameObject(self.gameObject, "Frame/BackBtn")
self.mask = Util.GetGameObject(self.gameObject, "mask")
self.content = Util.GetGameObject(self.gameObject, "Content")
--玩家信息
self.playerInfo = Util.GetGameObject(self.content, "playerInfo")
self.playerHead = Util.GetGameObject(self.playerInfo, "head")
self.playerName = Util.GetGameObject(self.playerInfo, "name")
self.playerScore = Util.GetGameObject(self.playerInfo, "score"):GetComponent("Text")
self.playerLevelImg = Util.GetGameObject(self.playerInfo, "levelImg"):GetComponent("Image")
--队伍信息
self.teamInfo = Util.GetGameObject(self.content, "teamInfo")
self.teamList = {}
for i = 1, 3 do
self.teamList[i] = {}
self.teamList[i].title = Util.GetGameObject(self.teamInfo, "Team ("..i..")/Title")
self.teamList[i].warPower = Util.GetGameObject(self.teamInfo, "Team ("..i..")/WarPower/Text"):GetComponent("Text")
self.teamList[i].heroList = {}
for j = 1, 6 do
self.teamList[i].heroList[j] = Util.GetGameObject(self.teamInfo, "Team ("..i..")/TeamList/heroPro ("..j..")")
end
end
--灵兽信息
self.pokemonInfo = Util.GetGameObject(self.content, "pokemonInfo")
self.pokemonList = {}
for i = 1, 6 do
self.pokemonList[i] = Util.GetGameObject(self.pokemonInfo, "Demons/heroPro ("..i..")")
end
--神印信息
self.imprintInfo = Util.GetGameObject(self.content, "imprintInfo")
self.imprintGrid = Util.GetGameObject(self.imprintInfo, "Imprints")
self.imprintPre = Util.GetGameObject(self.gameObject, "imprintPre")
self.imprintItemList = {}
end
--绑定事件(用于子类重写)
function WorldArenaOtherTeamPanel:BindEvent()
Util.AddClick(self.mask, function()
self:ClosePanel()
end)
Util.AddClick(self.btnBack, function()
self:ClosePanel()
end)
end
--添加事件监听(用于子类重写)
function WorldArenaOtherTeamPanel:AddListener()
end
--移除事件监听(用于子类重写)
function WorldArenaOtherTeamPanel:RemoveListener()
end
--界面打开时调用(用于子类重写)
function WorldArenaOtherTeamPanel:OnOpen(_playerId)
self.playerId = _playerId
end
--界面打开或者重新打开后,界面刷新时调用(用于子类重写)
function WorldArenaOtherTeamPanel:OnShow()
WorldArenaOtherTeamPanel:Refresh()
end
function WorldArenaOtherTeamPanel:OnSortingOrderChange()
if self.PlayerHead then
self.PlayerHead:SetLayer(self.sortingOrder)
end
end
function WorldArenaOtherTeamPanel:Refresh()
NetManager.RequestPlayerInfo(self.playerId, PLAYER_INFO_VIEW_TYPE.NORMAL,1, function(msg)
WorldArenaOtherTeamPanel:SetPlayerInfo(self.playerInfo,msg.teamInfo)
WorldArenaOtherTeamPanel:SetTeamInfo(self.teamInfo,{msg.teamInfo.team,msg.teamInfo.team,msg.teamInfo.team})
WorldArenaOtherTeamPanel:SetPokemonInfo(self.pokemonInfo,msg.teamInfo.team.PokemonInfos)
WorldArenaOtherTeamPanel:SetImprintInfo(self.imprintInfo,msg.teamInfo.team.sealShow)
end)
end
--玩家信息
function WorldArenaOtherTeamPanel:SetPlayerInfo(go,playerData)
local head = Util.GetGameObject(go, "head")
local name = Util.GetGameObject(go, "name"):GetComponent("Text")
local score = Util.GetGameObject(go, "score"):GetComponent("Text")
local levelImg = Util.GetGameObject(go, "levelImg"):GetComponent("Image")
if not self.PlayerHead then
self.PlayerHead = SubUIManager.Open(SubUIConfig.PlayerHeadView, head.transform)
end
self.PlayerHead:Reset()
self.PlayerHead:SetScale(Vector3.one * 0.85)
self.PlayerHead:SetHead(playerData.head)
self.PlayerHead:SetFrame(playerData.headFrame)
self.PlayerHead:SetLevel(playerData.level)
self.PlayerHead:SetLayer(self.sortingOrder)
self.PlayerHead:SetEffectScale(0.9)
name.text = PracticeManager.SetNameColor(playerData.name,playerData.practiceLevel)
score.text = string.format( "积分:%s",playerData.name )
levelImg.sprite = self.spLoader:LoadSprite("y_yuxulundao_xingxing")
end
--编队信息
function WorldArenaOtherTeamPanel:SetTeamInfo(go,teamData)
for index = 1, 3 do
local data = teamData[index]
local title = Util.GetGameObject(go,"Title"):GetComponent("Text")
local warPower = Util.GetGameObject(go,"WarPower/Text"):GetComponent("Text")
local btnChange = Util.GetGameObject(go,"ChangeTeam")
local teamList = Util.GetGameObject(go,"TeamList")
title.text = string.format( "第%s队",NumToChinese[index])
warPower.text = data.totalForce
Util.AddOnceClick(btnChange,function ()
PopupTipPanel.ShowTip(string.format( "进入第%s个编队",index))
end)
for i, demon in ipairs(self.teamList[index].heroList) do
Util.GetGameObject(demon, "frame"):GetComponent("Image").sprite = self.spLoader:LoadSprite(GetQuantityImageByquality(1))
Util.GetGameObject(demon, "hero"):SetActive(false)
end
--队伍阵容
for i, hero in ipairs(data.team) do
local heroTid = data.team[i].heroTid
if heroTid then
local heroGo = Util.GetGameObject(self.teamList[index].heroList[hero.position], "hero")
heroGo:SetActive(true)
SetHeroStars(self.spLoader, Util.GetGameObject(heroGo, "starGrid"), hero.star)
local heroConfig = ConfigManager.GetConfigData(ConfigName.HeroConfig, heroTid)
Util.GetGameObject(heroGo, "proIcon"):GetComponent("Image").sprite = self.spLoader:LoadSprite(GetProStrImageByProNum(heroConfig.PropertyName))
Util.GetGameObject(heroGo, "lvbg/levelText"):GetComponent("Text").text = hero.level
Util.GetGameObject(self.teamList[index].heroList[hero.position], "frame"):GetComponent("Image").sprite = self.spLoader:LoadSprite(GetQuantityImageByquality(heroConfig.Quality, hero.star))
SetHeroIcon(self.spLoader, hero,Util.GetGameObject(heroGo, "icon"):GetComponent("Image"),heroConfig)
local frameBtn = Util.GetGameObject(self.teamList[index].heroList[hero.position], "frame")
local heroData = {}
Util.AddOnceClick(frameBtn, function()
NetManager.ViewHeroInfoRequest(self.playerId,hero.heroid,1,PLAYER_INFO_VIEW_TYPE.NORMAL,function(msg)
if not hero.heroid then
return
end
heroData= GoodFriendManager.GetHeroDatas(msg.hero,msg.force,msg.SpecialEffects,msg.guildSkill)
GoodFriendManager.InitEquipData(msg.equip,heroData)
UIManager.OpenPanel(UIName.RoleInfoPopup, heroData,true)
end)
end)
end
end
end
end
--灵兽信息
function WorldArenaOtherTeamPanel:SetPokemonInfo(go,pokemonData)
local len = #pokemonData
if len>0 then
self.pokemonInfo:SetActive(true)
for i, demon in ipairs(self.pokemonList) do
demon.gameObject:SetActive(false)
Util.GetGameObject(demon, "frame"):GetComponent("Image").sprite = self.spLoader:LoadSprite(GetQuantityImageByquality(1))
Util.GetGameObject(demon, "hero"):SetActive(false)
end
else
self.pokemonInfo:SetActive(false)
end
for i, hero in ipairs(pokemonData) do
local demonId = pokemonData[i].heroTid
self.pokemonList[i].gameObject:SetActive(true)
if demonId then
local heroGo = Util.GetGameObject(self.pokemonList[i], "hero")
heroGo:SetActive(true)
SetHeroStars(self.spLoader, Util.GetGameObject(heroGo, "starGrid"), hero.star)
local heroConfig = ConfigManager.GetConfigData(ConfigName.SpiritAnimal, demonId)
Util.GetGameObject(heroGo, "lvbg/levelText"):GetComponent("Text").text = hero.level
Util.GetGameObject(self.pokemonList[i], "frame"):GetComponent("Image").sprite = self.spLoader:LoadSprite(GetQuantityImageByquality(heroConfig.Quality))
Util.GetGameObject(heroGo, "icon"):GetComponent("Image").sprite = self.spLoader:LoadSprite(GetResourcePath(heroConfig.Icon))
local frameBtn = Util.GetGameObject(self.pokemonList[i], "frame")
local heroData = {}
Util.AddOnceClick(frameBtn, function()
local pokemonData={tempId=demonId,id=demonId,star=hero.star,level=hero.level}
UIManager.OpenPanel(UIName.PokemonGetInfoPopup,true,pokemonData)
end)
end
end
end
--紫府神印信息
function WorldArenaOtherTeamPanel:SetImprintInfo(go,imprintData)
if imprintData and #imprintData > 0 then
self.imprintInfo:SetActive(true)
if not self.imprintItemList then
self.imprintItemList = {}
end
for i = 1, #self.imprintItemList do
self.imprintItemList[i].gameObject:SetActive(false)
end
for i = 1, #imprintData do
local item = self.imprintItemList[i]
local value = imprintData[i]
if not item then
item = newObject(self.imprintPre)
item.name = "imprintPre_"..i
item.transform:SetParent(self.imprintGrid.transform)
item.transform.localScale = Vector3.one
item.transform.localPosition = Vector3.zero
self.imprintItemList[i] = item
end
item.gameObject:SetActive(true)
local icon = Util.GetGameObject(item,"icon"):GetComponent("Image")
icon.sprite = self.spLoader:LoadSprite(GetResourcePath(XiuXianSkillConfig[value.id].Icon))
Util.AddOnceClick(item.gameObject,function ()
UIManager.OpenPanel(UIName.GeneralInfoPopup,GENERALINFO_TYPE.Imprint,value.id,value.heroTId)
end)
end
else
self.imprintInfo:SetActive(false)
end
end
function WorldArenaOtherTeamPanel:OnClose()
end
--界面销毁时调用(用于子类重写)
function WorldArenaOtherTeamPanel:OnDestroy()
self.spLoader:Destroy()
if self.PlayerHead then
self.PlayerHead:Recycle()
self.PlayerHead = nil
end
self.InfoList = {}
self.dragViewList = {}
self.triggerList = {}
self.gridList = {}
self.teamList = {}
self.pokemonList = {}
self.imprintItemList = {}
end
return WorldArenaOtherTeamPanel

View File

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