变速箱修改

This commit is contained in:
2025-01-25 19:08:00 +08:00
parent 0f6d95466e
commit ea689da0dd
14 changed files with 1003 additions and 1113 deletions
+49 -5
View File
@@ -13,6 +13,7 @@ namespace AibisDream
public class EngineSystem : MonoBehaviour
{
private StaticGear _centerGear;
private SpriteRenderer _cover;
[Header("系统配置")] public EngineConfig engineConfig;
public bool isAvailable;
@@ -20,7 +21,9 @@ namespace AibisDream
private bool _isSuccess;
public float curSpeed;
public float targetSpeed=0.95f;
public float targetSpeed = 0.95f;
[SerializeField] private float coverMoveDuration = 5f;
[SerializeField] private float coverMoveDistance = 2.8f;
[HideInInspector] public UnityEvent<float, float> updateSpeedEvent = new();
private void Awake()
@@ -28,7 +31,8 @@ namespace AibisDream
FixSystemCenter.SystemDic.Register(this);
_centerGear = transform.Find("中央齿轮").GetComponent<StaticGear>();
_centerGear.initSpeed = engineConfig.gearSpeed;
_cover = transform.Find("Cover").GetComponent<SpriteRenderer>();
// 注册相机
var virtualCam = transform.Find("Engine Camera").GetComponentInChildren<ICinemachineCamera>();
CameraKit.Instance.RegisterCamera(CameraEnum.Engine, virtualCam);
@@ -74,7 +78,7 @@ namespace AibisDream
/// <summary>
/// 开启系统交互
/// </summary>
public void EnableSystem()
private void EnableSystem()
{
isAvailable = true;
}
@@ -82,10 +86,51 @@ namespace AibisDream
/// <summary>
/// 关闭系统交互
/// </summary>
public void DisableSystem()
private void DisableSystem()
{
isAvailable = false;
}
/// <summary>
/// 打开盖板
/// 关闭系统交互
/// </summary>
/// <returns>动画序列</returns>
public Tween OpenCover()
{
AudioManager.PlayLoop2Audio("amb_shitou_engine");
var sq = DOTween.Sequence();
// 盖板上移
var moveDis = new Vector3(0, coverMoveDistance, 0);
sq.Join(_cover.transform.DOBlendableMoveBy(moveDis, coverMoveDuration));
// 盖板淡出
sq.Join(_cover.DOFade(0, coverMoveDuration));
// 为引擎系统解锁
sq.OnComplete(EnableSystem);
return sq;
}
/// <summary>
/// 关闭盖板
/// </summary>
/// <returns>动画序列</returns>
public Tween CloseCover()
{
AudioManager.PauseLoop2Audio();
var sq = DOTween.Sequence();
sq.Join(_cover.DOFade(1, coverMoveDuration));
var moveDis = new Vector3(0, -coverMoveDistance, 0);
sq.Join(_cover.transform.DOBlendableMoveBy(moveDis, coverMoveDuration));
// 锁定引擎系统
sq.OnComplete(DisableSystem);
return sq;
}
}
[Serializable]
@@ -94,7 +139,6 @@ namespace AibisDream
[Header("齿轮基础速度")] public float gearSpeed;
[Header("齿轮速度倍率")] public float speedRate;
[Header("拉满几次到全速")] public float pullCount;
[Header("拉绳最大速度")] public float pullMaxSpeed;
[Header("拉绳回缩速度")] public float returnSpeed;
}
}