using UnityEngine; using UnityEngine.UI; using TEngine; using UnityEngine.Video; using GameConfig; using Cysharp.Threading.Tasks; using System.Collections.Generic; using YooAsset; using GameConfig.giftConfig; using System; namespace GameLogic { [Window(UILayer.UI)] class UIVipLiWuHongItem : UIWindow { #region 脚本工具生成的代码 private RawImage m_rimg_ViewTexture; private VideoPlayer m_VideoPlayer; protected override void ScriptGenerator() { m_rimg_ViewTexture = FindChildComponent("m_rimg_ViewTexture"); m_VideoPlayer = FindChildComponent("m_video_Video"); } #endregion #region 事件 #endregion protected override void OnCreate() { base.OnCreate(); Canvas.sortingLayerName = "UI02"; GiftItemData giftItemData = UserData as GiftItemData; if (giftItemData.giftId == 0) { Log.Error("ID == 0"); GameModule.UI.CloseUI(); return; } // 根据礼物Id,加载对应的视频名称 // GiftConfig giftConfig = ConfigSystem.Instance.Tables.TbGift.Get(giftItemData.giftId); // string videoName = giftItemData.m_TeamEnum == TeamUnitEnum.Left? giftConfig.LeftVIdeoName:giftConfig.RightVideoName; string videoName = "Gift0" + (giftItemData.giftId); m_VideoPlayer.loopPointReached += HiddenVideoPlay; var videoClip = GameModule.Resource.LoadAsset(videoName); //string audioName = "礼物" + (giftItemData.giftId - 1); // 播放音效 GameModule.Audio.Play(TEngine.AudioType.UISound, videoName + "_Audio", false, 0.5f, true); m_VideoPlayer.loopPointReached += HiddenVideoPlay; m_VideoPlayer.targetTexture.DiscardContents(); m_VideoPlayer.clip = videoClip; m_VideoPlayer.Play(); } private void HiddenVideoPlay(VideoPlayer player) { // m_VideoPlayer.targetTexture.DiscardContents(); // GameModule.UI.CloseUI(); m_VideoPlayer.targetTexture.DiscardContents(); GameModule.UI.CloseUI(); //GameModule.UI.CloseUI(); //GameModule.UI.ShowUI(UserDatas); GiftItemData giftItemData = UserData as GiftItemData; var giftConfig = ConfigSystem.Instance.Tables.TbGiftConfig.Get(giftItemData.giftId); var data = DataGameSceneManager.Instance.GetUnitPlayerData(giftItemData.m_ProtCustMessageData.openId); //var go = GameModule.Resource.LoadGameObject("GiftItem"); //go.GetComponent().OnInit(data, giftConfig, giftItemData.num); // 发送玩家送礼事件 GameEvent.Send(EventConts.AddGiftMessage, data, giftConfig, giftItemData.num); } } }