some updates

This commit is contained in:
2026-07-25 08:31:10 +08:00
parent af8a0b6810
commit 86351dbd2a
225 changed files with 46757 additions and 590 deletions
+17 -2
View File
@@ -674,6 +674,19 @@ public class HoldNote : BaseNote
&& jm != null && jm.IsStartJudged(noteID)
&& !jm.HasNoteReleased(noteID))
{
if (keyHeld && now >= scheduledEndTime)
{
if (debugEnabled) Debug.Log($"[HoldNote] END auto-complete on hold: {noteColor}, noteID={noteID}, now={now:F3}, scheduledEnd={scheduledEndTime:F3}");
releaseTime = scheduledEndTime;
hasReleased = true;
jm.RegisterNoteReleased(noteID, true);
isHoldActive = false;
StopHoldFxLoop();
EvaluateHoldEnd(scheduledEndTime, false, true);
isJudged = true;
return;
}
if (keyUp)
{
// protect end handling with track lock so a single release doesn't trigger multiple ends
@@ -834,11 +847,11 @@ public class HoldNote : BaseNote
{
if (JudgeManager.IsDebugEnabled) Debug.Log($"[HoldNote] End entered while note not yet released: {noteColor}, auto-finishing hold as Perfect");
// 记录松手时间为当前时刻(玩家按到尾部视为完美松手)
releaseTime = GameplayClock.NowSongTime;
releaseTime = scheduledEndTime;
hasReleased = true;
JudgeManager.Instance?.RegisterNoteReleased(noteID, true);
// 判定并生成 prefab——force Perfect(按到尾部=完美完成)
EvaluateHoldEnd(releaseTime, false, true);
EvaluateHoldEnd(scheduledEndTime, false, true);
isJudged = true;
// 终止输入:标记键已松开,停止持续特效
isHoldActive = false;
@@ -1299,6 +1312,8 @@ public class HoldNote : BaseNote
teamUIController.Instance?.OnJudgeResult(result);
}
teamUIController.Instance?.RefreshRealtimeJudgeStatsText();
if (result != "Miss")
{
TrackJudgeHitEffectController.PlayTrackHitFx(trackIndex);