Feel滚
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
using UnityEngine;
|
||||
|
||||
namespace SLSUtilities.Feedback
|
||||
{
|
||||
/// <summary>
|
||||
@@ -32,4 +34,33 @@ namespace SLSUtilities.Feedback
|
||||
/// </summary>
|
||||
float GetTimeScale(FeedbackTimeSettings settings);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 默认时间提供者。当没有指定 IFeedbackTimeProvider 时使用,
|
||||
/// 返回 unscaledDeltaTime 并且不受任何自定义时间缩放影响。
|
||||
/// </summary>
|
||||
public class DefaultFeedbackTimeProvider : IFeedbackTimeProvider
|
||||
{
|
||||
public float GlobalTimeScale => 1f;
|
||||
public float GroupTimeScale => 1f;
|
||||
public float LocalTimeScale => 1f;
|
||||
|
||||
public static readonly DefaultFeedbackTimeProvider Instance = new DefaultFeedbackTimeProvider();
|
||||
|
||||
/// <summary>
|
||||
/// 返回固定时间缩放 1。
|
||||
/// </summary>
|
||||
public float GetTimeScale(FeedbackTimeSettings settings)
|
||||
{
|
||||
return 1f;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 返回 unscaledDeltaTime,不受任何自定义时间缩放影响。
|
||||
/// </summary>
|
||||
public float GetDeltaTime(FeedbackTimeSettings settings)
|
||||
{
|
||||
return Time.deltaTime;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -26,7 +26,7 @@ namespace SLSUtilities.Feedback
|
||||
/// </summary>
|
||||
public FeedbackPlayer Play(FeedbackData data)
|
||||
{
|
||||
return Play(data, null, null);
|
||||
return Play(data, DefaultFeedbackTimeProvider.Instance, null);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -81,7 +81,7 @@ namespace SLSUtilities.Feedback
|
||||
|
||||
private void Update()
|
||||
{
|
||||
float dt = Time.unscaledDeltaTime;
|
||||
float dt = Time.deltaTime;
|
||||
|
||||
for (int i = _activePlayers.Count - 1; i >= 0; i--)
|
||||
{
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 18548c9a061a9794db10f3c4cc83fc76
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -1,29 +0,0 @@
|
||||
using System;
|
||||
using MoreMountains.Feedbacks;
|
||||
using Sirenix.OdinInspector;
|
||||
using UnityEngine;
|
||||
|
||||
namespace SLSUtilities.FeelAssistance
|
||||
{
|
||||
[HideReferenceObjectPicker]
|
||||
public class FeedbackUnit
|
||||
{
|
||||
public MMF_Player feedback;
|
||||
[HideInInspector]
|
||||
public Action action;
|
||||
[HideInInspector]
|
||||
public bool canPlay;
|
||||
|
||||
public void Play() => canPlay = true;
|
||||
|
||||
public void Update()
|
||||
{
|
||||
if (canPlay)
|
||||
{
|
||||
feedback?.PlayFeedbacks();
|
||||
action?.Invoke();
|
||||
canPlay = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,2 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 84520693a83b7c646a99fc1c0264c1a9
|
||||
Reference in New Issue
Block a user