Small question

Signed-off-by: TRAfoer <lhf190@outlook.com>
This commit is contained in:
2025-10-19 14:42:05 +08:00
parent 02fd8d52f7
commit eab38e36fe
32 changed files with 40657 additions and 16787 deletions

View File

@@ -9,15 +9,22 @@ namespace Ichni.RhythmGame
public class FullScreenNearTimeJudgeUnit : NoteJudgeUnit
{
protected override GameObject GetHintImagePrefab() => EditorManager.instance.basePrefabs.fullscreenNearTimeHint;
public FullScreenNearTimeJudgeUnit(NoteBase note) : base(note)
{
}
public override void UpdateJudge()
{
if(note.isFirstJudged) return;
if (note is Hold hold)
{
if (hold.isFinalJudged) return;
}
else
{
if (note.isFirstJudged) return;
}
Vector2 noteScreenPosition = note.noteScreenPosition;
RectTransform canvasRect = EditorManager.instance.judgeHintCanvas.GetComponent<RectTransform>();
if (RectTransformUtility.ScreenPointToLocalPointInRectangle(canvasRect, noteScreenPosition, null, out Vector2 uiPosition))
@@ -25,15 +32,15 @@ namespace Ichni.RhythmGame
judgeHintImage.anchoredPosition = uiPosition;
}
}
public override void SetUpInspector()
{
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
Inspector inspectorMain = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("Full Screen Near Time Judge Unit");
var judgeModuleSettings = container.GenerateSubcontainer(3);
var isShowingJudgeField =
var isShowingJudgeField =
inspector.GenerateToggle(this, judgeModuleSettings, "Is Showing Judge", nameof(isShowingJudge))
.AddListenerFunction(() => SetShowingJudge(isShowingJudge));
var removeButton = inspector.GenerateButton(this, judgeModuleSettings, "Remove", () =>
@@ -43,7 +50,7 @@ namespace Ichni.RhythmGame
inspectorMain.SetInspector(note);
});
}
public override NoteJudgeUnit_BM ConvertToBM()
{
return new FullScreenNearTimeJudgeUnit_BM();
@@ -56,9 +63,9 @@ namespace Ichni.RhythmGame
{
public FullScreenNearTimeJudgeUnit_BM()
{
}
public override NoteJudgeUnit ConvertToGameType(NoteBase attachedNote)
{
return new FullScreenNearTimeJudgeUnit(attachedNote);

View File

@@ -13,7 +13,7 @@ namespace Ichni.RhythmGame
protected override GameObject GetHintImagePrefab() => EditorManager.instance.basePrefabs.areaHint;
private float CurrentScreenRatio() => Screen.height / 1080f;
public TouchAreaJudgeUnit(NoteBase note, float areaRadius) : base(note)
{
this.areaRadius = areaRadius;
@@ -21,7 +21,15 @@ namespace Ichni.RhythmGame
public override void UpdateJudge()
{
if(note.isFirstJudged) return;
if (note is Hold hold)
{
if (hold.isFinalJudged) return;
}
else
{
if (note.isFirstJudged) return;
}
Vector2 noteScreenPosition = note.noteScreenPosition;
RectTransform canvasRect = EditorManager.instance.judgeHintCanvas.GetComponent<RectTransform>();
if (RectTransformUtility.ScreenPointToLocalPointInRectangle(canvasRect, noteScreenPosition, null, out Vector2 uiPosition))
@@ -35,10 +43,10 @@ namespace Ichni.RhythmGame
{
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
Inspector inspectorMain = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("Touch Area Judge Unit");
var judgeModuleSettings = container.GenerateSubcontainer(3);
var isShowingJudgeField =
var isShowingJudgeField =
inspector.GenerateToggle(this, judgeModuleSettings, "Is Showing Judge", nameof(isShowingJudge))
.AddListenerFunction(() => SetShowingJudge(isShowingJudge));
var areaRadiusField = inspector.GenerateInputField(this, judgeModuleSettings, "Area Radius", nameof(areaRadius));
@@ -64,9 +72,9 @@ namespace Ichni.RhythmGame
public TouchAreaJudgeUnit_BM()
{
}
public TouchAreaJudgeUnit_BM(float areaRadius)
{
this.areaRadius = areaRadius;