右Alt Space播放

This commit is contained in:
2025-06-21 23:09:34 +08:00
parent 56cd335eb2
commit 3b299178c0
6 changed files with 1387 additions and 206 deletions

View File

@@ -119,15 +119,23 @@ namespace Ichni.Editor
private void MusicPlayerOperation()
{
if (Keyboard.current.enterKey.wasPressedThisFrame && !isPointerOverUI) // 回车键 播放或暂停音乐
if (!isPointerOverUI)
{
if (!EditorManager.instance.musicPlayer.isPlaying)
if (Keyboard.current.spaceKey.wasPressedThisFrame) // 回车键 播放或暂停音乐
{
EditorManager.instance.musicPlayer.PlayMusic();
if (!EditorManager.instance.musicPlayer.isPlaying)
{
EditorManager.instance.musicPlayer.PlayMusic();
}
else
{
EditorManager.instance.musicPlayer.PauseMusic();
}
}
else
if (Keyboard.current.rightAltKey.wasPressedThisFrame)
{
EditorManager.instance.musicPlayer.PauseMusic();
StartCoroutine(EditorManager.instance.musicPlayer.PlayBackMusic());
}
}
}

View File

@@ -3,6 +3,7 @@ using System.Collections;
using System.Collections.Generic;
using Ichni.RhythmGame;
using UnityEngine;
using UnityEngine.InputSystem;
namespace Ichni.Editor
{
@@ -35,7 +36,15 @@ namespace Ichni.Editor
if (isPlaying) audioSource.Play();
else PauseMusic();
}
public IEnumerator PlayBackMusic()
{
float startt = audioSource.time;
PlayMusic();
yield return new WaitUntil(() => Keyboard.current.rightAltKey.wasReleasedThisFrame);
audioSource.time = startt;
PauseMusic();
}
public void PauseMusic()
{
isPlaying = false;