增加计时器功能
This commit is contained in:
+1729
-1729
File diff suppressed because it is too large
Load Diff
+164
-11
@@ -5058,7 +5058,7 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 960.00006, y: -909.66833}
|
||||
m_AnchoredPosition: {x: 960.00006, y: -909.6166}
|
||||
m_SizeDelta: {x: 1000, y: 80}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &296256892
|
||||
@@ -6141,7 +6141,7 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 960.00006, y: -549.005}
|
||||
m_AnchoredPosition: {x: 960.00006, y: -548.97394}
|
||||
m_SizeDelta: {x: 400, y: 300}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &430924360
|
||||
@@ -13655,7 +13655,7 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 960.00006, y: -204.33667}
|
||||
m_AnchoredPosition: {x: 960.00006, y: -204.32632}
|
||||
m_SizeDelta: {x: 300, y: 48.01}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1076103036
|
||||
@@ -18028,6 +18028,154 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: 85815d386fde43dca8b4be1cfd26fe89, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!1 &1393438673
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1393438674}
|
||||
- component: {fileID: 1393438676}
|
||||
- component: {fileID: 1393438675}
|
||||
- component: {fileID: 1393438677}
|
||||
m_Layer: 5
|
||||
m_Name: DemoTimer
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 0
|
||||
--- !u!224 &1393438674
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1393438673}
|
||||
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: 2135943277}
|
||||
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: 875, y: -475}
|
||||
m_SizeDelta: {x: 150.07, y: 50}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1393438675
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1393438673}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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_text: 00:00:00
|
||||
m_isRightToLeft: 0
|
||||
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
|
||||
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
|
||||
m_fontSharedMaterials: []
|
||||
m_fontMaterial: {fileID: 0}
|
||||
m_fontMaterials: []
|
||||
m_fontColor32:
|
||||
serializedVersion: 2
|
||||
rgba: 4294967295
|
||||
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_enableVertexGradient: 0
|
||||
m_colorMode: 3
|
||||
m_fontColorGradient:
|
||||
topLeft: {r: 1, g: 1, b: 1, a: 1}
|
||||
topRight: {r: 1, g: 1, b: 1, a: 1}
|
||||
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
|
||||
bottomRight: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_fontColorGradientPreset: {fileID: 0}
|
||||
m_spriteAsset: {fileID: 0}
|
||||
m_tintAllSprites: 0
|
||||
m_StyleSheet: {fileID: 0}
|
||||
m_TextStyleHashCode: -1183493901
|
||||
m_overrideHtmlColors: 0
|
||||
m_faceColor:
|
||||
serializedVersion: 2
|
||||
rgba: 4294967295
|
||||
m_fontSize: 36
|
||||
m_fontSizeBase: 36
|
||||
m_fontWeight: 400
|
||||
m_enableAutoSizing: 0
|
||||
m_fontSizeMin: 18
|
||||
m_fontSizeMax: 72
|
||||
m_fontStyle: 0
|
||||
m_HorizontalAlignment: 2
|
||||
m_VerticalAlignment: 512
|
||||
m_textAlignment: 65535
|
||||
m_characterSpacing: 0
|
||||
m_wordSpacing: 0
|
||||
m_lineSpacing: 0
|
||||
m_lineSpacingMax: 0
|
||||
m_paragraphSpacing: 0
|
||||
m_charWidthMaxAdj: 0
|
||||
m_enableWordWrapping: 1
|
||||
m_wordWrappingRatios: 0.4
|
||||
m_overflowMode: 0
|
||||
m_linkedTextComponent: {fileID: 0}
|
||||
parentLinkedComponent: {fileID: 0}
|
||||
m_enableKerning: 1
|
||||
m_enableExtraPadding: 0
|
||||
checkPaddingRequired: 0
|
||||
m_isRichText: 1
|
||||
m_parseCtrlCharacters: 1
|
||||
m_isOrthographic: 1
|
||||
m_isCullingEnabled: 0
|
||||
m_horizontalMapping: 0
|
||||
m_verticalMapping: 0
|
||||
m_uvLineOffset: 0
|
||||
m_geometrySortingOrder: 0
|
||||
m_IsTextObjectScaleStatic: 0
|
||||
m_VertexBufferAutoSizeReduction: 0
|
||||
m_useMaxVisibleDescender: 1
|
||||
m_pageToDisplay: 1
|
||||
m_margin: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_isUsingLegacyAnimationComponent: 0
|
||||
m_isVolumetricText: 0
|
||||
m_hasFontAssetChanged: 0
|
||||
m_baseMaterial: {fileID: 0}
|
||||
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
|
||||
--- !u!222 &1393438676
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1393438673}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &1393438677
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1393438673}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: a21f67dffcd841adb0f408b5cf075ea8, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
totalTimeInSeconds: 10
|
||||
--- !u!1 &1395758056
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -19218,7 +19366,7 @@ PrefabInstance:
|
||||
m_Modifications:
|
||||
- target: {fileID: 27177156846382951, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 100.81
|
||||
value: 100.8
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4099831927643554877, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: prop
|
||||
@@ -19326,7 +19474,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: -230
|
||||
value: -190
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5824597425683931436, guid: e45f5fd66e7512444a9a27161cf51b7f, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
@@ -22129,7 +22277,7 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 300, y: -241.75}
|
||||
m_AnchoredPosition: {x: 300, y: -241.73447}
|
||||
m_SizeDelta: {x: 300, y: 100}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1758246148
|
||||
@@ -26788,6 +26936,7 @@ RectTransform:
|
||||
m_Children:
|
||||
- {fileID: 367483172}
|
||||
- {fileID: 1609388204}
|
||||
- {fileID: 1393438674}
|
||||
m_Father: {fileID: 2091451641}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
@@ -26849,7 +26998,7 @@ RectTransform:
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 300, y: -731.75}
|
||||
m_AnchoredPosition: {x: 300, y: -731.70337}
|
||||
m_SizeDelta: {x: 298, y: 313}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &2139849582
|
||||
@@ -41366,7 +41515,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: -70
|
||||
value: -110
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 305064715333190683, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
@@ -41382,7 +41531,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163567057521848681, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 67.21
|
||||
value: 67.2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1425762017047074178, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
@@ -41398,7 +41547,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 5952270497693892333, guid: 2c1bcc3613815c74fb44cc1db21f524e, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 18.67
|
||||
value: 18.68
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
@@ -54093,9 +54242,13 @@ PrefabInstance:
|
||||
propertyPath: m_Name
|
||||
value: Language
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3694944920212717692, guid: f3517f06477b08841808ac3d8f304740, type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3927667113686967073, guid: f3517f06477b08841808ac3d8f304740, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 0
|
||||
value: 100.8
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 4234428467162922196, guid: f3517f06477b08841808ac3d8f304740, type: 3}
|
||||
propertyPath: m_Pivot.x
|
||||
|
||||
@@ -159,7 +159,6 @@ namespace AibisDream.Framework
|
||||
|
||||
public float SwitchCameraSync(CameraEnum camType)
|
||||
{
|
||||
Debug.Log("Camera Type is:" + camType);
|
||||
if (_curCameraEnum == camType)
|
||||
{
|
||||
return 0;
|
||||
@@ -194,6 +193,13 @@ namespace AibisDream.Framework
|
||||
return activeBrain.m_DefaultBlend.BlendTime;
|
||||
}
|
||||
|
||||
public void ResetCamera()
|
||||
{
|
||||
_curCameraEnum = CameraEnum.Default;
|
||||
_camInitStateDict.Clear();
|
||||
_camInitStateDict.Clear();
|
||||
}
|
||||
|
||||
private void ResetVirCam(CameraEnum cameraEnum)
|
||||
{
|
||||
if (cameraEnum == CameraEnum.Default)
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
using AibisDream.Framework;
|
||||
using UnityEngine;
|
||||
using TMPro;
|
||||
|
||||
namespace AibisDream
|
||||
{
|
||||
public class DemoTimer : MonoBehaviour
|
||||
{
|
||||
public float totalTimeInSeconds = 1200f;
|
||||
private TMP_Text _timerText;
|
||||
private float _currentTime;
|
||||
private bool _isRunning;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
_timerText = GetComponent<TMP_Text>();
|
||||
// 注册事件
|
||||
EnumEventSystem.Global.Register(GameLoopEnum.GameStart, TimerStart);
|
||||
EnumEventSystem.Global.Register(GameLoopEnum.GameQuit, TimerStop);
|
||||
}
|
||||
|
||||
private void TimerStart()
|
||||
{
|
||||
_currentTime = totalTimeInSeconds;
|
||||
_isRunning = true;
|
||||
_timerText.enabled = true;
|
||||
}
|
||||
|
||||
private void TimerStop()
|
||||
{
|
||||
_currentTime = 0;
|
||||
_isRunning = false;
|
||||
_timerText.enabled = false;
|
||||
}
|
||||
|
||||
private void TimerPause()
|
||||
{
|
||||
_isRunning = false;
|
||||
}
|
||||
|
||||
private void Update()
|
||||
{
|
||||
if (_isRunning)
|
||||
{
|
||||
_currentTime -= Time.deltaTime;
|
||||
if (_currentTime <= 0)
|
||||
{
|
||||
TimerPause();
|
||||
ForceReturnToMainMenu();
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateTimerDisplay();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void UpdateTimerDisplay()
|
||||
{
|
||||
int hours = Mathf.FloorToInt(_currentTime / 3600);
|
||||
int minutes = Mathf.FloorToInt(_currentTime % 3600 / 60);
|
||||
int seconds = Mathf.FloorToInt(_currentTime % 60);
|
||||
|
||||
_timerText.text = $"{hours:D2}:{minutes:D2}:{seconds:D2}";
|
||||
}
|
||||
|
||||
private void ForceReturnToMainMenu()
|
||||
{
|
||||
// 打开EndPanel
|
||||
UIManager.Instance.ShowPanel<EndPanel>();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a21f67dffcd841adb0f408b5cf075ea8
|
||||
timeCreated: 1750061640
|
||||
@@ -141,14 +141,8 @@ namespace AibisDream
|
||||
{
|
||||
// 系统继续
|
||||
Time.timeScale = 1;
|
||||
// 交互继续
|
||||
EnumEventSystem.Global.Send(GameLoopEnum.GameQuit);
|
||||
// 卸载当前场景
|
||||
StartCoroutine(RestartCoroutine());
|
||||
// 音频继续
|
||||
AudioManager.Instance.UnPauseAll();
|
||||
// 打开Dialog
|
||||
DialogCanvasManager.Instance.OpenCanvas();
|
||||
}
|
||||
|
||||
public void QuitApp()
|
||||
@@ -158,12 +152,17 @@ namespace AibisDream
|
||||
|
||||
private IEnumerator RestartCoroutine()
|
||||
{
|
||||
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeInAsync();
|
||||
UIManager.Instance.GetPanel<PlayToolPanel>().FadeInSync(0.1f);
|
||||
|
||||
// 执行场景切换等功能
|
||||
CameraKit.Instance.ResetCamera();
|
||||
yield return SceneLoader.Instance.LoadSceneAsync("ClinicOut");
|
||||
DialogController.Instance.StopDialog();
|
||||
EnumEventSystem.Global.Send(GameLoopEnum.GameQuit);
|
||||
// 音频继续
|
||||
AudioManager.Instance.UnPauseAll();
|
||||
// 打开Dialog
|
||||
DialogCanvasManager.Instance.OpenCanvas();
|
||||
|
||||
yield return UIManager.Instance.GetPanel<PlayToolPanel>().FadeOutAsync();
|
||||
}
|
||||
|
||||
@@ -47,10 +47,5 @@ namespace AibisDream
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void UpdateFormData()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -13,6 +13,7 @@ namespace AibisDream
|
||||
|
||||
public void Show()
|
||||
{
|
||||
GameManager.Instance.PauseGame();
|
||||
gameObject.SetActive(true);
|
||||
RegisterButton();
|
||||
}
|
||||
@@ -21,6 +22,7 @@ namespace AibisDream
|
||||
{
|
||||
gameObject.SetActive(false);
|
||||
UnRegisterButton();
|
||||
GameManager.Instance.ContinueGame();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -63,7 +63,7 @@ namespace AibisDream
|
||||
{
|
||||
DialogController.Instance.quickRunMode = !DialogController.Instance.quickRunMode;
|
||||
|
||||
Time.timeScale = DialogController.Instance.quickRunMode ? 10f : 1f;
|
||||
Time.timeScale = DialogController.Instance.quickRunMode ? 8f : 1f;
|
||||
}
|
||||
|
||||
private void OpenSettingPanel()
|
||||
|
||||
Reference in New Issue
Block a user