OSDN Git Service

リポジトリの中間ファイルをすべて削除し、再構築。
[dtxmania/dtxmania.git] / DTXManiaプロジェクト / コード / 全体 / CConfigIni.cs
1 using System;\r
2 using System.Collections.Generic;\r
3 using System.Text;\r
4 using System.Runtime.InteropServices;\r
5 using System.IO;\r
6 using System.Diagnostics;\r
7 using FDK;\r
8 \r
9 namespace DTXMania\r
10 {\r
11         internal class CConfigIni\r
12         {\r
13                 // クラス\r
14 \r
15                 public class CKeyAssign\r
16                 {\r
17                         public class CKeyAssignPad\r
18                         {\r
19                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] B\r
20                                 {\r
21                                         get\r
22                                         {\r
23                                                 return this.padBD_B;\r
24                                         }\r
25                                         set\r
26                                         {\r
27                                                 this.padBD_B = value;\r
28                                         }\r
29                                 }\r
30                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] BD\r
31                                 {\r
32                                         get\r
33                                         {\r
34                                                 return this.padBD_B;\r
35                                         }\r
36                                         set\r
37                                         {\r
38                                                 this.padBD_B = value;\r
39                                         }\r
40                                 }\r
41                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] Cancel\r
42                                 {\r
43                                         get\r
44                                         {\r
45                                                 return this.padFT_Cancel;\r
46                                         }\r
47                                         set\r
48                                         {\r
49                                                 this.padFT_Cancel = value;\r
50                                         }\r
51                                 }\r
52                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] CY\r
53                                 {\r
54                                         get\r
55                                         {\r
56                                                 return this.padCY_Decide;\r
57                                         }\r
58                                         set\r
59                                         {\r
60                                                 this.padCY_Decide = value;\r
61                                         }\r
62                                 }\r
63                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] Decide\r
64                                 {\r
65                                         get\r
66                                         {\r
67                                                 return this.padCY_Decide;\r
68                                         }\r
69                                         set\r
70                                         {\r
71                                                 this.padCY_Decide = value;\r
72                                         }\r
73                                 }\r
74                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] FT\r
75                                 {\r
76                                         get\r
77                                         {\r
78                                                 return this.padFT_Cancel;\r
79                                         }\r
80                                         set\r
81                                         {\r
82                                                 this.padFT_Cancel = value;\r
83                                         }\r
84                                 }\r
85                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] G\r
86                                 {\r
87                                         get\r
88                                         {\r
89                                                 return this.padSD_G;\r
90                                         }\r
91                                         set\r
92                                         {\r
93                                                 this.padSD_G = value;\r
94                                         }\r
95                                 }\r
96                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] HH\r
97                                 {\r
98                                         get\r
99                                         {\r
100                                                 return this.padHH_R;\r
101                                         }\r
102                                         set\r
103                                         {\r
104                                                 this.padHH_R = value;\r
105                                         }\r
106                                 }\r
107                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] HHO\r
108                                 {\r
109                                         get\r
110                                         {\r
111                                                 return this.padHHO;\r
112                                         }\r
113                                         set\r
114                                         {\r
115                                                 this.padHHO = value;\r
116                                         }\r
117                                 }\r
118                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] HT\r
119                                 {\r
120                                         get\r
121                                         {\r
122                                                 return this.padHT_Pick;\r
123                                         }\r
124                                         set\r
125                                         {\r
126                                                 this.padHT_Pick = value;\r
127                                         }\r
128                                 }\r
129                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] this[ int index ]\r
130                                 {\r
131                                         get\r
132                                         {\r
133                                                 switch( index )\r
134                                                 {\r
135                                                         case 0:\r
136                                                                 return this.padHH_R;\r
137 \r
138                                                         case 1:\r
139                                                                 return this.padSD_G;\r
140 \r
141                                                         case 2:\r
142                                                                 return this.padBD_B;\r
143 \r
144                                                         case 3:\r
145                                                                 return this.padHT_Pick;\r
146 \r
147                                                         case 4:\r
148                                                                 return this.padLT_Wail;\r
149 \r
150                                                         case 5:\r
151                                                                 return this.padFT_Cancel;\r
152 \r
153                                                         case 6:\r
154                                                                 return this.padCY_Decide;\r
155 \r
156                                                         case 7:\r
157                                                                 return this.padHHO;\r
158 \r
159                                                         case 8:\r
160                                                                 return this.padRD;\r
161 \r
162                                                         case 9:\r
163                                                                 return this.padLC;\r
164                                                 }\r
165                                                 throw new IndexOutOfRangeException();\r
166                                         }\r
167                                         set\r
168                                         {\r
169                                                 switch( index )\r
170                                                 {\r
171                                                         case 0:\r
172                                                                 this.padHH_R = value;\r
173                                                                 return;\r
174 \r
175                                                         case 1:\r
176                                                                 this.padSD_G = value;\r
177                                                                 return;\r
178 \r
179                                                         case 2:\r
180                                                                 this.padBD_B = value;\r
181                                                                 return;\r
182 \r
183                                                         case 3:\r
184                                                                 this.padHT_Pick = value;\r
185                                                                 return;\r
186 \r
187                                                         case 4:\r
188                                                                 this.padLT_Wail = value;\r
189                                                                 return;\r
190 \r
191                                                         case 5:\r
192                                                                 this.padFT_Cancel = value;\r
193                                                                 return;\r
194 \r
195                                                         case 6:\r
196                                                                 this.padCY_Decide = value;\r
197                                                                 return;\r
198 \r
199                                                         case 7:\r
200                                                                 this.padHHO = value;\r
201                                                                 return;\r
202 \r
203                                                         case 8:\r
204                                                                 this.padRD = value;\r
205                                                                 return;\r
206 \r
207                                                         case 9:\r
208                                                                 this.padLC = value;\r
209                                                                 return;\r
210                                                 }\r
211                                                 throw new IndexOutOfRangeException();\r
212                                         }\r
213                                 }\r
214                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] LC\r
215                                 {\r
216                                         get\r
217                                         {\r
218                                                 return this.padLC;\r
219                                         }\r
220                                         set\r
221                                         {\r
222                                                 this.padLC = value;\r
223                                         }\r
224                                 }\r
225                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] LT\r
226                                 {\r
227                                         get\r
228                                         {\r
229                                                 return this.padLT_Wail;\r
230                                         }\r
231                                         set\r
232                                         {\r
233                                                 this.padLT_Wail = value;\r
234                                         }\r
235                                 }\r
236                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] Pick\r
237                                 {\r
238                                         get\r
239                                         {\r
240                                                 return this.padHT_Pick;\r
241                                         }\r
242                                         set\r
243                                         {\r
244                                                 this.padHT_Pick = value;\r
245                                         }\r
246                                 }\r
247                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] R\r
248                                 {\r
249                                         get\r
250                                         {\r
251                                                 return this.padHH_R;\r
252                                         }\r
253                                         set\r
254                                         {\r
255                                                 this.padHH_R = value;\r
256                                         }\r
257                                 }\r
258                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] RD\r
259                                 {\r
260                                         get\r
261                                         {\r
262                                                 return this.padRD;\r
263                                         }\r
264                                         set\r
265                                         {\r
266                                                 this.padRD = value;\r
267                                         }\r
268                                 }\r
269                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] SD\r
270                                 {\r
271                                         get\r
272                                         {\r
273                                                 return this.padSD_G;\r
274                                         }\r
275                                         set\r
276                                         {\r
277                                                 this.padSD_G = value;\r
278                                         }\r
279                                 }\r
280                                 public CConfigIni.CKeyAssign.STKEYASSIGN[] Wail\r
281                                 {\r
282                                         get\r
283                                         {\r
284                                                 return this.padLT_Wail;\r
285                                         }\r
286                                         set\r
287                                         {\r
288                                                 this.padLT_Wail = value;\r
289                                         }\r
290                                 }\r
291 \r
292                                 #region [ private ]\r
293                                 //-----------------\r
294                                 private CConfigIni.CKeyAssign.STKEYASSIGN[] padBD_B;\r
295                                 private CConfigIni.CKeyAssign.STKEYASSIGN[] padCY_Decide;\r
296                                 private CConfigIni.CKeyAssign.STKEYASSIGN[] padFT_Cancel;\r
297                                 private CConfigIni.CKeyAssign.STKEYASSIGN[] padHH_R;\r
298                                 private CConfigIni.CKeyAssign.STKEYASSIGN[] padHHO;\r
299                                 private CConfigIni.CKeyAssign.STKEYASSIGN[] padHT_Pick;\r
300                                 private CConfigIni.CKeyAssign.STKEYASSIGN[] padLC;\r
301                                 private CConfigIni.CKeyAssign.STKEYASSIGN[] padLT_Wail;\r
302                                 private CConfigIni.CKeyAssign.STKEYASSIGN[] padRD;\r
303                                 private CConfigIni.CKeyAssign.STKEYASSIGN[] padSD_G;\r
304                                 //-----------------\r
305                                 #endregion\r
306                         }\r
307 \r
308                         [StructLayout( LayoutKind.Sequential )]\r
309                         public struct STKEYASSIGN\r
310                         {\r
311                                 public E入力デバイス 入力デバイス;\r
312                                 public int ID;\r
313                                 public int コード;\r
314                                 public STKEYASSIGN( E入力デバイス DeviceType, int nID, int nCode )\r
315                                 {\r
316                                         this.入力デバイス = DeviceType;\r
317                                         this.ID = nID;\r
318                                         this.コード = nCode;\r
319                                 }\r
320                         }\r
321 \r
322                         public CKeyAssignPad Bass = new CKeyAssignPad();\r
323                         public CKeyAssignPad Drums = new CKeyAssignPad();\r
324                         public CKeyAssignPad Guitar = new CKeyAssignPad();\r
325                         public CKeyAssignPad this[ int index ]\r
326                         {\r
327                                 get\r
328                                 {\r
329                                         switch( index )\r
330                                         {\r
331                                                 case 0:\r
332                                                         return this.Drums;\r
333 \r
334                                                 case 1:\r
335                                                         return this.Guitar;\r
336 \r
337                                                 case 2:\r
338                                                         return this.Bass;\r
339                                         }\r
340                                         throw new IndexOutOfRangeException();\r
341                                 }\r
342                                 set\r
343                                 {\r
344                                         switch( index )\r
345                                         {\r
346                                                 case 0:\r
347                                                         this.Drums = value;\r
348                                                         return;\r
349 \r
350                                                 case 1:\r
351                                                         this.Guitar = value;\r
352                                                         return;\r
353 \r
354                                                 case 2:\r
355                                                         this.Bass = value;\r
356                                                         return;\r
357                                         }\r
358                                         throw new IndexOutOfRangeException();\r
359                                 }\r
360                         }\r
361                 }\r
362                 \r
363 \r
364                 // プロパティ\r
365 \r
366                 public int nBGAlpha;\r
367                 public bool bAVI有効;\r
368                 public bool bBGA有効;\r
369                 public bool bBGM音を発声する;\r
370                 public STDGBVALUE<bool> bHidden;\r
371                 public STDGBVALUE<bool> bLeft;\r
372                 public STDGBVALUE<bool> bLight;\r
373                 public bool bLogDTX詳細ログ出力;\r
374                 public bool bLog曲検索ログ出力;\r
375                 public bool bLog作成解放ログ出力;\r
376                 public STDGBVALUE<bool> bReverse;\r
377                 public bool bScoreIniを出力する;\r
378                 public bool bSTAGEFAILED有効;\r
379                 public STDGBVALUE<bool> bSudden;\r
380                 public bool bTight;\r
381                 public bool bWave再生位置自動調整機能有効;\r
382                 public bool bシンバルフリー;\r
383                 public bool bストイックモード;\r
384                 public bool bドラム打音を発声する;\r
385                 public bool bフィルイン有効;\r
386                 public bool bランダムセレクトで子BOXを検索対象とする;\r
387                 public bool bログ出力;\r
388                 public STDGBVALUE<bool> b演奏音を強調する;\r
389                 public bool b演奏情報を表示する;\r
390                 public bool b歓声を発声する;\r
391                 public bool b垂直帰線待ちを行う;\r
392                 public bool b選曲リストフォントを斜体にする;\r
393                 public bool b選曲リストフォントを太字にする;\r
394                 public bool b全画面モード;\r
395                 public Dictionary<int, string> dicJoystick;\r
396                 public ECYGroup eCYGroup;\r
397                 public Eダークモード eDark;\r
398                 public EFTGroup eFTGroup;\r
399                 public EHHGroup eHHGroup;\r
400                 public E打ち分け時の再生の優先順位 eHitSoundPriorityCY;\r
401                 public E打ち分け時の再生の優先順位 eHitSoundPriorityFT;\r
402                 public E打ち分け時の再生の優先順位 eHitSoundPriorityHH;\r
403                 public STDGBVALUE<Eランダムモード> eRandom;\r
404                 public Eダメージレベル eダメージレベル;\r
405                 public CKeyAssign KeyAssign;\r
406                 public int n演奏速度;\r
407                 public int n曲が選択されてからプレビュー音が鳴るまでのウェイトms;\r
408                 public int n曲が選択されてからプレビュー画像が表示開始されるまでのウェイトms;\r
409                 public int n自動再生音量;\r
410                 public int n手動再生音量;\r
411                 public int n選曲リストフォントのサイズdot;\r
412                 public STDGBVALUE<int> n表示可能な最小コンボ数;\r
413                 public STDGBVALUE<int> n譜面スクロール速度;\r
414                 public string strDTXManiaのバージョン;\r
415                 public string str曲データ検索パス;\r
416                 public string str選曲リストフォント;\r
417                 public Eドラムコンボ文字の表示位置 ドラムコンボ文字の表示位置;\r
418                 public STDGBVALUE<E判定文字表示位置> 判定文字表示位置;\r
419                 public int nハイハット切り捨て下限Velocity;\r
420                 public bool bバッファ入力を行う;\r
421                 public bool bConfigIniがないかDTXManiaのバージョンが異なる\r
422                 {\r
423                         get\r
424                         {\r
425                                 return ( !this.bConfigIniが存在している || !CDTXMania.VERSION.Equals( this.strDTXManiaのバージョン ) );\r
426                         }\r
427                 }\r
428                 public bool bDrums有効\r
429                 {\r
430                         get\r
431                         {\r
432                                 return this._bDrums有効;\r
433                         }\r
434                         set\r
435                         {\r
436                                 this._bDrums有効 = value;\r
437                                 if( !this._bGuitar有効 && !this._bDrums有効 )\r
438                                 {\r
439                                         this._bGuitar有効 = true;\r
440                                 }\r
441                         }\r
442                 }\r
443                 public bool bEnterがキー割り当てのどこにも使用されていない\r
444                 {\r
445                         get\r
446                         {\r
447                                 for( int i = 0; i < 3; i++ )\r
448                                 {\r
449                                         for( int j = 0; j < 10; j++ )\r
450                                         {\r
451                                                 for( int k = 0; k < 0x10; k++ )\r
452                                                 {\r
453                                                         if( ( this.KeyAssign[ i ][ j ][ k ].入力デバイス == E入力デバイス.キーボード ) && ( this.KeyAssign[ i ][ j ][ k ].コード == 0x75 ) )\r
454                                                         {\r
455                                                                 return false;\r
456                                                         }\r
457                                                 }\r
458                                         }\r
459                                 }\r
460                                 return true;\r
461                         }\r
462                 }\r
463                 public bool bGuitar有効\r
464                 {\r
465                         get\r
466                         {\r
467                                 return this._bGuitar有効;\r
468                         }\r
469                         set\r
470                         {\r
471                                 this._bGuitar有効 = value;\r
472                                 if( !this._bGuitar有効 && !this._bDrums有効 )\r
473                                 {\r
474                                         this._bDrums有効 = true;\r
475                                 }\r
476                         }\r
477                 }\r
478                 public bool bウィンドウモード\r
479                 {\r
480                         get\r
481                         {\r
482                                 return !this.b全画面モード;\r
483                         }\r
484                         set\r
485                         {\r
486                                 this.b全画面モード = !value;\r
487                         }\r
488                 }\r
489                 public bool bギタレボモード\r
490                 {\r
491                         get\r
492                         {\r
493                                 return ( !this.bDrums有効 && this.bGuitar有効 );\r
494                         }\r
495                 }\r
496                 public bool bドラムが全部オートプレイである\r
497                 {\r
498                         get\r
499                         {\r
500                                 for( int i = 0; i < 8; i++ )\r
501                                 {\r
502                                         if( !this.bAutoPlay[ i ] )\r
503                                         {\r
504                                                 return false;\r
505                                         }\r
506                                 }\r
507                                 return true;\r
508                         }\r
509                 }\r
510                 public bool b演奏情報を表示しない\r
511                 {\r
512                         get\r
513                         {\r
514                                 return !this.b演奏情報を表示する;\r
515                         }\r
516                         set\r
517                         {\r
518                                 this.b演奏情報を表示する = !value;\r
519                         }\r
520                 }\r
521                 public int n背景の透過度\r
522                 {\r
523                         get\r
524                         {\r
525                                 return this.nBGAlpha;\r
526                         }\r
527                         set\r
528                         {\r
529                                 if( value < 0 )\r
530                                 {\r
531                                         this.nBGAlpha = 0;\r
532                                 }\r
533                                 else if( value > 0xff )\r
534                                 {\r
535                                         this.nBGAlpha = 0xff;\r
536                                 }\r
537                                 else\r
538                                 {\r
539                                         this.nBGAlpha = value;\r
540                                 }\r
541                         }\r
542                 }\r
543 \r
544                 public STAUTOPLAY bAutoPlay;\r
545                 [StructLayout( LayoutKind.Sequential )]\r
546                 public struct STAUTOPLAY\r
547                 {\r
548                         public bool LC;\r
549                         public bool HH;\r
550                         public bool SD;\r
551                         public bool BD;\r
552                         public bool HT;\r
553                         public bool LT;\r
554                         public bool FT;\r
555                         public bool CY;\r
556                         public bool Guitar;\r
557                         public bool Bass;\r
558                         public bool this[ int index ]\r
559                         {\r
560                                 get\r
561                                 {\r
562                                         switch( index )\r
563                                         {\r
564                                                 case 0:\r
565                                                         return this.LC;\r
566 \r
567                                                 case 1:\r
568                                                         return this.HH;\r
569 \r
570                                                 case 2:\r
571                                                         return this.SD;\r
572 \r
573                                                 case 3:\r
574                                                         return this.BD;\r
575 \r
576                                                 case 4:\r
577                                                         return this.HT;\r
578 \r
579                                                 case 5:\r
580                                                         return this.LT;\r
581 \r
582                                                 case 6:\r
583                                                         return this.FT;\r
584 \r
585                                                 case 7:\r
586                                                         return this.CY;\r
587 \r
588                                                 case 8:\r
589                                                         return this.Guitar;\r
590 \r
591                                                 case 9:\r
592                                                         return this.Bass;\r
593                                         }\r
594                                         throw new IndexOutOfRangeException();\r
595                                 }\r
596                                 set\r
597                                 {\r
598                                         switch( index )\r
599                                         {\r
600                                                 case 0:\r
601                                                         this.LC = value;\r
602                                                         return;\r
603 \r
604                                                 case 1:\r
605                                                         this.HH = value;\r
606                                                         return;\r
607 \r
608                                                 case 2:\r
609                                                         this.SD = value;\r
610                                                         return;\r
611 \r
612                                                 case 3:\r
613                                                         this.BD = value;\r
614                                                         return;\r
615 \r
616                                                 case 4:\r
617                                                         this.HT = value;\r
618                                                         return;\r
619 \r
620                                                 case 5:\r
621                                                         this.LT = value;\r
622                                                         return;\r
623 \r
624                                                 case 6:\r
625                                                         this.FT = value;\r
626                                                         return;\r
627 \r
628                                                 case 7:\r
629                                                         this.CY = value;\r
630                                                         return;\r
631 \r
632                                                 case 8:\r
633                                                         this.Guitar = value;\r
634                                                         return;\r
635 \r
636                                                 case 9:\r
637                                                         this.Bass = value;\r
638                                                         return;\r
639                                         }\r
640                                         throw new IndexOutOfRangeException();\r
641                                 }\r
642                         }\r
643                 }\r
644 \r
645                 public STRANGE nヒット範囲ms;\r
646                 [StructLayout( LayoutKind.Sequential )]\r
647                 public struct STRANGE\r
648                 {\r
649                         public int Perfect;\r
650                         public int Great;\r
651                         public int Good;\r
652                         public int Poor;\r
653                         public int this[ int index ]\r
654                         {\r
655                                 get\r
656                                 {\r
657                                         switch( index )\r
658                                         {\r
659                                                 case 0:\r
660                                                         return this.Perfect;\r
661 \r
662                                                 case 1:\r
663                                                         return this.Great;\r
664 \r
665                                                 case 2:\r
666                                                         return this.Good;\r
667 \r
668                                                 case 3:\r
669                                                         return this.Poor;\r
670                                         }\r
671                                         throw new IndexOutOfRangeException();\r
672                                 }\r
673                                 set\r
674                                 {\r
675                                         switch( index )\r
676                                         {\r
677                                                 case 0:\r
678                                                         this.Perfect = value;\r
679                                                         return;\r
680 \r
681                                                 case 1:\r
682                                                         this.Great = value;\r
683                                                         return;\r
684 \r
685                                                 case 2:\r
686                                                         this.Good = value;\r
687                                                         return;\r
688 \r
689                                                 case 3:\r
690                                                         this.Poor = value;\r
691                                                         return;\r
692                                         }\r
693                                         throw new IndexOutOfRangeException();\r
694                                 }\r
695                         }\r
696                 }\r
697                 \r
698 \r
699                 // コンストラクタ\r
700 \r
701                 public CConfigIni()\r
702                 {\r
703                         this.strDTXManiaのバージョン = "Unknown";\r
704                         this.str曲データ検索パス = @".\";\r
705                         this.b全画面モード = false;\r
706                         this.b垂直帰線待ちを行う = true;\r
707                         this._bGuitar有効 = true;\r
708                         this._bDrums有効 = true;\r
709                         this.nBGAlpha = 100;\r
710                         this.eダメージレベル = Eダメージレベル.普通;\r
711                         this.bSTAGEFAILED有効 = true;\r
712                         this.bAVI有効 = true;\r
713                         this.bBGA有効 = true;\r
714                         this.bフィルイン有効 = true;\r
715                         this.n曲が選択されてからプレビュー音が鳴るまでのウェイトms = 0x3e8;\r
716                         this.n曲が選択されてからプレビュー画像が表示開始されるまでのウェイトms = 100;\r
717                         this.bWave再生位置自動調整機能有効 = true;\r
718                         this.bBGM音を発声する = true;\r
719                         this.bドラム打音を発声する = true;\r
720                         this.b歓声を発声する = true;\r
721                         this.bScoreIniを出力する = true;\r
722                         this.bランダムセレクトで子BOXを検索対象とする = true;\r
723                         STDGBVALUE<bool> stdgbvalue = new STDGBVALUE<bool>();\r
724                         stdgbvalue.Drums = true;\r
725                         stdgbvalue.Guitar = true;\r
726                         stdgbvalue.Bass = true;\r
727                         this.b演奏音を強調する = stdgbvalue;\r
728                         STDGBVALUE<int> stdgbvalue2 = new STDGBVALUE<int>();\r
729                         stdgbvalue2.Drums = 11;\r
730                         stdgbvalue2.Guitar = 2;\r
731                         stdgbvalue2.Bass = 2;\r
732                         this.n表示可能な最小コンボ数 = stdgbvalue2;\r
733                         this.str選曲リストフォント = "MS PGothic";\r
734                         this.n選曲リストフォントのサイズdot = 20;\r
735                         this.b選曲リストフォントを太字にする = true;\r
736                         this.n自動再生音量 = 80;\r
737                         this.n手動再生音量 = 100;\r
738                         this.bログ出力 = true;\r
739                         STDGBVALUE<bool> stdgbvalue3 = new STDGBVALUE<bool>();\r
740                         stdgbvalue3.Drums = false;\r
741                         stdgbvalue3.Guitar = false;\r
742                         stdgbvalue3.Bass = false;\r
743                         this.bSudden = stdgbvalue3;\r
744                         STDGBVALUE<bool> stdgbvalue4 = new STDGBVALUE<bool>();\r
745                         stdgbvalue4.Drums = false;\r
746                         stdgbvalue4.Guitar = false;\r
747                         stdgbvalue4.Bass = false;\r
748                         this.bHidden = stdgbvalue4;\r
749                         STDGBVALUE<bool> stdgbvalue5 = new STDGBVALUE<bool>();\r
750                         stdgbvalue5.Drums = false;\r
751                         stdgbvalue5.Guitar = false;\r
752                         stdgbvalue5.Bass = false;\r
753                         this.bReverse = stdgbvalue5;\r
754                         STDGBVALUE<Eランダムモード> stdgbvalue6 = new STDGBVALUE<Eランダムモード>();\r
755                         stdgbvalue6.Drums = Eランダムモード.OFF;\r
756                         stdgbvalue6.Guitar = Eランダムモード.OFF;\r
757                         stdgbvalue6.Bass = Eランダムモード.OFF;\r
758                         this.eRandom = stdgbvalue6;\r
759                         STDGBVALUE<bool> stdgbvalue7 = new STDGBVALUE<bool>();\r
760                         stdgbvalue7.Drums = false;\r
761                         stdgbvalue7.Guitar = false;\r
762                         stdgbvalue7.Bass = false;\r
763                         this.bLight = stdgbvalue7;\r
764                         STDGBVALUE<bool> stdgbvalue8 = new STDGBVALUE<bool>();\r
765                         stdgbvalue8.Drums = false;\r
766                         stdgbvalue8.Guitar = false;\r
767                         stdgbvalue8.Bass = false;\r
768                         this.bLeft = stdgbvalue8;\r
769                         STDGBVALUE<E判定文字表示位置> stdgbvalue9 = new STDGBVALUE<E判定文字表示位置>();\r
770                         stdgbvalue9.Drums = E判定文字表示位置.レーン上;\r
771                         stdgbvalue9.Guitar = E判定文字表示位置.レーン上;\r
772                         stdgbvalue9.Bass = E判定文字表示位置.レーン上;\r
773                         this.判定文字表示位置 = stdgbvalue9;\r
774                         STDGBVALUE<int> stdgbvalue10 = new STDGBVALUE<int>();\r
775                         stdgbvalue10.Drums = 1;\r
776                         stdgbvalue10.Guitar = 1;\r
777                         stdgbvalue10.Bass = 1;\r
778                         this.n譜面スクロール速度 = stdgbvalue10;\r
779                         this.n演奏速度 = 20;\r
780                         STAUTOPLAY stautoplay = new STAUTOPLAY();\r
781                         stautoplay.HH = false;\r
782                         stautoplay.SD = false;\r
783                         stautoplay.BD = false;\r
784                         stautoplay.HT = false;\r
785                         stautoplay.LT = false;\r
786                         stautoplay.FT = false;\r
787                         stautoplay.CY = false;\r
788                         stautoplay.LC = false;\r
789                         stautoplay.Guitar = true;\r
790                         stautoplay.Bass = true;\r
791                         this.bAutoPlay = stautoplay;\r
792                         STRANGE strange = new STRANGE();\r
793                         strange.Perfect = 0x22;\r
794                         strange.Great = 0x43;\r
795                         strange.Good = 0x54;\r
796                         strange.Poor = 0x75;\r
797                         this.nヒット範囲ms = strange;\r
798                         this.ConfigIniファイル名 = "";\r
799                         this.dicJoystick = new Dictionary<int, string>( 10 );\r
800                         this.tデフォルトのキーアサインに設定する();\r
801                         this.nハイハット切り捨て下限Velocity = 20;\r
802                         this.bバッファ入力を行う = true;\r
803                 }\r
804                 public CConfigIni( string iniファイル名 )\r
805                         : this()\r
806                 {\r
807                         this.t読み込み( iniファイル名 );\r
808                 }\r
809 \r
810 \r
811                 // メソッド\r
812 \r
813                 public void t指定した入力が既にアサイン済みである場合はそれを全削除する( E入力デバイス DeviceType, int nID, int nCode )\r
814                 {\r
815                         for( int i = 0; i < 3; i++ )\r
816                         {\r
817                                 for( int j = 0; j < 10; j++ )\r
818                                 {\r
819                                         for( int k = 0; k < 0x10; k++ )\r
820                                         {\r
821                                                 if( ( ( this.KeyAssign[ i ][ j ][ k ].入力デバイス == DeviceType ) && ( this.KeyAssign[ i ][ j ][ k ].ID == nID ) ) && ( this.KeyAssign[ i ][ j ][ k ].コード == nCode ) )\r
822                                                 {\r
823                                                         for( int m = k; m < 15; m++ )\r
824                                                         {\r
825                                                                 this.KeyAssign[ i ][ j ][ m ] = this.KeyAssign[ i ][ j ][ m + 1 ];\r
826                                                         }\r
827                                                         this.KeyAssign[ i ][ j ][ 15 ].入力デバイス = E入力デバイス.不明;\r
828                                                         this.KeyAssign[ i ][ j ][ 15 ].ID = 0;\r
829                                                         this.KeyAssign[ i ][ j ][ 15 ].コード = 0;\r
830                                                         k--;\r
831                                                 }\r
832                                         }\r
833                                 }\r
834                         }\r
835                 }\r
836                 public void t書き出し( string iniファイル名 )\r
837                 {\r
838                         StreamWriter sw = new StreamWriter( iniファイル名, false, Encoding.GetEncoding( "shift-jis" ) );\r
839                         sw.WriteLine( ";-------------------" );\r
840                         sw.WriteLine( "[System]" );\r
841                         sw.WriteLine();\r
842                         sw.WriteLine( "; リリースバージョン" );\r
843                         sw.WriteLine( "Version={0}", CDTXMania.VERSION );\r
844                         sw.WriteLine();\r
845                         sw.WriteLine( "; 演奏データの格納されているフォルダへのパス。" );\r
846                         sw.WriteLine( @"; セミコロン(;)で区切ることにより複数のパスを指定できます。(例: d:\DTXFiles1\;e:\DTXFiles2\)" );\r
847                         sw.WriteLine( "DTXPath={0}", this.str曲データ検索パス );\r
848                         sw.WriteLine();\r
849                         sw.WriteLine( "; 画面モード(0:ウィンドウ, 1:全画面)" );\r
850                         sw.WriteLine( "FullScreen={0}", this.b全画面モード ? 1 : 0 );\r
851                         sw.WriteLine();\r
852                         sw.WriteLine( "; 垂直帰線同期(0:OFF,1:ON)" );\r
853                         sw.WriteLine( "VSyncWait={0}", this.b垂直帰線待ちを行う ? 1 : 0 );\r
854                         sw.WriteLine();\r
855                         sw.WriteLine( "; ギター/ベース有効(0:OFF,1:ON)" );\r
856                         sw.WriteLine( "Guitar={0}", this.bGuitar有効 ? 1 : 0 );\r
857                         sw.WriteLine();\r
858                         sw.WriteLine( "; ドラム有効(0:OFF,1:ON)" );\r
859                         sw.WriteLine( "Drums={0}", this.bDrums有効 ? 1 : 0 );\r
860                         sw.WriteLine();\r
861                         sw.WriteLine( "; 背景画像の半透明割合(0:透明~255:不透明)" );\r
862                         sw.WriteLine( "BGAlpha={0}", this.nBGAlpha );\r
863                         sw.WriteLine();\r
864                         sw.WriteLine( "; Missヒット時のゲージ減少割合(0:少, 1:普通, 2:大)" );\r
865                         sw.WriteLine( "DamageLevel={0}", (int) this.eダメージレベル );\r
866                         sw.WriteLine();\r
867                         sw.WriteLine( "; LC/HHC/HHO 打ち分けモード(0:LC|HHC|HHO, 1:LC&(HHC|HHO), 2:LC&HHC&HHO)" );\r
868                         sw.WriteLine( "HHGroup={0}", (int) this.eHHGroup );\r
869                         sw.WriteLine();\r
870                         sw.WriteLine( "; LT/FT 打ち分けモード(0:LT|FT, 1:LT&FT)" );\r
871                         sw.WriteLine( "FTGroup={0}", (int) this.eFTGroup );\r
872                         sw.WriteLine();\r
873                         sw.WriteLine( "; CY/RD 打ち分けモード(0:CY|RD, 1:CY&RD)" );\r
874                         sw.WriteLine( "CYGroup={0}", (int) this.eCYGroup );\r
875                         sw.WriteLine();\r
876                         sw.WriteLine( "; 打ち分け時の再生音の優先順位(HHGroup)(0:Chip>Pad, 1:Pad>Chip)" );\r
877                         sw.WriteLine( "HitSoundPriorityHH={0}", (int) this.eHitSoundPriorityHH );\r
878                         sw.WriteLine();\r
879                         sw.WriteLine( "; 打ち分け時の再生音の優先順位(FTGroup)(0:Chip>Pad, 1:Pad>Chip)" );\r
880                         sw.WriteLine( "HitSoundPriorityFT={0}", (int) this.eHitSoundPriorityFT );\r
881                         sw.WriteLine();\r
882                         sw.WriteLine( "; 打ち分け時の再生音の優先順位(CYGroup)(0:Chip>Pad, 1:Pad>Chip)" );\r
883                         sw.WriteLine( "HitSoundPriorityCY={0}", (int) this.eHitSoundPriorityCY );\r
884                         sw.WriteLine();\r
885                         sw.WriteLine( "; ゲージゼロでSTAGE FAILED (0:OFF, 1:ON)" );\r
886                         sw.WriteLine( "StageFailed={0}", this.bSTAGEFAILED有効 ? 1 : 0 );\r
887                         sw.WriteLine();\r
888                         sw.WriteLine( "; AVIの表示(0:OFF, 1:ON)" );\r
889                         sw.WriteLine( "AVI={0}", this.bAVI有効 ? 1 : 0 );\r
890                         sw.WriteLine();\r
891                         sw.WriteLine( "; BGAの表示(0:OFF, 1:ON)" );\r
892                         sw.WriteLine( "BGA={0}", this.bBGA有効 ? 1 : 0 );\r
893                         sw.WriteLine();\r
894                         sw.WriteLine( "; フィルイン効果(0:OFF, 1:ON)" );\r
895                         sw.WriteLine( "FillInEffect={0}", this.bフィルイン有効 ? 1 : 0 );\r
896                         sw.WriteLine();\r
897                         sw.WriteLine( "; 曲選択からプレビュー音の再生までのウェイト[ms]" );\r
898                         sw.WriteLine( "PreviewSoundWait={0}", this.n曲が選択されてからプレビュー音が鳴るまでのウェイトms );\r
899                         sw.WriteLine();\r
900                         sw.WriteLine( "; 曲選択からプレビュー画像表示までのウェイト[ms]" );\r
901                         sw.WriteLine( "PreviewImageWait={0}", this.n曲が選択されてからプレビュー画像が表示開始されるまでのウェイトms );\r
902                         sw.WriteLine();\r
903                         sw.WriteLine( "; Waveの再生位置自動補正(0:OFF, 1:ON)" );\r
904                         sw.WriteLine( "AdjustWaves={0}", this.bWave再生位置自動調整機能有効 ? 1 : 0 );\r
905                         sw.WriteLine();\r
906                         sw.WriteLine( "; BGM の再生(0:OFF, 1:ON)" );\r
907                         sw.WriteLine( "BGMSound={0}", this.bBGM音を発声する ? 1 : 0 );\r
908                         sw.WriteLine();\r
909                         sw.WriteLine( "; ドラム打音の再生(0:OFF, 1:ON)" );\r
910                         sw.WriteLine( "HitSound={0}", this.bドラム打音を発声する ? 1 : 0 );\r
911                         sw.WriteLine();\r
912                         sw.WriteLine( "; フィルイン達成時の歓声の再生(0:OFF, 1:ON)" );\r
913                         sw.WriteLine( "AudienceSound={0}", this.b歓声を発声する ? 1 : 0 );\r
914                         sw.WriteLine();\r
915                         sw.WriteLine( "; 演奏記録(~.score.ini)の出力 (0:OFF, 1:ON)" );\r
916                         sw.WriteLine( "SaveScoreIni={0}", this.bScoreIniを出力する ? 1 : 0 );\r
917                         sw.WriteLine();\r
918                         sw.WriteLine( "; RANDOM SELECT で子BOXを検索対象に含める (0:OFF, 1:ON)" );\r
919                         sw.WriteLine( "RandomFromSubBox={0}", this.bランダムセレクトで子BOXを検索対象とする ? 1 : 0 );\r
920                         sw.WriteLine();\r
921                         sw.WriteLine( "; ドラム演奏時にドラム音を強調する (0:OFF, 1:ON)" );\r
922                         sw.WriteLine( "SoundMonitorDrums={0}", this.b演奏音を強調する.Drums ? 1 : 0 );\r
923                         sw.WriteLine();\r
924                         sw.WriteLine( "; ギター演奏時にギター音を強調する (0:OFF, 1:ON)" );\r
925                         sw.WriteLine( "SoundMonitorGuitar={0}", this.b演奏音を強調する.Guitar ? 1 : 0 );\r
926                         sw.WriteLine();\r
927                         sw.WriteLine( "; ベース演奏時にベース音を強調する (0:OFF, 1:ON)" );\r
928                         sw.WriteLine( "SoundMonitorBass={0}", this.b演奏音を強調する.Bass ? 1 : 0 );\r
929                         sw.WriteLine();\r
930                         sw.WriteLine( "; ドラムの表示可能な最小コンボ数(1~99999)" );\r
931                         sw.WriteLine( "MinComboDrums={0}", this.n表示可能な最小コンボ数.Drums );\r
932                         sw.WriteLine();\r
933                         sw.WriteLine( "; ギターの表示可能な最小コンボ数(1~99999)" );\r
934                         sw.WriteLine( "MinComboGuitar={0}", this.n表示可能な最小コンボ数.Guitar );\r
935                         sw.WriteLine();\r
936                         sw.WriteLine( "; ベースの表示可能な最小コンボ数(1~99999)" );\r
937                         sw.WriteLine( "MinComboBass={0}", this.n表示可能な最小コンボ数.Bass );\r
938                         sw.WriteLine();\r
939                         sw.WriteLine( "; 演奏情報を表示する (0:OFF, 1:ON)" );\r
940                         sw.WriteLine( "ShowDebugStatus={0}", this.b演奏情報を表示する ? 1 : 0 );\r
941                         sw.WriteLine();\r
942                         sw.WriteLine( "; 選曲リストのフォント名" );\r
943                         sw.WriteLine( "SelectListFontName={0}", this.str選曲リストフォント );\r
944                         sw.WriteLine();\r
945                         sw.WriteLine( "; 選曲リストのフォントのサイズ[dot]" );\r
946                         sw.WriteLine( "SelectListFontSize={0}", this.n選曲リストフォントのサイズdot );\r
947                         sw.WriteLine();\r
948                         sw.WriteLine( "; 選曲リストのフォントを斜体にする (0:OFF, 1:ON)" );\r
949                         sw.WriteLine( "SelectListFontItalic={0}", this.b選曲リストフォントを斜体にする ? 1 : 0 );\r
950                         sw.WriteLine();\r
951                         sw.WriteLine( "; 選曲リストのフォントを太字にする (0:OFF, 1:ON)" );\r
952                         sw.WriteLine( "SelectListFontBold={0}", this.b選曲リストフォントを太字にする ? 1 : 0 );\r
953                         sw.WriteLine();\r
954                         sw.WriteLine( "; 打音の音量(0~100%)" );\r
955                         sw.WriteLine( "ChipVolume={0}", this.n手動再生音量 );\r
956                         sw.WriteLine();\r
957                         sw.WriteLine( "; 自動再生音の音量(0~100%)" );\r
958                         sw.WriteLine( "AutoChipVolume={0}", this.n自動再生音量 );\r
959                         sw.WriteLine();\r
960                         sw.WriteLine( "; ストイックモード(0:OFF, 1:ON)" );\r
961                         sw.WriteLine( "StoicMode={0}", this.bストイックモード ? 1 : 0 );\r
962                         sw.WriteLine();\r
963                         sw.WriteLine( "; シンバルフリーモード(0:OFF, 1:ON)" );\r
964                         sw.WriteLine( "CymbalFree={0}", this.bシンバルフリー ? 1 : 0 );\r
965                         sw.WriteLine();\r
966                         sw.WriteLine( "; バッファ入力モード(0:OFF, 1:ON)" );\r
967                         sw.WriteLine( "BufferedInput={0}", this.bバッファ入力を行う ? 1 : 0 );\r
968                         sw.WriteLine();\r
969                         sw.WriteLine( "; ハイハット入力切り捨て下限Velocity値(0~127)" );\r
970                         sw.WriteLine( "HHVelocityMin={0}", this.nハイハット切り捨て下限Velocity );\r
971                         sw.WriteLine();\r
972                         sw.WriteLine( ";-------------------" );\r
973                         sw.WriteLine( "[Log]" );\r
974                         sw.WriteLine();\r
975                         sw.WriteLine( "; Log出力(0:OFF, 1:ON)" );\r
976                         sw.WriteLine( "OutputLog={0}", this.bログ出力 ? 1 : 0 );\r
977                         sw.WriteLine();\r
978                         sw.WriteLine( "; 曲データ検索に関するLog出力(0:OFF, 1:ON)" );\r
979                         sw.WriteLine( "TraceSongSearch={0}", this.bLog曲検索ログ出力 ? 1 : 0 );\r
980                         sw.WriteLine();\r
981                         sw.WriteLine( "; 画像やサウンドの作成・解放に関するLog出力(0:OFF, 1:ON)" );\r
982                         sw.WriteLine( "TraceCreatedDisposed={0}", this.bLog作成解放ログ出力 ? 1 : 0 );\r
983                         sw.WriteLine();\r
984                         sw.WriteLine( "; DTX読み込み詳細に関するLog出力(0:OFF, 1:ON)" );\r
985                         sw.WriteLine( "TraceDTXDetails={0}", this.bLogDTX詳細ログ出力 ? 1 : 0 );\r
986                         sw.WriteLine();\r
987                         sw.WriteLine( ";-------------------" );\r
988                         sw.WriteLine( "[PlayOption]" );\r
989                         sw.WriteLine();\r
990                         sw.WriteLine( "; DARKモード(0:OFF, 1:HALF, 2:FULL)" );\r
991                         sw.WriteLine( "Dark={0}", (int) this.eDark );\r
992                         sw.WriteLine();\r
993                         sw.WriteLine( "; ドラムSUDDENモード(0:OFF, 1:ON)" );\r
994                         sw.WriteLine( "DrumsSudden={0}", this.bSudden.Drums ? 1 : 0 );\r
995                         sw.WriteLine();\r
996                         sw.WriteLine( "; ギターSUDDENモード(0:OFF, 1:ON)" );\r
997                         sw.WriteLine( "GuitarSudden={0}", this.bSudden.Guitar ? 1 : 0 );\r
998                         sw.WriteLine();\r
999                         sw.WriteLine( "; ベースSUDDENモード(0:OFF, 1:ON)" );\r
1000                         sw.WriteLine( "BassSudden={0}", this.bSudden.Bass ? 1 : 0 );\r
1001                         sw.WriteLine();\r
1002                         sw.WriteLine( "; ドラムHIDDENモード(0:OFF, 1:ON)" );\r
1003                         sw.WriteLine( "DrumsHidden={0}", this.bHidden.Drums ? 1 : 0 );\r
1004                         sw.WriteLine();\r
1005                         sw.WriteLine( "; ギターHIDDENモード(0:OFF, 1:ON)" );\r
1006                         sw.WriteLine( "GuitarHidden={0}", this.bHidden.Guitar ? 1 : 0 );\r
1007                         sw.WriteLine();\r
1008                         sw.WriteLine( "; ベースHIDDENモード(0:OFF, 1:ON)" );\r
1009                         sw.WriteLine( "BassHidden={0}", this.bHidden.Bass ? 1 : 0 );\r
1010                         sw.WriteLine();\r
1011                         sw.WriteLine( "; ドラムREVERSEモード(0:OFF, 1:ON)" );\r
1012                         sw.WriteLine( "DrumsReverse={0}", this.bReverse.Drums ? 1 : 0 );\r
1013                         sw.WriteLine();\r
1014                         sw.WriteLine( "; ギターREVERSEモード(0:OFF, 1:ON)" );\r
1015                         sw.WriteLine( "GuitarReverse={0}", this.bReverse.Guitar ? 1 : 0 );\r
1016                         sw.WriteLine();\r
1017                         sw.WriteLine( "; ベースREVERSEモード(0:OFF, 1:ON)" );\r
1018                         sw.WriteLine( "BassReverse={0}", this.bReverse.Bass ? 1 : 0 );\r
1019                         sw.WriteLine();\r
1020                         sw.WriteLine( "; ギターRANDOMモード(0:OFF, 1:Random, 2:SuperRandom, 3:HyperRandom)" );\r
1021                         sw.WriteLine( "GuitarRandom={0}", (int) this.eRandom.Guitar );\r
1022                         sw.WriteLine();\r
1023                         sw.WriteLine( "; ベースRANDOMモード(0:OFF, 1:Random, 2:SuperRandom, 3:HyperRandom)" );\r
1024                         sw.WriteLine( "BassRandom={0}", (int) this.eRandom.Bass );\r
1025                         sw.WriteLine();\r
1026                         sw.WriteLine( "; ギターLIGHTモード(0:OFF, 1:ON)" );\r
1027                         sw.WriteLine( "GuitarLight={0}", this.bLight.Guitar ? 1 : 0 );\r
1028                         sw.WriteLine();\r
1029                         sw.WriteLine( "; ベースLIGHTモード(0:OFF, 1:ON)" );\r
1030                         sw.WriteLine( "BassLight={0}", this.bLight.Bass ? 1 : 0 );\r
1031                         sw.WriteLine();\r
1032                         sw.WriteLine( "; ギターLEFTモード(0:OFF, 1:ON)" );\r
1033                         sw.WriteLine( "GuitarLeft={0}", this.bLeft.Guitar ? 1 : 0 );\r
1034                         sw.WriteLine();\r
1035                         sw.WriteLine( "; ベースLEFTモード(0:OFF, 1:ON)" );\r
1036                         sw.WriteLine( "BassLeft={0}", this.bLeft.Bass ? 1 : 0 );\r
1037                         sw.WriteLine();\r
1038                         sw.WriteLine( "; ドラム判定文字表示位置(0:レーン上,1:判定ライン上,2:表示OFF)" );\r
1039                         sw.WriteLine( "DrumsPosition={0}", (int) this.判定文字表示位置.Drums );\r
1040                         sw.WriteLine();\r
1041                         sw.WriteLine( "; ギター判定文字表示位置(0:レーン上,1:判定ライン横,2:表示OFF)" );\r
1042                         sw.WriteLine( "GuitarPosition={0}", (int) this.判定文字表示位置.Guitar );\r
1043                         sw.WriteLine();\r
1044                         sw.WriteLine( "; ベース判定文字表示位置(0:レーン上,1:判定ライン横,2:表示OFF)" );\r
1045                         sw.WriteLine( "BassPosition={0}", (int) this.判定文字表示位置.Bass );\r
1046                         sw.WriteLine();\r
1047                         sw.WriteLine( "; ドラム譜面スクロール速度(0:x0.5, 1:x1.0, 2:x1.5,…,1999:x1000.0)" );\r
1048                         sw.WriteLine( "DrumsScrollSpeed={0}", this.n譜面スクロール速度.Drums );\r
1049                         sw.WriteLine();\r
1050                         sw.WriteLine( "; ギター譜面スクロール速度(0:x0.5, 1:x1.0, 2:x1.5,…,1999:x1000.0)" );\r
1051                         sw.WriteLine( "GuitarScrollSpeed={0}", this.n譜面スクロール速度.Guitar );\r
1052                         sw.WriteLine();\r
1053                         sw.WriteLine( "; ベース譜面スクロール速度(0:x0.5, 1:x1.0, 2:x1.5,…,1999:x1000.0)" );\r
1054                         sw.WriteLine( "BassScrollSpeed={0}", this.n譜面スクロール速度.Bass );\r
1055                         sw.WriteLine();\r
1056                         sw.WriteLine( "; 演奏速度(5~40)(→x5/20~x40/20)" );\r
1057                         sw.WriteLine( "PlaySpeed={0}", this.n演奏速度 );\r
1058                         sw.WriteLine();\r
1059                         sw.WriteLine( "; ドラムCOMBO文字表示位置(0:左, 1:中, 2:右, 3:OFF)" );\r
1060                         sw.WriteLine( "ComboPosition={0}", (int) this.ドラムコンボ文字の表示位置 );\r
1061                         sw.WriteLine();\r
1062                         sw.WriteLine( ";-------------------" );\r
1063                         sw.WriteLine( "[AutoPlay]" );\r
1064                         sw.WriteLine();\r
1065                         sw.WriteLine( "; 自動演奏(0:OFF, 1:ON)" );\r
1066                         sw.WriteLine();\r
1067                         sw.WriteLine( "; Drums" );\r
1068                         sw.WriteLine( "LC={0}", this.bAutoPlay.LC ? 1 : 0 );\r
1069                         sw.WriteLine( "HH={0}", this.bAutoPlay.HH ? 1 : 0 );\r
1070                         sw.WriteLine( "SD={0}", this.bAutoPlay.SD ? 1 : 0 );\r
1071                         sw.WriteLine( "BD={0}", this.bAutoPlay.BD ? 1 : 0 );\r
1072                         sw.WriteLine( "HT={0}", this.bAutoPlay.HT ? 1 : 0 );\r
1073                         sw.WriteLine( "LT={0}", this.bAutoPlay.LT ? 1 : 0 );\r
1074                         sw.WriteLine( "FT={0}", this.bAutoPlay.FT ? 1 : 0 );\r
1075                         sw.WriteLine( "CY={0}", this.bAutoPlay.CY ? 1 : 0 );\r
1076                         sw.WriteLine();\r
1077                         sw.WriteLine( "; Guitar" );\r
1078                         sw.WriteLine( "Guitar={0}", this.bAutoPlay.Guitar ? 1 : 0 );\r
1079                         sw.WriteLine();\r
1080                         sw.WriteLine( "; Bass" );\r
1081                         sw.WriteLine( "Bass={0}", this.bAutoPlay.Bass ? 1 : 0 );\r
1082                         sw.WriteLine();\r
1083                         sw.WriteLine( ";-------------------" );\r
1084                         sw.WriteLine( "[HitRange]" );\r
1085                         sw.WriteLine();\r
1086                         sw.WriteLine( "; Perfect~Poor とみなされる範囲[ms]" );\r
1087                         sw.WriteLine( "Perfect={0}", this.nヒット範囲ms.Perfect );\r
1088                         sw.WriteLine( "Great={0}", this.nヒット範囲ms.Great );\r
1089                         sw.WriteLine( "Good={0}", this.nヒット範囲ms.Good );\r
1090                         sw.WriteLine( "Poor={0}", this.nヒット範囲ms.Poor );\r
1091                         sw.WriteLine();\r
1092                         sw.WriteLine( ";-------------------" );\r
1093                         sw.WriteLine( "[GUID]" );\r
1094                         sw.WriteLine();\r
1095                         foreach( KeyValuePair<int, string> pair in this.dicJoystick )\r
1096                         {\r
1097                                 sw.WriteLine( "JoystickID={0},{1}", pair.Key, pair.Value );\r
1098                         }\r
1099                         sw.WriteLine();\r
1100                         sw.WriteLine( ";-------------------" );\r
1101                         sw.WriteLine( "; キーアサイン" );\r
1102                         sw.WriteLine( ";   項 目:Keyboard → 'K'+'0'+キーコード(10進数)" );\r
1103                         sw.WriteLine( ";           Mouse    → 'N'+'0'+ボタン番号(0~7)" );\r
1104                         sw.WriteLine( ";           MIDI In  → 'M'+デバイス番号1桁(0~9)+ノート番号(10進数)" );\r
1105                         sw.WriteLine( ";           Joystick → 'J'+デバイス番号1桁(0~9)+ 0 ...... X減少(左)ボタン" );\r
1106                         sw.WriteLine( ";                                                    1 ...... X増加(右)ボタン" );\r
1107                         sw.WriteLine( ";                                                    2 ...... Y減少(上)ボタン" );\r
1108                         sw.WriteLine( ";                                                    3 ...... Y増加(下)ボタン" );\r
1109                         sw.WriteLine( ";                                                    4 ...... Z減少(前)ボタン" );\r
1110                         sw.WriteLine( ";                                                    5 ...... Z増加(後)ボタン" );\r
1111                         sw.WriteLine( ";                                                    6~133.. ボタン1~128" );\r
1112                         sw.WriteLine( ";           これらの項目を 16 個まで指定可能(',' で区切って記述)。" );\r
1113                         sw.WriteLine( ";" );\r
1114                         sw.WriteLine( ";   表記例:HH=K044,M042,J16" );\r
1115                         sw.WriteLine( ";           → HiHat を Keyboard の 44 ('Z'), MidiIn#0 の 42, JoyPad#1 の 6(ボタン1) に割当て" );\r
1116                         sw.WriteLine( ";" );\r
1117                         sw.WriteLine( ";   ※Joystick のデバイス番号とデバイスとの関係は [GUID] セクションに記してあるものが有効。" );\r
1118                         sw.WriteLine( ";" );\r
1119                         sw.WriteLine();\r
1120                         sw.WriteLine( "[DrumsKeyAssign]" );\r
1121                         sw.WriteLine();\r
1122                         sw.Write( "HH=" );\r
1123                         this.tキーの書き出し( sw, this.KeyAssign.Drums.HH );\r
1124                         sw.WriteLine();\r
1125                         sw.Write( "SD=" );\r
1126                         this.tキーの書き出し( sw, this.KeyAssign.Drums.SD );\r
1127                         sw.WriteLine();\r
1128                         sw.Write( "BD=" );\r
1129                         this.tキーの書き出し( sw, this.KeyAssign.Drums.BD );\r
1130                         sw.WriteLine();\r
1131                         sw.Write( "HT=" );\r
1132                         this.tキーの書き出し( sw, this.KeyAssign.Drums.HT );\r
1133                         sw.WriteLine();\r
1134                         sw.Write( "LT=" );\r
1135                         this.tキーの書き出し( sw, this.KeyAssign.Drums.LT );\r
1136                         sw.WriteLine();\r
1137                         sw.Write( "FT=" );\r
1138                         this.tキーの書き出し( sw, this.KeyAssign.Drums.FT );\r
1139                         sw.WriteLine();\r
1140                         sw.Write( "CY=" );\r
1141                         this.tキーの書き出し( sw, this.KeyAssign.Drums.CY );\r
1142                         sw.WriteLine();\r
1143                         sw.Write( "HO=" );\r
1144                         this.tキーの書き出し( sw, this.KeyAssign.Drums.HHO );\r
1145                         sw.WriteLine();\r
1146                         sw.Write( "RD=" );\r
1147                         this.tキーの書き出し( sw, this.KeyAssign.Drums.RD );\r
1148                         sw.WriteLine();\r
1149                         sw.Write( "LC=" );\r
1150                         this.tキーの書き出し( sw, this.KeyAssign.Drums.LC );\r
1151                         sw.WriteLine();\r
1152                         sw.WriteLine();\r
1153                         sw.WriteLine( "[GuitarKeyAssign]" );\r
1154                         sw.WriteLine();\r
1155                         sw.Write( "R=" );\r
1156                         this.tキーの書き出し( sw, this.KeyAssign.Guitar.R );\r
1157                         sw.WriteLine();\r
1158                         sw.Write( "G=" );\r
1159                         this.tキーの書き出し( sw, this.KeyAssign.Guitar.G );\r
1160                         sw.WriteLine();\r
1161                         sw.Write( "B=" );\r
1162                         this.tキーの書き出し( sw, this.KeyAssign.Guitar.B );\r
1163                         sw.WriteLine();\r
1164                         sw.Write( "Pick=" );\r
1165                         this.tキーの書き出し( sw, this.KeyAssign.Guitar.Pick );\r
1166                         sw.WriteLine();\r
1167                         sw.Write( "Wail=" );\r
1168                         this.tキーの書き出し( sw, this.KeyAssign.Guitar.Wail );\r
1169                         sw.WriteLine();\r
1170                         sw.Write( "Decide=" );\r
1171                         this.tキーの書き出し( sw, this.KeyAssign.Guitar.Decide );\r
1172                         sw.WriteLine();\r
1173                         sw.Write( "Cancel=" );\r
1174                         this.tキーの書き出し( sw, this.KeyAssign.Guitar.Cancel );\r
1175                         sw.WriteLine();\r
1176                         sw.WriteLine();\r
1177                         sw.WriteLine( "[BassKeyAssign]" );\r
1178                         sw.WriteLine();\r
1179                         sw.Write( "R=" );\r
1180                         this.tキーの書き出し( sw, this.KeyAssign.Bass.R );\r
1181                         sw.WriteLine();\r
1182                         sw.Write( "G=" );\r
1183                         this.tキーの書き出し( sw, this.KeyAssign.Bass.G );\r
1184                         sw.WriteLine();\r
1185                         sw.Write( "B=" );\r
1186                         this.tキーの書き出し( sw, this.KeyAssign.Bass.B );\r
1187                         sw.WriteLine();\r
1188                         sw.Write( "Pick=" );\r
1189                         this.tキーの書き出し( sw, this.KeyAssign.Bass.Pick );\r
1190                         sw.WriteLine();\r
1191                         sw.Write( "Wail=" );\r
1192                         this.tキーの書き出し( sw, this.KeyAssign.Bass.Wail );\r
1193                         sw.WriteLine();\r
1194                         sw.Write( "Decide=" );\r
1195                         this.tキーの書き出し( sw, this.KeyAssign.Bass.Decide );\r
1196                         sw.WriteLine();\r
1197                         sw.Write( "Cancel=" );\r
1198                         this.tキーの書き出し( sw, this.KeyAssign.Bass.Cancel );\r
1199                         sw.WriteLine();\r
1200                         sw.WriteLine();\r
1201                         sw.Close();\r
1202                 }\r
1203                 public void t読み込み( string iniファイル名 )\r
1204                 {\r
1205                         this.ConfigIniファイル名 = iniファイル名;\r
1206                         this.bConfigIniが存在している = File.Exists( this.ConfigIniファイル名 );\r
1207                         if( this.bConfigIniが存在している )\r
1208                         {\r
1209                                 string str;\r
1210                                 this.tキーアサインを全部クリアする();\r
1211                                 Eセクション種別 unknown = Eセクション種別.Unknown;\r
1212                                 StreamReader reader = new StreamReader( this.ConfigIniファイル名, Encoding.GetEncoding( "shift-jis" ) );\r
1213                                 while( ( str = reader.ReadLine() ) != null )\r
1214                                 {\r
1215                                         str = str.Replace( '\t', ' ' ).TrimStart( new char[] { '\t', ' ' } );\r
1216                                         if( ( str.Length != 0 ) && ( str[ 0 ] != ';' ) )\r
1217                                         {\r
1218                                                 try\r
1219                                                 {\r
1220                                                         string str3;\r
1221                                                         string str4;\r
1222                                                         if( str[ 0 ] == '[' )\r
1223                                                         {\r
1224                                                                 #region [ セクションの変更 ]\r
1225                                                                 //-----------------------------\r
1226                                                                 StringBuilder builder = new StringBuilder( 0x20 );\r
1227                                                                 int num = 1;\r
1228                                                                 while( ( num < str.Length ) && ( str[ num ] != ']' ) )\r
1229                                                                 {\r
1230                                                                         builder.Append( str[ num++ ] );\r
1231                                                                 }\r
1232                                                                 string str2 = builder.ToString();\r
1233                                                                 if( str2.Equals( "System" ) )\r
1234                                                                 {\r
1235                                                                         unknown = Eセクション種別.System;\r
1236                                                                 }\r
1237                                                                 else if( str2.Equals( "Log" ) )\r
1238                                                                 {\r
1239                                                                         unknown = Eセクション種別.Log;\r
1240                                                                 }\r
1241                                                                 else if( str2.Equals( "PlayOption" ) )\r
1242                                                                 {\r
1243                                                                         unknown = Eセクション種別.PlayOption;\r
1244                                                                 }\r
1245                                                                 else if( str2.Equals( "AutoPlay" ) )\r
1246                                                                 {\r
1247                                                                         unknown = Eセクション種別.AutoPlay;\r
1248                                                                 }\r
1249                                                                 else if( str2.Equals( "HitRange" ) )\r
1250                                                                 {\r
1251                                                                         unknown = Eセクション種別.HitRange;\r
1252                                                                 }\r
1253                                                                 else if( str2.Equals( "GUID" ) )\r
1254                                                                 {\r
1255                                                                         unknown = Eセクション種別.GUID;\r
1256                                                                 }\r
1257                                                                 else if( str2.Equals( "DrumsKeyAssign" ) )\r
1258                                                                 {\r
1259                                                                         unknown = Eセクション種別.DrumsKeyAssign;\r
1260                                                                 }\r
1261                                                                 else if( str2.Equals( "GuitarKeyAssign" ) )\r
1262                                                                 {\r
1263                                                                         unknown = Eセクション種別.GuitarKeyAssign;\r
1264                                                                 }\r
1265                                                                 else if( str2.Equals( "BassKeyAssign" ) )\r
1266                                                                 {\r
1267                                                                         unknown = Eセクション種別.BassKeyAssign;\r
1268                                                                 }\r
1269                                                                 else\r
1270                                                                 {\r
1271                                                                         unknown = Eセクション種別.Unknown;\r
1272                                                                 }\r
1273                                                                 //-----------------------------\r
1274                                                                 #endregion\r
1275                                                         }\r
1276                                                         else\r
1277                                                         {\r
1278                                                                 string[] strArray = str.Split( new char[] { '=' } );\r
1279                                                                 if( strArray.Length == 2 )\r
1280                                                                 {\r
1281                                                                         str3 = strArray[ 0 ].Trim();\r
1282                                                                         str4 = strArray[ 1 ].Trim();\r
1283                                                                         switch( unknown )\r
1284                                                                         {\r
1285                                                                                 #region [ [System] ]\r
1286                                                                                 //-----------------------------\r
1287                                                                                 case Eセクション種別.System:\r
1288                                                                                         {\r
1289                                                                                                 if( str3.Equals( "Version" ) )\r
1290                                                                                                 {\r
1291                                                                                                         this.strDTXManiaのバージョン = str4;\r
1292                                                                                                 }\r
1293                                                                                                 else if( str3.Equals( "DTXPath" ) )\r
1294                                                                                                 {\r
1295                                                                                                         this.str曲データ検索パス = str4;\r
1296                                                                                                 }\r
1297                                                                                                 else if( str3.Equals( "FullScreen" ) )\r
1298                                                                                                 {\r
1299                                                                                                         this.b全画面モード = C変換.bONorOFF( str4[ 0 ] );\r
1300                                                                                                 }\r
1301                                                                                                 else if( str3.Equals( "VSyncWait" ) )\r
1302                                                                                                 {\r
1303                                                                                                         this.b垂直帰線待ちを行う = C変換.bONorOFF( str4[ 0 ] );\r
1304                                                                                                 }\r
1305                                                                                                 else if( str3.Equals( "Guitar" ) )\r
1306                                                                                                 {\r
1307                                                                                                         this.bGuitar有効 = C変換.bONorOFF( str4[ 0 ] );\r
1308                                                                                                 }\r
1309                                                                                                 else if( str3.Equals( "Drums" ) )\r
1310                                                                                                 {\r
1311                                                                                                         this.bDrums有効 = C変換.bONorOFF( str4[ 0 ] );\r
1312                                                                                                 }\r
1313                                                                                                 else if( str3.Equals( "BGAlpha" ) )\r
1314                                                                                                 {\r
1315                                                                                                         this.n背景の透過度 = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0xff, this.n背景の透過度 );\r
1316                                                                                                 }\r
1317                                                                                                 else if( str3.Equals( "DamageLevel" ) )\r
1318                                                                                                 {\r
1319                                                                                                         this.eダメージレベル = (Eダメージレベル) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 2, (int) this.eダメージレベル );\r
1320                                                                                                 }\r
1321                                                                                                 else if( str3.Equals( "HHGroup" ) )\r
1322                                                                                                 {\r
1323                                                                                                         this.eHHGroup = (EHHGroup) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 3, (int) this.eHHGroup );\r
1324                                                                                                 }\r
1325                                                                                                 else if( str3.Equals( "FTGroup" ) )\r
1326                                                                                                 {\r
1327                                                                                                         this.eFTGroup = (EFTGroup) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 2, (int) this.eFTGroup );\r
1328                                                                                                 }\r
1329                                                                                                 else if( str3.Equals( "CYGroup" ) )\r
1330                                                                                                 {\r
1331                                                                                                         this.eCYGroup = (ECYGroup) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 2, (int) this.eCYGroup );\r
1332                                                                                                 }\r
1333                                                                                                 else if( str3.Equals( "HitSoundPriorityHH" ) )\r
1334                                                                                                 {\r
1335                                                                                                         this.eHitSoundPriorityHH = (E打ち分け時の再生の優先順位) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 1, (int) this.eHitSoundPriorityHH );\r
1336                                                                                                 }\r
1337                                                                                                 else if( str3.Equals( "HitSoundPriorityFT" ) )\r
1338                                                                                                 {\r
1339                                                                                                         this.eHitSoundPriorityFT = (E打ち分け時の再生の優先順位) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 1, (int) this.eHitSoundPriorityFT );\r
1340                                                                                                 }\r
1341                                                                                                 else if( str3.Equals( "HitSoundPriorityCY" ) )\r
1342                                                                                                 {\r
1343                                                                                                         this.eHitSoundPriorityCY = (E打ち分け時の再生の優先順位) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 1, (int) this.eHitSoundPriorityCY );\r
1344                                                                                                 }\r
1345                                                                                                 else if( str3.Equals( "StageFailed" ) )\r
1346                                                                                                 {\r
1347                                                                                                         this.bSTAGEFAILED有効 = C変換.bONorOFF( str4[ 0 ] );\r
1348                                                                                                 }\r
1349                                                                                                 else if( str3.Equals( "AVI" ) )\r
1350                                                                                                 {\r
1351                                                                                                         this.bAVI有効 = C変換.bONorOFF( str4[ 0 ] );\r
1352                                                                                                 }\r
1353                                                                                                 else if( str3.Equals( "BGA" ) )\r
1354                                                                                                 {\r
1355                                                                                                         this.bBGA有効 = C変換.bONorOFF( str4[ 0 ] );\r
1356                                                                                                 }\r
1357                                                                                                 else if( str3.Equals( "FillInEffect" ) )\r
1358                                                                                                 {\r
1359                                                                                                         this.bフィルイン有効 = C変換.bONorOFF( str4[ 0 ] );\r
1360                                                                                                 }\r
1361                                                                                                 else if( str3.Equals( "PreviewSoundWait" ) )\r
1362                                                                                                 {\r
1363                                                                                                         this.n曲が選択されてからプレビュー音が鳴るまでのウェイトms = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0x5f5e0ff, this.n曲が選択されてからプレビュー音が鳴るまでのウェイトms );\r
1364                                                                                                 }\r
1365                                                                                                 else if( str3.Equals( "PreviewImageWait" ) )\r
1366                                                                                                 {\r
1367                                                                                                         this.n曲が選択されてからプレビュー画像が表示開始されるまでのウェイトms = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0x5f5e0ff, this.n曲が選択されてからプレビュー画像が表示開始されるまでのウェイトms );\r
1368                                                                                                 }\r
1369                                                                                                 else if( str3.Equals( "AdjustWaves" ) )\r
1370                                                                                                 {\r
1371                                                                                                         this.bWave再生位置自動調整機能有効 = C変換.bONorOFF( str4[ 0 ] );\r
1372                                                                                                 }\r
1373                                                                                                 else if( str3.Equals( "BGMSound" ) )\r
1374                                                                                                 {\r
1375                                                                                                         this.bBGM音を発声する = C変換.bONorOFF( str4[ 0 ] );\r
1376                                                                                                 }\r
1377                                                                                                 else if( str3.Equals( "HitSound" ) )\r
1378                                                                                                 {\r
1379                                                                                                         this.bドラム打音を発声する = C変換.bONorOFF( str4[ 0 ] );\r
1380                                                                                                 }\r
1381                                                                                                 else if( str3.Equals( "AudienceSound" ) )\r
1382                                                                                                 {\r
1383                                                                                                         this.b歓声を発声する = C変換.bONorOFF( str4[ 0 ] );\r
1384                                                                                                 }\r
1385                                                                                                 else if( str3.Equals( "SaveScoreIni" ) )\r
1386                                                                                                 {\r
1387                                                                                                         this.bScoreIniを出力する = C変換.bONorOFF( str4[ 0 ] );\r
1388                                                                                                 }\r
1389                                                                                                 else if( str3.Equals( "RandomFromSubBox" ) )\r
1390                                                                                                 {\r
1391                                                                                                         this.bランダムセレクトで子BOXを検索対象とする = C変換.bONorOFF( str4[ 0 ] );\r
1392                                                                                                 }\r
1393                                                                                                 else if( str3.Equals( "SoundMonitorDrums" ) )\r
1394                                                                                                 {\r
1395                                                                                                         this.b演奏音を強調する.Drums = C変換.bONorOFF( str4[ 0 ] );\r
1396                                                                                                 }\r
1397                                                                                                 else if( str3.Equals( "SoundMonitorGuitar" ) )\r
1398                                                                                                 {\r
1399                                                                                                         this.b演奏音を強調する.Guitar = C変換.bONorOFF( str4[ 0 ] );\r
1400                                                                                                 }\r
1401                                                                                                 else if( str3.Equals( "SoundMonitorBass" ) )\r
1402                                                                                                 {\r
1403                                                                                                         this.b演奏音を強調する.Bass = C変換.bONorOFF( str4[ 0 ] );\r
1404                                                                                                 }\r
1405                                                                                                 else if( str3.Equals( "MinComboDrums" ) )\r
1406                                                                                                 {\r
1407                                                                                                         this.n表示可能な最小コンボ数.Drums = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 1, 0x1869f, this.n表示可能な最小コンボ数.Drums );\r
1408                                                                                                 }\r
1409                                                                                                 else if( str3.Equals( "MinComboGuitar" ) )\r
1410                                                                                                 {\r
1411                                                                                                         this.n表示可能な最小コンボ数.Guitar = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 1, 0x1869f, this.n表示可能な最小コンボ数.Guitar );\r
1412                                                                                                 }\r
1413                                                                                                 else if( str3.Equals( "MinComboBass" ) )\r
1414                                                                                                 {\r
1415                                                                                                         this.n表示可能な最小コンボ数.Bass = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 1, 0x1869f, this.n表示可能な最小コンボ数.Bass );\r
1416                                                                                                 }\r
1417                                                                                                 else if( str3.Equals( "ShowDebugStatus" ) )\r
1418                                                                                                 {\r
1419                                                                                                         this.b演奏情報を表示する = C変換.bONorOFF( str4[ 0 ] );\r
1420                                                                                                 }\r
1421                                                                                                 else if( str3.Equals( "SelectListFontName" ) )\r
1422                                                                                                 {\r
1423                                                                                                         this.str選曲リストフォント = str4;\r
1424                                                                                                 }\r
1425                                                                                                 else if( str3.Equals( "SelectListFontSize" ) )\r
1426                                                                                                 {\r
1427                                                                                                         this.n選曲リストフォントのサイズdot = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 1, 0x3e7, this.n選曲リストフォントのサイズdot );\r
1428                                                                                                 }\r
1429                                                                                                 else if( str3.Equals( "SelectListFontItalic" ) )\r
1430                                                                                                 {\r
1431                                                                                                         this.b選曲リストフォントを斜体にする = C変換.bONorOFF( str4[ 0 ] );\r
1432                                                                                                 }\r
1433                                                                                                 else if( str3.Equals( "SelectListFontBold" ) )\r
1434                                                                                                 {\r
1435                                                                                                         this.b選曲リストフォントを太字にする = C変換.bONorOFF( str4[ 0 ] );\r
1436                                                                                                 }\r
1437                                                                                                 else if( str3.Equals( "ChipVolume" ) )\r
1438                                                                                                 {\r
1439                                                                                                         this.n手動再生音量 = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 100, this.n手動再生音量 );\r
1440                                                                                                 }\r
1441                                                                                                 else if( str3.Equals( "AutoChipVolume" ) )\r
1442                                                                                                 {\r
1443                                                                                                         this.n自動再生音量 = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 100, this.n自動再生音量 );\r
1444                                                                                                 }\r
1445                                                                                                 else if( str3.Equals( "StoicMode" ) )\r
1446                                                                                                 {\r
1447                                                                                                         this.bストイックモード = C変換.bONorOFF( str4[ 0 ] );\r
1448                                                                                                 }\r
1449                                                                                                 else if( str3.Equals( "CymbalFree" ) )\r
1450                                                                                                 {\r
1451                                                                                                         this.bシンバルフリー = C変換.bONorOFF( str4[ 0 ] );\r
1452                                                                                                 }\r
1453                                                                                                 else if( str3.Equals( "BufferedInput" ) )\r
1454                                                                                                 {\r
1455                                                                                                         this.bバッファ入力を行う = C変換.bONorOFF( str4[ 0 ] );\r
1456                                                                                                 }\r
1457                                                                                                 else if( str3.Equals( "HHVelocityMin" ) )\r
1458                                                                                                 {\r
1459                                                                                                         this.nハイハット切り捨て下限Velocity = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 127, this.nハイハット切り捨て下限Velocity );\r
1460                                                                                                 }\r
1461                                                                                                 continue;\r
1462                                                                                         }\r
1463                                                                                 //-----------------------------\r
1464                                                                                 #endregion\r
1465 \r
1466                                                                                 #region [ [Log] ]\r
1467                                                                                 //-----------------------------\r
1468                                                                                 case Eセクション種別.Log:\r
1469                                                                                         {\r
1470                                                                                                 if( str3.Equals( "OutputLog" ) )\r
1471                                                                                                 {\r
1472                                                                                                         this.bログ出力 = C変換.bONorOFF( str4[ 0 ] );\r
1473                                                                                                 }\r
1474                                                                                                 else if( str3.Equals( "TraceCreatedDisposed" ) )\r
1475                                                                                                 {\r
1476                                                                                                         this.bLog作成解放ログ出力 = C変換.bONorOFF( str4[ 0 ] );\r
1477                                                                                                 }\r
1478                                                                                                 else if( str3.Equals( "TraceDTXDetails" ) )\r
1479                                                                                                 {\r
1480                                                                                                         this.bLogDTX詳細ログ出力 = C変換.bONorOFF( str4[ 0 ] );\r
1481                                                                                                 }\r
1482                                                                                                 else if( str3.Equals( "TraceSongSearch" ) )\r
1483                                                                                                 {\r
1484                                                                                                         this.bLog曲検索ログ出力 = C変換.bONorOFF( str4[ 0 ] );\r
1485                                                                                                 }\r
1486                                                                                                 continue;\r
1487                                                                                         }\r
1488                                                                                 //-----------------------------\r
1489                                                                                 #endregion\r
1490 \r
1491                                                                                 #region [ [PlayOption] ]\r
1492                                                                                 //-----------------------------\r
1493                                                                                 case Eセクション種別.PlayOption:\r
1494                                                                                         {\r
1495                                                                                                 if( str3.Equals( "Dark" ) )\r
1496                                                                                                 {\r
1497                                                                                                         this.eDark = (Eダークモード) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 2, (int) this.eDark );\r
1498                                                                                                 }\r
1499                                                                                                 else if( str3.Equals( "DrumsTight" ) )\r
1500                                                                                                 {\r
1501                                                                                                         this.bTight = C変換.bONorOFF( str4[ 0 ] );\r
1502                                                                                                 }\r
1503                                                                                                 else if( str3.Equals( "DrumsSudden" ) )\r
1504                                                                                                 {\r
1505                                                                                                         this.bSudden.Drums = C変換.bONorOFF( str4[ 0 ] );\r
1506                                                                                                 }\r
1507                                                                                                 else if( str3.Equals( "GuitarSudden" ) )\r
1508                                                                                                 {\r
1509                                                                                                         this.bSudden.Guitar = C変換.bONorOFF( str4[ 0 ] );\r
1510                                                                                                 }\r
1511                                                                                                 else if( str3.Equals( "BassSudden" ) )\r
1512                                                                                                 {\r
1513                                                                                                         this.bSudden.Bass = C変換.bONorOFF( str4[ 0 ] );\r
1514                                                                                                 }\r
1515                                                                                                 else if( str3.Equals( "DrumsHidden" ) )\r
1516                                                                                                 {\r
1517                                                                                                         this.bHidden.Drums = C変換.bONorOFF( str4[ 0 ] );\r
1518                                                                                                 }\r
1519                                                                                                 else if( str3.Equals( "GuitarHidden" ) )\r
1520                                                                                                 {\r
1521                                                                                                         this.bHidden.Guitar = C変換.bONorOFF( str4[ 0 ] );\r
1522                                                                                                 }\r
1523                                                                                                 else if( str3.Equals( "BassHidden" ) )\r
1524                                                                                                 {\r
1525                                                                                                         this.bHidden.Bass = C変換.bONorOFF( str4[ 0 ] );\r
1526                                                                                                 }\r
1527                                                                                                 else if( str3.Equals( "DrumsReverse" ) )\r
1528                                                                                                 {\r
1529                                                                                                         this.bReverse.Drums = C変換.bONorOFF( str4[ 0 ] );\r
1530                                                                                                 }\r
1531                                                                                                 else if( str3.Equals( "GuitarReverse" ) )\r
1532                                                                                                 {\r
1533                                                                                                         this.bReverse.Guitar = C変換.bONorOFF( str4[ 0 ] );\r
1534                                                                                                 }\r
1535                                                                                                 else if( str3.Equals( "BassReverse" ) )\r
1536                                                                                                 {\r
1537                                                                                                         this.bReverse.Bass = C変換.bONorOFF( str4[ 0 ] );\r
1538                                                                                                 }\r
1539                                                                                                 else if( str3.Equals( "GuitarRandom" ) )\r
1540                                                                                                 {\r
1541                                                                                                         this.eRandom.Guitar = (Eランダムモード) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 3, (int) this.eRandom.Guitar );\r
1542                                                                                                 }\r
1543                                                                                                 else if( str3.Equals( "BassRandom" ) )\r
1544                                                                                                 {\r
1545                                                                                                         this.eRandom.Bass = (Eランダムモード) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 3, (int) this.eRandom.Bass );\r
1546                                                                                                 }\r
1547                                                                                                 else if( str3.Equals( "GuitarLight" ) )\r
1548                                                                                                 {\r
1549                                                                                                         this.bLight.Guitar = C変換.bONorOFF( str4[ 0 ] );\r
1550                                                                                                 }\r
1551                                                                                                 else if( str3.Equals( "BassLight" ) )\r
1552                                                                                                 {\r
1553                                                                                                         this.bLight.Bass = C変換.bONorOFF( str4[ 0 ] );\r
1554                                                                                                 }\r
1555                                                                                                 else if( str3.Equals( "GuitarLeft" ) )\r
1556                                                                                                 {\r
1557                                                                                                         this.bLeft.Guitar = C変換.bONorOFF( str4[ 0 ] );\r
1558                                                                                                 }\r
1559                                                                                                 else if( str3.Equals( "BassLeft" ) )\r
1560                                                                                                 {\r
1561                                                                                                         this.bLeft.Bass = C変換.bONorOFF( str4[ 0 ] );\r
1562                                                                                                 }\r
1563                                                                                                 else if( str3.Equals( "DrumsPosition" ) )\r
1564                                                                                                 {\r
1565                                                                                                         this.判定文字表示位置.Drums = (E判定文字表示位置) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 2, (int) this.判定文字表示位置.Drums );\r
1566                                                                                                 }\r
1567                                                                                                 else if( str3.Equals( "GuitarPosition" ) )\r
1568                                                                                                 {\r
1569                                                                                                         this.判定文字表示位置.Guitar = (E判定文字表示位置) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 2, (int) this.判定文字表示位置.Guitar );\r
1570                                                                                                 }\r
1571                                                                                                 else if( str3.Equals( "BassPosition" ) )\r
1572                                                                                                 {\r
1573                                                                                                         this.判定文字表示位置.Bass = (E判定文字表示位置) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 2, (int) this.判定文字表示位置.Bass );\r
1574                                                                                                 }\r
1575                                                                                                 else if( str3.Equals( "DrumsScrollSpeed" ) )\r
1576                                                                                                 {\r
1577                                                                                                         this.n譜面スクロール速度.Drums = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0x7cf, this.n譜面スクロール速度.Drums );\r
1578                                                                                                 }\r
1579                                                                                                 else if( str3.Equals( "GuitarScrollSpeed" ) )\r
1580                                                                                                 {\r
1581                                                                                                         this.n譜面スクロール速度.Guitar = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0x7cf, this.n譜面スクロール速度.Guitar );\r
1582                                                                                                 }\r
1583                                                                                                 else if( str3.Equals( "BassScrollSpeed" ) )\r
1584                                                                                                 {\r
1585                                                                                                         this.n譜面スクロール速度.Bass = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0x7cf, this.n譜面スクロール速度.Bass );\r
1586                                                                                                 }\r
1587                                                                                                 else if( str3.Equals( "PlaySpeed" ) )\r
1588                                                                                                 {\r
1589                                                                                                         this.n演奏速度 = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 5, 40, this.n演奏速度 );\r
1590                                                                                                 }\r
1591                                                                                                 else if( str3.Equals( "ComboPosition" ) )\r
1592                                                                                                 {\r
1593                                                                                                         this.ドラムコンボ文字の表示位置 = (Eドラムコンボ文字の表示位置) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 3, (int) this.ドラムコンボ文字の表示位置 );\r
1594                                                                                                 }\r
1595                                                                                                 continue;\r
1596                                                                                         }\r
1597                                                                                 //-----------------------------\r
1598                                                                                 #endregion\r
1599 \r
1600                                                                                 #region [ [AutoPlay] ]\r
1601                                                                                 //-----------------------------\r
1602                                                                                 case Eセクション種別.AutoPlay:\r
1603                                                                                         {\r
1604                                                                                                 if( str3.Equals( "LC" ) )\r
1605                                                                                                 {\r
1606                                                                                                         this.bAutoPlay.LC = C変換.bONorOFF( str4[ 0 ] );\r
1607                                                                                                 }\r
1608                                                                                                 if( str3.Equals( "HH" ) )\r
1609                                                                                                 {\r
1610                                                                                                         this.bAutoPlay.HH = C変換.bONorOFF( str4[ 0 ] );\r
1611                                                                                                 }\r
1612                                                                                                 else if( str3.Equals( "SD" ) )\r
1613                                                                                                 {\r
1614                                                                                                         this.bAutoPlay.SD = C変換.bONorOFF( str4[ 0 ] );\r
1615                                                                                                 }\r
1616                                                                                                 else if( str3.Equals( "BD" ) )\r
1617                                                                                                 {\r
1618                                                                                                         this.bAutoPlay.BD = C変換.bONorOFF( str4[ 0 ] );\r
1619                                                                                                 }\r
1620                                                                                                 else if( str3.Equals( "HT" ) )\r
1621                                                                                                 {\r
1622                                                                                                         this.bAutoPlay.HT = C変換.bONorOFF( str4[ 0 ] );\r
1623                                                                                                 }\r
1624                                                                                                 else if( str3.Equals( "LT" ) )\r
1625                                                                                                 {\r
1626                                                                                                         this.bAutoPlay.LT = C変換.bONorOFF( str4[ 0 ] );\r
1627                                                                                                 }\r
1628                                                                                                 else if( str3.Equals( "FT" ) )\r
1629                                                                                                 {\r
1630                                                                                                         this.bAutoPlay.FT = C変換.bONorOFF( str4[ 0 ] );\r
1631                                                                                                 }\r
1632                                                                                                 else if( str3.Equals( "CY" ) )\r
1633                                                                                                 {\r
1634                                                                                                         this.bAutoPlay.CY = C変換.bONorOFF( str4[ 0 ] );\r
1635                                                                                                 }\r
1636                                                                                                 else if( str3.Equals( "Guitar" ) )\r
1637                                                                                                 {\r
1638                                                                                                         this.bAutoPlay.Guitar = C変換.bONorOFF( str4[ 0 ] );\r
1639                                                                                                 }\r
1640                                                                                                 else if( str3.Equals( "Bass" ) )\r
1641                                                                                                 {\r
1642                                                                                                         this.bAutoPlay.Bass = C変換.bONorOFF( str4[ 0 ] );\r
1643                                                                                                 }\r
1644                                                                                                 continue;\r
1645                                                                                         }\r
1646                                                                                 //-----------------------------\r
1647                                                                                 #endregion\r
1648 \r
1649                                                                                 #region [ [HitRange] ]\r
1650                                                                                 //-----------------------------\r
1651                                                                                 case Eセクション種別.HitRange:\r
1652                                                                                         {\r
1653                                                                                                 if( str3.Equals( "Perfect" ) )\r
1654                                                                                                 {\r
1655                                                                                                         this.nヒット範囲ms.Perfect = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0x3e7, this.nヒット範囲ms.Perfect );\r
1656                                                                                                 }\r
1657                                                                                                 else if( str3.Equals( "Great" ) )\r
1658                                                                                                 {\r
1659                                                                                                         this.nヒット範囲ms.Great = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0x3e7, this.nヒット範囲ms.Great );\r
1660                                                                                                 }\r
1661                                                                                                 else if( str3.Equals( "Good" ) )\r
1662                                                                                                 {\r
1663                                                                                                         this.nヒット範囲ms.Good = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0x3e7, this.nヒット範囲ms.Good );\r
1664                                                                                                 }\r
1665                                                                                                 else if( str3.Equals( "Poor" ) )\r
1666                                                                                                 {\r
1667                                                                                                         this.nヒット範囲ms.Poor = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0x3e7, this.nヒット範囲ms.Poor );\r
1668                                                                                                 }\r
1669                                                                                                 continue;\r
1670                                                                                         }\r
1671                                                                                 //-----------------------------\r
1672                                                                                 #endregion\r
1673 \r
1674                                                                                 #region [ [GUID] ]\r
1675                                                                                 //-----------------------------\r
1676                                                                                 case Eセクション種別.GUID:\r
1677                                                                                         {\r
1678                                                                                                 if( str3.Equals( "JoystickID" ) )\r
1679                                                                                                 {\r
1680                                                                                                         this.tJoystickIDの取得( str4 );\r
1681                                                                                                 }\r
1682                                                                                                 continue;\r
1683                                                                                         }\r
1684                                                                                 //-----------------------------\r
1685                                                                                 #endregion\r
1686 \r
1687                                                                                 #region [ [DrumsKeyAssign] ]\r
1688                                                                                 //-----------------------------\r
1689                                                                                 case Eセクション種別.DrumsKeyAssign:\r
1690                                                                                         {\r
1691                                                                                                 if( str3.Equals( "HH" ) )\r
1692                                                                                                 {\r
1693                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Drums.HH );\r
1694                                                                                                 }\r
1695                                                                                                 else if( str3.Equals( "SD" ) )\r
1696                                                                                                 {\r
1697                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Drums.SD );\r
1698                                                                                                 }\r
1699                                                                                                 else if( str3.Equals( "BD" ) )\r
1700                                                                                                 {\r
1701                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Drums.BD );\r
1702                                                                                                 }\r
1703                                                                                                 else if( str3.Equals( "HT" ) )\r
1704                                                                                                 {\r
1705                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Drums.HT );\r
1706                                                                                                 }\r
1707                                                                                                 else if( str3.Equals( "LT" ) )\r
1708                                                                                                 {\r
1709                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Drums.LT );\r
1710                                                                                                 }\r
1711                                                                                                 else if( str3.Equals( "FT" ) )\r
1712                                                                                                 {\r
1713                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Drums.FT );\r
1714                                                                                                 }\r
1715                                                                                                 else if( str3.Equals( "CY" ) )\r
1716                                                                                                 {\r
1717                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Drums.CY );\r
1718                                                                                                 }\r
1719                                                                                                 else if( str3.Equals( "HO" ) )\r
1720                                                                                                 {\r
1721                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Drums.HHO );\r
1722                                                                                                 }\r
1723                                                                                                 else if( str3.Equals( "RD" ) )\r
1724                                                                                                 {\r
1725                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Drums.RD );\r
1726                                                                                                 }\r
1727                                                                                                 else if( str3.Equals( "LC" ) )\r
1728                                                                                                 {\r
1729                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Drums.LC );\r
1730                                                                                                 }\r
1731                                                                                                 continue;\r
1732                                                                                         }\r
1733                                                                                 //-----------------------------\r
1734                                                                                 #endregion\r
1735 \r
1736                                                                                 #region [ GuitarKeyAssign ]\r
1737                                                                                 //-----------------------------\r
1738                                                                                 case Eセクション種別.GuitarKeyAssign:\r
1739                                                                                         {\r
1740                                                                                                 if( str3.Equals( "R" ) )\r
1741                                                                                                 {\r
1742                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Guitar.R );\r
1743                                                                                                 }\r
1744                                                                                                 else if( str3.Equals( "G" ) )\r
1745                                                                                                 {\r
1746                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Guitar.G );\r
1747                                                                                                 }\r
1748                                                                                                 else if( str3.Equals( "B" ) )\r
1749                                                                                                 {\r
1750                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Guitar.B );\r
1751                                                                                                 }\r
1752                                                                                                 else if( str3.Equals( "Pick" ) )\r
1753                                                                                                 {\r
1754                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Guitar.Pick );\r
1755                                                                                                 }\r
1756                                                                                                 else if( str3.Equals( "Wail" ) )\r
1757                                                                                                 {\r
1758                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Guitar.Wail );\r
1759                                                                                                 }\r
1760                                                                                                 else if( str3.Equals( "Decide" ) )\r
1761                                                                                                 {\r
1762                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Guitar.Decide );\r
1763                                                                                                 }\r
1764                                                                                                 else if( str3.Equals( "Cancel" ) )\r
1765                                                                                                 {\r
1766                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Guitar.Cancel );\r
1767                                                                                                 }\r
1768                                                                                                 continue;\r
1769                                                                                         }\r
1770                                                                                 //-----------------------------\r
1771                                                                                 #endregion\r
1772 \r
1773                                                                                 #region [ [BassKeyAssign ]\r
1774                                                                                 //-----------------------------\r
1775                                                                                 case Eセクション種別.BassKeyAssign:\r
1776                                                                                         {\r
1777                                                                                                 if( str3.Equals( "R" ) )\r
1778                                                                                                 {\r
1779                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Bass.R );\r
1780                                                                                                 }\r
1781                                                                                                 else if( str3.Equals( "G" ) )\r
1782                                                                                                 {\r
1783                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Bass.G );\r
1784                                                                                                 }\r
1785                                                                                                 else if( str3.Equals( "B" ) )\r
1786                                                                                                 {\r
1787                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Bass.B );\r
1788                                                                                                 }\r
1789                                                                                                 else if( str3.Equals( "Pick" ) )\r
1790                                                                                                 {\r
1791                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Bass.Pick );\r
1792                                                                                                 }\r
1793                                                                                                 else if( str3.Equals( "Wail" ) )\r
1794                                                                                                 {\r
1795                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Bass.Wail );\r
1796                                                                                                 }\r
1797                                                                                                 else if( str3.Equals( "Decide" ) )\r
1798                                                                                                 {\r
1799                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Bass.Decide );\r
1800                                                                                                 }\r
1801                                                                                                 else if( str3.Equals( "Cancel" ) )\r
1802                                                                                                 {\r
1803                                                                                                         this.tキーの読み出しと設定( str4, this.KeyAssign.Bass.Cancel );\r
1804                                                                                                 }\r
1805                                                                                                 continue;\r
1806                                                                                         }\r
1807                                                                                 //-----------------------------\r
1808                                                                                 #endregion\r
1809                                                                         }\r
1810                                                                 }\r
1811                                                         }\r
1812                                                         continue;\r
1813                                                 }\r
1814                                                 catch( Exception exception )\r
1815                                                 {\r
1816                                                         Trace.TraceError( exception.Message );\r
1817                                                         continue;\r
1818                                                 }\r
1819                                         }\r
1820                                 }\r
1821                                 CDTXVersion version = new CDTXVersion( this.strDTXManiaのバージョン );\r
1822                                 if( version.n整数部 <= 0x45 )\r
1823                                 {\r
1824                                         this.tデフォルトのキーアサインに設定する();\r
1825                                 }\r
1826                         }\r
1827                 }\r
1828 \r
1829 \r
1830                 // その他\r
1831 \r
1832                 #region [ private ]\r
1833                 //-----------------\r
1834                 private enum Eセクション種別\r
1835                 {\r
1836                         Unknown,\r
1837                         System,\r
1838                         Log,\r
1839                         PlayOption,\r
1840                         AutoPlay,\r
1841                         HitRange,\r
1842                         GUID,\r
1843                         DrumsKeyAssign,\r
1844                         GuitarKeyAssign,\r
1845                         BassKeyAssign\r
1846                 }\r
1847 \r
1848                 private bool _bDrums有効;\r
1849                 private bool _bGuitar有効;\r
1850                 private bool bConfigIniが存在している;\r
1851                 private string ConfigIniファイル名;\r
1852 \r
1853                 private void tJoystickIDの取得( string strキー記述 )\r
1854                 {\r
1855                         string[] strArray = strキー記述.Split( new char[] { ',' } );\r
1856                         if( strArray.Length >= 2 )\r
1857                         {\r
1858                                 int result = 0;\r
1859                                 if( ( int.TryParse( strArray[ 0 ], out result ) && ( result >= 0 ) ) && ( result <= 9 ) )\r
1860                                 {\r
1861                                         if( this.dicJoystick.ContainsKey( result ) )\r
1862                                         {\r
1863                                                 this.dicJoystick.Remove( result );\r
1864                                         }\r
1865                                         this.dicJoystick.Add( result, strArray[ 1 ] );\r
1866                                 }\r
1867                         }\r
1868                 }\r
1869                 private void tキーアサインを全部クリアする()\r
1870                 {\r
1871                         this.KeyAssign = new CKeyAssign();\r
1872                         for( int i = 0; i < 3; i++ )\r
1873                         {\r
1874                                 for( int j = 0; j < 10; j++ )\r
1875                                 {\r
1876                                         this.KeyAssign[ i ][ j ] = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
1877                                         for( int k = 0; k < 0x10; k++ )\r
1878                                         {\r
1879                                                 this.KeyAssign[ i ][ j ][ k ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1880                                         }\r
1881                                 }\r
1882                         }\r
1883                 }\r
1884                 private void tキーの書き出し( StreamWriter sw, CKeyAssign.STKEYASSIGN[] assign )\r
1885                 {\r
1886                         bool flag = true;\r
1887                         for( int i = 0; i < 0x10; i++ )\r
1888                         {\r
1889                                 if( assign[ i ].入力デバイス == E入力デバイス.不明 )\r
1890                                 {\r
1891                                         continue;\r
1892                                 }\r
1893                                 if( !flag )\r
1894                                 {\r
1895                                         sw.Write( ',' );\r
1896                                 }\r
1897                                 flag = false;\r
1898                                 switch( assign[ i ].入力デバイス )\r
1899                                 {\r
1900                                         case E入力デバイス.キーボード:\r
1901                                                 sw.Write( 'K' );\r
1902                                                 break;\r
1903 \r
1904                                         case E入力デバイス.MIDI入力:\r
1905                                                 sw.Write( 'M' );\r
1906                                                 break;\r
1907 \r
1908                                         case E入力デバイス.ジョイパッド:\r
1909                                                 sw.Write( 'J' );\r
1910                                                 break;\r
1911 \r
1912                                         case E入力デバイス.マウス:\r
1913                                                 sw.Write( 'N' );\r
1914                                                 break;\r
1915                                 }\r
1916                                 sw.Write( "{0}{1}", assign[ i ].ID, assign[ i ].コード );\r
1917                         }\r
1918                 }\r
1919                 private void tキーの読み出しと設定( string strキー記述, CKeyAssign.STKEYASSIGN[] assign )\r
1920                 {\r
1921                         string[] strArray = strキー記述.Split( new char[] { ',' } );\r
1922                         for( int i = 0; ( i < strArray.Length ) && ( i < 0x10 ); i++ )\r
1923                         {\r
1924                                 E入力デバイス e入力デバイス;\r
1925                                 int num2;\r
1926                                 int num3;\r
1927                                 string str = strArray[ i ].Trim().ToUpper();\r
1928                                 if( str.Length >= 3 )\r
1929                                 {\r
1930                                         e入力デバイス = E入力デバイス.不明;\r
1931                                         switch( str[ 0 ] )\r
1932                                         {\r
1933                                                 case 'J':\r
1934                                                         e入力デバイス = E入力デバイス.ジョイパッド;\r
1935                                                         goto Label_0071;\r
1936 \r
1937                                                 case 'K':\r
1938                                                         e入力デバイス = E入力デバイス.キーボード;\r
1939                                                         goto Label_0071;\r
1940 \r
1941                                                 case 'L':\r
1942                                                         {\r
1943                                                                 continue;\r
1944                                                         }\r
1945                                                 case 'M':\r
1946                                                         e入力デバイス = E入力デバイス.MIDI入力;\r
1947                                                         goto Label_0071;\r
1948 \r
1949                                                 case 'N':\r
1950                                                         e入力デバイス = E入力デバイス.マウス;\r
1951                                                         goto Label_0071;\r
1952                                         }\r
1953                                 }\r
1954                                 continue;\r
1955                         Label_0071:\r
1956                                 num2 = "0123456789".IndexOf( str[ 1 ] );\r
1957                                 if( ( ( num2 >= 0 ) && int.TryParse( str.Substring( 2 ), out num3 ) ) && ( ( num3 >= 0 ) && ( num3 <= 0xff ) ) )\r
1958                                 {\r
1959                                         this.t指定した入力が既にアサイン済みである場合はそれを全削除する( e入力デバイス, num2, num3 );\r
1960                                         assign[ i ].入力デバイス = e入力デバイス;\r
1961                                         assign[ i ].ID = num2;\r
1962                                         assign[ i ].コード = num3;\r
1963                                 }\r
1964                         }\r
1965                 }\r
1966                 private void tデフォルトのキーアサインに設定する()\r
1967                 {\r
1968                         this.tキーアサインを全部クリアする();\r
1969                         CKeyAssign.STKEYASSIGN[] stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
1970                         CKeyAssign.STKEYASSIGN stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
1971                         CKeyAssign.STKEYASSIGN stkeyassign = stkeyassign63;\r
1972                         stkeyassign.入力デバイス = E入力デバイス.キーボード;\r
1973                         stkeyassign.ID = 0;\r
1974                         stkeyassign.コード = 0x23;\r
1975                         stkeyassignArray[ 0 ] = stkeyassign;\r
1976                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
1977                         CKeyAssign.STKEYASSIGN stkeyassign2 = stkeyassign63;\r
1978                         stkeyassign2.入力デバイス = E入力デバイス.MIDI入力;\r
1979                         stkeyassign2.ID = 0;\r
1980                         stkeyassign2.コード = 0x2a;\r
1981                         stkeyassignArray[ 1 ] = stkeyassign2;\r
1982                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
1983                         CKeyAssign.STKEYASSIGN stkeyassign3 = stkeyassign63;\r
1984                         stkeyassign3.入力デバイス = E入力デバイス.MIDI入力;\r
1985                         stkeyassign3.ID = 0;\r
1986                         stkeyassign3.コード = 0x5d;\r
1987                         stkeyassignArray[ 2 ] = stkeyassign3;\r
1988                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1989                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1990                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1991                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1992                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1993                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1994                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1995                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1996                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1997                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1998                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
1999                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2000                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2001                         this.KeyAssign.Drums.HH = stkeyassignArray;\r
2002                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2003                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2004                         CKeyAssign.STKEYASSIGN stkeyassign4 = stkeyassign63;\r
2005                         stkeyassign4.入力デバイス = E入力デバイス.キーボード;\r
2006                         stkeyassign4.ID = 0;\r
2007                         stkeyassign4.コード = 0x21;\r
2008                         stkeyassignArray[ 0 ] = stkeyassign4;\r
2009                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2010                         CKeyAssign.STKEYASSIGN stkeyassign5 = stkeyassign63;\r
2011                         stkeyassign5.入力デバイス = E入力デバイス.MIDI入力;\r
2012                         stkeyassign5.ID = 0;\r
2013                         stkeyassign5.コード = 0x19;\r
2014                         stkeyassignArray[ 1 ] = stkeyassign5;\r
2015                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2016                         CKeyAssign.STKEYASSIGN stkeyassign6 = stkeyassign63;\r
2017                         stkeyassign6.入力デバイス = E入力デバイス.MIDI入力;\r
2018                         stkeyassign6.ID = 0;\r
2019                         stkeyassign6.コード = 0x1a;\r
2020                         stkeyassignArray[ 2 ] = stkeyassign6;\r
2021                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2022                         CKeyAssign.STKEYASSIGN stkeyassign7 = stkeyassign63;\r
2023                         stkeyassign7.入力デバイス = E入力デバイス.MIDI入力;\r
2024                         stkeyassign7.ID = 0;\r
2025                         stkeyassign7.コード = 0x1b;\r
2026                         stkeyassignArray[ 3 ] = stkeyassign7;\r
2027                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2028                         CKeyAssign.STKEYASSIGN stkeyassign8 = stkeyassign63;\r
2029                         stkeyassign8.入力デバイス = E入力デバイス.MIDI入力;\r
2030                         stkeyassign8.ID = 0;\r
2031                         stkeyassign8.コード = 0x1c;\r
2032                         stkeyassignArray[ 4 ] = stkeyassign8;\r
2033                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2034                         CKeyAssign.STKEYASSIGN stkeyassign9 = stkeyassign63;\r
2035                         stkeyassign9.入力デバイス = E入力デバイス.MIDI入力;\r
2036                         stkeyassign9.ID = 0;\r
2037                         stkeyassign9.コード = 0x1d;\r
2038                         stkeyassignArray[ 5 ] = stkeyassign9;\r
2039                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2040                         CKeyAssign.STKEYASSIGN stkeyassign10 = stkeyassign63;\r
2041                         stkeyassign10.入力デバイス = E入力デバイス.MIDI入力;\r
2042                         stkeyassign10.ID = 0;\r
2043                         stkeyassign10.コード = 0x1f;\r
2044                         stkeyassignArray[ 6 ] = stkeyassign10;\r
2045                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2046                         CKeyAssign.STKEYASSIGN stkeyassign11 = stkeyassign63;\r
2047                         stkeyassign11.入力デバイス = E入力デバイス.MIDI入力;\r
2048                         stkeyassign11.ID = 0;\r
2049                         stkeyassign11.コード = 0x20;\r
2050                         stkeyassignArray[ 7 ] = stkeyassign11;\r
2051                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2052                         CKeyAssign.STKEYASSIGN stkeyassign12 = stkeyassign63;\r
2053                         stkeyassign12.入力デバイス = E入力デバイス.MIDI入力;\r
2054                         stkeyassign12.ID = 0;\r
2055                         stkeyassign12.コード = 0x22;\r
2056                         stkeyassignArray[ 8 ] = stkeyassign12;\r
2057                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2058                         CKeyAssign.STKEYASSIGN stkeyassign13 = stkeyassign63;\r
2059                         stkeyassign13.入力デバイス = E入力デバイス.MIDI入力;\r
2060                         stkeyassign13.ID = 0;\r
2061                         stkeyassign13.コード = 0x25;\r
2062                         stkeyassignArray[ 9 ] = stkeyassign13;\r
2063                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2064                         CKeyAssign.STKEYASSIGN stkeyassign14 = stkeyassign63;\r
2065                         stkeyassign14.入力デバイス = E入力デバイス.MIDI入力;\r
2066                         stkeyassign14.ID = 0;\r
2067                         stkeyassign14.コード = 0x26;\r
2068                         stkeyassignArray[ 10 ] = stkeyassign14;\r
2069                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2070                         CKeyAssign.STKEYASSIGN stkeyassign15 = stkeyassign63;\r
2071                         stkeyassign15.入力デバイス = E入力デバイス.MIDI入力;\r
2072                         stkeyassign15.ID = 0;\r
2073                         stkeyassign15.コード = 40;\r
2074                         stkeyassignArray[ 11 ] = stkeyassign15;\r
2075                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2076                         CKeyAssign.STKEYASSIGN stkeyassign16 = stkeyassign63;\r
2077                         stkeyassign16.入力デバイス = E入力デバイス.MIDI入力;\r
2078                         stkeyassign16.ID = 0;\r
2079                         stkeyassign16.コード = 0x71;\r
2080                         stkeyassignArray[ 12 ] = stkeyassign16;\r
2081                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2082                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2083                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2084                         this.KeyAssign.Drums.SD = stkeyassignArray;\r
2085                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2086                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2087                         CKeyAssign.STKEYASSIGN stkeyassign17 = stkeyassign63;\r
2088                         stkeyassign17.入力デバイス = E入力デバイス.キーボード;\r
2089                         stkeyassign17.ID = 0;\r
2090                         stkeyassign17.コード = 12;\r
2091                         stkeyassignArray[ 0 ] = stkeyassign17;\r
2092                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2093                         CKeyAssign.STKEYASSIGN stkeyassign18 = stkeyassign63;\r
2094                         stkeyassign18.入力デバイス = E入力デバイス.キーボード;\r
2095                         stkeyassign18.ID = 0;\r
2096                         stkeyassign18.コード = 0x7e;\r
2097                         stkeyassignArray[ 1 ] = stkeyassign18;\r
2098                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2099                         CKeyAssign.STKEYASSIGN stkeyassign19 = stkeyassign63;\r
2100                         stkeyassign19.入力デバイス = E入力デバイス.MIDI入力;\r
2101                         stkeyassign19.ID = 0;\r
2102                         stkeyassign19.コード = 0x21;\r
2103                         stkeyassignArray[ 2 ] = stkeyassign19;\r
2104                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2105                         CKeyAssign.STKEYASSIGN stkeyassign20 = stkeyassign63;\r
2106                         stkeyassign20.入力デバイス = E入力デバイス.MIDI入力;\r
2107                         stkeyassign20.ID = 0;\r
2108                         stkeyassign20.コード = 0x23;\r
2109                         stkeyassignArray[ 3 ] = stkeyassign20;\r
2110                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2111                         CKeyAssign.STKEYASSIGN stkeyassign21 = stkeyassign63;\r
2112                         stkeyassign21.入力デバイス = E入力デバイス.MIDI入力;\r
2113                         stkeyassign21.ID = 0;\r
2114                         stkeyassign21.コード = 0x24;\r
2115                         stkeyassignArray[ 4 ] = stkeyassign21;\r
2116                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2117                         CKeyAssign.STKEYASSIGN stkeyassign22 = stkeyassign63;\r
2118                         stkeyassign22.入力デバイス = E入力デバイス.MIDI入力;\r
2119                         stkeyassign22.ID = 0;\r
2120                         stkeyassign22.コード = 0x70;\r
2121                         stkeyassignArray[ 5 ] = stkeyassign22;\r
2122                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2123                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2124                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2125                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2126                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2127                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2128                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2129                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2130                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2131                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2132                         this.KeyAssign.Drums.BD = stkeyassignArray;\r
2133                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2134                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2135                         CKeyAssign.STKEYASSIGN stkeyassign23 = stkeyassign63;\r
2136                         stkeyassign23.入力デバイス = E入力デバイス.キーボード;\r
2137                         stkeyassign23.ID = 0;\r
2138                         stkeyassign23.コード = 0x1f;\r
2139                         stkeyassignArray[ 0 ] = stkeyassign23;\r
2140                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2141                         CKeyAssign.STKEYASSIGN stkeyassign24 = stkeyassign63;\r
2142                         stkeyassign24.入力デバイス = E入力デバイス.MIDI入力;\r
2143                         stkeyassign24.ID = 0;\r
2144                         stkeyassign24.コード = 0x30;\r
2145                         stkeyassignArray[ 1 ] = stkeyassign24;\r
2146                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2147                         CKeyAssign.STKEYASSIGN stkeyassign25 = stkeyassign63;\r
2148                         stkeyassign25.入力デバイス = E入力デバイス.MIDI入力;\r
2149                         stkeyassign25.ID = 0;\r
2150                         stkeyassign25.コード = 50;\r
2151                         stkeyassignArray[ 2 ] = stkeyassign25;\r
2152                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2153                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2154                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2155                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2156                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2157                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2158                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2159                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2160                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2161                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2162                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2163                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2164                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2165                         this.KeyAssign.Drums.HT = stkeyassignArray;\r
2166                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2167                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2168                         CKeyAssign.STKEYASSIGN stkeyassign26 = stkeyassign63;\r
2169                         stkeyassign26.入力デバイス = E入力デバイス.キーボード;\r
2170                         stkeyassign26.ID = 0;\r
2171                         stkeyassign26.コード = 11;\r
2172                         stkeyassignArray[ 0 ] = stkeyassign26;\r
2173                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2174                         CKeyAssign.STKEYASSIGN stkeyassign27 = stkeyassign63;\r
2175                         stkeyassign27.入力デバイス = E入力デバイス.MIDI入力;\r
2176                         stkeyassign27.ID = 0;\r
2177                         stkeyassign27.コード = 0x2f;\r
2178                         stkeyassignArray[ 1 ] = stkeyassign27;\r
2179                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2180                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2181                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2182                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2183                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2184                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2185                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2186                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2187                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2188                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2189                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2190                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2191                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2192                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2193                         this.KeyAssign.Drums.LT = stkeyassignArray;\r
2194                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2195                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2196                         CKeyAssign.STKEYASSIGN stkeyassign28 = stkeyassign63;\r
2197                         stkeyassign28.入力デバイス = E入力デバイス.キーボード;\r
2198                         stkeyassign28.ID = 0;\r
2199                         stkeyassign28.コード = 0x17;\r
2200                         stkeyassignArray[ 0 ] = stkeyassign28;\r
2201                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2202                         CKeyAssign.STKEYASSIGN stkeyassign29 = stkeyassign63;\r
2203                         stkeyassign29.入力デバイス = E入力デバイス.MIDI入力;\r
2204                         stkeyassign29.ID = 0;\r
2205                         stkeyassign29.コード = 0x29;\r
2206                         stkeyassignArray[ 1 ] = stkeyassign29;\r
2207                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2208                         CKeyAssign.STKEYASSIGN stkeyassign30 = stkeyassign63;\r
2209                         stkeyassign30.入力デバイス = E入力デバイス.MIDI入力;\r
2210                         stkeyassign30.ID = 0;\r
2211                         stkeyassign30.コード = 0x2b;\r
2212                         stkeyassignArray[ 2 ] = stkeyassign30;\r
2213                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2214                         CKeyAssign.STKEYASSIGN stkeyassign31 = stkeyassign63;\r
2215                         stkeyassign31.入力デバイス = E入力デバイス.MIDI入力;\r
2216                         stkeyassign31.ID = 0;\r
2217                         stkeyassign31.コード = 0x2d;\r
2218                         stkeyassignArray[ 3 ] = stkeyassign31;\r
2219                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2220                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2221                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2222                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2223                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2224                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2225                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2226                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2227                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2228                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2229                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2230                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2231                         this.KeyAssign.Drums.FT = stkeyassignArray;\r
2232                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2233                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2234                         CKeyAssign.STKEYASSIGN stkeyassign32 = stkeyassign63;\r
2235                         stkeyassign32.入力デバイス = E入力デバイス.キーボード;\r
2236                         stkeyassign32.ID = 0;\r
2237                         stkeyassign32.コード = 0x16;\r
2238                         stkeyassignArray[ 0 ] = stkeyassign32;\r
2239                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2240                         CKeyAssign.STKEYASSIGN stkeyassign33 = stkeyassign63;\r
2241                         stkeyassign33.入力デバイス = E入力デバイス.MIDI入力;\r
2242                         stkeyassign33.ID = 0;\r
2243                         stkeyassign33.コード = 0x31;\r
2244                         stkeyassignArray[ 1 ] = stkeyassign33;\r
2245                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2246                         CKeyAssign.STKEYASSIGN stkeyassign34 = stkeyassign63;\r
2247                         stkeyassign34.入力デバイス = E入力デバイス.MIDI入力;\r
2248                         stkeyassign34.ID = 0;\r
2249                         stkeyassign34.コード = 0x34;\r
2250                         stkeyassignArray[ 2 ] = stkeyassign34;\r
2251                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2252                         CKeyAssign.STKEYASSIGN stkeyassign35 = stkeyassign63;\r
2253                         stkeyassign35.入力デバイス = E入力デバイス.MIDI入力;\r
2254                         stkeyassign35.ID = 0;\r
2255                         stkeyassign35.コード = 0x37;\r
2256                         stkeyassignArray[ 3 ] = stkeyassign35;\r
2257                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2258                         CKeyAssign.STKEYASSIGN stkeyassign36 = stkeyassign63;\r
2259                         stkeyassign36.入力デバイス = E入力デバイス.MIDI入力;\r
2260                         stkeyassign36.ID = 0;\r
2261                         stkeyassign36.コード = 0x39;\r
2262                         stkeyassignArray[ 4 ] = stkeyassign36;\r
2263                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2264                         CKeyAssign.STKEYASSIGN stkeyassign37 = stkeyassign63;\r
2265                         stkeyassign37.入力デバイス = E入力デバイス.MIDI入力;\r
2266                         stkeyassign37.ID = 0;\r
2267                         stkeyassign37.コード = 0x5b;\r
2268                         stkeyassignArray[ 5 ] = stkeyassign37;\r
2269                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2270                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2271                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2272                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2273                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2274                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2275                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2276                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2277                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2278                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2279                         this.KeyAssign.Drums.CY = stkeyassignArray;\r
2280                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2281                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2282                         CKeyAssign.STKEYASSIGN stkeyassign38 = stkeyassign63;\r
2283                         stkeyassign38.入力デバイス = E入力デバイス.キーボード;\r
2284                         stkeyassign38.ID = 0;\r
2285                         stkeyassign38.コード = 10;\r
2286                         stkeyassignArray[ 0 ] = stkeyassign38;\r
2287                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2288                         CKeyAssign.STKEYASSIGN stkeyassign39 = stkeyassign63;\r
2289                         stkeyassign39.入力デバイス = E入力デバイス.MIDI入力;\r
2290                         stkeyassign39.ID = 0;\r
2291                         stkeyassign39.コード = 0x2e;\r
2292                         stkeyassignArray[ 1 ] = stkeyassign39;\r
2293                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2294                         CKeyAssign.STKEYASSIGN stkeyassign40 = stkeyassign63;\r
2295                         stkeyassign40.入力デバイス = E入力デバイス.MIDI入力;\r
2296                         stkeyassign40.ID = 0;\r
2297                         stkeyassign40.コード = 0x5c;\r
2298                         stkeyassignArray[ 2 ] = stkeyassign40;\r
2299                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2300                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2301                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2302                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2303                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2304                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2305                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2306                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2307                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2308                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2309                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2310                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2311                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2312                         this.KeyAssign.Drums.HHO = stkeyassignArray;\r
2313                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2314                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2315                         CKeyAssign.STKEYASSIGN stkeyassign41 = stkeyassign63;\r
2316                         stkeyassign41.入力デバイス = E入力デバイス.キーボード;\r
2317                         stkeyassign41.ID = 0;\r
2318                         stkeyassign41.コード = 20;\r
2319                         stkeyassignArray[ 0 ] = stkeyassign41;\r
2320                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2321                         CKeyAssign.STKEYASSIGN stkeyassign42 = stkeyassign63;\r
2322                         stkeyassign42.入力デバイス = E入力デバイス.MIDI入力;\r
2323                         stkeyassign42.ID = 0;\r
2324                         stkeyassign42.コード = 0x33;\r
2325                         stkeyassignArray[ 1 ] = stkeyassign42;\r
2326                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2327                         CKeyAssign.STKEYASSIGN stkeyassign43 = stkeyassign63;\r
2328                         stkeyassign43.入力デバイス = E入力デバイス.MIDI入力;\r
2329                         stkeyassign43.ID = 0;\r
2330                         stkeyassign43.コード = 0x35;\r
2331                         stkeyassignArray[ 2 ] = stkeyassign43;\r
2332                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2333                         CKeyAssign.STKEYASSIGN stkeyassign44 = stkeyassign63;\r
2334                         stkeyassign44.入力デバイス = E入力デバイス.MIDI入力;\r
2335                         stkeyassign44.ID = 0;\r
2336                         stkeyassign44.コード = 0x3b;\r
2337                         stkeyassignArray[ 3 ] = stkeyassign44;\r
2338                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2339                         CKeyAssign.STKEYASSIGN stkeyassign45 = stkeyassign63;\r
2340                         stkeyassign45.入力デバイス = E入力デバイス.MIDI入力;\r
2341                         stkeyassign45.ID = 0;\r
2342                         stkeyassign45.コード = 0x59;\r
2343                         stkeyassignArray[ 4 ] = stkeyassign45;\r
2344                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2345                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2346                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2347                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2348                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2349                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2350                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2351                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2352                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2353                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2354                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2355                         this.KeyAssign.Drums.RD = stkeyassignArray;\r
2356                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2357                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2358                         CKeyAssign.STKEYASSIGN stkeyassign46 = stkeyassign63;\r
2359                         stkeyassign46.入力デバイス = E入力デバイス.キーボード;\r
2360                         stkeyassign46.ID = 0;\r
2361                         stkeyassign46.コード = 0x1a;\r
2362                         stkeyassignArray[ 0 ] = stkeyassign46;\r
2363                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2364                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2365                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2366                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2367                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2368                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2369                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2370                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2371                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2372                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2373                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2374                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2375                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2376                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2377                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2378                         this.KeyAssign.Drums.LC = stkeyassignArray;\r
2379                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2380                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2381                         CKeyAssign.STKEYASSIGN stkeyassign47 = stkeyassign63;\r
2382                         stkeyassign47.入力デバイス = E入力デバイス.キーボード;\r
2383                         stkeyassign47.ID = 0;\r
2384                         stkeyassign47.コード = 0x37;\r
2385                         stkeyassignArray[ 0 ] = stkeyassign47;\r
2386                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2387                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2388                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2389                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2390                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2391                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2392                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2393                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2394                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2395                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2396                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2397                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2398                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2399                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2400                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2401                         this.KeyAssign.Guitar.R = stkeyassignArray;\r
2402                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2403                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2404                         CKeyAssign.STKEYASSIGN stkeyassign48 = stkeyassign63;\r
2405                         stkeyassign48.入力デバイス = E入力デバイス.キーボード;\r
2406                         stkeyassign48.ID = 0;\r
2407                         stkeyassign48.コード = 0x38;\r
2408                         stkeyassignArray[ 0 ] = stkeyassign48;\r
2409                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2410                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2411                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2412                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2413                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2414                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2415                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2416                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2417                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2418                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2419                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2420                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2421                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2422                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2423                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2424                         this.KeyAssign.Guitar.G = stkeyassignArray;\r
2425                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2426                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2427                         CKeyAssign.STKEYASSIGN stkeyassign49 = stkeyassign63;\r
2428                         stkeyassign49.入力デバイス = E入力デバイス.キーボード;\r
2429                         stkeyassign49.ID = 0;\r
2430                         stkeyassign49.コード = 0x39;\r
2431                         stkeyassignArray[ 0 ] = stkeyassign49;\r
2432                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2433                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2434                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2435                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2436                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2437                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2438                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2439                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2440                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2441                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2442                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2443                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2444                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2445                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2446                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2447                         this.KeyAssign.Guitar.B = stkeyassignArray;\r
2448                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2449                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2450                         CKeyAssign.STKEYASSIGN stkeyassign50 = stkeyassign63;\r
2451                         stkeyassign50.入力デバイス = E入力デバイス.キーボード;\r
2452                         stkeyassign50.ID = 0;\r
2453                         stkeyassign50.コード = 0x73;\r
2454                         stkeyassignArray[ 0 ] = stkeyassign50;\r
2455                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2456                         CKeyAssign.STKEYASSIGN stkeyassign51 = stkeyassign63;\r
2457                         stkeyassign51.入力デバイス = E入力デバイス.キーボード;\r
2458                         stkeyassign51.ID = 0;\r
2459                         stkeyassign51.コード = 0x2e;\r
2460                         stkeyassignArray[ 1 ] = stkeyassign51;\r
2461                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2462                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2463                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2464                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2465                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2466                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2467                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2468                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2469                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2470                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2471                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2472                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2473                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2474                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2475                         this.KeyAssign.Guitar.Pick = stkeyassignArray;\r
2476                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2477                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2478                         CKeyAssign.STKEYASSIGN stkeyassign52 = stkeyassign63;\r
2479                         stkeyassign52.入力デバイス = E入力デバイス.キーボード;\r
2480                         stkeyassign52.ID = 0;\r
2481                         stkeyassign52.コード = 0x74;\r
2482                         stkeyassignArray[ 0 ] = stkeyassign52;\r
2483                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2484                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2485                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2486                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2487                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2488                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2489                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2490                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2491                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2492                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2493                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2494                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2495                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2496                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2497                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2498                         this.KeyAssign.Guitar.Wail = stkeyassignArray;\r
2499                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2500                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2501                         CKeyAssign.STKEYASSIGN stkeyassign53 = stkeyassign63;\r
2502                         stkeyassign53.入力デバイス = E入力デバイス.キーボード;\r
2503                         stkeyassign53.ID = 0;\r
2504                         stkeyassign53.コード = 0x3d;\r
2505                         stkeyassignArray[ 0 ] = stkeyassign53;\r
2506                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2507                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2508                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2509                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2510                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2511                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2512                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2513                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2514                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2515                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2516                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2517                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2518                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2519                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2520                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2521                         this.KeyAssign.Guitar.Cancel = stkeyassignArray;\r
2522                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2523                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2524                         CKeyAssign.STKEYASSIGN stkeyassign54 = stkeyassign63;\r
2525                         stkeyassign54.入力デバイス = E入力デバイス.キーボード;\r
2526                         stkeyassign54.ID = 0;\r
2527                         stkeyassign54.コード = 60;\r
2528                         stkeyassignArray[ 0 ] = stkeyassign54;\r
2529                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2530                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2531                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2532                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2533                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2534                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2535                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2536                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2537                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2538                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2539                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2540                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2541                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2542                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2543                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2544                         this.KeyAssign.Guitar.Decide = stkeyassignArray;\r
2545                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[] { new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ) };\r
2546                         this.KeyAssign.Guitar[ 7 ] = stkeyassignArray;\r
2547                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[] { new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ) };\r
2548                         this.KeyAssign.Guitar[ 8 ] = stkeyassignArray;\r
2549                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[] { new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ) };\r
2550                         this.KeyAssign.Guitar[ 9 ] = stkeyassignArray;\r
2551                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2552                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2553                         CKeyAssign.STKEYASSIGN stkeyassign55 = stkeyassign63;\r
2554                         stkeyassign55.入力デバイス = E入力デバイス.キーボード;\r
2555                         stkeyassign55.ID = 0;\r
2556                         stkeyassign55.コード = 90;\r
2557                         stkeyassignArray[ 0 ] = stkeyassign55;\r
2558                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2559                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2560                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2561                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2562                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2563                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2564                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2565                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2566                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2567                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2568                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2569                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2570                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2571                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2572                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2573                         this.KeyAssign.Bass.R = stkeyassignArray;\r
2574                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2575                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2576                         CKeyAssign.STKEYASSIGN stkeyassign56 = stkeyassign63;\r
2577                         stkeyassign56.入力デバイス = E入力デバイス.キーボード;\r
2578                         stkeyassign56.ID = 0;\r
2579                         stkeyassign56.コード = 0x5b;\r
2580                         stkeyassignArray[ 0 ] = stkeyassign56;\r
2581                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2582                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2583                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2584                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2585                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2586                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2587                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2588                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2589                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2590                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2591                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2592                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2593                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2594                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2595                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2596                         this.KeyAssign.Bass.G = stkeyassignArray;\r
2597                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2598                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2599                         CKeyAssign.STKEYASSIGN stkeyassign57 = stkeyassign63;\r
2600                         stkeyassign57.入力デバイス = E入力デバイス.キーボード;\r
2601                         stkeyassign57.ID = 0;\r
2602                         stkeyassign57.コード = 0x5c;\r
2603                         stkeyassignArray[ 0 ] = stkeyassign57;\r
2604                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2605                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2606                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2607                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2608                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2609                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2610                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2611                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2612                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2613                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2614                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2615                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2616                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2617                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2618                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2619                         this.KeyAssign.Bass.B = stkeyassignArray;\r
2620                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2621                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2622                         CKeyAssign.STKEYASSIGN stkeyassign58 = stkeyassign63;\r
2623                         stkeyassign58.入力デバイス = E入力デバイス.キーボード;\r
2624                         stkeyassign58.ID = 0;\r
2625                         stkeyassign58.コード = 0x67;\r
2626                         stkeyassignArray[ 0 ] = stkeyassign58;\r
2627                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2628                         CKeyAssign.STKEYASSIGN stkeyassign59 = stkeyassign63;\r
2629                         stkeyassign59.入力デバイス = E入力デバイス.キーボード;\r
2630                         stkeyassign59.ID = 0;\r
2631                         stkeyassign59.コード = 100;\r
2632                         stkeyassignArray[ 1 ] = stkeyassign59;\r
2633                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2634                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2635                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2636                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2637                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2638                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2639                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2640                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2641                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2642                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2643                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2644                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2645                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2646                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2647                         this.KeyAssign.Bass.Pick = stkeyassignArray;\r
2648                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2649                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2650                         CKeyAssign.STKEYASSIGN stkeyassign60 = stkeyassign63;\r
2651                         stkeyassign60.入力デバイス = E入力デバイス.キーボード;\r
2652                         stkeyassign60.ID = 0;\r
2653                         stkeyassign60.コード = 0x59;\r
2654                         stkeyassignArray[ 0 ] = stkeyassign60;\r
2655                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2656                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2657                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2658                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2659                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2660                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2661                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2662                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2663                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2664                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2665                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2666                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2667                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2668                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2669                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2670                         this.KeyAssign.Bass.Wail = stkeyassignArray;\r
2671                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2672                         stkeyassign63 = new CKeyAssign.STKEYASSIGN();\r
2673                         CKeyAssign.STKEYASSIGN stkeyassign61 = stkeyassign63;\r
2674                         stkeyassign61.入力デバイス = E入力デバイス.キーボード;\r
2675                         stkeyassign61.ID = 0;\r
2676                         stkeyassign61.コード = 0x61;\r
2677                         stkeyassignArray[ 0 ] = stkeyassign61;\r
2678                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2679                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2680                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2681                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2682                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2683                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2684                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2685                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2686                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2687                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2688                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2689                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2690                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2691                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2692                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2693                         this.KeyAssign.Bass.Cancel = stkeyassignArray;\r
2694                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[ 0x10 ];\r
2695                         CKeyAssign.STKEYASSIGN stkeyassign62 = new CKeyAssign.STKEYASSIGN();\r
2696                         stkeyassign62.入力デバイス = E入力デバイス.キーボード;\r
2697                         stkeyassign62.ID = 0;\r
2698                         stkeyassign62.コード = 0x60;\r
2699                         stkeyassignArray[ 0 ] = stkeyassign62;\r
2700                         stkeyassignArray[ 1 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2701                         stkeyassignArray[ 2 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2702                         stkeyassignArray[ 3 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2703                         stkeyassignArray[ 4 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2704                         stkeyassignArray[ 5 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2705                         stkeyassignArray[ 6 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2706                         stkeyassignArray[ 7 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2707                         stkeyassignArray[ 8 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2708                         stkeyassignArray[ 9 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2709                         stkeyassignArray[ 10 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2710                         stkeyassignArray[ 11 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2711                         stkeyassignArray[ 12 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2712                         stkeyassignArray[ 13 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2713                         stkeyassignArray[ 14 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2714                         stkeyassignArray[ 15 ] = new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 );\r
2715                         this.KeyAssign.Bass.Decide = stkeyassignArray;\r
2716                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[] { new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ) };\r
2717                         this.KeyAssign.Bass[ 7 ] = stkeyassignArray;\r
2718                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[] { new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ) };\r
2719                         this.KeyAssign.Bass[ 8 ] = stkeyassignArray;\r
2720                         stkeyassignArray = new CKeyAssign.STKEYASSIGN[] { new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ), new CKeyAssign.STKEYASSIGN( E入力デバイス.不明, 0, 0 ) };\r
2721                         this.KeyAssign.Bass[ 9 ] = stkeyassignArray;\r
2722                 }\r
2723                 //-----------------\r
2724                 #endregion\r
2725         }\r
2726 }\r