diff --git a/lua_probject/base_project/Game/View/FGAssistView.lua b/lua_probject/base_project/Game/View/FGAssistView.lua index 84146684..27f727e4 100644 --- a/lua_probject/base_project/Game/View/FGAssistView.lua +++ b/lua_probject/base_project/Game/View/FGAssistView.lua @@ -6,6 +6,52 @@ local FGAssistView = {} local M = FGAssistView setmetatable(M, { __index = BaseWindow }) +local function SortMembers(Members) + + for _,player in pairs(Members) do + if player.uid == DataManager.SelfUser.account_id then + Members[_] = nil + end + end + + -- ↓↓↓排序 + local re = {} + local online = {} + local playing = {} + local offline = {} + + for _, player in pairs(Members) do + -- 在线 绿色状态 + if player.online == 1 and player.playing ~= "startPlaying" then + online[#online + 1] = player + end + + -- 在线游戏中 红色状态 + if player.online == 1 and player.playing == "startPlaying" then + playing[#playing + 1] = player + end + + -- 离线 + if player.online == 0 then + offline[#offline + 1] = player + end + end + + for _, player in pairs(online) do + re[#re + 1] = player + end + + for _, player in pairs(playing) do + re[#re + 1] = player + end + + for _, player in pairs(offline) do + re[#re + 1] = player + end + + return re +end + function FGAssistView.new(blur_view, group_id, callback) local self = setmetatable({}, { __index = M }) self.class = "FGAssistView" @@ -81,7 +127,7 @@ function M:ReFalsh(...) end end - self._data_number = group.members + self._data_number = SortMembers(group.members) --group.members self.lst_player.numItems = #group.members end @@ -89,12 +135,22 @@ function M:PlayerRenderer(index, obj) local i = index + 1 obj:GetChild('tex_name').text = self._data_number[i].nick local btn_invite = obj:GetChild('btn_invite') - btn_invite:GetController('online').selectedIndex = self._data_number[i].uid == - DataManager.SelfUser.account_id and 0 or self._data_number[i].online - local state = self._data_number[i].online - if self._data_number[i].playing == "startPlaying" then - state = 2 + + btn_invite:GetController('online').selectedIndex = 0 + if self._data_number[i].uid ~= DataManager.SelfUser.account_id and self._data_number[i].online == 1 and self._data_number[i].playing == "stopPlaying" then + btn_invite:GetController('online').selectedIndex = 1 end + + --btn_invite:GetController('online').selectedIndex = self._data_number[i].uid == DataManager.SelfUser.account_id and 0 or self._data_number[i].online + local state = 0 + if self._data_number[i].online == 1 and self._data_number[i].playing == "startPlaying" then + state = 2 + elseif self._data_number[i].online == 1 and self._data_number[i].playing == "stopPlaying" then + state = 1 + elseif self._data_number[i].online == 0 then + state = 0 + end + obj:GetController('type').selectedIndex = state local loader = obj:GetChild("btn_head"):GetChild("icon") ImageLoad.Load(self._data_number[i].portrait, loader) @@ -157,13 +213,17 @@ function M:GetOnlinePlayersshow(fgCtr, group, index) if res.ReturnCode ~= 0 then ViewUtil.ErrorTip(res.ReturnCode, "连接亲友圈失败") else - self._data_number = group.members - self.lst_player.numItems = #group.members + --self._data_number = group.members + --self.lst_player.numItems = #group.members + self._data_number = SortMembers(group.members) + self.lst_player.numItems = #self._data_number end end) else - self._data_number = group.members - self.lst_player.numItems = #group.members + --self._data_number = group.members + --self.lst_player.numItems = #group.members + self._data_number = SortMembers(group.members) + self.lst_player.numItems = #self._data_number end pt(self._data_number) end diff --git a/lua_probject/base_project/Game/View/FamilyView.lua b/lua_probject/base_project/Game/View/FamilyView.lua index 6c2f92fe..03e96b93 100644 --- a/lua_probject/base_project/Game/View/FamilyView.lua +++ b/lua_probject/base_project/Game/View/FamilyView.lua @@ -795,7 +795,7 @@ function M:ConnetFamily(index, groups, isCreate) obj.text = Utils.TextOmit(group.name, 6, "...") obj.onClick:Add(function() if group.id == self._group.id then - ViewUtil.ShowBannerOnScreenCenter("已在家族中") + --ViewUtil.ShowBannerOnScreenCenter("已在家族中") return end diff --git a/wb_new_ui/assets/Family/Main.xml b/wb_new_ui/assets/Family/Main.xml index 567d0b0f..2e78cdb1 100644 --- a/wb_new_ui/assets/Family/Main.xml +++ b/wb_new_ui/assets/Family/Main.xml @@ -23,16 +23,16 @@ - + - + - + - + diff --git a/wb_new_ui/assets/Family/package.xml b/wb_new_ui/assets/Family/package.xml index b3a42afe..4963b2a4 100644 --- a/wb_new_ui/assets/Family/package.xml +++ b/wb_new_ui/assets/Family/package.xml @@ -112,7 +112,7 @@ - + diff --git a/wb_unity_pro/Assets/ART/base/Family/ui/Family_fui.bytes b/wb_unity_pro/Assets/ART/base/Family/ui/Family_fui.bytes index 84a9f1ec..7edcaa09 100644 Binary files a/wb_unity_pro/Assets/ART/base/Family/ui/Family_fui.bytes and b/wb_unity_pro/Assets/ART/base/Family/ui/Family_fui.bytes differ