diff --git a/Compatible/Compatible.cs b/Compatible/Compatible.cs index 58fe960..36f6c4f 100644 --- a/Compatible/Compatible.cs +++ b/Compatible/Compatible.cs @@ -390,6 +390,11 @@ .Replace("levelContenteHeight:", "levelTextHeight:") .Replace("levelContentsSystem0:", "levelTextSystem0:") .Replace("levelContentsSystem1:", "levelTextSystem1:") + .Replace("judgmentSystem:", "judgmentPaintSystem:") + .Replace("judgmentPosition0:", "judgmentPaintPosition0:") + .Replace("judgmentPosition1:", "judgmentPaintPosition1:") + .Replace("judgmentLength:", "judgmentPaintLength:") + .Replace("judgmentHeight:", "judgmentPaintHeight:") .Replace("title-level:", "titleLevel:") .Replace("composer-level:", "artistLevel:") .Replace("composerLevel:", "artistLevel:") diff --git a/Qwilight/Assets/Language.json b/Qwilight/Assets/Language.json index 278e771..15e814e 100644 --- a/Qwilight/Assets/Language.json +++ b/Qwilight/Assets/Language.json @@ -1231,9 +1231,9 @@ "ko-KR": "0 난이도 까지", "en-US": "Up to level 0" }, - "HitNotePaintPositionContents": { - "ko-KR": "노트 폭발 애니메이션 위치", - "en-US": "Note explosion animation position" + "HitNotePaintAreaContents": { + "ko-KR": "노트 폭발 애니메이션 크기", + "en-US": "Note Explosion Animation Size" }, "HitPoints": { "ko-KR": "라이프", @@ -1571,6 +1571,10 @@ "ko-KR": "판정 난이도를 설정합니다.", "en-US": "Set the judgment difficulty" }, + "JudgmentPaintPositionContents": { + "ko-KR": "판정 애니메이션 위치", + "en-US": "Decision Animation Location" + }, "JudgmentStage": { "ko-KR": "판정 난이도", "en-US": "Judgment level" diff --git a/Qwilight/Assets/UI/Default/Default.lua b/Qwilight/Assets/UI/Default/Default.lua index dd54103..255ba0d 100644 --- a/Qwilight/Assets/UI/Default/Default.lua +++ b/Qwilight/Assets/UI/Default/Default.lua @@ -40,8 +40,8 @@ return DefaultHeight(1 / 3) end -function JudgmentPosition1() - return JudgmentMainPosition(-154) + hitNotePaintPosition +function JudgmentPaintPosition1() + return JudgmentMainPosition(-154) + judgmentPaintPosition end function JudgmentMainHeight() @@ -273,7 +273,11 @@ end function HitNotePaintPosition(e) - return -2.0 * NoteLength(e) + return -HitNotePaintLength(e) / 2 +end + +function HitNotePaintLength(e) + return 2.0 * NoteLength(e) + hitNotePaintArea end function LongNoteEdgePosition1() diff --git a/Qwilight/Assets/UI/Default/Default.yaml b/Qwilight/Assets/UI/Default/Default.yaml index 45c5bc6..7ba675b 100644 --- a/Qwilight/Assets/UI/Default/Default.yaml +++ b/Qwilight/Assets/UI/Default/Default.yaml @@ -70,7 +70,8 @@ setNoteLength: true setNoteHeight: true setBandPosition: true - setHitNotePaintPosition: true + setJudgmentPaintPosition: true + setHitNotePaintArea: true configure-0: 16:9, 16:10, 21:9, 32:9 configure-comment-0: Select the screen ratio. @@ -212,21 +213,21 @@ binBandHeight: 50 enlargeBand: 12 - judgmentSystem: 1 - judgmentPosition0: Contents(0.5) - judgmentPosition1: JudgmentPosition1() - judgmentLength: 300 - judgmentHeight: 100 + judgmentPaintSystem: 1 + judgmentPaintPosition0: Contents(0.5) + judgmentPaintPosition1: JudgmentPaintPosition1() + judgmentPaintLength: 300 + judgmentPaintHeight: 100 hitNotePaintPosition0: HitNotePaintPosition(2.0), HitNotePaintPosition(1.0), ~, ~, ~, HitNotePaintPosition(2.0), HitNotePaintPosition(1.0), ~, ~, HitNotePaintPosition(2.0) hitNotePaintPosition1: HitNotePaintPosition(2.0), HitNotePaintPosition(1.0), ~, ~, ~, HitNotePaintPosition(2.0), HitNotePaintPosition(1.0), ~, ~, HitNotePaintPosition(2.0) - hitNotePaintLength: HitNotePaintPosition(-4.0), HitNotePaintPosition(-2.0), ~, ~, ~, HitNotePaintPosition(-4.0), HitNotePaintPosition(-2.0), ~, ~, HitNotePaintPosition(-4.0) - hitNotePaintHeight: HitNotePaintPosition(-4.0), HitNotePaintPosition(-2.0), ~, ~, ~, HitNotePaintPosition(-4.0), HitNotePaintPosition(-2.0), ~, ~, HitNotePaintPosition(-4.0) + hitNotePaintLength: HitNotePaintLength(2.0), HitNotePaintLength(1.0), ~, ~, ~, HitNotePaintLength(2.0), HitNotePaintLength(1.0), ~, ~, HitNotePaintLength(2.0) + hitNotePaintHeight: HitNotePaintLength(2.0), HitNotePaintLength(1.0), ~, ~, ~, HitNotePaintLength(2.0), HitNotePaintLength(1.0), ~, ~, HitNotePaintLength(2.0) hitLongNotePaintPosition0: HitNotePaintPosition(2.0), HitNotePaintPosition(1.0), ~, ~, ~, HitNotePaintPosition(2.0), HitNotePaintPosition(1.0), ~, ~, HitNotePaintPosition(2.0) hitLongNotePaintPosition1: HitNotePaintPosition(2.0), HitNotePaintPosition(1.0), ~, ~, ~, HitNotePaintPosition(2.0), HitNotePaintPosition(1.0), ~, ~, HitNotePaintPosition(2.0) - hitLongNotePaintLength: HitNotePaintPosition(-4.0), HitNotePaintPosition(-2.0), ~, ~, ~, HitNotePaintPosition(-4.0), HitNotePaintPosition(-2.0), ~, ~, HitNotePaintPosition(-4.0) - hitLongNotePaintHeight: HitNotePaintPosition(-4.0), HitNotePaintPosition(-2.0), ~, ~, ~, HitNotePaintPosition(-4.0), HitNotePaintPosition(-2.0), ~, ~, HitNotePaintPosition(-4.0) + hitLongNotePaintLength: HitNotePaintLength(2.0), HitNotePaintLength(1.0), ~, ~, ~, HitNotePaintLength(2.0), HitNotePaintLength(1.0), ~, ~, HitNotePaintLength(2.0) + hitLongNotePaintHeight: HitNotePaintLength(2.0), HitNotePaintLength(1.0), ~, ~, ~, HitNotePaintLength(2.0), HitNotePaintLength(1.0), ~, ~, HitNotePaintLength(2.0) bpmSystem: BPMSystem() bpmPosition0: BPMPosition0() diff --git a/Qwilight/Qwilight/Compute/DefaultCompute.cs b/Qwilight/Qwilight/Compute/DefaultCompute.cs index 8c79e50..c54f777 100644 --- a/Qwilight/Qwilight/Compute/DefaultCompute.cs +++ b/Qwilight/Qwilight/Compute/DefaultCompute.cs @@ -1771,11 +1771,11 @@ var lastEnlargedBandLoopFrame = DrawingComponentValue.lastEnlargedBandLoopFrame; var judgmentFrame = DrawingComponentValue.judgmentFrame; var judgmentFramerate = DrawingComponentValue.judgmentFramerate; - var judgmentSystem = DrawingComponentValue.judgmentSystem; - var judgmentPosition0 = DrawingComponentValue.judgmentPosition0; - var judgmentPosition1 = DrawingComponentValue.judgmentPosition1; - var judgmentLength = DrawingComponentValue.judgmentLength; - var judgmentHeight = DrawingComponentValue.judgmentHeight; + var judgmentSystem = DrawingComponentValue.judgmentPaintSystem; + var judgmentPosition0 = DrawingComponentValue.judgmentPaintPosition0; + var judgmentPosition1 = DrawingComponentValue.judgmentPaintPosition1; + var judgmentLength = DrawingComponentValue.judgmentPaintLength; + var judgmentHeight = DrawingComponentValue.judgmentPaintHeight; var mainFrame = DrawingComponentValue.mainFrame; var inputFrame = DrawingComponentValue.inputFrame; var inputPaintFrame = DrawingComponentValue.hitInputPaintFrame; @@ -3899,7 +3899,7 @@ { lock (JudgmentPaints) { - JudgmentPaints[isIn2P ? 1 : 0] = new(this, judged, isIn2P, DrawingComponentValue.judgmentSystem, DrawingComponentValue.judgmentPosition0, DrawingComponentValue.judgmentPosition1, DrawingComponentValue.judgmentFrame, DrawingComponentValue.judgmentFramerate, DrawingComponentValue.judgmentLength, DrawingComponentValue.judgmentHeight); + JudgmentPaints[isIn2P ? 1 : 0] = new(this, judged, isIn2P, DrawingComponentValue.judgmentPaintSystem, DrawingComponentValue.judgmentPaintPosition0, DrawingComponentValue.judgmentPaintPosition1, DrawingComponentValue.judgmentFrame, DrawingComponentValue.judgmentFramerate, DrawingComponentValue.judgmentPaintLength, DrawingComponentValue.judgmentPaintHeight); } } } diff --git a/Qwilight/Qwilight/System/Configure/UIConfigure.cs b/Qwilight/Qwilight/System/Configure/UIConfigure.cs index 0163661..6c6c2b4 100644 --- a/Qwilight/Qwilight/System/Configure/UIConfigure.cs +++ b/Qwilight/Qwilight/System/Configure/UIConfigure.cs @@ -12,7 +12,8 @@ double _judgmentMainPosition1; double _noteWait; double _bandPosition; - double _hitNotePaintPosition; + double _judgmentPaintPosition; + double _hitNotePaintArea; public string[] UIConfiguresV2 { get; set; } = new string[UI.HighestUIConfigure]; @@ -142,20 +143,35 @@ public string BandPositionContents => BandPositionV2.ToString(LanguageSystem.Instance.PointLevelContents); - public double HitNotePaintPosition + public double JudgmentPaintPosition { - get => _hitNotePaintPosition; + get => _judgmentPaintPosition; set { - if (SetProperty(ref _hitNotePaintPosition, value, nameof(HitNotePaintPosition))) + if (SetProperty(ref _judgmentPaintPosition, value, nameof(JudgmentPaintPosition))) { - OnPropertyChanged(nameof(HitNotePaintPositionContents)); + OnPropertyChanged(nameof(JudgmentPaintPositionContents)); } } } - public string HitNotePaintPositionContents => HitNotePaintPosition.ToString(LanguageSystem.Instance.PointLevelContents); + public string JudgmentPaintPositionContents => JudgmentPaintPosition.ToString(LanguageSystem.Instance.PointLevelContents); + + public double HitNotePaintArea + { + get => _hitNotePaintArea; + + set + { + if (SetProperty(ref _hitNotePaintArea, value, nameof(HitNotePaintArea))) + { + OnPropertyChanged(nameof(HitNotePaintAreaContents)); + } + } + } + + public string HitNotePaintAreaContents => HitNotePaintArea.ToString(LanguageSystem.Instance.PointLevelContents); public void NotifyInputMode() { diff --git a/Qwilight/Qwilight/System/LanguageSystem/LanguageSystem.g.cs b/Qwilight/Qwilight/System/LanguageSystem/LanguageSystem.g.cs index 5ac8a1c..17ccea2 100644 --- a/Qwilight/Qwilight/System/LanguageSystem/LanguageSystem.g.cs +++ b/Qwilight/Qwilight/System/LanguageSystem/LanguageSystem.g.cs @@ -310,7 +310,7 @@ public string HighestWantBPMContents { get; set; } public string HighestWantInputCountContents { get; set; } public string HighestWantLevelTextValue { get; set; } - public string HitNotePaintPositionContents { get; set; } + public string HitNotePaintAreaContents { get; set; } public string HitPoints { get; set; } public string HitPointsLegend { get; set; } public string HitPointsModeAssist { get; set; } @@ -395,6 +395,7 @@ public string JudgmentMainPosition1Contents { get; set; } public string JudgmentMeterMillisText { get; set; } public string JudgmentModeAssist { get; set; } + public string JudgmentPaintPositionContents { get; set; } public string JudgmentStage { get; set; } public string JudgmentVisualizerMillisText { get; set; } public string K70Contents { get; set; } diff --git a/Qwilight/Qwilight/System/UI/DrawingComponent.cs b/Qwilight/Qwilight/System/UI/DrawingComponent.cs index 433f285..bfc71bf 100644 --- a/Qwilight/Qwilight/System/UI/DrawingComponent.cs +++ b/Qwilight/Qwilight/System/UI/DrawingComponent.cs @@ -271,11 +271,11 @@ public int wantLevelSystem0; public int wantLevelSystem1; - public float judgmentPosition0; - public float judgmentPosition1; - public float judgmentLength; - public float judgmentHeight; - public int judgmentSystem; + public float judgmentPaintPosition0; + public float judgmentPaintPosition1; + public float judgmentPaintLength; + public float judgmentPaintHeight; + public int judgmentPaintSystem; public int earlyValueSystem; public float earlyValuePosition0; @@ -486,7 +486,8 @@ lsCaller.Globals["noteLength"] = Configure.Instance.UIConfigureValue.NoteLengthText.GetValueOrDefault((int)inputMode); lsCaller.Globals["noteHeight"] = Configure.Instance.UIConfigureValue.NoteHeightValue.GetValueOrDefault((int)inputMode); lsCaller.Globals["bandPosition"] = Configure.Instance.UIConfigureValue.BandPositionV2; - lsCaller.Globals["hitNotePaintPosition"] = Configure.Instance.UIConfigureValue.HitNotePaintPosition; + lsCaller.Globals["judgmentPaintPosition"] = Configure.Instance.UIConfigureValue.JudgmentPaintPosition; + lsCaller.Globals["hitNotePaintArea"] = Configure.Instance.UIConfigureValue.HitNotePaintArea; lsCaller.Globals["inputMapping"] = (int)Configure.Instance.InputMappingValue; lsCaller.Globals["P1Length"] = p1Length; lsCaller.Globals["P1BuiltLength"] = p1BuiltLengthFunc; diff --git a/Qwilight/Qwilight/System/UI/UI.cs b/Qwilight/Qwilight/System/UI/UI.cs index 8ea9bb5..3c03f6c 100644 --- a/Qwilight/Qwilight/System/UI/UI.cs +++ b/Qwilight/Qwilight/System/UI/UI.cs @@ -222,7 +222,9 @@ public bool SetBandPosition { get; set; } - public bool SetHitNotePaintPosition { get; set; } + public bool SetJudgmentPaintPosition { get; set; } + + public bool SetHitNotePaintArea { get; set; } public DrawingItem?[] HitPointsDrawings { get; } = new DrawingItem?[8]; @@ -532,7 +534,8 @@ SetNoteLength = Utility.ToBool(Utility.GetText(funcNode, "setNoteLength", bool.FalseString)); SetNoteHeight = Utility.ToBool(Utility.GetText(funcNode, "setNoteHeight", bool.FalseString)); SetBandPosition = Utility.ToBool(Utility.GetText(funcNode, "setBandPosition", bool.FalseString)); - SetHitNotePaintPosition = Utility.ToBool(Utility.GetText(funcNode, "setHitNotePaintPosition", bool.FalseString)); + SetJudgmentPaintPosition = Utility.ToBool(Utility.GetText(funcNode, "setJudgmentPaintPosition", bool.FalseString)); + SetHitNotePaintArea = Utility.ToBool(Utility.GetText(funcNode, "setHitNotePaintArea", bool.FalseString)); SaveIntMap(funcNode, "judgmentPaintComposition"); SaveIntMap(funcNode, "hitNotePaintComposition", (int)CanvasComposite.Add); @@ -611,11 +614,11 @@ SaveValueMap(frameNode, "long-note-hit-framerate"); SaveIntMap(frameNode, "judgment-frame"); SaveValueMap(frameNode, "judgment-framerate"); - SaveIntMap(pointNode, "judgmentSystem"); - SaveValueMap(pointNode, "judgmentPosition0"); - SaveValueMap(pointNode, "judgmentPosition1"); - SaveValueMap(pointNode, "judgmentLength"); - SaveValueMap(pointNode, "judgmentHeight"); + SaveIntMap(pointNode, "judgmentPaintSystem"); + SaveValueMap(pointNode, "judgmentPaintPosition0"); + SaveValueMap(pointNode, "judgmentPaintPosition1"); + SaveValueMap(pointNode, "judgmentPaintLength"); + SaveValueMap(pointNode, "judgmentPaintHeight"); SaveSplitValueMap("hitNotePaintLength"); SaveSplitValueMap("hitNotePaintHeight"); SaveSplitValueMap("hitLongNotePaintLength"); diff --git a/Qwilight/Qwilight/View/ConfigureWindow/ComputingGUIConfigureWindow.xaml b/Qwilight/Qwilight/View/ConfigureWindow/ComputingGUIConfigureWindow.xaml index 505fa71..38062fb 100644 --- a/Qwilight/Qwilight/View/ConfigureWindow/ComputingGUIConfigureWindow.xaml +++ b/Qwilight/Qwilight/View/ConfigureWindow/ComputingGUIConfigureWindow.xaml @@ -107,6 +107,7 @@ + @@ -117,13 +118,17 @@ - - - + + + - - - + + + + + + +