2 using System.Collections.Generic;
\r
4 using System.Diagnostics;
\r
9 /// 判定ライン関係の座標処理をまとめたクラス
\r
11 internal class C演奏判定ライン座標共通
\r
17 //public STDGBVALUE<int> nJudgeLinePosYDelta;
\r
19 public C演奏判定ライン座標共通()
\r
21 // 補正値は、Normal/Reverse, Drums/GR画面共通
\r
22 //nJudgeLinePosYDelta.Drums = 0;
\r
23 //nJudgeLinePosYDelta.Guitar = 0;
\r
24 //nJudgeLinePosYDelta.Bass = 0;
\r
37 /// <param name="eInst">E楽器パート</param>
\r
38 /// <param name="bGRmode">GRmodeか否か</param>
\r
39 /// <param name="bReverse">Reverseか否か</param>
\r
40 /// <param name="bWailingFrame">Wailing枠の座標か、判定ラインの座標か</param>
\r
41 /// <param name="b補正あり">プレーヤーのライン表示位置補正情報を加えるかどうか</param>
\r
42 /// <returns></returns>
\r
43 public static int n判定ラインY座標(E楽器パート eInst, bool bWailingFrame = false, bool b補正あり = false, Reverse rt = Reverse.UseConfig)
\r
45 if (eInst == E楽器パート.UNKNOWN)
\r
47 throw new ArgumentOutOfRangeException();
\r
51 int ret = CDTXMania.Instance.Coordinates.JudgeLine[eInst].Y;
\r
53 int delta = CDTXMania.Instance.ConfigIni.nJudgeLinePosOffset[eInst];
\r
56 if (rt == Reverse.Reverse)
\r
60 else if (rt == Reverse.UseConfig)
\r
62 rev = CDTXMania.Instance.ConfigIni.bReverse[eInst];
\r
67 ret = SampleFramework.GameWindowSize.Height - ret;
\r
70 ret -= CDTXMania.Instance.Coordinates.ImgGtWailingFrame.H / 2;
\r
72 if (eInst == E楽器パート.DRUMS)
\r
81 ret -= CDTXMania.Instance.Coordinates.ImgGtWailingFrame.H / 2;
\r
83 if (eInst != E楽器パート.DRUMS)
\r
96 public static int n演奏RGBボタンY座標(E楽器パート eInst)
\r
98 if (eInst == E楽器パート.DRUMS)
\r
100 throw new NotImplementedException();
\r
102 else if (eInst == E楽器パート.UNKNOWN)
\r
104 throw new ArgumentOutOfRangeException();
\r
108 int maxButtonH = Math.Max(CDTXMania.Instance.Coordinates.ImgGtButtonR.H, CDTXMania.Instance.Coordinates.ImgGtButtonG.H);
\r
109 maxButtonH = Math.Max(maxButtonH, CDTXMania.Instance.Coordinates.ImgGtButtonB.H);
\r
110 int ret = n判定ラインY座標(eInst, false, true);
\r
111 if (CDTXMania.Instance.ConfigIni.bReverse[eInst])
\r
113 ret += CDTXMania.Instance.Coordinates.ImgJudgeLine.H;
\r