From 7274590e103a2e3a89f5751787520589abc5f29c Mon Sep 17 00:00:00 2001
From: Ding Yuntian <1491671119@qq.com>
Date: Sun, 8 Sep 2024 23:01:11 +0800
Subject: [PATCH] =?UTF-8?q?=E5=B1=95=E7=A4=BA=E7=89=A9=E5=93=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
Assets/Scenes/Persistence.unity | 156 +++++++++++++++++-
.../Scripts/Dialog System/DialogController.cs | 12 ++
Assets/Scripts/UI/MainUIViewer.cs | 33 +++-
3 files changed, 197 insertions(+), 4 deletions(-)
diff --git a/Assets/Scenes/Persistence.unity b/Assets/Scenes/Persistence.unity
index 8f6278b4e..7b8f8d82d 100644
--- a/Assets/Scenes/Persistence.unity
+++ b/Assets/Scenes/Persistence.unity
@@ -1336,10 +1336,10 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 18a3ec3914131d44199ae33902edf159, type: 3}
m_Name:
m_EditorClassIdentifier:
- runMode: 1
+ runMode: 0
firstTalkSO: {fileID: 11400000, guid: 10601ce26230723479d875a630f15732, type: 2}
clinicScene: ClinicScene
- testYarnProject: CutLine
+ testYarnProject: OptionTest
--- !u!4 &719228339
Transform:
m_ObjectHideFlags: 0
@@ -1505,6 +1505,82 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 761395782}
m_CullTransparentMesh: 1
+--- !u!1 &773911909
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 773911910}
+ - component: {fileID: 773911912}
+ - component: {fileID: 773911911}
+ m_Layer: 5
+ m_Name: Show Obj
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 0
+--- !u!224 &773911910
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 773911909}
+ 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_ConstrainProportionsScale: 0
+ m_Children:
+ - {fileID: 2038437602}
+ m_Father: {fileID: 984233631}
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+ m_AnchorMin: {x: 0, y: 0}
+ m_AnchorMax: {x: 1, y: 1}
+ m_AnchoredPosition: {x: 0, y: 0}
+ m_SizeDelta: {x: 0, y: 0}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &773911911
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 773911909}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 0, g: 0, b: 0, a: 0.5411765}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
+ m_Type: 1
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!222 &773911912
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 773911909}
+ m_CullTransparentMesh: 1
--- !u!1 &783911286
GameObject:
m_ObjectHideFlags: 0
@@ -1918,6 +1994,7 @@ RectTransform:
- {fileID: 731599308}
- {fileID: 614046222}
- {fileID: 761395783}
+ - {fileID: 773911910}
m_Father: {fileID: 1343879457}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
@@ -4344,6 +4421,81 @@ MonoBehaviour:
onCommand:
m_PersistentCalls:
m_Calls: []
+--- !u!1 &2038437601
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 2038437602}
+ - component: {fileID: 2038437604}
+ - component: {fileID: 2038437603}
+ m_Layer: 5
+ m_Name: Obj
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!224 &2038437602
+RectTransform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2038437601}
+ 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_ConstrainProportionsScale: 0
+ m_Children: []
+ m_Father: {fileID: 773911910}
+ 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: 0}
+ m_SizeDelta: {x: 100, y: 100}
+ m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &2038437603
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2038437601}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_Material: {fileID: 0}
+ m_Color: {r: 1, g: 1, b: 1, a: 1}
+ m_RaycastTarget: 1
+ m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+ m_Maskable: 1
+ m_OnCullStateChanged:
+ m_PersistentCalls:
+ m_Calls: []
+ m_Sprite: {fileID: 0}
+ m_Type: 0
+ m_PreserveAspect: 0
+ m_FillCenter: 1
+ m_FillMethod: 4
+ m_FillAmount: 1
+ m_FillClockwise: 1
+ m_FillOrigin: 0
+ m_UseSpriteMesh: 0
+ m_PixelsPerUnitMultiplier: 1
+--- !u!222 &2038437604
+CanvasRenderer:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 2038437601}
+ m_CullTransparentMesh: 1
--- !u!1 &2056178948
GameObject:
m_ObjectHideFlags: 0
diff --git a/Assets/Scripts/Dialog System/DialogController.cs b/Assets/Scripts/Dialog System/DialogController.cs
index 3c678c295..fb8d2e19c 100644
--- a/Assets/Scripts/Dialog System/DialogController.cs
+++ b/Assets/Scripts/Dialog System/DialogController.cs
@@ -240,6 +240,18 @@ namespace AibisDream
return MainUIController.Instance.FadeOutSync(duration);
}
+ [YarnCommand("show_obj")]
+ public static IEnumerator ShowObj(string picName)
+ {
+ return MainUIController.Instance.ShowObj(picName);
+ }
+
+ [YarnCommand("hide_obj")]
+ public static IEnumerator HideObj()
+ {
+ return MainUIController.Instance.HideObj();
+ }
+
#endregion
}
}
\ No newline at end of file
diff --git a/Assets/Scripts/UI/MainUIViewer.cs b/Assets/Scripts/UI/MainUIViewer.cs
index f35299e80..ac69625f3 100644
--- a/Assets/Scripts/UI/MainUIViewer.cs
+++ b/Assets/Scripts/UI/MainUIViewer.cs
@@ -1,4 +1,5 @@
using System.Collections;
+using UnityEngine;
using UnityEngine.UI;
namespace AibisDream
@@ -8,21 +9,24 @@ namespace AibisDream
private const string TVScene = "TV Scene";
private const string BlackImage = "Fade Image";
private const string NewsImage = "News";
+ private const string ObjPanel = "Show Obj";
#region 主场景图片
private FadeImage _tvScene;
private FadeImage _blackImage;
private FadeImage _news;
+ private GameObject _objPanel;
+ private FadeImage _objImage;
#endregion
-
+
protected override void Awake()
{
base.Awake();
InitChildObj();
}
-
+
#region 基本淡入淡出
public void FadeIn(float duration)
@@ -88,6 +92,27 @@ namespace AibisDream
gameObject.SetActive(false);
}
+ ///
+ /// 显示物体
+ ///
+ /// 协程
+ public IEnumerator ShowObj(string picName)
+ {
+ _objPanel.gameObject.SetActive(true);
+ _objImage.SwitchImage($"Art/Obj/{picName}");
+ return _objImage.FadeInSync(1);
+ }
+
+ ///
+ /// 隐藏物体
+ ///
+ /// 协程
+ public IEnumerator HideObj()
+ {
+ yield return _objImage.FadeOutSync(1);
+ _objPanel.SetActive(false);
+ }
+
private void InitChildObj()
{
var rawTvScene = transform.Find(TVScene).gameObject.GetComponent();
@@ -98,6 +123,10 @@ namespace AibisDream
var rawNews = transform.Find(NewsImage).gameObject.GetComponent();
_news = new FadeImage(rawNews);
+
+ _objPanel = transform.Find(ObjPanel).gameObject;
+ var rawObj = _objPanel.transform.GetChild(0).GetComponent();
+ _objImage = new FadeImage(rawObj);
}
}
}
\ No newline at end of file