From 6c16201acb184aa5c7c9e2af4c078fd47d8dce51 Mon Sep 17 00:00:00 2001 From: kongweiqiang Date: Thu, 5 Mar 2026 15:19:59 +0800 Subject: [PATCH] =?UTF-8?q?2026.3.5=20liveroom=20=E5=8F=91=E7=A4=BC?= =?UTF-8?q?=E7=89=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../UI/UILiveRoom/LiveRoomGiftItem.prefab | 54 +++++++++++++++++-- .../LiveRoomGiftItem_Generate.lua | 3 ++ Assets/Lua/UI/UILiveRoom/UILiveRoomView.lua | 23 ++++++-- 3 files changed, 73 insertions(+), 7 deletions(-) diff --git a/Assets/Content/Prefabs/UI/UILiveRoom/LiveRoomGiftItem.prefab b/Assets/Content/Prefabs/UI/UILiveRoom/LiveRoomGiftItem.prefab index 65e005eeb..a01b3e0f4 100644 --- a/Assets/Content/Prefabs/UI/UILiveRoom/LiveRoomGiftItem.prefab +++ b/Assets/Content/Prefabs/UI/UILiveRoom/LiveRoomGiftItem.prefab @@ -173,13 +173,14 @@ GameObject: - component: {fileID: 3344005845617824141} - component: {fileID: 6868290484565356178} - component: {fileID: 4414587036447911941} + - component: {fileID: 7770847052163092261} m_Layer: 5 m_Name: LiveRoomGiftItem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!224 &3135625391757224365 RectTransform: m_ObjectHideFlags: 0 @@ -233,7 +234,8 @@ MonoBehaviour: - SuperScrollView.LoopGridViewItem - UnityEngine.EventSystems.EventTrigger - UnityEngine.UI.Image - values: 0000000000000000 + - UnityEngine.UI.Button + values: 000000000000000001 depObjs: [] activeType: 0 --- !u!114 &5548098695654645872 @@ -332,7 +334,7 @@ MonoBehaviour: m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 1 - m_CallState: 2 + m_CallState: 0 - eventID: 1 callback: m_PersistentCalls: @@ -348,7 +350,51 @@ MonoBehaviour: m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 - m_CallState: 2 + m_CallState: 0 +--- !u!114 &7770847052163092261 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3644884608125155436} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + 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_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, 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_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 6868290484565356178} + m_OnClick: + m_PersistentCalls: + m_Calls: [] --- !u!1 &5223102613857521075 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Lua/UI/GridViewItem/LiveRoomGiftItem_Generate.lua b/Assets/Lua/UI/GridViewItem/LiveRoomGiftItem_Generate.lua index d8ce1f997..127d4c5bd 100644 --- a/Assets/Lua/UI/GridViewItem/LiveRoomGiftItem_Generate.lua +++ b/Assets/Lua/UI/GridViewItem/LiveRoomGiftItem_Generate.lua @@ -21,6 +21,7 @@ ---@class LiveRoomGiftItem__Generate ---@field private gameObject UnityEngine.GameObject ---@field private transform UnityEngine.Transform +---@field private button UnityEngine.UI.Button ---@field private text_name LiveRoomGiftItem__Generate_text_name ---@field private text_price_off LiveRoomGiftItem__Generate_text_price_off ---@field private rect_send UnityEngine.GameObject @@ -59,6 +60,8 @@ function LiveRoomGiftItemView:InitGenerate__1(Root, data) --[[ Root --]] + + self.button = Root:GetComponent(Enum.TypeInfo.Button) end ---@private diff --git a/Assets/Lua/UI/UILiveRoom/UILiveRoomView.lua b/Assets/Lua/UI/UILiveRoom/UILiveRoomView.lua index 2fcf54b94..1583a530d 100644 --- a/Assets/Lua/UI/UILiveRoom/UILiveRoomView.lua +++ b/Assets/Lua/UI/UILiveRoom/UILiveRoomView.lua @@ -900,10 +900,16 @@ end --region 房间 聊天 发礼物 + +local curselectgiftid=0 + + function UILiveRoomView:Btn_Send_Gift(itemlua) itemlua.inputBar.sv_emoji:SetActive(false) if itemlua.inputBar.sv_gift.gameObject.activeSelf then itemlua.inputBar.sv_gift:SetActive(false) + curselectgiftid=0 + itemlua.inputBar.sv_gift.loopGridView:RefreshAllShownItem() else itemlua.inputBar.sv_gift:SetActive(true) end @@ -915,6 +921,11 @@ function UILiveRoomView:Gen_Gift(loopview, index, row, col, room_id) local go = item.gameObject local id = index + 1 + if id==curselectgiftid then + itemlua.rect_send:SetActive(true) + else + itemlua.rect_send:SetActive(false) + end go.name = "LiveRoomGiftItem" .. id local info = giftCfg[id] @@ -931,12 +942,18 @@ function UILiveRoomView:Gen_Gift(loopview, index, row, col, room_id) local iconpath = "LiveRoomGift/" .. info.Icon self:LoadIcon_SetSprite(itemlua.img_gift, iconpath) - + self.uiBase:AddButtonUniqueEventListener(itemlua.button,self, + function() + curselectgiftid=id + loopview:RefreshAllShownItem() + end) self.uiBase:AddButtonUniqueEventListener(itemlua.btn_send.button, self, function() self:OnGiftClick(room_id, id) itemlua.rect_send:SetActive(false) + curselectgiftid=0 + loopview:RefreshAllShownItem() end) return item end @@ -2178,8 +2195,8 @@ function UILiveRoomView:Gen_FloatingHeart(itemlua) seq:Append(item.transform:DOLocalMoveY(70, time1)) seq:Join(item.canvasGroup:DOFade(1, time1 * 0.6)) --seq:AppendInterval(0.3) - seq:Append(item.transform:DOLocalMove(endPos,1.0)) - seq:Join(item.transform:DOScale(Vector3(0.65,0.65,0.65), 1.2)) + seq:Append(item.transform:DOLocalMove(endPos,1)) + seq:Join(item.transform:DOScale(Vector3(0.65,0.65,0.65), 1)) seq:Append(item.canvasGroup:DOFade(0, time1*0.6)) seq:OnComplete(function() self:RefreshHeart(itemlua)