Initial commit

This commit is contained in:
MuHua-123
2024-11-01 17:14:31 +08:00
commit 5f169b90bb
216 changed files with 24712 additions and 0 deletions
@@ -0,0 +1,43 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UIElements;
public class UIDeviceVideo : ModuleUIPanel<DataVideo> {
private DataVideo data;
private MediaPlayer mediaPlayer;
private Button CloseButton => element.Q<Button>("Close");
public override void Awake() {
//初始化模块
ModuleCore.VideoPanel = this;
InitElement();
//加载视频媒体ui
VisualElement media = element.Q<VisualElement>("MediaPlayer");
mediaPlayer = new MediaPlayer(media, MediaPlayerFullScreen);
//事件绑定
CloseButton.clicked += Close;
}
public override void Open(DataVideo data) {
this.data = data;
element.style.display = DisplayStyle.Flex;
ModuleCore.ModuleVideo.SetValue(data);
mediaPlayer.Open();
}
public override void Close() {
mediaPlayer.Close();
element.style.display = DisplayStyle.None;
}
private void LateUpdate() {
bool isDisplay = element.resolvedStyle.display == DisplayStyle.Flex;
if (isDisplay) { mediaPlayer.Update(); }
}
/// <summary> 全屏播放功能 </summary>
private void MediaPlayerFullScreen() {
element.style.display = DisplayStyle.None;
ModuleCore.FullScreenVideoPanel.Open(() => {
mediaPlayer.Open();
element.style.display = DisplayStyle.Flex;
});
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c7c4649f87cd2db46981cc4cebdf9272
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,65 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UIElements;
public class UIDeviceVideoImage : ModuleUIPanel<DataVideoImage> {
private DataVideoImage data;
private MediaPlayer mediaPlayer;
//private VisualElement Background => element.Q<VisualElement>("Background");
private VisualElement Image => element.Q<VisualElement>("Image");
private Button Button1 => element.Q<Button>("Button1");
private Button Button2 => element.Q<Button>("Button2");
private Button Button3 => element.Q<Button>("Button3");
private Button CloseButton => element.Q<Button>("Close");
public override void Awake() {
//初始化模块
ModuleCore.VideoImagePanel = this;
InitElement();
//加载视频媒体ui
VisualElement media = element.Q<VisualElement>("MediaPlayer");
mediaPlayer = new MediaPlayer(media, MediaPlayerFullScreen);
//事件绑定
Button1.clicked += Button1_clicked;
Button2.clicked += Button2_clicked;
Button3.clicked += () => { Debug.Log("未定义"); /*FengrenManager.OnAddNum();*/ };
CloseButton.clicked += Close;
}
public override void Open(DataVideoImage data) {
this.data = data;
element.style.display = DisplayStyle.Flex;
ModuleCore.ModuleVideo.SetValue(data.dataVideo);
Image.style.backgroundImage = new StyleBackground(data.sprite);
Button2_clicked();
}
public override void Close() {
mediaPlayer.Close();
element.style.display = DisplayStyle.None;
}
private void LateUpdate() {
bool isDisplay = element.resolvedStyle.display == DisplayStyle.Flex;
if (isDisplay) { mediaPlayer.Update(); }
}
/// <summary> 全屏播放功能 </summary>
private void MediaPlayerFullScreen() {
element.style.display = DisplayStyle.None;
ModuleCore.FullScreenVideoPanel.Open(() => {
mediaPlayer.Open();
element.style.display = DisplayStyle.Flex;
});
}
private void Button1_clicked() {
mediaPlayer.Close();
Image.style.visibility = Visibility.Visible;
Button1.style.display = DisplayStyle.None;
Button2.style.display = DisplayStyle.Flex;
}
private void Button2_clicked() {
mediaPlayer.Open();
Image.style.visibility = Visibility.Hidden;
Button1.style.display = DisplayStyle.Flex;
Button2.style.display = DisplayStyle.None;
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 94f972cd87afdae4abacd0496a475b91
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,31 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UIElements;
public class UIFullScreenVideo : ModuleUIPanel<Action> {
private Action callback;
private MediaPlayer mediaPlayer;
public override void Awake() {
ModuleCore.FullScreenVideoPanel = this;
InitElement();
VisualElement media = element.Q<VisualElement>("MediaPlayer");
mediaPlayer = new MediaPlayer(media, Close);
}
public override void Open(Action data) {
callback = data;
element.style.display = DisplayStyle.Flex;
mediaPlayer.Open();
}
public override void Close() {
mediaPlayer.Close();
element.style.display = DisplayStyle.None;
callback?.Invoke();
}
private void LateUpdate() {
bool isDisplay = element.resolvedStyle.display == DisplayStyle.Flex;
if (isDisplay) { mediaPlayer.Update(); }
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c80447e352c0b954cb6b2c5f550cc2a1
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,72 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UIElements;
using UnityEngine.Video;
using MuHua;
public class UILearningVideo : ModuleUIPanel<Action> {
[CustomLabel("避色差排料")]
public VideoClip clip1;
[CustomLabel("混合排料")]
public VideoClip clip2;
[CustomLabel("女西服排料方法讲解")]
public VideoClip clip3;
private Action data;
private MediaPlayer mediaPlayer;
private Button Button1 => element.Q<Button>("Button1");
private Button Button2 => element.Q<Button>("Button2");
private Button Button3 => element.Q<Button>("Button3");
private Button CloseButton => element.Q<Button>("Close");
public override void Awake() {
//初始化模块
ModuleCore.LearningVideoPanel = this;
InitElement();
//加载视频媒体ui
VisualElement media = element.Q<VisualElement>("MediaPlayer");
mediaPlayer = new MediaPlayer(media, MediaPlayerFullScreen);
//事件绑定
Button1.clicked += Button1_clicked;
Button2.clicked += Button2_clicked;
Button3.clicked += Button3_clicked;
CloseButton.clicked += Close;
}
public override void Open(Action data) {
this.data = data;
element.style.display = DisplayStyle.Flex;
Button1_clicked();
}
public override void Close() {
mediaPlayer.Close();
element.style.display = DisplayStyle.None;
}
private void LateUpdate() {
bool isDisplay = element.resolvedStyle.display == DisplayStyle.Flex;
if (isDisplay) { mediaPlayer.Update(); }
}
/// <summary> 全屏播放功能 </summary>
private void MediaPlayerFullScreen() {
element.style.display = DisplayStyle.None;
ModuleCore.FullScreenVideoPanel.Open(() => {
mediaPlayer.Open();
element.style.display = DisplayStyle.Flex;
});
}
private void Button1_clicked() {
DataVideoClip videoClip = new DataVideoClip(clip1);
ModuleCore.ModuleVideo.SetValue(videoClip);
mediaPlayer.Open();
}
private void Button2_clicked() {
DataVideoClip videoClip = new DataVideoClip(clip2);
ModuleCore.ModuleVideo.SetValue(videoClip);
mediaPlayer.Open();
}
private void Button3_clicked() {
DataVideoClip videoClip = new DataVideoClip(clip3);
ModuleCore.ModuleVideo.SetValue(videoClip);
mediaPlayer.Open();
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: da2d1f0f0c4ac4a46acd84e557c7e0bc
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: