2 using System.Collections.Generic;
\r
3 using System.Diagnostics;
\r
5 using System.Drawing;
\r
11 internal class CActConfigList : CActivity
\r
15 public bool bIsKeyAssignSelected // #24525 2011.3.15 yyagi
\r
19 Eメニュー種別 e = this.eメニュー種別;
\r
20 if ( e == Eメニュー種別.KeyAssignBass || e == Eメニュー種別.KeyAssignDrums ||
\r
21 e == Eメニュー種別.KeyAssignGuitar || e == Eメニュー種別.KeyAssignSystem )
\r
31 public bool b現在選択されている項目はReturnToMenuである
\r
35 CItemBase currentItem = this.list項目リスト[ this.n現在の選択項目 ];
\r
36 if ( currentItem == this.iSystemReturnToMenu || currentItem == this.iDrumsReturnToMenu ||
\r
37 currentItem == this.iGuitarReturnToMenu || currentItem == this.iBassReturnToMenu )
\r
47 public CItemBase ib現在の選択項目
\r
51 return this.list項目リスト[ this.n現在の選択項目 ];
\r
54 public int n現在の選択項目;
\r
58 #region [ t項目リストの設定・System() ]
\r
59 public void t項目リストの設定・System()
\r
61 this.tConfigIniへ記録する();
\r
62 this.list項目リスト.Clear();
\r
64 // #27029 2012.1.5 from: 説明文は最大9行→13行に変更。
\r
66 this.iSystemReturnToMenu = new CItemBase( "<< ReturnTo Menu", CItemBase.Eパネル種別.その他,
\r
68 "Return to left menu." );
\r
69 this.list項目リスト.Add( this.iSystemReturnToMenu );
\r
71 this.iCommonDark = new CItemList( "Dark", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eDark,
\r
72 "HALF: 背景、レーン、ゲージが表示\nされなくなります。\nFULL: さらに小節線、拍線、判定ラ\nイン、パッドも表示されなくなります。",
\r
73 "OFF: all display parts are shown.\nHALF: wallpaper, lanes and gauge are\n disappeared.\nFULL: additionaly to HALF, bar/beat\n lines, hit bar, pads are disappeared.",
\r
74 new string[] { "OFF", "HALF", "FULL" } );
\r
75 this.list項目リスト.Add( this.iCommonDark );
\r
77 this.iSystemRisky = new CItemInteger( "Risky", 0, 10, CDTXMania.ConfigIni.nRisky,
\r
78 "Riskyモードの設定:\n1以上の値にすると、その回数分の\nPoor/MissでFAILEDとなります。\n0にすると無効になり、\nDamageLevelに従ったゲージ増減と\nなります。\nStageFailedの設定と併用できます。",
\r
79 "Risky mode:\nSet over 1, in case you'd like to specify\n the number of Poor/Miss times to be\n FAILED.\nSet 0 to disable Risky mode." );
\r
80 this.list項目リスト.Add( this.iSystemRisky );
\r
82 int nDGmode = (CDTXMania.ConfigIni.bGuitar有効 ? 2 : 0) + (CDTXMania.ConfigIni.bDrums有効 ? 1 : 0) - 1;
\r
83 this.iSystemGRmode = new CItemList("Drums & GR", CItemBase.Eパネル種別.通常, nDGmode,
\r
84 "使用楽器の選択:\nDrOnly: ドラムのみ有効にします。\nGROnly: ギター/ベースのみの\n専用画面を用います。\nBoth: ドラムとギター/ベースの\n両方を有効にします。\n",
\r
85 "DrOnly: Only Drums is available.\nGROnly: Only Guitar/Bass are available.\n You can play them in GR screen.\nBoth: Both Drums and Guitar/Bass\n are available.",
\r
86 new string[] { "DrOnly", "GROnly", "Both" });
\r
87 this.list項目リスト.Add(this.iSystemGRmode);
\r
90 this.iCommonPlaySpeed = new CItemInteger("PlaySpeed", 5, 40, CDTXMania.ConfigIni.n演奏速度,
\r
91 "曲の演奏速度を、速くしたり遅くした\n" +
\r
93 "(※一部のサウンドカードでは正しく\n" +
\r
94 " 再生できない可能性があります。)\n" +
\r
96 "TimeStretchがONのときに、演奏\n" +
\r
97 "速度をx0.850以下にすると、チップの\n" +
\r
99 "It changes the song speed.\n" +
\r
100 "For example, you can play in half\n" +
\r
101 " speed by setting PlaySpeed = 0.500\n" +
\r
102 " for your practice.\n" +
\r
104 "Note: It also changes the songs' pitch.\n" +
\r
105 "In case TimeStretch=ON, some sound\n" +
\r
106 "lag occurs slower than x0.900.");
\r
107 this.list項目リスト.Add( this.iCommonPlaySpeed );
\r
109 this.iSystemTimeStretch = new CItemToggle( "TimeStretch", CDTXMania.ConfigIni.bTimeStretch,
\r
111 "ONにすると、演奏速度の変更を、\n" +
\r
115 "これをONにすると、サウンド処理に\n" +
\r
116 "より多くのCPU性能を使用します。\n" +
\r
117 "また、演奏速度をx0.850以下にすると、\n" +
\r
119 "How to change the playing speed:\n" +
\r
120 "Turn ON to use time stretch\n" +
\r
121 "to change the play speed." +
\r
123 "If you set TimeStretch=ON, it usese\n" +
\r
124 "more CPU power. And some sound\n" +
\r
125 "lag occurs slower than x0.900.");
\r
126 this.list項目リスト.Add( this.iSystemTimeStretch );
\r
129 this.iSystemFullscreen = new CItemToggle( "Fullscreen", CDTXMania.ConfigIni.b全画面モード,
\r
130 "画面モード設定:\nON で全画面モード、OFF でウィンド\nウモードになります。",
\r
131 "Fullscreen mode or window mode." );
\r
132 this.list項目リスト.Add( this.iSystemFullscreen );
\r
133 this.iSystemStageFailed = new CItemToggle( "StageFailed", CDTXMania.ConfigIni.bSTAGEFAILED有効,
\r
134 "STAGE FAILED 有効:\nON にすると、ゲージがなくなった時\nに STAGE FAILED となり演奏が中断\nされます。OFF の場合は、ゲージが\nなくなっても最後まで演奏できます。",
\r
135 "Turn OFF if you don't want to encount\n GAME OVER." );
\r
136 this.list項目リスト.Add( this.iSystemStageFailed );
\r
137 this.iSystemRandomFromSubBox = new CItemToggle( "RandSubBox", CDTXMania.ConfigIni.bランダムセレクトで子BOXを検索対象とする,
\r
138 "子BOXをRANDOMの対象とする:\nON にすると、RANDOM SELECT 時\nに子BOXも選択対象とします。",
\r
139 "Turn ON to use child BOX (subfolders)\n at RANDOM SELECT." );
\r
140 this.list項目リスト.Add( this.iSystemRandomFromSubBox );
\r
144 this.iSystemAdjustWaves = new CItemToggle( "AdjustWaves", CDTXMania.ConfigIni.bWave再生位置自動調整機能有効,
\r
145 "サウンド再生位置自動補正:\n" +
\r
146 "ハードウェアやOSに起因するサウン\n" +
\r
147 "ドのずれを強制的に補正します。\n" +
\r
148 "BGM のように再生時間の長い音声\n" +
\r
149 "データが使用されている曲で効果が\n" +
\r
152 "※ DirectSound使用時のみ有効です。",
\r
153 "Automatic wave playing position\n" +
\r
154 " adjustment feature. If you turn it ON,\n" +
\r
155 " it decrease the lag which comes from\n" +
\r
156 " the difference of hardware/OS.\n" +
\r
157 "Usually, you should turn it ON." +
\r
159 "Note: This setting is effetive\n" +
\r
160 " only when DirectSound is used.");
\r
161 this.list項目リスト.Add( this.iSystemAdjustWaves );
\r
162 this.iSystemVSyncWait = new CItemToggle( "VSyncWait", CDTXMania.ConfigIni.b垂直帰線待ちを行う,
\r
163 "垂直帰線同期:\n画面の描画をディスプレイの垂直帰\n線中に行なう場合には ON を指定し\nます。ON にすると、ガタつきのない\n滑らかな画面描画が実現されます。",
\r
164 "Turn ON to wait VSync (Vertical\n Synchronizing signal) at every\n drawings. (so FPS becomes 60)\nIf you have enough CPU/GPU power,\n the scroll would become smooth." );
\r
165 this.list項目リスト.Add( this.iSystemVSyncWait );
\r
166 this.iSystemAVI = new CItemToggle( "AVI", CDTXMania.ConfigIni.bAVI有効,
\r
167 "AVIの使用:\n動画(AVI)を再生可能にする場合に\nON にします。AVI の再生には、それ\nなりのマシンパワーが必要とされます。",
\r
168 "To use AVI playback or not." );
\r
169 this.list項目リスト.Add( this.iSystemAVI );
\r
170 this.iSystemBGA = new CItemToggle( "BGA", CDTXMania.ConfigIni.bBGA有効,
\r
171 "BGAの使用:\n画像(BGA)を表示可能にする場合に\nON にします。BGA の再生には、それ\nなりのマシンパワーが必要とされます。",
\r
172 "To draw BGA (back ground animations)\n or not." );
\r
173 this.list項目リスト.Add( this.iSystemBGA );
\r
174 this.iSystemPreviewSoundWait = new CItemInteger( "PreSoundWait", 0, 0x2710, CDTXMania.ConfigIni.n曲が選択されてからプレビュー音が鳴るまでのウェイトms,
\r
175 "プレビュー音演奏までの時間:\n曲にカーソルが合わされてからプレ\nビュー音が鳴り始めるまでの時間を\n指定します。\n0 ~ 10000 [ms] が指定可能です。",
\r
176 "Delay time(ms) to start playing preview\n sound in SELECT MUSIC screen.\nYou can specify from 0ms to 10000ms." );
\r
177 this.list項目リスト.Add( this.iSystemPreviewSoundWait );
\r
178 this.iSystemPreviewImageWait = new CItemInteger( "PreImageWait", 0, 0x2710, CDTXMania.ConfigIni.n曲が選択されてからプレビュー画像が表示開始されるまでのウェイトms,
\r
179 "プレビュー画像表示までの時間:\n曲にカーソルが合わされてからプレ\nビュー画像が表示されるまでの時間\nを指定します。\n0 ~ 10000 [ms] が指定可能です。",
\r
180 "Delay time(ms) to show preview image\n in SELECT MUSIC screen.\nYou can specify from 0ms to 10000ms." );
\r
181 this.list項目リスト.Add( this.iSystemPreviewImageWait );
\r
182 this.iSystemDebugInfo = new CItemToggle( "Debug Info", CDTXMania.ConfigIni.b演奏情報を表示する,
\r
183 "演奏情報の表示:\n演奏中、BGA領域の下部に演奏情報\n(FPS、BPM、演奏時間など)を表示し\nます。\nまた、小節線の横に小節番号が表示\nされるようになります。",
\r
184 "To show song informations on playing\n BGA area. (FPS, BPM, total time etc)\nYou can ON/OFF the indications\n by pushing [Del] while playing drums,\n guitar or bass." );
\r
185 this.list項目リスト.Add( this.iSystemDebugInfo );
\r
186 this.iSystemBGAlpha = new CItemInteger( "BG Alpha", 0, 0xff, CDTXMania.ConfigIni.n背景の透過度,
\r
187 "背景画像の半透明割合:\n背景画像をDTXManiaのフレーム画像\nと合成する際の、背景画像の透明度\nを指定します。\n0 が完全透明で、255 が完全不透明\nとなります。",
\r
188 "The degree for transparing playing\n screen and wallpaper.\n\n0=completely transparent,\n255=no transparency" );
\r
189 this.list項目リスト.Add( this.iSystemBGAlpha );
\r
190 this.iSystemBGMSound = new CItemToggle( "BGM Sound", CDTXMania.ConfigIni.bBGM音を発声する,
\r
191 "BGMの再生:\nこれをOFFにすると、BGM を再生しな\nくなります。",
\r
192 "Turn OFF if you don't want to play\n BGM." );
\r
193 this.list項目リスト.Add( this.iSystemBGMSound );
\r
194 this.iSystemAudienceSound = new CItemToggle( "Audience", CDTXMania.ConfigIni.b歓声を発声する,
\r
195 "歓声の再生:\nこれをOFFにすると、歓声を再生しな\nくなります。",
\r
196 "Turn ON if you want to be cheered\n at the end of fill-in zone or not." );
\r
197 this.list項目リスト.Add( this.iSystemAudienceSound );
\r
198 this.iSystemDamageLevel = new CItemList( "DamageLevel", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eダメージレベル,
\r
199 "ゲージ減少割合:\nMiss ヒット時のゲージの減少度合い\nを指定します。\nRiskyが1以上の場合は無効となります",
\r
200 "Damage level at missing (and\n recovering level) at playing.\nThis setting is ignored when Risky >= 1.",
\r
201 new string[] { "Small", "Normal", "Large" } );
\r
202 this.list項目リスト.Add( this.iSystemDamageLevel );
\r
203 this.iSystemSaveScore = new CItemToggle( "SaveScore", CDTXMania.ConfigIni.bScoreIniを出力する,
\r
204 "演奏記録の保存:\nON で演奏記録を ~.score.ini ファイ\nルに保存します。\n",
\r
205 "To save high-scores/skills, turn it ON.\nTurn OFF in case your song data are\n in read-only media (CD-ROM etc).\nNote that the score files also contain\n 'BGM Adjust' parameter. So if you\n want to keep adjusting parameter,\n you need to set SaveScore=ON." );
\r
206 this.list項目リスト.Add( this.iSystemSaveScore );
\r
209 this.iSystemChipVolume = new CItemInteger( "ChipVolume", 0, 100, CDTXMania.ConfigIni.n手動再生音量,
\r
210 "打音の音量:\n入力に反応して再生されるチップの音\n量を指定します。\n0 ~ 100 % の値が指定可能です。\n",
\r
211 "The volumes for chips you hit.\nYou can specify from 0 to 100%." );
\r
212 this.list項目リスト.Add( this.iSystemChipVolume );
\r
213 this.iSystemAutoChipVolume = new CItemInteger( "AutoVolume", 0, 100, CDTXMania.ConfigIni.n自動再生音量,
\r
214 "自動再生音の音量:\n自動的に再生されるチップの音量を指\n定します。\n0 ~ 100 % の値が指定可能です。\n",
\r
215 "The volumes for AUTO chips.\nYou can specify from 0 to 100%." );
\r
216 this.list項目リスト.Add( this.iSystemAutoChipVolume );
\r
217 this.iSystemStoicMode = new CItemToggle( "StoicMode", CDTXMania.ConfigIni.bストイックモード,
\r
218 "ストイック(禁欲)モード:\n以下をまとめて表示ON/OFFします。\n・プレビュー画像/動画\n・リザルト画像/動画\n・NowLoading画像\n・演奏画面の背景画像\n・BGA 画像 / AVI 動画\n・グラフ画像\n",
\r
219 "Turn ON to disable drawing\n * preview image / movie\n * result image / movie\n * nowloading image\n * wallpaper (in playing screen)\n * BGA / AVI (in playing screen)" );
\r
220 this.list項目リスト.Add( this.iSystemStoicMode );
\r
221 this.iSystemShowLag = new CItemList( "ShowLagTime", CItemBase.Eパネル種別.通常, CDTXMania.ConfigIni.nShowLagType,
\r
222 "ズレ時間表示:\nジャストタイミングからのズレ時間(ms)\nを表示します。\n OFF: ズレ時間を表示しません。\n ON: ズレ時間を表示します。\n GREAT-: PERFECT以外の時のみ\n表示します。",
\r
223 "About displaying the lag from\n the \"just timing\".\n OFF: Don't show it.\n ON: Show it.\n GREAT-: Show it except you've\n gotten PERFECT.",
\r
224 new string[] { "OFF", "ON", "GREAT-" } );
\r
225 this.list項目リスト.Add( this.iSystemShowLag );
\r
226 this.iSystemAutoResultCapture = new CItemToggle( "Autosaveresult", CDTXMania.ConfigIni.bIsAutoResultCapture,
\r
227 "リザルト画像自動保存機能:\nONにすると、ハイスコア/ハイスキル時に\n自動でリザルト画像を曲データと同じ\nフォルダに保存します。",
\r
228 "AutoSaveResult:\nTurn ON to save your result screen\n image automatically when you get\n hiscore/hiskill." );
\r
229 this.list項目リスト.Add( this.iSystemAutoResultCapture );
\r
232 this.iSystemBufferedInput = new CItemToggle( "BufferedInput", CDTXMania.ConfigIni.bバッファ入力を行う,
\r
233 "バッファ入力モード:\nON にすると、FPS を超える入力解像\n度を実現します。\nOFF にすると、入力解像度は FPS に\n等しくなります。",
\r
234 "To select joystick input method.\n\nON to use buffer input. No lost/lags.\nOFF to use realtime input. It may\n causes lost/lags for input.\n Moreover, input frequency is\n synchronized with FPS." );
\r
235 this.list項目リスト.Add( this.iSystemBufferedInput );
\r
236 this.iLogOutputLog = new CItemToggle( "TraceLog", CDTXMania.ConfigIni.bログ出力,
\r
237 "Traceログ出力:\nDTXManiaLog.txt にログを出力します。\n変更した場合は、DTXMania の再起動\n後に有効となります。",
\r
238 "Turn ON to put debug log to\n DTXManiaLog.txt\nTo take it effective, you need to\n re-open DTXMania." );
\r
239 this.list項目リスト.Add( this.iLogOutputLog );
\r
241 // #24820 2013.1.3 yyagi
\r
242 this.iSystemSoundType = new CItemList("SoundType", CItemList.Eパネル種別.通常, CDTXMania.ConfigIni.nSoundDeviceType,
\r
244 "WASAPI, ASIO, DSound(DirectSound)\n" +
\r
245 "の中からサウンド出力方式を選択\n" +
\r
247 "WASAPIはVista以降でのみ使用可能\n" +
\r
248 "です。ASIOは対応機器でのみ使用\n" +
\r
250 "WASAPIかASIOを指定することで、\n" +
\r
251 "遅延の少ない演奏を楽しむことが\n" +
\r
254 "※ 設定はCONFIGURATION画面の\n" +
\r
256 "Sound output type:\n" +
\r
257 "You can choose WASAPI, ASIO or\n" +
\r
258 "DShow(DirectShow).\n" +
\r
259 "WASAPI can use only after Vista.\n" +
\r
260 "ASIO can use on the\n" +
\r
261 "\"ASIO-supported\" sound device.\n" +
\r
262 "You should use WASAPI or ASIO\n" +
\r
263 "to decrease the sound lag.\n" +
\r
265 "Note: Exit CONFIGURATION to make\n" +
\r
266 " the setting take effect.",
\r
267 new string[] { "DSound", "ASIO", "WASAPI" });
\r
268 this.list項目リスト.Add(this.iSystemSoundType);
\r
270 // #24820 2013.1.15 yyagi
\r
271 //this.iSystemWASAPIBufferSizeMs = new CItemInteger( "WASAPIBufSize", 0, 99999, CDTXMania.ConfigIni.nWASAPIBufferSizeMs,
\r
272 // "WASAPI使用時のバッファサイズ:\n" +
\r
273 // "0~99999ms を指定可能です。\n" +
\r
274 // "0を指定すると、OSがバッファの\n" +
\r
275 // "サイズを自動設定します。\n" +
\r
276 // "値を小さくするほど発音ラグが\n" +
\r
277 // "減少しますが、音割れや異常動作を\n" +
\r
278 // "引き起こす場合があります。\n" +
\r
279 // "※ 設定はCONFIGURATION画面の\n" +
\r
280 // " 終了時に有効になります。",
\r
281 // "Sound buffer size for WASAPI:\n" +
\r
282 // "You can set from 0 to 99999ms.\n" +
\r
283 // "Set 0 to use a default sysytem\n" +
\r
284 // "buffer size.\n" +
\r
285 // "Smaller value makes smaller lag,\n" +
\r
286 // "but it may cause sound troubles.\n" +
\r
288 // "Note: Exit CONFIGURATION to make\n" +
\r
289 // " the setting take effect." );
\r
290 //this.list項目リスト.Add( this.iSystemWASAPIBufferSizeMs );
\r
292 // #24820 2013.1.17 yyagi
\r
293 string[] asiodevs = CEnumerateAllAsioDevices.GetAllASIODevices();
\r
294 this.iSystemASIODevice = new CItemList( "ASIO device", CItemList.Eパネル種別.通常, CDTXMania.ConfigIni.nASIODevice,
\r
296 "ASIO使用時のサウンドデバイスを\n" +
\r
299 "※ 設定はCONFIGURATION画面の\n" +
\r
301 "ASIO Sound Device:\n" +
\r
302 "Select the sound device to use\n" +
\r
303 "under ASIO mode.\n" +
\r
305 "Note: Exit CONFIGURATION to make\n" +
\r
306 " the setting take effect.",
\r
308 this.list項目リスト.Add( this.iSystemASIODevice );
\r
310 // #24820 2013.1.3 yyagi
\r
311 //this.iSystemASIOBufferSizeMs = new CItemInteger("ASIOBuffSize", 0, 99999, CDTXMania.ConfigIni.nASIOBufferSizeMs,
\r
312 // "ASIO使用時のバッファサイズ:\n" +
\r
313 // "0~99999ms を指定可能です。\n" +
\r
314 // "推奨値は0で、サウンドデバイスでの\n" +
\r
315 // "設定値をそのまま使用します。\n" +
\r
316 // "(サウンドデバイスのASIO設定は、\n" +
\r
317 // " ASIO capsなどで行います)\n" +
\r
318 // "値を小さくするほど発音ラグが\n" +
\r
319 // "減少しますが、音割れや異常動作を\n" +
\r
320 // "引き起こす場合があります。\n" +
\r
322 // "※ 設定はCONFIGURATION画面の\n" +
\r
323 // " 終了時に有効になります。",
\r
324 // "Sound buffer size for ASIO:\n" +
\r
325 // "You can set from 0 to 99999ms.\n" +
\r
326 // "You should set it to 0, to use\n" +
\r
327 // "a default value specified to\n" +
\r
328 // "the sound device.\n" +
\r
329 // "Smaller value makes smaller lag,\n" +
\r
330 // "but it may cause sound troubles.\n" +
\r
332 // "Note: Exit CONFIGURATION to make\n" +
\r
333 // " the setting take effect." );
\r
334 //this.list項目リスト.Add( this.iSystemASIOBufferSizeMs );
\r
336 this.iSystemSkinSubfolder = new CItemList( "Skin (General)", CItemBase.Eパネル種別.通常, nSkinIndex,
\r
339 //"CONFIGURATIONを抜けると、設定した\n" +
\r
344 this.list項目リスト.Add( this.iSystemSkinSubfolder );
\r
345 this.iSystemUseBoxDefSkin = new CItemToggle( "Skin (Box)", CDTXMania.ConfigIni.bUseBoxDefSkin,
\r
346 "Music boxスキンの利用:\n" +
\r
347 "特別なスキンが設定されたMusic box\n" +
\r
348 "に出入りしたときに、自動でスキンを\n" +
\r
349 "切り替えるかどうかを設定します。\n",
\r
351 //"(Music Boxスキンは、box.defファイル\n" +
\r
354 "Automatically change skin\n" +
\r
355 "specified in box.def file." );
\r
356 this.list項目リスト.Add( this.iSystemUseBoxDefSkin );
\r
359 this.iSystemGoToKeyAssign = new CItemBase( "System Keys", CItemBase.Eパネル種別.通常,
\r
360 "システムのキー入力に関する項目を設\n定します。",
\r
361 "Settings for the system key/pad inputs." );
\r
362 this.list項目リスト.Add( this.iSystemGoToKeyAssign );
\r
366 this.eメニュー種別 = Eメニュー種別.System;
\r
369 #region [ t項目リストの設定・Drums() ]
\r
370 public void t項目リストの設定・Drums()
\r
372 this.tConfigIniへ記録する();
\r
373 this.list項目リスト.Clear();
\r
375 // #27029 2012.1.5 from: 説明文は最大9行→13行に変更。
\r
377 this.iDrumsReturnToMenu = new CItemBase( "<< Return To Menu", CItemBase.Eパネル種別.その他,
\r
379 "Return to left menu." );
\r
380 this.list項目リスト.Add( this.iDrumsReturnToMenu );
\r
382 this.iDrumsAutoPlayAll = new CItemThreeState( "AutoPlay (All)", CItemThreeState.E状態.不定,
\r
383 "全パッドの自動演奏の ON/OFF を\n" +
\r
385 "You can change whether Auto or not\n" +
\r
386 " for all drums lanes at once." );
\r
387 this.list項目リスト.Add( this.iDrumsAutoPlayAll );
\r
389 this.iDrumsLeftCymbal = new CItemToggle( " LeftCymbal", CDTXMania.ConfigIni.bAutoPlay.LC,
\r
391 "To play LeftCymbal automatically." );
\r
392 this.list項目リスト.Add( this.iDrumsLeftCymbal );
\r
394 this.iDrumsHiHat = new CItemToggle( " HiHat", CDTXMania.ConfigIni.bAutoPlay.HH,
\r
395 "ハイハットを自動で演奏します。\n" +
\r
397 "To play HiHat automatically.\n" +
\r
398 "(It effects to both HH-close and\n HH-open)" );
\r
399 this.list項目リスト.Add( this.iDrumsHiHat );
\r
401 this.iDrumsSnare = new CItemToggle( " Snare", CDTXMania.ConfigIni.bAutoPlay.SD,
\r
403 "To play Snare automatically." );
\r
404 this.list項目リスト.Add( this.iDrumsSnare );
\r
406 this.iDrumsBass = new CItemToggle( " BassDrum", CDTXMania.ConfigIni.bAutoPlay.BD,
\r
408 "To play Bass Drum automatically." );
\r
409 this.list項目リスト.Add( this.iDrumsBass );
\r
411 this.iDrumsHighTom = new CItemToggle( " HighTom", CDTXMania.ConfigIni.bAutoPlay.HT,
\r
413 "To play High Tom automatically." );
\r
414 this.list項目リスト.Add( this.iDrumsHighTom );
\r
416 this.iDrumsLowTom = new CItemToggle( " LowTom", CDTXMania.ConfigIni.bAutoPlay.LT,
\r
418 "To play Low Tom automatically." );
\r
419 this.list項目リスト.Add( this.iDrumsLowTom );
\r
421 this.iDrumsFloorTom = new CItemToggle( " FloorTom", CDTXMania.ConfigIni.bAutoPlay.FT,
\r
423 "To play Floor Tom automatically." );
\r
424 this.list項目リスト.Add( this.iDrumsFloorTom );
\r
426 this.iDrumsCymbalRide = new CItemToggle( " Cym/Ride", CDTXMania.ConfigIni.bAutoPlay.CY,
\r
427 "右シンバルとライドシンバルを自動で\n" +
\r
429 "To play both right- and Ride-Cymbal\n" +
\r
430 " automatically." );
\r
431 this.list項目リスト.Add( this.iDrumsCymbalRide );
\r
433 this.iDrumsScrollSpeed = new CItemInteger( "ScrollSpeed", 0, 0x7cf, CDTXMania.ConfigIni.n譜面スクロール速度.Drums,
\r
434 "演奏時のドラム譜面のスクロールの\n" +
\r
436 "x0.5 ~ x1000.0 を指定可能です。",
\r
437 "To change the scroll speed for the\n" +
\r
439 "You can set it from x0.5 to x1000.0.\n" +
\r
440 "(ScrollSpeed=x0.5 means half speed)" );
\r
441 this.list項目リスト.Add( this.iDrumsScrollSpeed );
\r
443 this.iDrumsSudden = new CItemToggle( "Sudden", CDTXMania.ConfigIni.bSudden.Drums,
\r
444 "ドラムチップが譜面の下の方から表\n" +
\r
446 "Drums chips are disappered until they\n" +
\r
447 "come near the hit bar, and suddenly\n" +
\r
449 this.list項目リスト.Add( this.iDrumsSudden );
\r
451 this.iDrumsHidden = new CItemToggle( "Hidden", CDTXMania.ConfigIni.bHidden.Drums,
\r
452 "ドラムチップが譜面の下の方で表示\n" +
\r
454 "Drums chips are hidden by approaching\n" +
\r
455 "to the hit bar. " );
\r
456 this.list項目リスト.Add( this.iDrumsHidden );
\r
458 this.iCommonDark = new CItemList( "Dark", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eDark,
\r
459 "HALF: 背景、レーン、ゲージが表示\n" +
\r
461 "FULL: さらに小節線、拍線、判定ラ\n" +
\r
462 "イン、パッドも表示されなくなります。",
\r
463 "OFF: all display parts are shown.\n" +
\r
464 "HALF: wallpaper, lanes and gauge are\n" +
\r
465 " disappeared.\n" +
\r
466 "FULL: additionaly to HALF, bar/beat\n" +
\r
467 " lines, hit bar, pads are disappeared.",
\r
468 new string[] { "OFF", "HALF", "FULL" } );
\r
469 this.list項目リスト.Add( this.iCommonDark );
\r
472 this.iDrumsReverse = new CItemToggle( "Reverse", CDTXMania.ConfigIni.bReverse.Drums,
\r
473 "ドラムチップが譜面の下から上に流\n" +
\r
475 "The scroll way is reversed. Drums chips\n"
\r
476 + "flow from the bottom to the top." );
\r
477 this.list項目リスト.Add( this.iDrumsReverse );
\r
479 this.iSystemRisky = new CItemInteger( "Risky", 0, 10, CDTXMania.ConfigIni.nRisky,
\r
481 "1以上の値にすると、その回数分の\n" +
\r
482 "Poor/MissでFAILEDとなります。\n" +
\r
484 "DamageLevelに従ったゲージ増減と\n" +
\r
486 "StageFailedの設定と併用できます。",
\r
488 "Set over 1, in case you'd like to specify\n" +
\r
489 " the number of Poor/Miss times to be\n" +
\r
491 "Set 0 to disable Risky mode." );
\r
492 this.list項目リスト.Add( this.iSystemRisky );
\r
494 this.iDrumsTight = new CItemToggle( "Tight", CDTXMania.ConfigIni.bTight,
\r
495 "ドラムチップのないところでパッドを\n" +
\r
497 "It becomes MISS to hit pad without\n" +
\r
499 this.list項目リスト.Add( this.iDrumsTight );
\r
501 this.iDrumsComboPosition = new CItemList( "ComboPosition", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.ドラムコンボ文字の表示位置,
\r
502 "演奏時のドラムコンボ文字列の位置\n" +
\r
504 "The display position for Drums Combo.\n" +
\r
505 "Note that it doesn't take effect\n" +
\r
506 " at Autoplay ([Left] is forcely used).",
\r
507 new string[] { "Left", "Center", "Right", "OFF" } );
\r
508 this.list項目リスト.Add( this.iDrumsComboPosition );
\r
510 this.iDrumsPosition = new CItemList( "Position", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.判定文字表示位置.Drums,
\r
511 "ドラムの判定文字の表示位置を指定\n" +
\r
516 "The position to show judgement mark.\n" +
\r
517 "(Perfect, Great, ...)\n" +
\r
519 " P-A: on the lanes.\n" +
\r
520 " P-B: under the hit bar.\n" +
\r
521 " OFF: no judgement mark.",
\r
522 new string[] { "P-A", "P-B", "OFF" } );
\r
523 this.list項目リスト.Add( this.iDrumsPosition );
\r
526 this.iSystemHHGroup = new CItemList( "HH Group", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eHHGroup,
\r
527 "ハイハットレーン打ち分け設定:\n" +
\r
528 "左シンバル、ハイハットオープン、ハ\n" +
\r
529 "イハットクローズの打ち分け方法を指\n" +
\r
531 " HH-0 ... LC | HHC | HHO\n" +
\r
532 " HH-1 ... LC & ( HHC | HHO )\n" +
\r
533 " HH-2 ... LC | ( HHC & HHO )\n" +
\r
534 " HH-3 ... LC & HHC & HHO\n" +
\r
536 "※BD Group が BD-1 である場合、\n" +
\r
537 " この項目は変更できません。\n",
\r
538 "HH-0: LC|HC|HO; all are separated.\n" +
\r
539 "HH-1: LC&(HC|HO);\n" +
\r
540 " HC and HO are separted.\n" +
\r
541 " LC is grouped with HC and HHO.\n" +
\r
542 "HH-2: LC|(HC&HO);\n" +
\r
543 " LC and HHs are separated.\n" +
\r
544 " HC and HO are grouped.\n" +
\r
545 "HH-3: LC&HC&HO; all are grouped.\n" +
\r
547 "* This value cannot be changed while \n" +
\r
548 " BD Group is set as BD-1.",
\r
549 new string[] { "HH-0", "HH-1", "HH-2", "HH-3" } );
\r
550 this.list項目リスト.Add( this.iSystemHHGroup );
\r
552 this.iSystemFTGroup = new CItemList( "FT Group", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eFTGroup,
\r
554 "ロータムとフロアタムの打ち分け方法\n" +
\r
556 " FT-0 ... LT | FT\n" +
\r
557 " FT-1 ... LT & FT\n",
\r
559 " LT and FT are separated.\n" +
\r
561 " LT and FT are grouped.",
\r
562 new string[] { "FT-0", "FT-1" } );
\r
563 this.list項目リスト.Add( this.iSystemFTGroup );
\r
565 this.iSystemCYGroup = new CItemList( "CY Group", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eCYGroup,
\r
566 "シンバルレーン打ち分け設定:\n" +
\r
567 "右シンバルとライドシンバルの打ち分\n" +
\r
569 " CY-0 ... CY | RD\n" +
\r
570 " CY-1 ... CY & RD\n",
\r
572 " CY and RD are separated.\n" +
\r
574 " CY and RD are grouped.",
\r
575 new string[] { "CY-0", "CY-1" } );
\r
576 this.list項目リスト.Add( this.iSystemCYGroup );
\r
578 this.iSystemBDGroup = new CItemList( "BD Group", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eBDGroup, // #27029 2012.1.4 from
\r
580 "ハイハットペダルをバスとして利用する\n" +
\r
582 " BD-0 ... HP | BD\n" +
\r
583 " BD-1 ... FP & BD\n" +
\r
585 "注意:HitSound が OFF である場合は\n" +
\r
587 "また、BD-1 を選択している間はいくつ\n" +
\r
588 "かのオプションが変更できなくなります。",
\r
590 " HiHatPedal is HiHat.\n" +
\r
592 " HiHatPedal is Bass.\n" +
\r
594 "Warning: You should not use BD-1 with \n" +
\r
595 "HitSound OFF.\n" +
\r
596 "And you cannot change some options \n" +
\r
597 "while using BD-1.",
\r
598 new string[] { "BD-0", "BD-1" } );
\r
599 this.list項目リスト.Add( this.iSystemBDGroup );
\r
601 this.iSystemCymbalFree = new CItemToggle( "CymbalFree", CDTXMania.ConfigIni.bシンバルフリー,
\r
603 "左シンバル・右シンバルの区別をなく\n" +
\r
604 "します。ライドシンバルまで区別をな\n" +
\r
605 "くすか否かは、CYGroup に従います。\n",
\r
606 "Turn ON to group LC (left cymbal) and\n" +
\r
607 " CY (right cymbal).\n" +
\r
608 "Whether RD (ride cymbal) is also\n" +
\r
609 " grouped or not depends on the\n" +
\r
610 "'CY Group' setting." );
\r
611 this.list項目リスト.Add( this.iSystemCymbalFree );
\r
614 this.iSystemHitSoundPriorityHH = new CItemList( "HH Priority", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eHitSoundPriorityHH,
\r
616 "ハイハットレーン打ち分け有効時に、\n" +
\r
617 "チップの発声音をどのように決定する\n" +
\r
619 " C > P ... チップの音が優先\n" +
\r
620 " P > C ... 叩いたパッドの音が優先\n" +
\r
622 "※BD Group が BD-1 である場合、\n" +
\r
623 " この項目は変更できません。\n",
\r
624 "To specify playing sound in case you're\n" +
\r
625 " using HH-0,1 and 2.\n" +
\r
628 " Chip sound is prior to the pad sound.\n" +
\r
630 " Pad sound is prior to the chip sound.\n" +
\r
632 "* This value cannot be changed while \n" +
\r
633 " BD Group is set as BD-1.",
\r
634 new string[] { "C>P", "P>C" } );
\r
635 this.list項目リスト.Add( this.iSystemHitSoundPriorityHH );
\r
637 this.iSystemHitSoundPriorityFT = new CItemList( "FT Priority", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eHitSoundPriorityFT,
\r
639 "フロアタム打ち分け有効時に、チップ\n" +
\r
640 "の発声音をどのように決定するかを\n" +
\r
642 " C > P ... チップの音が優先\n" +
\r
643 " P > C ... 叩いたパッドの音が優先",
\r
644 "To specify playing sound in case you're\n" +
\r
648 " Chip sound is prior to the pad sound.\n" +
\r
650 " Pad sound is prior to the chip sound.",
\r
651 new string[] { "C>P", "P>C" } );
\r
652 this.list項目リスト.Add( this.iSystemHitSoundPriorityFT );
\r
654 this.iSystemHitSoundPriorityCY = new CItemList( "CY Priority", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eHitSoundPriorityCY,
\r
656 "シンバルレーン打ち分け有効時に、\n" +
\r
657 "チップの発声音をどのように決定する\n" +
\r
659 " C > P ... チップの音が優先\n" +
\r
660 " P > C ... 叩いたパッドの音が優先",
\r
661 "To specify playing sound in case you're\n" +
\r
665 " Chip sound is prior to the pad sound.\n" +
\r
667 " Pad sound is prior to the chip sound.",
\r
668 new string[] { "C>P", "P>C" } );
\r
669 this.list項目リスト.Add( this.iSystemHitSoundPriorityCY );
\r
671 this.iSystemFillIn = new CItemToggle( "FillIn", CDTXMania.ConfigIni.bフィルイン有効,
\r
672 "フィルインエフェクトの使用:\n" +
\r
673 "フィルイン区間の爆発パターンに特別\n" +
\r
674 "のエフェクトを使用します。\n" +
\r
675 "フィルインエフェクトの描画にはそれな\n" +
\r
676 "りのマシンパワーが必要とされます。",
\r
677 "To show bursting effects at the fill-in\n" +
\r
679 this.list項目リスト.Add( this.iSystemFillIn );
\r
683 this.iSystemHitSound = new CItemToggle( "HitSound", CDTXMania.ConfigIni.bドラム打音を発声する,
\r
685 "これをOFFにすると、パッドを叩いた\n" +
\r
686 "ときの音を再生しなくなります(ドラム\n" +
\r
688 "DTX の音色で演奏したい場合などに\n" +
\r
691 "注意:BD Group が BD-1 である場合\n" +
\r
693 "Turn OFF if you don't want to play\n" +
\r
694 " hitting chip sound.\n" +
\r
695 "It is useful to play with real/electric\n" +
\r
698 "Warning: You should not use BD Group \n" +
\r
699 "BD-1 with HitSound OFF.\n" );
\r
700 this.list項目リスト.Add( this.iSystemHitSound );
\r
702 this.iSystemSoundMonitorDrums = new CItemToggle( "DrumsMonitor", CDTXMania.ConfigIni.b演奏音を強調する.Drums,
\r
704 "ドラム音を他の音より大きめの音量で\n" +
\r
706 "ただし、オートプレイの場合は通常音\n" +
\r
708 "To enhance the drums chip sound\n" +
\r
709 "(except autoplay)." );
\r
710 this.list項目リスト.Add( this.iSystemSoundMonitorDrums );
\r
712 this.iSystemMinComboDrums = new CItemInteger( "D-MinCombo", 1, 0x1869f, CDTXMania.ConfigIni.n表示可能な最小コンボ数.Drums,
\r
713 "表示可能な最小コンボ数(ドラム):\n" +
\r
714 "画面に表示されるコンボの最小の数\n" +
\r
716 "1 ~ 99999 の値が指定可能です。",
\r
717 "Initial number to show the combo\n" +
\r
718 " for the drums.\n" +
\r
719 "You can specify from 1 to 99999." );
\r
720 this.list項目リスト.Add( this.iSystemMinComboDrums );
\r
723 // #23580 2011.1.3 yyagi
\r
724 this.iDrumsInputAdjustTimeMs = new CItemInteger( "InputAdjust", -99, 99, CDTXMania.ConfigIni.nInputAdjustTimeMs.Drums,
\r
725 "ドラムの入力タイミングの微調整を\n" +
\r
727 "-99 ~ 99ms まで指定可能です。\n" +
\r
728 "入力ラグを軽減するためには、負の\n" +
\r
730 "To adjust the drums input timing.\n" +
\r
731 "You can set from -99 to 99ms.\n" +
\r
732 "To decrease input lag, set minus value." );
\r
733 this.list項目リスト.Add( this.iDrumsInputAdjustTimeMs );
\r
735 // #24074 2011.01.23 add ikanick
\r
736 this.iDrumsGraph = new CItemToggle( "Graph", CDTXMania.ConfigIni.bGraph.Drums,
\r
737 "最高スキルと比較できるグラフを\n" +
\r
739 "オートプレイだと表示されません。",
\r
740 "To draw Graph \n" +
\r
742 this.list項目リスト.Add( this.iDrumsGraph );
\r
744 this.iDrumsGoToKeyAssign = new CItemBase( "Drums Keys", CItemBase.Eパネル種別.通常,
\r
745 "ドラムのキー入力に関する項目を設\n"+
\r
747 "Settings for the drums key/pad inputs." );
\r
748 this.list項目リスト.Add( this.iDrumsGoToKeyAssign );
\r
751 this.eメニュー種別 = Eメニュー種別.Drums;
\r
754 #region [ t項目リストの設定・Guitar() ]
\r
755 public void t項目リストの設定・Guitar()
\r
757 this.tConfigIniへ記録する();
\r
758 this.list項目リスト.Clear();
\r
760 // #27029 2012.1.5 from: 説明文は最大9行→13行に変更。
\r
762 this.iGuitarReturnToMenu = new CItemBase( "<< Return To Menu", CItemBase.Eパネル種別.その他,
\r
764 "Return to left menu." );
\r
765 this.list項目リスト.Add( this.iGuitarReturnToMenu );
\r
766 //this.iGuitarAutoPlay = new CItemToggle( "AutoPlay", CDTXMania.ConfigIni.bAutoPlay.Guitar,
\r
767 // "ギターパートを自動で演奏します。",
\r
768 // "To play the guitar part automatically." );
\r
769 //this.list項目リスト.Add( this.iGuitarAutoPlay );
\r
771 this.iGuitarAutoPlayAll = new CItemThreeState( "AutoPlay (All)", CItemThreeState.E状態.不定,
\r
772 "全ネック/ピックの自動演奏の ON/OFF を\n" +
\r
774 "You can change whether Auto or not\n" +
\r
775 " for all guitar neck/pick at once." );
\r
776 this.list項目リスト.Add( this.iGuitarAutoPlayAll );
\r
777 this.iGuitarR = new CItemToggle( " R", CDTXMania.ConfigIni.bAutoPlay.GtR,
\r
779 "To play R neck automatically." );
\r
780 this.list項目リスト.Add( this.iGuitarR );
\r
781 this.iGuitarG = new CItemToggle( " G", CDTXMania.ConfigIni.bAutoPlay.GtG,
\r
783 "To play G neck automatically." );
\r
784 this.list項目リスト.Add( this.iGuitarG );
\r
785 this.iGuitarB = new CItemToggle( " B", CDTXMania.ConfigIni.bAutoPlay.GtB,
\r
787 "To play B neck automatically." );
\r
788 this.list項目リスト.Add( this.iGuitarB );
\r
789 this.iGuitarPick = new CItemToggle( " Pick", CDTXMania.ConfigIni.bAutoPlay.GtPick,
\r
791 "To play Pick automatically." );
\r
792 this.list項目リスト.Add( this.iGuitarPick );
\r
793 this.iGuitarW = new CItemToggle( " Wailing", CDTXMania.ConfigIni.bAutoPlay.GtW,
\r
794 "ウェイリングを自動で演奏します。",
\r
795 "To play wailing automatically." );
\r
796 this.list項目リスト.Add( this.iGuitarW );
\r
798 this.iGuitarScrollSpeed = new CItemInteger( "ScrollSpeed", 0, 0x7cf, CDTXMania.ConfigIni.n譜面スクロール速度.Guitar,
\r
799 "演奏時のギター譜面のスクロールの\n速度を指定します。\nx0.5 ~ x1000.0 までを指定可能です。",
\r
800 "To change the scroll speed for the\nguitar lanes.\nYou can set it from x0.5 to x1000.0.\n(ScrollSpeed=x0.5 means half speed)" );
\r
801 this.list項目リスト.Add( this.iGuitarScrollSpeed );
\r
802 this.iGuitarSudden = new CItemToggle( "Sudden", CDTXMania.ConfigIni.bSudden.Guitar,
\r
803 "ギターチップがヒットバー付近にくる\nまで表示されなくなります。",
\r
804 "Guitar chips are disappered until they\ncome near the hit bar, and suddenly\nappears." );
\r
805 this.list項目リスト.Add( this.iGuitarSudden );
\r
806 this.iGuitarHidden = new CItemToggle( "Hidden", CDTXMania.ConfigIni.bHidden.Guitar,
\r
807 "ギターチップがヒットバー付近で表示\nされなくなります。",
\r
808 "Guitar chips are hidden by approaching\nto the hit bar. " );
\r
809 this.list項目リスト.Add( this.iGuitarHidden );
\r
810 this.iGuitarReverse = new CItemToggle( "Reverse", CDTXMania.ConfigIni.bReverse.Guitar,
\r
811 "ギターチップが譜面の上から下に流\nれるようになります。",
\r
812 "The scroll way is reversed. Guitar chips\nflow from the top to the bottom." );
\r
813 this.list項目リスト.Add( this.iGuitarReverse );
\r
814 this.iGuitarPosition = new CItemList( "Position", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.判定文字表示位置.Guitar,
\r
815 "ギターの判定文字の表示位置を指定\nします。\n P-A: レーン上\n P-B: COMBO の下\n OFF: 表示しない",
\r
816 "The position to show judgement mark.\n(Perfect, Great, ...)\n\n P-A: on the lanes.\n P-B: under the COMBO indication.\n OFF: no judgement mark.",
\r
817 new string[] { "P-A", "P-B", "OFF" } );
\r
818 this.list項目リスト.Add( this.iGuitarPosition );
\r
819 this.iGuitarRandom = new CItemList( "Random", CItemBase.Eパネル種別.通常, (int) CDTXMania.ConfigIni.eRandom.Guitar,
\r
820 "ギターのチップがランダムに降ってき\nます。\n Part: 小節・レーン単位で交換\n Super: チップ単位で交換\n Hyper: 全部完全に変更",
\r
821 "Guitar chips come randomly.\n\n Part: swapping lanes randomly for each\n measures.\n Super: swapping chip randomly\n Hyper: swapping randomly\n (number of lanes also changes)",
\r
822 new string[] { "OFF", "Part", "Super", "Hyper" } );
\r
823 this.list項目リスト.Add( this.iGuitarRandom );
\r
824 this.iGuitarLight = new CItemToggle( "Light", CDTXMania.ConfigIni.bLight.Guitar,
\r
825 "ギターチップのないところでピッキン\nグしても BAD になりません。",
\r
826 "Even if you pick without any chips,\nit doesn't become BAD." );
\r
827 this.list項目リスト.Add( this.iGuitarLight );
\r
828 this.iGuitarLeft = new CItemToggle( "Left", CDTXMania.ConfigIni.bLeft.Guitar,
\r
829 "ギターの RGB の並びが左右反転し\nます。(左利きモード)",
\r
830 "Lane order 'R-G-B' becomes 'B-G-R'\nfor lefty." );
\r
831 this.list項目リスト.Add( this.iGuitarLeft );
\r
833 this.iSystemSoundMonitorGuitar = new CItemToggle( "GuitarMonitor", CDTXMania.ConfigIni.b演奏音を強調する.Guitar,
\r
834 "ギター音モニタ:\nギター音を他の音より大きめの音量\nで発声します。\nただし、オートプレイの場合は通常音\n量で発声されます。",
\r
835 "To enhance the guitar chip sound\n(except autoplay)." );
\r
836 this.list項目リスト.Add( this.iSystemSoundMonitorGuitar );
\r
837 this.iSystemMinComboGuitar = new CItemInteger( "G-MinCombo", 1, 0x1869f, CDTXMania.ConfigIni.n表示可能な最小コンボ数.Guitar,
\r
838 "表示可能な最小コンボ数(ギター):\n画面に表示されるコンボの最小の数\nを指定します。\n1 ~ 99999 の値が指定可能です。",
\r
839 "Initial number to show the combo\n for the guitar.\nYou can specify from 1 to 99999." );
\r
840 this.list項目リスト.Add( this.iSystemMinComboGuitar );
\r
843 // #23580 2011.1.3 yyagi
\r
844 this.iGuitarInputAdjustTimeMs = new CItemInteger( "InputAdjust", -99, 99, CDTXMania.ConfigIni.nInputAdjustTimeMs.Guitar,
\r
845 "ギターの入力タイミングの微調整を\n" +
\r
847 "-99 ~ 99ms まで指定可能です。\n" +
\r
848 "入力ラグを軽減するためには、負の\n" +
\r
850 "To adjust the guitar input timing.\n" +
\r
851 "You can set from -99 to 99ms.\n" +
\r
852 "To decrease input lag, set minus value." );
\r
853 this.list項目リスト.Add( this.iGuitarInputAdjustTimeMs );
\r
855 this.iGuitarGoToKeyAssign = new CItemBase( "Guitar Keys", CItemBase.Eパネル種別.通常,
\r
856 "ギターのキー入力に関する項目を設\n定します。",
\r
857 "Settings for the guitar key/pad inputs." );
\r
858 this.list項目リスト.Add( this.iGuitarGoToKeyAssign );
\r
861 this.eメニュー種別 = Eメニュー種別.Guitar;
\r
864 #region [ t項目リストの設定・Bass() ]
\r
865 public void t項目リストの設定・Bass()
\r
867 this.tConfigIniへ記録する();
\r
868 this.list項目リスト.Clear();
\r
870 // #27029 2012.1.5 from: 説明文は最大9行→13行に変更。
\r
872 this.iBassReturnToMenu = new CItemBase( "<< Return To Menu", CItemBase.Eパネル種別.その他,
\r
874 "Return to left menu." );
\r
875 this.list項目リスト.Add( this.iBassReturnToMenu );
\r
876 //this.iBassAutoPlay = new CItemToggle( "AutoPlay", CDTXMania.ConfigIni.bAutoPlay.Bass,
\r
877 // "ベースパートを自動で演奏します。",
\r
878 // "To play the bass part automatically." );
\r
879 //this.list項目リスト.Add( this.iBassAutoPlay );
\r
881 this.iBassAutoPlayAll = new CItemThreeState( "AutoPlay (All)", CItemThreeState.E状態.不定,
\r
882 "全ネック/ピックの自動演奏の ON/OFF を\n" +
\r
884 "You can change whether Auto or not\n" +
\r
885 " for all bass neck/pick at once." );
\r
886 this.list項目リスト.Add( this.iBassAutoPlayAll );
\r
887 this.iBassR = new CItemToggle( " R", CDTXMania.ConfigIni.bAutoPlay.BsR,
\r
889 "To play R neck automatically." );
\r
890 this.list項目リスト.Add( this.iBassR );
\r
891 this.iBassG = new CItemToggle( " G", CDTXMania.ConfigIni.bAutoPlay.BsG,
\r
893 "To play G neck automatically." );
\r
894 this.list項目リスト.Add( this.iBassG );
\r
895 this.iBassB = new CItemToggle( " B", CDTXMania.ConfigIni.bAutoPlay.BsB,
\r
897 "To play B neck automatically." );
\r
898 this.list項目リスト.Add( this.iBassB );
\r
899 this.iBassPick = new CItemToggle( " Pick", CDTXMania.ConfigIni.bAutoPlay.BsPick,
\r
901 "To play Pick automatically." );
\r
902 this.list項目リスト.Add( this.iBassPick );
\r
903 this.iBassW = new CItemToggle( " Wailing", CDTXMania.ConfigIni.bAutoPlay.BsW,
\r
904 "ウェイリングを自動で演奏します。",
\r
905 "To play wailing automatically." );
\r
906 this.list項目リスト.Add( this.iBassW );
\r
908 this.iBassScrollSpeed = new CItemInteger( "ScrollSpeed", 0, 0x7cf, CDTXMania.ConfigIni.n譜面スクロール速度.Bass,
\r
909 "演奏時のベース譜面のスクロールの\n速度を指定します。\nx0.5 ~ x1000.0 までを指定可能です。",
\r
910 "To change the scroll speed for the\nbass lanes.\nYou can set it from x0.5 to x1000.0.\n(ScrollSpeed=x0.5 means half speed)" );
\r
911 this.list項目リスト.Add( this.iBassScrollSpeed );
\r
912 this.iBassSudden = new CItemToggle( "Sudden", CDTXMania.ConfigIni.bSudden.Bass,
\r
913 "ベースチップがヒットバー付近にくる\nまで表示されなくなります。",
\r
914 "Bass chips are disappered until they\ncome near the hit bar, and suddenly\nappears." );
\r
915 this.list項目リスト.Add( this.iBassSudden );
\r
916 this.iBassHidden = new CItemToggle( "Hidden", CDTXMania.ConfigIni.bHidden.Bass,
\r
917 "ベースチップがヒットバー付近で表示\nされなくなります。",
\r
918 "Bass chips are hidden by approaching\nto the hit bar." );
\r
919 this.list項目リスト.Add( this.iBassHidden );
\r
920 this.iBassReverse = new CItemToggle( "Reverse", CDTXMania.ConfigIni.bReverse.Bass,
\r
921 "ベースチップが譜面の上から下に流\nれるようになります。",
\r
922 "The scroll way is reversed. Bass chips\nflow from the top to the bottom." );
\r
923 this.list項目リスト.Add( this.iBassReverse );
\r
924 this.iBassPosition = new CItemList( "Position", CItemBase.Eパネル種別.通常,
\r
925 (int) CDTXMania.ConfigIni.判定文字表示位置.Bass,
\r
926 "ベースの判定文字の表示位置を指定\nします。\n P-A: レーン上\n P-B: COMBO の下\n OFF: 表示しない",
\r
927 "The position to show judgement mark.\n(Perfect, Great, ...)\n\n P-A: on the lanes.\n P-B: under the COMBO indication.\n OFF: no judgement mark.",
\r
928 new string[] { "P-A", "P-B", "OFF" } );
\r
929 this.list項目リスト.Add( this.iBassPosition );
\r
930 this.iBassRandom = new CItemList( "Random", CItemBase.Eパネル種別.通常,
\r
931 (int) CDTXMania.ConfigIni.eRandom.Bass,
\r
932 "ベースのチップがランダムに降ってき\nます。\n Part: 小節・レーン単位で交換\n Super: チップ単位で交換\n Hyper: 全部完全に変更",
\r
933 "Bass chips come randomly.\n\n Part: swapping lanes randomly for each\n measures.\n Super: swapping chip randomly\n Hyper: swapping randomly\n (number of lanes also changes)",
\r
934 new string[] { "OFF", "Part", "Super", "Hyper" } );
\r
935 this.list項目リスト.Add( this.iBassRandom );
\r
936 this.iBassLight = new CItemToggle( "Light", CDTXMania.ConfigIni.bLight.Bass,
\r
937 "ベースチップのないところでピッキン\nグしても BAD になりません。",
\r
938 "Even if you pick without any chips,\nit doesn't become BAD." );
\r
939 this.list項目リスト.Add( this.iBassLight );
\r
940 this.iBassLeft = new CItemToggle( "Left", CDTXMania.ConfigIni.bLeft.Bass,
\r
941 "ベースの RGB の並びが左右反転し\nます。(左利きモード)",
\r
942 "Lane order 'R-G-B' becomes 'B-G-R'\nfor lefty." );
\r
943 this.list項目リスト.Add( this.iBassLeft );
\r
945 this.iSystemSoundMonitorBass = new CItemToggle( "BassMonitor", CDTXMania.ConfigIni.b演奏音を強調する.Bass,
\r
946 "ベース音モニタ:\nベース音を他の音より大きめの音量\nで発声します。\nただし、オートプレイの場合は通常音\n量で発声されます。",
\r
947 "To enhance the bass chip sound\n(except autoplay)." );
\r
948 this.list項目リスト.Add( this.iSystemSoundMonitorBass );
\r
950 this.iSystemMinComboBass = new CItemInteger( "B-MinCombo", 1, 0x1869f, CDTXMania.ConfigIni.n表示可能な最小コンボ数.Bass,
\r
951 "表示可能な最小コンボ数(ベース):\n画面に表示されるコンボの最小の数\nを指定します。\n1 ~ 99999 の値が指定可能です。",
\r
952 "Initial number to show the combo\n for the bass.\nYou can specify from 1 to 99999." );
\r
953 this.list項目リスト.Add( this.iSystemMinComboBass );
\r
956 // #23580 2011.1.3 yyagi
\r
957 this.iBassInputAdjustTimeMs = new CItemInteger( "InputAdjust", -99, 99, CDTXMania.ConfigIni.nInputAdjustTimeMs.Bass,
\r
958 "ベースの入力タイミングの微調整を\n" +
\r
960 "-99 ~ 99ms まで指定可能です。\n" +
\r
961 "入力ラグを軽減するためには、負の\n" +
\r
963 "To adjust the bass input timing.\n" +
\r
964 "You can set from -99 to 99ms.\n" +
\r
965 "To decrease input lag, set minus value." );
\r
966 this.list項目リスト.Add( this.iBassInputAdjustTimeMs );
\r
968 this.iBassGoToKeyAssign = new CItemBase( "Bass Keys", CItemBase.Eパネル種別.通常,
\r
969 "ベースのキー入力に関する項目を設\n定します。",
\r
970 "Settings for the bass key/pad inputs.");
\r
971 this.list項目リスト.Add( this.iBassGoToKeyAssign );
\r
974 this.eメニュー種別 = Eメニュー種別.Bass;
\r
981 public void tEsc押下()
\r
983 if ( this.eメニュー種別 == Eメニュー種別.KeyAssignSystem )
\r
985 t項目リストの設定・System();
\r
987 else if ( this.eメニュー種別 == Eメニュー種別.KeyAssignDrums )
\r
991 else if ( this.eメニュー種別 == Eメニュー種別.KeyAssignGuitar )
\r
993 t項目リストの設定・Guitar();
\r
995 else if ( this.eメニュー種別 == Eメニュー種別.KeyAssignBass )
\r
1001 public void tEnter押下()
\r
1003 CDTXMania.Skin.sound決定音.t再生する();
\r
1004 if( this.b要素値にフォーカス中 )
\r
1006 this.b要素値にフォーカス中 = false;
\r
1008 else if( this.list項目リスト[ this.n現在の選択項目 ].e種別 == CItemBase.E種別.整数 )
\r
1010 this.b要素値にフォーカス中 = true;
\r
1012 else if( this.b現在選択されている項目はReturnToMenuである )
\r
1014 //this.tConfigIniへ記録する();
\r
1015 //CONFIG中にスキン変化が発生すると面倒なので、一旦マスクした。
\r
1017 #region [ 個々のキーアサイン ]
\r
1018 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsLC )
\r
1020 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.LC );
\r
1022 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsHHC )
\r
1024 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.HH );
\r
1026 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsHHO )
\r
1028 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.HHO );
\r
1030 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsSD )
\r
1032 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.SD );
\r
1034 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsBD )
\r
1036 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.BD );
\r
1038 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsHT )
\r
1040 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.HT );
\r
1042 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsLT )
\r
1044 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.LT );
\r
1046 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsFT )
\r
1048 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.FT );
\r
1050 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsCY )
\r
1052 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.CY );
\r
1054 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsRD )
\r
1056 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.RD );
\r
1058 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsHP ) // #27029 2012.1.4 from
\r
1060 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.DRUMS, EKeyConfigPad.HP ); //
\r
1062 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignGuitarR )
\r
1064 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.GUITAR, EKeyConfigPad.R );
\r
1066 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignGuitarG )
\r
1068 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.GUITAR, EKeyConfigPad.G );
\r
1070 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignGuitarB )
\r
1072 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.GUITAR, EKeyConfigPad.B );
\r
1074 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignGuitarPick )
\r
1076 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.GUITAR, EKeyConfigPad.Pick );
\r
1078 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignGuitarWail )
\r
1080 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.GUITAR, EKeyConfigPad.Wail );
\r
1082 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignGuitarDecide )
\r
1084 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.GUITAR, EKeyConfigPad.Decide );
\r
1086 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignGuitarCancel )
\r
1088 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.GUITAR, EKeyConfigPad.Cancel );
\r
1090 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignBassR )
\r
1092 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.BASS, EKeyConfigPad.R );
\r
1094 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignBassG )
\r
1096 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.BASS, EKeyConfigPad.G );
\r
1098 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignBassB )
\r
1100 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.BASS, EKeyConfigPad.B );
\r
1102 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignBassPick )
\r
1104 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.BASS, EKeyConfigPad.Pick );
\r
1106 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignBassWail )
\r
1108 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.BASS, EKeyConfigPad.Wail );
\r
1110 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignBassDecide )
\r
1112 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.BASS, EKeyConfigPad.Decide );
\r
1114 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignBassCancel )
\r
1116 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.BASS, EKeyConfigPad.Cancel );
\r
1118 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignSystemCapture )
\r
1120 CDTXMania.stageコンフィグ.tパッド選択通知( EKeyConfigPart.SYSTEM, EKeyConfigPad.Capture);
\r
1125 // #27029 2012.1.5 from
\r
1126 if( ( this.iSystemBDGroup.n現在選択されている項目番号 == (int) EBDGroup.どっちもBD ) &&
\r
1127 ( ( this.list項目リスト[ this.n現在の選択項目 ] == this.iSystemHHGroup ) || ( this.list項目リスト[ this.n現在の選択項目 ] == this.iSystemHitSoundPriorityHH ) ) )
\r
1134 this.list項目リスト[ this.n現在の選択項目 ].tEnter押下();
\r
1140 if( this.list項目リスト[ this.n現在の選択項目 ] == this.iSystemFullscreen )
\r
1142 CDTXMania.app.b次のタイミングで全画面・ウィンドウ切り替えを行う = true;
\r
1144 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iSystemVSyncWait )
\r
1146 CDTXMania.ConfigIni.b垂直帰線待ちを行う = this.iSystemVSyncWait.bON;
\r
1147 CDTXMania.app.b次のタイミングで垂直帰線同期切り替えを行う = true;
\r
1149 #region [ AutoPlay #23886 2012.5.8 yyagi ]
\r
1150 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iDrumsAutoPlayAll )
\r
1152 this.t全部のドラムパッドのAutoを切り替える( this.iDrumsAutoPlayAll.e現在の状態 == CItemThreeState.E状態.ON );
\r
1154 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iGuitarAutoPlayAll )
\r
1156 this.t全部のギターパッドのAutoを切り替える( this.iGuitarAutoPlayAll.e現在の状態 == CItemThreeState.E状態.ON );
\r
1158 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iBassAutoPlayAll )
\r
1160 this.t全部のベースパッドのAutoを切り替える( this.iBassAutoPlayAll.e現在の状態 == CItemThreeState.E状態.ON );
\r
1163 #region [ キーアサインへの遷移と脱出 ]
\r
1164 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iSystemGoToKeyAssign ) // #24609 2011.4.12 yyagi
\r
1166 t項目リストの設定・KeyAssignSystem();
\r
1168 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignSystemReturnToMenu ) // #24609 2011.4.12 yyagi
\r
1170 t項目リストの設定・System();
\r
1172 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iDrumsGoToKeyAssign ) // #24525 2011.3.15 yyagi
\r
1174 t項目リストの設定・KeyAssignDrums();
\r
1176 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignDrumsReturnToMenu ) // #24525 2011.3.15 yyagi
\r
1178 t項目リストの設定・Drums();
\r
1180 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iGuitarGoToKeyAssign ) // #24525 2011.3.15 yyagi
\r
1182 t項目リストの設定・KeyAssignGuitar();
\r
1184 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignGuitarReturnToMenu ) // #24525 2011.3.15 yyagi
\r
1186 t項目リストの設定・Guitar();
\r
1188 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iBassGoToKeyAssign ) // #24525 2011.3.15 yyagi
\r
1190 t項目リストの設定・KeyAssignBass();
\r
1192 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iKeyAssignBassReturnToMenu ) // #24525 2011.3.15 yyagi
\r
1197 #region [ BDGroup #27029 2012.1.4 from ]
\r
1198 else if( this.list項目リスト[ this.n現在の選択項目 ] == this.iSystemBDGroup ) // #27029 2012.1.4 from
\r
1200 if( this.iSystemBDGroup.n現在選択されている項目番号 == (int) EBDGroup.どっちもBD )
\r
1202 // #27029 2012.1.5 from: 変更前の状態をバックアップする。
\r
1203 CDTXMania.ConfigIni.BackupOf1BD = new CConfigIni.CBackupOf1BD() {
\r
1204 eHHGroup = (EHHGroup) this.iSystemHHGroup.n現在選択されている項目番号,
\r
1205 eHitSoundPriorityHH = (E打ち分け時の再生の優先順位) this.iSystemHitSoundPriorityHH.n現在選択されている項目番号,
\r
1208 // HH Group ... HH-0 → HH-2 / HH-1 → HH-3 / HH-2 → 変更なし / HH-3 → 変更なし
\r
1209 if( this.iSystemHHGroup.n現在選択されている項目番号 == (int) EHHGroup.全部打ち分ける )
\r
1210 this.iSystemHHGroup.n現在選択されている項目番号 = (int) EHHGroup.左シンバルのみ打ち分ける;
\r
1211 if( this.iSystemHHGroup.n現在選択されている項目番号 == (int) EHHGroup.ハイハットのみ打ち分ける )
\r
1212 this.iSystemHHGroup.n現在選択されている項目番号 = (int) EHHGroup.全部共通;
\r
1214 // HH Priority ... C>P → 変更なし / P>C → C>P
\r
1215 if( this.iSystemHitSoundPriorityHH.n現在選択されている項目番号 == (int) E打ち分け時の再生の優先順位.PadがChipより優先 )
\r
1216 this.iSystemHitSoundPriorityHH.n現在選択されている項目番号 = (int) E打ち分け時の再生の優先順位.ChipがPadより優先;
\r
1220 // #27029 2012.1.5 from: 変更前の状態に戻す。
\r
1221 this.iSystemHHGroup.n現在選択されている項目番号 = (int) CDTXMania.ConfigIni.BackupOf1BD.eHHGroup;
\r
1222 this.iSystemHitSoundPriorityHH.n現在選択されている項目番号 = (int) CDTXMania.ConfigIni.BackupOf1BD.eHitSoundPriorityHH;
\r
1224 CDTXMania.ConfigIni.BackupOf1BD = null;
\r
1228 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iSystemUseBoxDefSkin ) // #28195 2012.5.6 yyagi
\r
1230 CSkin.bUseBoxDefSkin = this.iSystemUseBoxDefSkin.bON;
\r
1232 #region [ スキン項目でEnterを押下した場合に限り、スキンの縮小サンプルを生成する。]
\r
1233 else if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iSystemSkinSubfolder ) // #28195 2012.5.2 yyagi
\r
1235 tGenerateSkinSample();
\r
1241 private void tGenerateSkinSample()
\r
1243 nSkinIndex = ( ( CItemList ) this.list項目リスト[ this.n現在の選択項目 ] ).n現在選択されている項目番号;
\r
1244 if ( nSkinSampleIndex != nSkinIndex )
\r
1246 string path = skinSubFolders[ nSkinIndex ];
\r
1247 path = System.IO.Path.Combine( path, @"Graphics\ScreenTitle background.jpg" );
\r
1248 Bitmap bmSrc = new Bitmap( path );
\r
1249 Bitmap bmDest = new Bitmap( bmSrc.Width / 4, bmSrc.Height / 4 );
\r
1250 Graphics g = Graphics.FromImage( bmDest );
\r
1251 g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
\r
1252 g.DrawImage( bmSrc, new Rectangle( 0, 0, bmSrc.Width / 4, bmSrc.Height / 4 ),
\r
1253 0, 0, bmSrc.Width, bmSrc.Height, GraphicsUnit.Pixel );
\r
1254 if ( txSkinSample1 != null )
\r
1256 CDTXMania.t安全にDisposeする( ref txSkinSample1 );
\r
1258 txSkinSample1 = CDTXMania.tテクスチャの生成( bmDest, false );
\r
1262 nSkinSampleIndex = nSkinIndex;
\r
1266 #region [ 項目リストの設定 ( Exit, KeyAssignSystem/Drums/Guitar/Bass) ]
\r
1267 public void t項目リストの設定・Exit()
\r
1269 this.tConfigIniへ記録する();
\r
1270 this.eメニュー種別 = Eメニュー種別.Unknown;
\r
1272 public void t項目リストの設定・KeyAssignSystem()
\r
1274 //this.tConfigIniへ記録する();
\r
1275 this.list項目リスト.Clear();
\r
1277 // #27029 2012.1.5 from: 説明文は最大9行→13行に変更。
\r
1279 this.iKeyAssignSystemReturnToMenu = new CItemBase( "<< ReturnTo Menu", CItemBase.Eパネル種別.その他,
\r
1281 "Return to left menu." );
\r
1282 this.list項目リスト.Add( this.iKeyAssignSystemReturnToMenu );
\r
1283 this.iKeyAssignSystemCapture = new CItemBase( "Capture",
\r
1284 "キャプチャキー設定:\n画面キャプチャのキーの割り当てを設\n定します。",
\r
1285 "Capture key assign:\nTo assign key for screen capture.\n (You can use keyboard only. You can't\nuse pads to capture screenshot." );
\r
1286 this.list項目リスト.Add( this.iKeyAssignSystemCapture );
\r
1288 this.n現在の選択項目 = 0;
\r
1289 this.eメニュー種別 = Eメニュー種別.KeyAssignSystem;
\r
1291 public void t項目リストの設定・KeyAssignDrums()
\r
1293 // this.tConfigIniへ記録する();
\r
1294 this.list項目リスト.Clear();
\r
1296 // #27029 2012.1.5 from: 説明文は最大9行→13行に変更。
\r
1298 this.iKeyAssignDrumsReturnToMenu = new CItemBase( "<< ReturnTo Menu", CItemBase.Eパネル種別.その他,
\r
1300 "Return to left menu.");
\r
1301 this.list項目リスト.Add(this.iKeyAssignDrumsReturnToMenu);
\r
1302 this.iKeyAssignDrumsLC = new CItemBase( "LeftCymbal",
\r
1303 "ドラムのキー設定:\n左シンバルへのキーの割り当てを設\n定します。",
\r
1304 "Drums key assign:\nTo assign key/pads for LeftCymbal\n button.");
\r
1305 this.list項目リスト.Add(this.iKeyAssignDrumsLC);
\r
1306 this.iKeyAssignDrumsHHC = new CItemBase( "HiHat(Close)",
\r
1307 "ドラムのキー設定:\nハイハット(クローズ)へのキーの割り\n当てを設定します。",
\r
1308 "Drums key assign:\nTo assign key/pads for HiHat(Close)\n button.");
\r
1309 this.list項目リスト.Add( this.iKeyAssignDrumsHHC );
\r
1310 this.iKeyAssignDrumsHHO = new CItemBase( "HiHat(Open)",
\r
1311 "ドラムのキー設定:\nハイハット(オープン)へのキーの割り\n当てを設定します。",
\r
1312 "Drums key assign:\nTo assign key/pads for HiHat(Open)\n button.");
\r
1313 this.list項目リスト.Add(this.iKeyAssignDrumsHHO);
\r
1314 this.iKeyAssignDrumsSD = new CItemBase( "Snare",
\r
1315 "ドラムのキー設定:\nスネアへのキーの割り当てを設定し\nます。",
\r
1316 "Drums key assign:\nTo assign key/pads for Snare button.");
\r
1317 this.list項目リスト.Add(this.iKeyAssignDrumsSD);
\r
1318 this.iKeyAssignDrumsBD = new CItemBase( "Bass",
\r
1319 "ドラムのキー設定:\nバスドラムへのキーの割り当てを設定\nします。",
\r
1320 "Drums key assign:\nTo assign key/pads for Bass button.");
\r
1321 this.list項目リスト.Add(this.iKeyAssignDrumsBD);
\r
1322 this.iKeyAssignDrumsHT = new CItemBase( "HighTom",
\r
1323 "ドラムのキー設定:\nハイタムへのキーの割り当てを設定\nします。",
\r
1324 "Drums key assign:\nTo assign key/pads for HighTom\n button.");
\r
1325 this.list項目リスト.Add(this.iKeyAssignDrumsHT);
\r
1326 this.iKeyAssignDrumsLT = new CItemBase( "LowTom",
\r
1327 "ドラムのキー設定:\nロータムへのキーの割り当てを設定\nします。",
\r
1328 "Drums key assign:\nTo assign key/pads for LowTom button.");
\r
1329 this.list項目リスト.Add(this.iKeyAssignDrumsLT);
\r
1330 this.iKeyAssignDrumsFT = new CItemBase( "FloorTom",
\r
1331 "ドラムのキー設定:\nフロアタムへのキーの割り当てを設\n定します。",
\r
1332 "Drums key assign:\nTo assign key/pads for FloorTom\n button.");
\r
1333 this.list項目リスト.Add(this.iKeyAssignDrumsFT);
\r
1334 this.iKeyAssignDrumsCY = new CItemBase( "RightCymbal",
\r
1335 "ドラムのキー設定:\n右シンバルへのキーの割り当てを設\n定します。",
\r
1336 "Drums key assign:\nTo assign key/pads for RightCymbal\n button.");
\r
1337 this.list項目リスト.Add(this.iKeyAssignDrumsCY);
\r
1338 this.iKeyAssignDrumsRD = new CItemBase( "RideCymbal",
\r
1339 "ドラムのキー設定:\nライドシンバルへのキーの割り当て\nを設定します。",
\r
1340 "Drums key assign:\nTo assign key/pads for RideCymbal\n button.");
\r
1341 this.list項目リスト.Add(this.iKeyAssignDrumsRD);
\r
1342 this.iKeyAssignDrumsHP = new CItemBase( "HiHatPedal", // #27029 2012.1.4 from
\r
1343 "ドラムのキー設定:\nハイハットのフットペダルへのキーの\n割り当てを設定します。", //
\r
1344 "Drums key assign:\nTo assign key/pads for HiHatPedal\n button." ); //
\r
1345 this.list項目リスト.Add( this.iKeyAssignDrumsHP ); //
\r
1346 this.n現在の選択項目 = 0;
\r
1347 this.eメニュー種別 = Eメニュー種別.KeyAssignDrums;
\r
1349 public void t項目リストの設定・KeyAssignGuitar()
\r
1351 // this.tConfigIniへ記録する();
\r
1352 this.list項目リスト.Clear();
\r
1354 // #27029 2012.1.5 from: 説明文は最大9行→13行に変更。
\r
1356 this.iKeyAssignGuitarReturnToMenu = new CItemBase( "<< ReturnTo Menu", CItemBase.Eパネル種別.その他,
\r
1358 "Return to left menu.");
\r
1359 this.list項目リスト.Add(this.iKeyAssignGuitarReturnToMenu);
\r
1360 this.iKeyAssignGuitarR = new CItemBase( "R",
\r
1361 "ギターのキー設定:\nRボタンへのキーの割り当てを設定し\nます。",
\r
1362 "Guitar key assign:\nTo assign key/pads for R button.");
\r
1363 this.list項目リスト.Add(this.iKeyAssignGuitarR);
\r
1364 this.iKeyAssignGuitarG = new CItemBase( "G",
\r
1365 "ギターのキー設定:\nGボタンへのキーの割り当てを設定し\nます。",
\r
1366 "Guitar key assign:\nTo assign key/pads for G button.");
\r
1367 this.list項目リスト.Add(this.iKeyAssignGuitarG);
\r
1368 this.iKeyAssignGuitarB = new CItemBase( "B",
\r
1369 "ギターのキー設定:\nBボタンへのキーの割り当てを設定し\nます。",
\r
1370 "Guitar key assign:\nTo assign key/pads for B button.");
\r
1371 this.list項目リスト.Add(this.iKeyAssignGuitarB);
\r
1372 this.iKeyAssignGuitarPick = new CItemBase( "Pick",
\r
1373 "ギターのキー設定:\nピックボタンへのキーの割り当てを設\n定します。",
\r
1374 "Guitar key assign:\nTo assign key/pads for Pick button.");
\r
1375 this.list項目リスト.Add(this.iKeyAssignGuitarPick);
\r
1376 this.iKeyAssignGuitarWail = new CItemBase( "Wailing",
\r
1377 "ギターのキー設定:\nWailingボタンへのキーの割り当てを\n設定します。",
\r
1378 "Guitar key assign:\nTo assign key/pads for Wailing button.");
\r
1379 this.list項目リスト.Add(this.iKeyAssignGuitarWail);
\r
1380 this.iKeyAssignGuitarDecide = new CItemBase( "Decide",
\r
1381 "ギターのキー設定:\n決定ボタンへのキーの割り当てを設\n定します。",
\r
1382 "Guitar key assign:\nTo assign key/pads for Decide button.");
\r
1383 this.list項目リスト.Add(this.iKeyAssignGuitarDecide);
\r
1384 this.iKeyAssignGuitarCancel = new CItemBase( "Cancel",
\r
1385 "ギターのキー設定:\nキャンセルボタンへのキーの割り当\nてを設定します。",
\r
1386 "Guitar key assign:\nTo assign key/pads for Cancel button.");
\r
1387 this.list項目リスト.Add(this.iKeyAssignGuitarCancel);
\r
1388 this.n現在の選択項目 = 0;
\r
1389 this.eメニュー種別 = Eメニュー種別.KeyAssignGuitar;
\r
1391 public void t項目リストの設定・KeyAssignBass()
\r
1393 // this.tConfigIniへ記録する();
\r
1394 this.list項目リスト.Clear();
\r
1396 // #27029 2012.1.5 from: 説明文は最大9行→13行に変更。
\r
1398 this.iKeyAssignBassReturnToMenu = new CItemBase( "<< ReturnTo Menu", CItemBase.Eパネル種別.その他,
\r
1400 "Return to left menu." );
\r
1401 this.list項目リスト.Add( this.iKeyAssignBassReturnToMenu );
\r
1402 this.iKeyAssignBassR = new CItemBase( "R",
\r
1403 "ベースのキー設定:\nRボタンへのキーの割り当てを設定し\nます。",
\r
1404 "Bass key assign:\nTo assign key/pads for R button." );
\r
1405 this.list項目リスト.Add( this.iKeyAssignBassR );
\r
1406 this.iKeyAssignBassG = new CItemBase( "G",
\r
1407 "ベースのキー設定:\nGボタンへのキーの割り当てを設定し\nます。",
\r
1408 "Bass key assign:\nTo assign key/pads for G button." );
\r
1409 this.list項目リスト.Add( this.iKeyAssignBassG );
\r
1410 this.iKeyAssignBassB = new CItemBase( "B",
\r
1411 "ベースのキー設定:\nBボタンへのキーの割り当てを設定し\nます。",
\r
1412 "Bass key assign:\nTo assign key/pads for B button." );
\r
1413 this.list項目リスト.Add( this.iKeyAssignBassB );
\r
1414 this.iKeyAssignBassPick = new CItemBase( "Pick",
\r
1415 "ベースのキー設定:\nピックボタンへのキーの割り当てを設\n定します。",
\r
1416 "Bass key assign:\nTo assign key/pads for Pick button." );
\r
1417 this.list項目リスト.Add( this.iKeyAssignBassPick );
\r
1418 this.iKeyAssignBassWail = new CItemBase( "Wailing",
\r
1419 "ベースのキー設定:\nWailingボタンへのキーの割り当てを設\n定します。",
\r
1420 "Bass key assign:\nTo assign key/pads for Wailing button." );
\r
1421 this.list項目リスト.Add( this.iKeyAssignBassWail );
\r
1422 this.iKeyAssignBassDecide = new CItemBase( "Decide",
\r
1423 "ベースのキー設定:\n決定ボタンへのキーの割り当てを設\n定します。",
\r
1424 "Bass key assign:\nTo assign key/pads for Decide button." );
\r
1425 this.list項目リスト.Add( this.iKeyAssignBassDecide );
\r
1426 this.iKeyAssignBassCancel = new CItemBase( "Cancel",
\r
1427 "ベースのキー設定:\nキャンセルボタンへのキーの割り当\nてを設定します。",
\r
1428 "Bass key assign:\nTo assign key/pads for Cancel button." );
\r
1429 this.list項目リスト.Add( this.iKeyAssignBassCancel );
\r
1430 this.n現在の選択項目 = 0;
\r
1431 this.eメニュー種別 = Eメニュー種別.KeyAssignBass;
\r
1434 public void t次に移動()
\r
1436 CDTXMania.Skin.soundカーソル移動音.t再生する();
\r
1437 if( this.b要素値にフォーカス中 )
\r
1439 this.list項目リスト[ this.n現在の選択項目 ].t項目値を前へ移動();
\r
1443 this.n目標のスクロールカウンタ += 100;
\r
1446 public void t前に移動()
\r
1448 CDTXMania.Skin.soundカーソル移動音.t再生する();
\r
1449 if( this.b要素値にフォーカス中 )
\r
1451 this.list項目リスト[ this.n現在の選択項目 ].t項目値を次へ移動();
\r
1455 this.n目標のスクロールカウンタ -= 100;
\r
1462 public override void On活性化()
\r
1464 if( this.b活性化してる )
\r
1467 this.list項目リスト = new List<CItemBase>();
\r
1468 this.eメニュー種別 = Eメニュー種別.Unknown;
\r
1470 #region [ スキン選択肢と、現在選択中のスキン(index)の準備 #28195 2012.5.2 yyagi ]
\r
1471 int ns = ( CDTXMania.Skin.strSystemSkinSubfolders == null ) ? 0 : CDTXMania.Skin.strSystemSkinSubfolders.Length;
\r
1472 int nb = ( CDTXMania.Skin.strBoxDefSkinSubfolders == null ) ? 0 : CDTXMania.Skin.strBoxDefSkinSubfolders.Length;
\r
1473 skinSubFolders = new string[ ns + nb ];
\r
1474 for ( int i = 0; i < ns; i++ )
\r
1476 skinSubFolders[ i ] = CDTXMania.Skin.strSystemSkinSubfolders[ i ];
\r
1478 for ( int i = 0; i < nb; i++ )
\r
1480 skinSubFolders[ ns + i ] = CDTXMania.Skin.strBoxDefSkinSubfolders[ i ];
\r
1482 skinSubFolder_org = CDTXMania.Skin.GetCurrentSkinSubfolderFullName( true );
\r
1483 Array.Sort( skinSubFolders );
\r
1484 skinNames = CSkin.GetSkinName( skinSubFolders );
\r
1485 nSkinIndex = Array.BinarySearch( skinSubFolders, skinSubFolder_org );
\r
1486 if ( nSkinIndex < 0 ) // 念のため
\r
1490 nSkinSampleIndex = -1;
\r
1493 this.t項目リストの設定・Bass(); // #27795 2012.3.11 yyagi; System設定の中でDrumsの設定を参照しているため、
\r
1494 this.t項目リストの設定・Guitar(); // 活性化の時点でDrumsの設定も入れ込んでおかないと、System設定中に例外発生することがある。
\r
1495 this.t項目リストの設定・Drums(); //
\r
1496 this.t項目リストの設定・System(); // 順番として、最後にSystemを持ってくること。設定一覧の初期位置がSystemのため。
\r
1497 this.b要素値にフォーカス中 = false;
\r
1498 this.n目標のスクロールカウンタ = 0;
\r
1499 this.n現在のスクロールカウンタ = 0;
\r
1500 this.nスクロール用タイマ値 = -1;
\r
1501 this.ct三角矢印アニメ = new CCounter();
\r
1503 this.iSystemSoundType_initial = this.iSystemSoundType.n現在選択されている項目番号; // CONFIGに入ったときの値を保持しておく
\r
1504 // this.iSystemWASAPIBufferSizeMs_initial = this.iSystemWASAPIBufferSizeMs.n現在の値; // CONFIG脱出時にこの値から変更されているようなら
\r
1505 // this.iSystemASIOBufferSizeMs_initial = this.iSystemASIOBufferSizeMs.n現在の値; // サウンドデバイスを再構築する
\r
1506 this.iSystemASIODevice_initial = this.iSystemASIODevice.n現在選択されている項目番号; //
\r
1509 public override void On非活性化()
\r
1511 if( this.b活性化してない )
\r
1514 this.tConfigIniへ記録する();
\r
1515 this.list項目リスト.Clear();
\r
1516 this.ct三角矢印アニメ = null;
\r
1519 #region [ Skin変更 ]
\r
1520 if ( CDTXMania.Skin.GetCurrentSkinSubfolderFullName( true ) != this.skinSubFolder_org )
\r
1522 CDTXMania.stageChangeSkin.tChangeSkinMain(); // #28195 2012.6.11 yyagi CONFIG脱出時にSkin更新
\r
1526 // #24820 2013.1.22 yyagi CONFIGでWASAPI/ASIO/DirectSound関連の設定を変更した場合、サウンドデバイスを再構築する。
\r
1527 #region [ サウンドデバイス変更 ]
\r
1528 if ( this.iSystemSoundType_initial != this.iSystemSoundType.n現在選択されている項目番号 ||
\r
1529 // this.iSystemWASAPIBufferSizeMs_initial != this.iSystemWASAPIBufferSizeMs.n現在の値 ||
\r
1530 // this.iSystemASIOBufferSizeMs_initial != this.iSystemASIOBufferSizeMs.n現在の値 ||
\r
1531 this.iSystemASIODevice_initial != this.iSystemASIODevice.n現在選択されている項目番号 )
\r
1533 ESoundDeviceType soundDeviceType;
\r
1534 switch ( this.iSystemSoundType.n現在選択されている項目番号 )
\r
1537 soundDeviceType = ESoundDeviceType.DirectSound;
\r
1540 soundDeviceType = ESoundDeviceType.ASIO;
\r
1543 soundDeviceType = ESoundDeviceType.ExclusiveWASAPI;
\r
1546 soundDeviceType = ESoundDeviceType.Unknown;
\r
1550 FDK.CSound管理.t初期化( soundDeviceType,
\r
1552 // this.iSystemWASAPIBufferSizeMs.n現在の値,
\r
1554 // this.iSystemASIOBufferSizeMs.n現在の値,
\r
1555 this.iSystemASIODevice.n現在選択されている項目番号 );
\r
1556 CDTXMania.app.AddSoundTypeToWindowTitle();
\r
1559 #region [ サウンドのタイムストレッチモード変更 ]
\r
1560 FDK.CSound管理.bIsTimeStretch = this.iSystemTimeStretch.bON;
\r
1563 public override void OnManagedリソースの作成()
\r
1565 if( this.b活性化してない )
\r
1568 this.tx通常項目行パネル = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenConfig itembox.png" ), false );
\r
1569 this.txその他項目行パネル = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenConfig itembox other.png" ), false );
\r
1570 this.tx三角矢印 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\ScreenConfig triangle arrow.png" ), false );
\r
1571 this.txSkinSample1 = null; // スキン選択時に動的に設定するため、ここでは初期化しない
\r
1572 base.OnManagedリソースの作成();
\r
1574 public override void OnManagedリソースの解放()
\r
1576 if( this.b活性化してない )
\r
1579 CDTXMania.tテクスチャの解放( ref this.txSkinSample1 );
\r
1580 CDTXMania.tテクスチャの解放( ref this.tx通常項目行パネル );
\r
1581 CDTXMania.tテクスチャの解放( ref this.txその他項目行パネル );
\r
1582 CDTXMania.tテクスチャの解放( ref this.tx三角矢印 );
\r
1584 base.OnManagedリソースの解放();
\r
1586 public override int On進行描画()
\r
1588 throw new InvalidOperationException( "t進行描画(bool)のほうを使用してください。" );
\r
1590 public int t進行描画( bool b項目リスト側にフォーカスがある )
\r
1592 if( this.b活性化してない )
\r
1597 #region [ 初めての進行描画 ]
\r
1598 //-----------------
\r
1599 if( base.b初めての進行描画 )
\r
1601 this.nスクロール用タイマ値 = CSound管理.rc演奏用タイマ.n現在時刻;
\r
1602 this.ct三角矢印アニメ.t開始( 0, 9, 50, CDTXMania.Timer );
\r
1604 base.b初めての進行描画 = false;
\r
1606 //-----------------
\r
1609 this.b項目リスト側にフォーカスがある = b項目リスト側にフォーカスがある; // 記憶
\r
1611 #region [ 項目スクロールの進行 ]
\r
1612 //-----------------
\r
1613 long n現在時刻 = CDTXMania.Timer.n現在時刻;
\r
1614 if( n現在時刻 < this.nスクロール用タイマ値 ) this.nスクロール用タイマ値 = n現在時刻;
\r
1616 const int INTERVAL = 2; // [ms]
\r
1617 while( ( n現在時刻 - this.nスクロール用タイマ値 ) >= INTERVAL )
\r
1619 int n目標項目までのスクロール量 = Math.Abs( (int) ( this.n目標のスクロールカウンタ - this.n現在のスクロールカウンタ ) );
\r
1622 #region [ n加速度の決定;目標まで遠いほど加速する。]
\r
1623 //-----------------
\r
1624 if( n目標項目までのスクロール量 <= 100 )
\r
1628 else if( n目標項目までのスクロール量 <= 300 )
\r
1632 else if( n目標項目までのスクロール量 <= 500 )
\r
1640 //-----------------
\r
1642 #region [ this.n現在のスクロールカウンタに n加速度 を加減算。]
\r
1643 //-----------------
\r
1644 if( this.n現在のスクロールカウンタ < this.n目標のスクロールカウンタ )
\r
1646 this.n現在のスクロールカウンタ += n加速度;
\r
1647 if( this.n現在のスクロールカウンタ > this.n目標のスクロールカウンタ )
\r
1650 this.n現在のスクロールカウンタ = this.n目標のスクロールカウンタ;
\r
1653 else if( this.n現在のスクロールカウンタ > this.n目標のスクロールカウンタ )
\r
1655 this.n現在のスクロールカウンタ -= n加速度;
\r
1656 if( this.n現在のスクロールカウンタ < this.n目標のスクロールカウンタ )
\r
1659 this.n現在のスクロールカウンタ = this.n目標のスクロールカウンタ;
\r
1662 //-----------------
\r
1664 #region [ 行超え処理、ならびに目標位置に到達したらスクロールを停止して項目変更通知を発行。]
\r
1665 //-----------------
\r
1666 if( this.n現在のスクロールカウンタ >= 100 )
\r
1668 this.n現在の選択項目 = this.t次の項目( this.n現在の選択項目 );
\r
1669 this.n現在のスクロールカウンタ -= 100;
\r
1670 this.n目標のスクロールカウンタ -= 100;
\r
1671 if( this.n目標のスクロールカウンタ == 0 )
\r
1673 CDTXMania.stageコンフィグ.t項目変更通知();
\r
1676 else if( this.n現在のスクロールカウンタ <= -100 )
\r
1678 this.n現在の選択項目 = this.t前の項目( this.n現在の選択項目 );
\r
1679 this.n現在のスクロールカウンタ += 100;
\r
1680 this.n目標のスクロールカウンタ += 100;
\r
1681 if( this.n目標のスクロールカウンタ == 0 )
\r
1683 CDTXMania.stageコンフィグ.t項目変更通知();
\r
1686 //-----------------
\r
1689 this.nスクロール用タイマ値 += INTERVAL;
\r
1691 //-----------------
\r
1694 #region [ ▲印アニメの進行 ]
\r
1695 //-----------------
\r
1696 if( this.b項目リスト側にフォーカスがある && ( this.n目標のスクロールカウンタ == 0 ) )
\r
1697 this.ct三角矢印アニメ.t進行Loop();
\r
1698 //-----------------
\r
1704 this.ptパネルの基本座標[ 4 ].X = this.b項目リスト側にフォーカスがある ? 276 : 301; // メニューにフォーカスがあるなら、項目リストの中央は頭を出さない。
\r
1706 #region [ 計11個の項目パネルを描画する。]
\r
1707 //-----------------
\r
1708 int nItem = this.n現在の選択項目;
\r
1709 for( int i = 0; i < 4; i++ )
\r
1710 nItem = this.t前の項目( nItem );
\r
1712 for( int n行番号 = -4; n行番号 < 6; n行番号++ ) // n行番号 == 0 がフォーカスされている項目パネル。
\r
1714 #region [ 今まさに画面外に飛びだそうとしている項目パネルは描画しない。]
\r
1715 //-----------------
\r
1716 if( ( ( n行番号 == -4 ) && ( this.n現在のスクロールカウンタ > 0 ) ) || // 上に飛び出そうとしている
\r
1717 ( ( n行番号 == +5 ) && ( this.n現在のスクロールカウンタ < 0 ) ) ) // 下に飛び出そうとしている
\r
1719 nItem = this.t次の項目( nItem );
\r
1722 //-----------------
\r
1725 int n移動元の行の基本位置 = n行番号 + 4;
\r
1726 int n移動先の行の基本位置 = ( this.n現在のスクロールカウンタ <= 0 ) ? ( ( n移動元の行の基本位置 + 1 ) % 10 ) : ( ( ( n移動元の行の基本位置 - 1 ) + 10 ) % 10 );
\r
1727 int x = this.ptパネルの基本座標[ n移動元の行の基本位置 ].X + ( (int) ( ( this.ptパネルの基本座標[ n移動先の行の基本位置 ].X - this.ptパネルの基本座標[ n移動元の行の基本位置 ].X ) * ( ( (double) Math.Abs( this.n現在のスクロールカウンタ ) ) / 100.0 ) ) );
\r
1728 int y = this.ptパネルの基本座標[ n移動元の行の基本位置 ].Y + ( (int) ( ( this.ptパネルの基本座標[ n移動先の行の基本位置 ].Y - this.ptパネルの基本座標[ n移動元の行の基本位置 ].Y ) * ( ( (double) Math.Abs( this.n現在のスクロールカウンタ ) ) / 100.0 ) ) );
\r
1730 #region [ 現在の行の項目パネル枠を描画。]
\r
1731 //-----------------
\r
1732 switch( this.list項目リスト[ nItem ].eパネル種別 )
\r
1734 case CItemBase.Eパネル種別.通常:
\r
1735 if( this.tx通常項目行パネル != null )
\r
1736 this.tx通常項目行パネル.t2D描画( CDTXMania.app.Device, x, y );
\r
1739 case CItemBase.Eパネル種別.その他:
\r
1740 if( this.txその他項目行パネル != null )
\r
1741 this.txその他項目行パネル.t2D描画( CDTXMania.app.Device, x, y );
\r
1744 //-----------------
\r
1746 #region [ 現在の行の項目名を描画。]
\r
1747 //-----------------
\r
1748 CDTXMania.stageコンフィグ.actFont.t文字列描画( x + 0x12, y + 12, this.list項目リスト[ nItem ].str項目名 );
\r
1749 //-----------------
\r
1751 #region [ 現在の行の項目の要素を描画。]
\r
1752 //-----------------
\r
1753 switch( this.list項目リスト[ nItem ].e種別 )
\r
1755 case CItemBase.E種別.ONorOFFトグル:
\r
1757 //-----------------
\r
1758 CDTXMania.stageコンフィグ.actFont.t文字列描画( x + 210, y + 12, ( (CItemToggle) this.list項目リスト[ nItem ] ).bON ? "ON" : "OFF" );
\r
1760 //-----------------
\r
1763 case CItemBase.E種別.ONorOFFor不定スリーステート:
\r
1765 //-----------------
\r
1766 switch( ( (CItemThreeState) this.list項目リスト[ nItem ] ).e現在の状態 )
\r
1768 case CItemThreeState.E状態.ON:
\r
1769 CDTXMania.stageコンフィグ.actFont.t文字列描画( x + 210, y + 12, "ON" );
\r
1772 case CItemThreeState.E状態.不定:
\r
1773 CDTXMania.stageコンフィグ.actFont.t文字列描画( x + 210, y + 12, "- -" );
\r
1777 CDTXMania.stageコンフィグ.actFont.t文字列描画( x + 210, y + 12, "OFF" );
\r
1781 //-----------------
\r
1784 case CItemBase.E種別.整数: // #24789 2011.4.8 yyagi: add PlaySpeed supports (copied them from OPTION)
\r
1786 //-----------------
\r
1787 if( this.list項目リスト[ nItem ] == this.iCommonPlaySpeed )
\r
1789 double d = ( (double) ( (CItemInteger) this.list項目リスト[ nItem ] ).n現在の値 ) / 20.0;
\r
1790 CDTXMania.stageコンフィグ.actFont.t文字列描画( x + 210, y + 12, d.ToString( "0.000" ), ( n行番号 == 0 ) && this.b要素値にフォーカス中 );
\r
1792 else if( this.list項目リスト[ nItem ] == this.iDrumsScrollSpeed || this.list項目リスト[ nItem ] == this.iGuitarScrollSpeed || this.list項目リスト[ nItem ] == this.iBassScrollSpeed )
\r
1794 float f = ( ( (CItemInteger) this.list項目リスト[ nItem ] ).n現在の値 + 1 ) * 0.5f;
\r
1795 CDTXMania.stageコンフィグ.actFont.t文字列描画( x + 210, y + 12, f.ToString( "x0.0" ), ( n行番号 == 0 ) && this.b要素値にフォーカス中 );
\r
1799 CDTXMania.stageコンフィグ.actFont.t文字列描画( x + 210, y + 12, ( (CItemInteger) this.list項目リスト[ nItem ] ).n現在の値.ToString(), ( n行番号 == 0 ) && this.b要素値にフォーカス中 );
\r
1802 //-----------------
\r
1805 case CItemBase.E種別.リスト: // #28195 2012.5.2 yyagi: add Skin supports
\r
1807 //-----------------
\r
1809 CItemList list = (CItemList) this.list項目リスト[ nItem ];
\r
1810 CDTXMania.stageコンフィグ.actFont.t文字列描画( x + 210, y + 12, list.list項目値[ list.n現在選択されている項目番号 ] );
\r
1812 #region [ 必要な場合に、Skinのサンプルを生成・描画する。#28195 2012.5.2 yyagi ]
\r
1813 if ( this.list項目リスト[ this.n現在の選択項目 ] == this.iSystemSkinSubfolder )
\r
1815 tGenerateSkinSample(); // 最初にSkinの選択肢にきたとき(Enterを押す前)に限り、サンプル生成が発生する。
\r
1816 if ( txSkinSample1 != null )
\r
1818 txSkinSample1.t2D描画( CDTXMania.app.Device, 56, 300 );
\r
1824 //-----------------
\r
1827 //-----------------
\r
1830 nItem = this.t次の項目( nItem );
\r
1832 //-----------------
\r
1835 #region [ 項目リストにフォーカスがあって、かつスクロールが停止しているなら、パネルの上下に▲印を描画する。]
\r
1836 //-----------------
\r
1837 if( this.b項目リスト側にフォーカスがある && ( this.n目標のスクロールカウンタ == 0 ) )
\r
1845 if( this.b要素値にフォーカス中 )
\r
1847 x = 528; // 要素値の上下あたり。
\r
1848 y_upper = 198 - this.ct三角矢印アニメ.n現在の値;
\r
1849 y_lower = 242 + this.ct三角矢印アニメ.n現在の値;
\r
1853 x = 276; // 項目名の上下あたり。
\r
1854 y_upper = 186 - this.ct三角矢印アニメ.n現在の値;
\r
1855 y_lower = 254 + this.ct三角矢印アニメ.n現在の値;
\r
1860 if( this.tx三角矢印 != null )
\r
1862 this.tx三角矢印.t2D描画( CDTXMania.app.Device, x, y_upper, new Rectangle( 0, 0, 32, 16 ) );
\r
1863 this.tx三角矢印.t2D描画( CDTXMania.app.Device, x, y_lower, new Rectangle( 0, 16, 32, 16 ) );
\r
1866 //-----------------
\r
1874 #region [ private ]
\r
1875 //-----------------
\r
1876 private enum Eメニュー種別
\r
1882 KeyAssignSystem, // #24609 2011.4.12 yyagi: 画面キャプチャキーのアサイン
\r
1890 private bool b項目リスト側にフォーカスがある;
\r
1891 private bool b要素値にフォーカス中;
\r
1892 private CCounter ct三角矢印アニメ;
\r
1893 private Eメニュー種別 eメニュー種別;
\r
1894 private CItemBase iKeyAssignSystemCapture; // #24609
\r
1895 private CItemBase iKeyAssignSystemReturnToMenu; // #24609
\r
1896 private CItemBase iKeyAssignBassB;
\r
1897 private CItemBase iKeyAssignBassCancel;
\r
1898 private CItemBase iKeyAssignBassDecide;
\r
1899 private CItemBase iKeyAssignBassG;
\r
1900 private CItemBase iKeyAssignBassPick;
\r
1901 private CItemBase iKeyAssignBassR;
\r
1902 private CItemBase iKeyAssignBassReturnToMenu;
\r
1903 private CItemBase iKeyAssignBassWail;
\r
1904 private CItemBase iKeyAssignDrumsBD;
\r
1905 private CItemBase iKeyAssignDrumsCY;
\r
1906 private CItemBase iKeyAssignDrumsFT;
\r
1907 private CItemBase iKeyAssignDrumsHHC;
\r
1908 private CItemBase iKeyAssignDrumsHHO;
\r
1909 private CItemBase iKeyAssignDrumsHT;
\r
1910 private CItemBase iKeyAssignDrumsLC;
\r
1911 private CItemBase iKeyAssignDrumsLT;
\r
1912 private CItemBase iKeyAssignDrumsRD;
\r
1913 private CItemBase iKeyAssignDrumsReturnToMenu;
\r
1914 private CItemBase iKeyAssignDrumsSD;
\r
1915 private CItemBase iKeyAssignDrumsHP; // #27029 2012.1.4 from
\r
1916 private CItemBase iKeyAssignGuitarB;
\r
1917 private CItemBase iKeyAssignGuitarCancel;
\r
1918 private CItemBase iKeyAssignGuitarDecide;
\r
1919 private CItemBase iKeyAssignGuitarG;
\r
1920 private CItemBase iKeyAssignGuitarPick;
\r
1921 private CItemBase iKeyAssignGuitarR;
\r
1922 private CItemBase iKeyAssignGuitarReturnToMenu;
\r
1923 private CItemBase iKeyAssignGuitarWail;
\r
1924 private CItemToggle iLogOutputLog;
\r
1925 private CItemToggle iSystemAdjustWaves;
\r
1926 private CItemToggle iSystemAudienceSound;
\r
1927 private CItemInteger iSystemAutoChipVolume;
\r
1928 private CItemToggle iSystemAVI;
\r
1929 private CItemToggle iSystemBGA;
\r
1930 // private CItemToggle iSystemGraph; #24074 2011.01.23 comment-out ikanick オプション(Drums)へ移行
\r
1931 private CItemInteger iSystemBGAlpha;
\r
1932 private CItemToggle iSystemBGMSound;
\r
1933 private CItemInteger iSystemChipVolume;
\r
1934 private CItemList iSystemCYGroup;
\r
1935 private CItemToggle iSystemCymbalFree;
\r
1936 private CItemList iSystemDamageLevel;
\r
1937 private CItemToggle iSystemDebugInfo;
\r
1938 // private CItemToggle iSystemDrums;
\r
1939 private CItemToggle iSystemFillIn;
\r
1940 private CItemList iSystemFTGroup;
\r
1941 private CItemToggle iSystemFullscreen;
\r
1942 // private CItemToggle iSystemGuitar;
\r
1943 private CItemList iSystemHHGroup;
\r
1944 private CItemList iSystemBDGroup; // #27029 2012.1.4 from
\r
1945 private CItemToggle iSystemHitSound;
\r
1946 private CItemList iSystemHitSoundPriorityCY;
\r
1947 private CItemList iSystemHitSoundPriorityFT;
\r
1948 private CItemList iSystemHitSoundPriorityHH;
\r
1949 private CItemInteger iSystemMinComboBass;
\r
1950 private CItemInteger iSystemMinComboDrums;
\r
1951 private CItemInteger iSystemMinComboGuitar;
\r
1952 private CItemInteger iSystemPreviewImageWait;
\r
1953 private CItemInteger iSystemPreviewSoundWait;
\r
1954 private CItemToggle iSystemRandomFromSubBox;
\r
1955 private CItemBase iSystemReturnToMenu;
\r
1956 private CItemToggle iSystemSaveScore;
\r
1957 private CItemToggle iSystemSoundMonitorBass;
\r
1958 private CItemToggle iSystemSoundMonitorDrums;
\r
1959 private CItemToggle iSystemSoundMonitorGuitar;
\r
1960 private CItemToggle iSystemStageFailed;
\r
1961 private CItemToggle iSystemStoicMode;
\r
1962 private CItemToggle iSystemVSyncWait;
\r
1963 private CItemList iSystemShowLag; // #25370 2011.6.3 yyagi
\r
1964 private CItemToggle iSystemAutoResultCapture; // #25399 2011.6.9 yyagi
\r
1965 private CItemToggle iSystemBufferedInput;
\r
1966 private CItemInteger iSystemRisky; // #23559 2011.7.27 yyagi
\r
1967 private CItemList iSystemSoundType; // #24820 2013.1.3 yyagi
\r
1968 // private CItemInteger iSystemWASAPIBufferSizeMs; // #24820 2013.1.15 yyagi
\r
1969 // private CItemInteger iSystemASIOBufferSizeMs; // #24820 2013.1.3 yyagi
\r
1970 private CItemList iSystemASIODevice; // #24820 2013.1.17 yyagi
\r
1972 private int iSystemSoundType_initial;
\r
1973 // private int iSystemWASAPIBufferSizeMs_initial;
\r
1974 // private int iSystemASIOBufferSizeMs_initial;
\r
1975 private int iSystemASIODevice_initial;
\r
1977 private CItemToggle iSystemTimeStretch; // #23664 2013.2.24 yyagi
\r
1980 private List<CItemBase> list項目リスト;
\r
1981 private long nスクロール用タイマ値;
\r
1982 private int n現在のスクロールカウンタ;
\r
1983 private int n目標のスクロールカウンタ;
\r
1984 private Point[] ptパネルの基本座標 = new Point[] { new Point( 0x12d, 3 ), new Point( 0x12d, 0x35 ), new Point( 0x12d, 0x67 ), new Point( 0x12d, 0x99 ), new Point( 0x114, 0xcb ), new Point( 0x12d, 0xfd ), new Point( 0x12d, 0x12f ), new Point( 0x12d, 0x161 ), new Point( 0x12d, 0x193 ), new Point( 0x12d, 0x1c5 ) };
\r
1985 private CTexture txその他項目行パネル;
\r
1986 private CTexture tx三角矢印;
\r
1987 private CTexture tx通常項目行パネル;
\r
1989 private CTexture txSkinSample1; // #28195 2012.5.2 yyagi
\r
1990 private string[] skinSubFolders; //
\r
1991 private string[] skinNames; //
\r
1992 private string skinSubFolder_org; //
\r
1993 private int nSkinSampleIndex; //
\r
1994 private int nSkinIndex; //
\r
1996 private CItemBase iDrumsGoToKeyAssign;
\r
1997 private CItemBase iGuitarGoToKeyAssign;
\r
1998 private CItemBase iBassGoToKeyAssign;
\r
1999 private CItemBase iSystemGoToKeyAssign; // #24609
\r
2001 private CItemList iSystemGRmode;
\r
2003 //private CItemToggle iBassAutoPlay;
\r
2004 private CItemThreeState iBassAutoPlayAll; // #23886 2012.5.8 yyagi
\r
2005 private CItemToggle iBassR; //
\r
2006 private CItemToggle iBassG; //
\r
2007 private CItemToggle iBassB; //
\r
2008 private CItemToggle iBassPick; //
\r
2009 private CItemToggle iBassW; //
\r
2011 private CItemToggle iBassHidden;
\r
2012 private CItemToggle iBassLeft;
\r
2013 private CItemToggle iBassLight;
\r
2014 private CItemList iBassPosition;
\r
2015 private CItemList iBassRandom;
\r
2016 private CItemBase iBassReturnToMenu;
\r
2017 private CItemToggle iBassReverse;
\r
2018 private CItemInteger iBassScrollSpeed;
\r
2019 private CItemToggle iBassSudden;
\r
2020 private CItemList iCommonDark;
\r
2021 private CItemInteger iCommonPlaySpeed;
\r
2022 // private CItemBase iCommonReturnToMenu;
\r
2024 private CItemThreeState iDrumsAutoPlayAll;
\r
2025 private CItemToggle iDrumsBass;
\r
2026 private CItemList iDrumsComboPosition;
\r
2027 private CItemToggle iDrumsCymbalRide;
\r
2028 private CItemToggle iDrumsFloorTom;
\r
2029 private CItemToggle iDrumsHidden;
\r
2030 private CItemToggle iDrumsHighTom;
\r
2031 private CItemToggle iDrumsHiHat;
\r
2032 private CItemToggle iDrumsLeftCymbal;
\r
2033 private CItemToggle iDrumsLowTom;
\r
2034 private CItemList iDrumsPosition;
\r
2035 private CItemBase iDrumsReturnToMenu;
\r
2036 private CItemToggle iDrumsReverse;
\r
2037 private CItemInteger iDrumsScrollSpeed;
\r
2038 private CItemToggle iDrumsSnare;
\r
2039 private CItemToggle iDrumsSudden;
\r
2040 private CItemToggle iDrumsTight;
\r
2041 private CItemToggle iDrumsGraph; // #24074 2011.01.23 add ikanick
\r
2043 //private CItemToggle iGuitarAutoPlay;
\r
2044 private CItemThreeState iGuitarAutoPlayAll; // #23886 2012.5.8 yyagi
\r
2045 private CItemToggle iGuitarR; //
\r
2046 private CItemToggle iGuitarG; //
\r
2047 private CItemToggle iGuitarB; //
\r
2048 private CItemToggle iGuitarPick; //
\r
2049 private CItemToggle iGuitarW; //
\r
2051 private CItemToggle iGuitarHidden;
\r
2052 private CItemToggle iGuitarLeft;
\r
2053 private CItemToggle iGuitarLight;
\r
2054 private CItemList iGuitarPosition;
\r
2055 private CItemList iGuitarRandom;
\r
2056 private CItemBase iGuitarReturnToMenu;
\r
2057 private CItemToggle iGuitarReverse;
\r
2058 private CItemInteger iGuitarScrollSpeed;
\r
2059 private CItemToggle iGuitarSudden;
\r
2060 private CItemInteger iDrumsInputAdjustTimeMs; // #23580 2011.1.3 yyagi
\r
2061 private CItemInteger iGuitarInputAdjustTimeMs; //
\r
2062 private CItemInteger iBassInputAdjustTimeMs; //
\r
2063 private CItemList iSystemSkinSubfolder; // #28195 2012.5.2 yyagi
\r
2064 private CItemToggle iSystemUseBoxDefSkin; // #28195 2012.5.6 yyagi
\r
2066 private int t前の項目( int nItem )
\r
2070 nItem = this.list項目リスト.Count - 1;
\r
2074 private int t次の項目( int nItem )
\r
2076 if( ++nItem >= this.list項目リスト.Count )
\r
2082 private void t全部のドラムパッドのAutoを切り替える( bool bAutoON )
\r
2084 this.iDrumsLeftCymbal.bON = this.iDrumsHiHat.bON = this.iDrumsSnare.bON = this.iDrumsBass.bON = this.iDrumsHighTom.bON = this.iDrumsLowTom.bON = this.iDrumsFloorTom.bON = this.iDrumsCymbalRide.bON = bAutoON;
\r
2086 private void t全部のギターパッドのAutoを切り替える( bool bAutoON )
\r
2088 this.iGuitarR.bON = this.iGuitarG.bON = this.iGuitarB.bON = this.iGuitarPick.bON = this.iGuitarW.bON = bAutoON;
\r
2090 private void t全部のベースパッドのAutoを切り替える( bool bAutoON )
\r
2092 this.iBassR.bON = this.iBassG.bON = this.iBassB.bON = this.iBassPick.bON = this.iBassW.bON = bAutoON;
\r
2094 private void tConfigIniへ記録する()
\r
2096 switch( this.eメニュー種別 )
\r
2098 case Eメニュー種別.System:
\r
2099 this.tConfigIniへ記録する・System();
\r
2100 this.tConfigIniへ記録する・KeyAssignSystem();
\r
2103 case Eメニュー種別.Drums:
\r
2104 this.tConfigIniへ記録する・Drums();
\r
2105 this.tConfigIniへ記録する・KeyAssignDrums();
\r
2108 case Eメニュー種別.Guitar:
\r
2109 this.tConfigIniへ記録する・Guitar();
\r
2110 this.tConfigIniへ記録する・KeyAssignGuitar();
\r
2113 case Eメニュー種別.Bass:
\r
2114 this.tConfigIniへ記録する・Bass();
\r
2115 this.tConfigIniへ記録する・KeyAssignBass();
\r
2119 private void tConfigIniへ記録する・KeyAssignBass()
\r
2122 private void tConfigIniへ記録する・KeyAssignDrums()
\r
2125 private void tConfigIniへ記録する・KeyAssignGuitar()
\r
2128 private void tConfigIniへ記録する・KeyAssignSystem()
\r
2131 private void tConfigIniへ記録する・System()
\r
2133 CDTXMania.ConfigIni.eDark = (Eダークモード) this.iCommonDark.n現在選択されている項目番号;
\r
2134 CDTXMania.ConfigIni.n演奏速度 = this.iCommonPlaySpeed.n現在の値;
\r
2136 CDTXMania.ConfigIni.bGuitar有効 = ( ( ( this.iSystemGRmode.n現在選択されている項目番号 + 1 ) / 2 ) == 1 );
\r
2137 //this.iSystemGuitar.bON;
\r
2138 CDTXMania.ConfigIni.bDrums有効 = ( ( ( this.iSystemGRmode.n現在選択されている項目番号 + 1 ) % 2 ) == 1 );
\r
2139 //this.iSystemDrums.bON;
\r
2141 CDTXMania.ConfigIni.b全画面モード = this.iSystemFullscreen.bON;
\r
2142 CDTXMania.ConfigIni.bSTAGEFAILED有効 = this.iSystemStageFailed.bON;
\r
2143 CDTXMania.ConfigIni.bランダムセレクトで子BOXを検索対象とする = this.iSystemRandomFromSubBox.bON;
\r
2145 CDTXMania.ConfigIni.bWave再生位置自動調整機能有効 = this.iSystemAdjustWaves.bON;
\r
2146 CDTXMania.ConfigIni.b垂直帰線待ちを行う = this.iSystemVSyncWait.bON;
\r
2147 CDTXMania.ConfigIni.bバッファ入力を行う = this.iSystemBufferedInput.bON;
\r
2148 CDTXMania.ConfigIni.bAVI有効 = this.iSystemAVI.bON;
\r
2149 CDTXMania.ConfigIni.bBGA有効 = this.iSystemBGA.bON;
\r
2150 // CDTXMania.ConfigIni.bGraph有効 = this.iSystemGraph.bON;#24074 2011.01.23 comment-out ikanick オプション(Drums)へ移行
\r
2151 CDTXMania.ConfigIni.n曲が選択されてからプレビュー音が鳴るまでのウェイトms = this.iSystemPreviewSoundWait.n現在の値;
\r
2152 CDTXMania.ConfigIni.n曲が選択されてからプレビュー画像が表示開始されるまでのウェイトms = this.iSystemPreviewImageWait.n現在の値;
\r
2153 CDTXMania.ConfigIni.b演奏情報を表示する = this.iSystemDebugInfo.bON;
\r
2154 CDTXMania.ConfigIni.n背景の透過度 = this.iSystemBGAlpha.n現在の値;
\r
2155 CDTXMania.ConfigIni.bBGM音を発声する = this.iSystemBGMSound.bON;
\r
2156 CDTXMania.ConfigIni.b歓声を発声する = this.iSystemAudienceSound.bON;
\r
2157 CDTXMania.ConfigIni.eダメージレベル = (Eダメージレベル) this.iSystemDamageLevel.n現在選択されている項目番号;
\r
2158 CDTXMania.ConfigIni.bScoreIniを出力する = this.iSystemSaveScore.bON;
\r
2160 CDTXMania.ConfigIni.bログ出力 = this.iLogOutputLog.bON;
\r
2161 CDTXMania.ConfigIni.n手動再生音量 = this.iSystemChipVolume.n現在の値;
\r
2162 CDTXMania.ConfigIni.n自動再生音量 = this.iSystemAutoChipVolume.n現在の値;
\r
2163 CDTXMania.ConfigIni.bストイックモード = this.iSystemStoicMode.bON;
\r
2165 CDTXMania.ConfigIni.nShowLagType = this.iSystemShowLag.n現在選択されている項目番号; // #25370 2011.6.3 yyagi
\r
2166 CDTXMania.ConfigIni.bIsAutoResultCapture = this.iSystemAutoResultCapture.bON; // #25399 2011.6.9 yyagi
\r
2168 CDTXMania.ConfigIni.nRisky = this.iSystemRisky.n現在の値; // #23559 2911.7.27 yyagi
\r
2170 CDTXMania.ConfigIni.strSystemSkinSubfolderFullName = skinSubFolders[ nSkinIndex ]; // #28195 2012.5.2 yyagi
\r
2171 CDTXMania.Skin.SetCurrentSkinSubfolderFullName( CDTXMania.ConfigIni.strSystemSkinSubfolderFullName, true );
\r
2172 CDTXMania.ConfigIni.bUseBoxDefSkin = this.iSystemUseBoxDefSkin.bON; // #28195 2012.5.6 yyagi
\r
2174 CDTXMania.ConfigIni.nSoundDeviceType = this.iSystemSoundType.n現在選択されている項目番号; // #24820 2013.1.3 yyagi
\r
2175 // CDTXMania.ConfigIni.nWASAPIBufferSizeMs = this.iSystemWASAPIBufferSizeMs.n現在の値; // #24820 2013.1.15 yyagi
\r
2176 // CDTXMania.ConfigIni.nASIOBufferSizeMs = this.iSystemASIOBufferSizeMs.n現在の値; // #24820 2013.1.3 yyagi
\r
2177 CDTXMania.ConfigIni.nASIODevice = this.iSystemASIODevice.n現在選択されている項目番号; // #24820 2013.1.17 yyagi
\r
2179 CDTXMania.ConfigIni.bTimeStretch = this.iSystemTimeStretch.bON; // #23664 2013.2.24 yyagi
\r
2180 //Trace.TraceInformation( "saved" );
\r
2181 //Trace.TraceInformation( "Skin現在Current : " + CDTXMania.Skin.GetCurrentSkinSubfolderFullName(true) );
\r
2182 //Trace.TraceInformation( "Skin現在System : " + CSkin.strSystemSkinSubfolderFullName );
\r
2183 //Trace.TraceInformation( "Skin現在BoxDef : " + CSkin.strBoxDefSkinSubfolderFullName );
\r
2186 private void tConfigIniへ記録する・Bass()
\r
2188 //CDTXMania.ConfigIni.bAutoPlay.Bass = this.iBassAutoPlay.bON;
\r
2189 CDTXMania.ConfigIni.bAutoPlay.BsR = this.iBassR.bON;
\r
2190 CDTXMania.ConfigIni.bAutoPlay.BsG = this.iBassG.bON;
\r
2191 CDTXMania.ConfigIni.bAutoPlay.BsB = this.iBassB.bON;
\r
2192 CDTXMania.ConfigIni.bAutoPlay.BsPick = this.iBassPick.bON;
\r
2193 CDTXMania.ConfigIni.bAutoPlay.BsW = this.iBassW.bON;
\r
2194 CDTXMania.ConfigIni.n譜面スクロール速度.Bass = this.iBassScrollSpeed.n現在の値;
\r
2195 CDTXMania.ConfigIni.bSudden.Bass = this.iBassSudden.bON;
\r
2196 CDTXMania.ConfigIni.bHidden.Bass = this.iBassHidden.bON;
\r
2197 CDTXMania.ConfigIni.bReverse.Bass = this.iBassReverse.bON;
\r
2198 CDTXMania.ConfigIni.判定文字表示位置.Bass = (E判定文字表示位置) this.iBassPosition.n現在選択されている項目番号;
\r
2199 CDTXMania.ConfigIni.eRandom.Bass = (Eランダムモード) this.iBassRandom.n現在選択されている項目番号;
\r
2200 CDTXMania.ConfigIni.bLight.Bass = this.iBassLight.bON;
\r
2201 CDTXMania.ConfigIni.bLeft.Bass = this.iBassLeft.bON;
\r
2202 CDTXMania.ConfigIni.nInputAdjustTimeMs.Bass = this.iBassInputAdjustTimeMs.n現在の値; // #23580 2011.1.3 yyagi
\r
2204 CDTXMania.ConfigIni.b演奏音を強調する.Bass = this.iSystemSoundMonitorBass.bON;
\r
2205 CDTXMania.ConfigIni.n表示可能な最小コンボ数.Bass = this.iSystemMinComboBass.n現在の値;
\r
2207 private void tConfigIniへ記録する・Drums()
\r
2209 CDTXMania.ConfigIni.bAutoPlay.LC = this.iDrumsLeftCymbal.bON;
\r
2210 CDTXMania.ConfigIni.bAutoPlay.HH = this.iDrumsHiHat.bON;
\r
2211 CDTXMania.ConfigIni.bAutoPlay.SD = this.iDrumsSnare.bON;
\r
2212 CDTXMania.ConfigIni.bAutoPlay.BD = this.iDrumsBass.bON;
\r
2213 CDTXMania.ConfigIni.bAutoPlay.HT = this.iDrumsHighTom.bON;
\r
2214 CDTXMania.ConfigIni.bAutoPlay.LT = this.iDrumsLowTom.bON;
\r
2215 CDTXMania.ConfigIni.bAutoPlay.FT = this.iDrumsFloorTom.bON;
\r
2216 CDTXMania.ConfigIni.bAutoPlay.CY = this.iDrumsCymbalRide.bON;
\r
2217 CDTXMania.ConfigIni.n譜面スクロール速度.Drums = this.iDrumsScrollSpeed.n現在の値;
\r
2218 CDTXMania.ConfigIni.ドラムコンボ文字の表示位置 = (Eドラムコンボ文字の表示位置) this.iDrumsComboPosition.n現在選択されている項目番号;
\r
2219 CDTXMania.ConfigIni.bSudden.Drums = this.iDrumsSudden.bON;
\r
2220 CDTXMania.ConfigIni.bHidden.Drums = this.iDrumsHidden.bON;
\r
2221 CDTXMania.ConfigIni.bReverse.Drums = this.iDrumsReverse.bON;
\r
2222 CDTXMania.ConfigIni.判定文字表示位置.Drums = (E判定文字表示位置) this.iDrumsPosition.n現在選択されている項目番号;
\r
2223 CDTXMania.ConfigIni.bTight = this.iDrumsTight.bON;
\r
2224 CDTXMania.ConfigIni.nInputAdjustTimeMs.Drums = this.iDrumsInputAdjustTimeMs.n現在の値; // #23580 2011.1.3 yyagi
\r
2225 CDTXMania.ConfigIni.bGraph.Drums = this.iDrumsGraph.bON;// #24074 2011.01.23 add ikanick
\r
2227 CDTXMania.ConfigIni.eHHGroup = (EHHGroup) this.iSystemHHGroup.n現在選択されている項目番号;
\r
2228 CDTXMania.ConfigIni.eFTGroup = (EFTGroup) this.iSystemFTGroup.n現在選択されている項目番号;
\r
2229 CDTXMania.ConfigIni.eCYGroup = (ECYGroup) this.iSystemCYGroup.n現在選択されている項目番号;
\r
2230 CDTXMania.ConfigIni.eBDGroup = (EBDGroup) this.iSystemBDGroup.n現在選択されている項目番号;
\r
2231 CDTXMania.ConfigIni.eHitSoundPriorityHH = (E打ち分け時の再生の優先順位) this.iSystemHitSoundPriorityHH.n現在選択されている項目番号;
\r
2232 CDTXMania.ConfigIni.eHitSoundPriorityFT = (E打ち分け時の再生の優先順位) this.iSystemHitSoundPriorityFT.n現在選択されている項目番号;
\r
2233 CDTXMania.ConfigIni.eHitSoundPriorityCY = (E打ち分け時の再生の優先順位) this.iSystemHitSoundPriorityCY.n現在選択されている項目番号;
\r
2234 CDTXMania.ConfigIni.bフィルイン有効 = this.iSystemFillIn.bON;
\r
2235 CDTXMania.ConfigIni.b演奏音を強調する.Drums = this.iSystemSoundMonitorDrums.bON;
\r
2236 CDTXMania.ConfigIni.bドラム打音を発声する = this.iSystemHitSound.bON;
\r
2237 CDTXMania.ConfigIni.n表示可能な最小コンボ数.Drums = this.iSystemMinComboDrums.n現在の値;
\r
2238 CDTXMania.ConfigIni.bシンバルフリー = this.iSystemCymbalFree.bON;
\r
2240 CDTXMania.ConfigIni.eDark = (Eダークモード)this.iCommonDark.n現在選択されている項目番号;
\r
2241 CDTXMania.ConfigIni.nRisky = this.iSystemRisky.n現在の値; // #23559 2911.7.27 yyagi
\r
2243 private void tConfigIniへ記録する・Guitar()
\r
2245 //CDTXMania.ConfigIni.bAutoPlay.Guitar = this.iGuitarAutoPlay.bON;
\r
2246 CDTXMania.ConfigIni.bAutoPlay.GtR = this.iGuitarR.bON;
\r
2247 CDTXMania.ConfigIni.bAutoPlay.GtG = this.iGuitarG.bON;
\r
2248 CDTXMania.ConfigIni.bAutoPlay.GtB = this.iGuitarB.bON;
\r
2249 CDTXMania.ConfigIni.bAutoPlay.GtPick = this.iGuitarPick.bON;
\r
2250 CDTXMania.ConfigIni.bAutoPlay.GtW = this.iGuitarW.bON;
\r
2251 CDTXMania.ConfigIni.n譜面スクロール速度.Guitar = this.iGuitarScrollSpeed.n現在の値;
\r
2252 CDTXMania.ConfigIni.bSudden.Guitar = this.iGuitarSudden.bON;
\r
2253 CDTXMania.ConfigIni.bHidden.Guitar = this.iGuitarHidden.bON;
\r
2254 CDTXMania.ConfigIni.bReverse.Guitar = this.iGuitarReverse.bON;
\r
2255 CDTXMania.ConfigIni.判定文字表示位置.Guitar = (E判定文字表示位置) this.iGuitarPosition.n現在選択されている項目番号;
\r
2256 CDTXMania.ConfigIni.eRandom.Guitar = (Eランダムモード) this.iGuitarRandom.n現在選択されている項目番号;
\r
2257 CDTXMania.ConfigIni.bLight.Guitar = this.iGuitarLight.bON;
\r
2258 CDTXMania.ConfigIni.bLeft.Guitar = this.iGuitarLeft.bON;
\r
2259 CDTXMania.ConfigIni.nInputAdjustTimeMs.Guitar = this.iGuitarInputAdjustTimeMs.n現在の値; // #23580 2011.1.3 yyagi
\r
2261 CDTXMania.ConfigIni.n表示可能な最小コンボ数.Guitar = this.iSystemMinComboGuitar.n現在の値;
\r
2262 CDTXMania.ConfigIni.b演奏音を強調する.Guitar = this.iSystemSoundMonitorGuitar.bON;
\r
2264 //-----------------
\r