Example #1
0
        public override void OnManagedリソースの作成()
        {
            this.b再生済み = false;

            //this.txバチお左_成功[ 0 ] = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Clear_L_00.png" ) );
            //this.txバチお左_成功[ 1 ] = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Clear_L_01.png" ) );
            //this.txバチお左_成功[ 2 ] = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Clear_L_02.png" ) );
            //this.txバチお左_成功[ 3 ] = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Clear_L_03.png" ) );
            //this.txバチお左_成功[ 4 ] = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Clear_L_04.png" ) );

            //this.txバチお右_成功[ 0 ] = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Clear_R_00.png" ) );
            //this.txバチお右_成功[ 1 ] = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Clear_R_01.png" ) );
            //this.txバチお右_成功[ 2 ] = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Clear_R_02.png" ) );
            //this.txバチお右_成功[ 3 ] = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Clear_R_03.png" ) );
            //this.txバチお右_成功[ 4 ] = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Clear_R_04.png" ) );

            //this.tx文字 = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Text.png" ) );
            //this.tx文字マスク = CDTXMania.tテクスチャの生成( CSkin.Path( @"Graphics\End\Text_Effect.png" ) );
            //if( this.tx文字マスク != null )
            //    this.tx文字マスク.b加算合成 = true;

            this.soundClear = CDTXMania.Sound管理.tサウンドを生成する(CSkin.Path(@"Sounds\Clear.ogg"));
            base.OnManagedリソースの作成();
        }
Example #2
0
        // CStage 実装

        public override void On活性化()
        {
            Trace.TraceInformation("曲読み込みステージを活性化します。");
            Trace.Indent();
            try
            {
                this.str曲タイトル     = "";
                this.strSTAGEFILE = "";
                if (!string.IsNullOrEmpty(CDTXMania.ConfigIni.FontName))
                {
                    this.pfTITLE    = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.FontName), CDTXMania.Skin.SongLoading_Title_FontSize);
                    this.pfSUBTITLE = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.FontName), CDTXMania.Skin.SongLoading_SubTitle_FontSize);
                }
                else
                {
                    this.pfTITLE    = new CPrivateFastFont(new FontFamily("MS UI Gothic"), CDTXMania.Skin.SongLoading_Title_FontSize);
                    this.pfSUBTITLE = new CPrivateFastFont(new FontFamily("MS UI Gothic"), CDTXMania.Skin.SongLoading_SubTitle_FontSize);
                }
                this.nBGM再生開始時刻   = -1;
                this.nBGMの総再生時間ms = 0;
                if (this.sd読み込み音 != null)
                {
                    CDTXMania.Sound管理.tサウンドを破棄する(this.sd読み込み音);
                    this.sd読み込み音 = null;
                }

                if (CDTXMania.bコンパクトモード)
                {
                    string strDTXファイルパス = CDTXMania.strコンパクトモードファイル;

                    CDTX cdtx = new CDTX(strDTXファイルパス, true, 1.0, 0, 0);
                    if (File.Exists(cdtx.strフォルダ名 + @"set.def"))
                    {
                        cdtx = new CDTX(strDTXファイルパス, true, 1.0, 0, 1);
                    }

                    this.str曲タイトル  = cdtx.TITLE;
                    this.strサブタイトル = cdtx.SUBTITLE;

                    cdtx.On非活性化();
                }
                else
                {
                    string strDTXファイルパス = CDTXMania.stage選曲.r確定されたスコア.ファイル情報.ファイルの絶対パス;

                    var strフォルダ名 = Path.GetDirectoryName(strDTXファイルパス) + @"\";

                    if (File.Exists(strフォルダ名 + @"set.def"))
                    {
                        var cdtx = new CDTX(strDTXファイルパス, true, 1.0, 0, 1);

                        this.str曲タイトル  = cdtx.TITLE;
                        this.strサブタイトル = cdtx.SUBTITLE;

                        cdtx.On非活性化();
                    }
                    else
                    {
                        var 譜面情報 = CDTXMania.stage選曲.r確定されたスコア.譜面情報;
                        this.str曲タイトル  = 譜面情報.タイトル;
                        this.strサブタイトル = 譜面情報.strサブタイトル;
                    }
                }

                // For the moment, detect that we are performing
                // calibration via there being an actual single
                // player and the special song title and subtitle
                // of the .tja used to perform input calibration
                CDTXMania.IsPerformingCalibration =
                    !CDTXMania.ConfigIni.b太鼓パートAutoPlay &&
                    CDTXMania.ConfigIni.nPlayerCount == 1 &&
                    str曲タイトル == "Input Calibration" &&
                    strサブタイトル == "TJAPlayer3 Developers";

                this.strSTAGEFILE = CSkin.Path(@"Graphics\4_SongLoading\Background.png");

                base.On活性化();
            }
            finally
            {
                Trace.TraceInformation("曲読み込みステージの活性化を完了しました。");
                Trace.Unindent();
            }
        }
Example #3
0
        /// <summary>
        /// 2016.07.30 kairera0467 #36413
        /// </summary>
        public void tSaveSkinConfig()
        {
            if (File.Exists(CSkin.Path(@"SkinConfig.ini")))
            {
                StreamWriter sw = new StreamWriter(CSkin.Path(@"SkinConfig.ini"), false, Encoding.GetEncoding("unicode"));
                sw.WriteLine("; スキンごとでの設定ファイル。現在テスト段階です。");
                sw.WriteLine("; ここで設定した数値が優先的に使用されます。");
                sw.WriteLine(";");
                sw.WriteLine("; 読み込み画面、演奏画面、ネームプレート、リザルト画面の曲名で使用するフォント名");
                sw.WriteLine("DisplayFontName={0}", CDTXMania.ConfigIni.str曲名表示フォント);
                sw.WriteLine();
                sw.WriteLine("; 選曲リストのフォント名");
                sw.WriteLine("; Font name for select song item.");
                sw.WriteLine("SelectListFontName={0}", CDTXMania.ConfigIni.str選曲リストフォント);
                sw.WriteLine();
                sw.WriteLine("; 選曲リストのフォントのサイズ[dot]");
                sw.WriteLine("; Font size[dot] for select song item.");
                sw.WriteLine("SelectListFontSize={0}", CDTXMania.ConfigIni.n選曲リストフォントのサイズdot);
                sw.WriteLine();
                sw.WriteLine("; ネームプレートタイプ");
                sw.WriteLine("; 0:タイプA XG2風の表示がされます。");
                sw.WriteLine("; 1:タイプB XG風の表示がされます。このタイプでは7_NamePlate_XG.png、7_Difficlty_XG.pngが読み込まれます。");
                sw.WriteLine("NamePlateType={0}", (int)CDTXMania.ConfigIni.eNamePlate);
                sw.WriteLine();
                sw.WriteLine("; 動くドラムセット(0:ON, 1:OFF, 2:NONE)");
                sw.WriteLine("DrumSetMoves={0}", (int)CDTXMania.ConfigIni.eドラムセットを動かす);
                sw.WriteLine();
                sw.WriteLine("; BPMバーの表示(0:表示する, 1:左のみ表示, 2:動くバーを表示しない, 3:表示しない)");
                sw.WriteLine("BPMBar={0}", (int)CDTXMania.ConfigIni.eBPMbar);
                sw.WriteLine();
                sw.WriteLine("; LivePointの表示(0:OFF, 1:ON)");
                sw.WriteLine("LivePoint={0}", CDTXMania.ConfigIni.bLivePoint ? 1 : 0);
                sw.WriteLine();
                sw.WriteLine("; スピーカーの表示(0:OFF, 1:ON)");
                sw.WriteLine("Speaker={0}", CDTXMania.ConfigIni.bSpeaker ? 1 : 0);
                sw.WriteLine();
                sw.WriteLine(";判定画像のアニメーション方式");
                sw.WriteLine(";(0:旧DTXMania方式 1:コマ方式 2:擬似XG方式)");
                sw.WriteLine("JudgeAnimeType={0}", CDTXMania.ConfigIni.nJudgeAnimeType);
                sw.WriteLine();
                sw.WriteLine(";判定画像のコマ数");
                sw.WriteLine("JudgeFrames={0}", CDTXMania.ConfigIni.nJudgeFrames);
                sw.WriteLine();
                sw.WriteLine(";判定画像の1コマのフレーム数");
                sw.WriteLine("JudgeInterval={0}", CDTXMania.ConfigIni.nJudgeInterval);
                sw.WriteLine();
                sw.WriteLine(";判定画像の1コマの幅");
                sw.WriteLine("JudgeWidgh={0}", CDTXMania.ConfigIni.nJudgeWidgh);
                sw.WriteLine();
                sw.WriteLine(";判定画像の1コマの高さ");
                sw.WriteLine("JudgeHeight={0}", CDTXMania.ConfigIni.nJudgeHeight);
                sw.WriteLine();
                sw.WriteLine(";アタックエフェクトのコマ数");
                sw.WriteLine("ExplosionFrames={0}", CDTXMania.ConfigIni.nExplosionFrames);
                sw.WriteLine();
                sw.WriteLine(";アタックエフェクトの1コマのフレーム数");
                sw.WriteLine("ExplosionInterval={0}", CDTXMania.ConfigIni.nExplosionInterval);
                sw.WriteLine();
                sw.WriteLine(";アタックエフェクトの1コマの幅");
                sw.WriteLine("ExplosionWidgh={0}", CDTXMania.ConfigIni.nExplosionWidgh);
                sw.WriteLine();
                sw.WriteLine(";アタックエフェクトの1コマの高さ");
                sw.WriteLine("ExplosionHeight={0}", CDTXMania.ConfigIni.nExplosionHeight);
                sw.WriteLine();
                sw.WriteLine("ワイリングエフェクトのコマ数;");
                sw.WriteLine("WailingFireFrames={0}", CDTXMania.ConfigIni.nWailingFireFrames);
                sw.WriteLine();
                sw.WriteLine(";ワイリングエフェクトの1コマのフレーム数");
                sw.WriteLine("WailingFireInterval={0}", CDTXMania.ConfigIni.nWailingFireInterval);
                sw.WriteLine();
                sw.WriteLine(";ワイリングエフェクトの1コマの幅");
                sw.WriteLine("WailingFireWidgh={0}", CDTXMania.ConfigIni.nWailingFireWidgh);
                sw.WriteLine();
                sw.WriteLine(";ワイリングエフェクトの1コマの高さ");
                sw.WriteLine("WailingFireHeight={0}", CDTXMania.ConfigIni.nWailingFireHeight);
                sw.WriteLine();
                sw.WriteLine(";ワイリングエフェクトのX座標");
                sw.WriteLine("WailingFirePosXGuitar={0}", CDTXMania.ConfigIni.nWailingFireX.Guitar);
                sw.WriteLine("WailingFirePosXBass={0}", CDTXMania.ConfigIni.nWailingFireX.Bass);
                sw.WriteLine();
                sw.WriteLine(";ワイリングエフェクトのY座標(Guitar、Bass共通)");
                sw.WriteLine("WailingFirePosY={0}", CDTXMania.ConfigIni.nWailingFireY);
                sw.WriteLine();

                sw.Close();
            }
        }
Example #4
0
        public void tGetDifficultyLabelFromScript(string strラベル名)
        {
            string strRawScriptFile;

            //ファイルの存在チェック
            if (File.Exists(CSkin.Path(@"Script\difficult.dtxs")))
            {
                //スクリプトを開く
                StreamReader reader = new StreamReader(CSkin.Path(@"Script\difficult.dtxs"), Encoding.GetEncoding("Shift_JIS"));
                strRawScriptFile = reader.ReadToEnd();

                strRawScriptFile = strRawScriptFile.Replace(Environment.NewLine, "\n");
                string[] delimiter     = { "\n" };
                string[] strSingleLine = strRawScriptFile.Split(delimiter, StringSplitOptions.RemoveEmptyEntries);

                for (int i = 0; i < strSingleLine.Length; i++)
                {
                    if (strSingleLine[i].StartsWith("//"))
                    {
                        continue; //コメント行の場合は無視
                    }
                    //まずSplit
                    string[] arScriptLine = strSingleLine[i].Split(',');

                    if ((arScriptLine.Length >= 4 && arScriptLine.Length <= 5) == false)
                    {
                        continue; //引数が4つか5つじゃなければ無視。
                    }
                    if (arScriptLine[0] != "7")
                    {
                        continue; //使用するシーンが違うなら無視。
                    }
                    if (arScriptLine.Length == 4)
                    {
                        if (String.Compare(arScriptLine[1], strラベル名, true) != 0)
                        {
                            continue; //ラベル名が違うなら無視。大文字小文字区別しない
                        }
                    }
                    else if (arScriptLine.Length == 5)
                    {
                        if (arScriptLine[4] == "1")
                        {
                            if (arScriptLine[1] != strラベル名)
                            {
                                continue; //ラベル名が違うなら無視。
                            }
                        }
                        else
                        {
                            if (String.Compare(arScriptLine[1], strラベル名, true) != 0)
                            {
                                continue; //ラベル名が違うなら無視。大文字小文字区別しない
                            }
                        }
                    }
                    this.rectDiffPanelPoint.X = Convert.ToInt32(arScriptLine[2]);
                    this.rectDiffPanelPoint.Y = Convert.ToInt32(arScriptLine[3]);

                    reader.Close();
                    break;
                }
            }
        }
Example #5
0
        public override void OnManagedCreateResources()
        {
            if (!base.bNotActivated)
            {
                this.txCharacter[0]   = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_Ratenumber_s.png"));
                this.txCharacter[1]   = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_Ratenumber_l.png"));
                this.txCharacter[2]   = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_numbers_large.png"));
                this.txNewRecord      = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_New Record.png"));
                this.txSkillPanel     = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_SkillPanel.png"));
                this.txExciteGauge    = new CTexture[3];
                this.txExciteGauge[0] = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_Gauge.png"));
                this.txExciteGauge[1] = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_gauge_bar.png"));
                this.txExciteGauge[2] = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_gauge_bar.jpg"));
                this.txScore          = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_score numbersGD.png"));
                this.txSkillPanel     = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_SkillPanel.png"));
                this.tx難易度パネル         = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_Difficulty.png"));
                this.tx難易度用数字         = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_LevelNumber.png"));
                //Load new textures
                this.txPercent  = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_RatePercent_l.png"));
                this.txSkillMax = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_skill max.png"));

                for (int i = 0; i < 3; i++)
                {
                    this.strPlayerName = string.IsNullOrEmpty(CDTXMania.ConfigIni.strCardName[i]) ? "GUEST" : CDTXMania.ConfigIni.strCardName[i];
                    this.strTitleName  = string.IsNullOrEmpty(CDTXMania.ConfigIni.strGroupName[i]) ? "" : CDTXMania.ConfigIni.strGroupName[i];
                    Bitmap   image2      = new Bitmap(257, 100);
                    Graphics graネームプレート用 = Graphics.FromImage(image2);

                    #region [ ネームカラー ]
                    //--------------------
                    Color clNameColor      = Color.White;
                    Color clNameColorLower = Color.White;
                    switch (CDTXMania.ConfigIni.nNameColor[0])
                    {
                    case 0:
                        clNameColor = Color.White;
                        break;

                    case 1:
                        clNameColor = Color.LightYellow;
                        break;

                    case 2:
                        clNameColor = Color.Yellow;
                        break;

                    case 3:
                        clNameColor = Color.Green;
                        break;

                    case 4:
                        clNameColor = Color.Blue;
                        break;

                    case 5:
                        clNameColor = Color.Purple;
                        break;

                    case 6:
                        clNameColor = Color.Red;
                        break;

                    case 7:
                        clNameColor = Color.Brown;
                        break;

                    case 8:
                        clNameColor = Color.Silver;
                        break;

                    case 9:
                        clNameColor = Color.Gold;
                        break;

                    case 10:
                        clNameColor = Color.White;
                        break;

                    case 11:
                        clNameColor      = Color.LightYellow;
                        clNameColorLower = Color.White;
                        break;

                    case 12:
                        clNameColor      = Color.Yellow;
                        clNameColorLower = Color.White;
                        break;

                    case 13:
                        clNameColor      = Color.FromArgb(0, 255, 33);
                        clNameColorLower = Color.White;
                        break;

                    case 14:
                        clNameColor      = Color.FromArgb(0, 38, 255);
                        clNameColorLower = Color.White;
                        break;

                    case 15:
                        clNameColor      = Color.FromArgb(72, 0, 255);
                        clNameColorLower = Color.White;
                        break;

                    case 16:
                        clNameColor      = Color.FromArgb(255, 255, 0, 0);
                        clNameColorLower = Color.White;
                        break;

                    case 17:
                        clNameColor      = Color.FromArgb(255, 232, 182, 149);
                        clNameColorLower = Color.FromArgb(255, 122, 69, 26);
                        break;

                    case 18:
                        clNameColor      = Color.FromArgb(246, 245, 255);
                        clNameColorLower = Color.FromArgb(125, 128, 137);
                        break;

                    case 19:
                        clNameColor      = Color.FromArgb(255, 238, 196, 85);
                        clNameColorLower = Color.FromArgb(255, 255, 241, 200);
                        break;
                    }
                    //--------------------
                    #endregion
                    #region [ 名前とか ]
                    Bitmap bmpCardName = new Bitmap(1, 1);
                    bmpCardName = this.prv表示用フォント.DrawPrivateFont(this.strPlayerName, Color.White, Color.Transparent, clNameColor, (CDTXMania.ConfigIni.nNameColor[i] > 11 ? clNameColorLower : clNameColor));
                    Bitmap bmpTitleName = new Bitmap(1, 1);
                    bmpTitleName = this.prv称号フォント.DrawPrivateFont(this.strTitleName, Color.White, Color.Transparent);

                    graネームプレート用.DrawImage(bmpCardName, -2f, 26f);
                    graネームプレート用.DrawImage(bmpTitleName, 6f, 8f);
                    #endregion
                    CDTXMania.t安全にDisposeする(ref bmpCardName);
                    CDTXMania.t安全にDisposeする(ref bmpTitleName);
                    this.txネームプレート用文字[i] = new CTexture(CDTXMania.app.Device, image2, CDTXMania.TextureFormat, false);
                    CDTXMania.t安全にDisposeする(ref image2);

                    CDTXMania.t安全にDisposeする(ref graネームプレート用);
                }
                this.prv表示用フォント.Dispose();
                this.prv称号フォント.Dispose();

                this.tGetDifficultyLabelFromScript(CDTXMania.stageSongSelection.rConfirmedSong.arDifficultyLabel[CDTXMania.stageSongSelection.nConfirmedSongDifficulty]);

                base.OnManagedCreateResources();
            }
        }
Example #6
0
        public void LoadTexture()
        {
            #region 共通
            Tile_Black        = TxC(@"Tile_Black.png");
            Tile_White        = TxC(@"Tile_White.png");
            Menu_Title        = TxC(@"Menu_Title.png");
            Menu_Highlight    = TxC(@"Menu_Highlight.png");
            Enum_Song         = TxC(@"Enum_Song.png");
            Scanning_Loudness = TxC(@"Scanning_Loudness.png");
            Overlay           = TxC(@"Overlay.png");
            NamePlate         = new CTexture[2];
            NamePlate[0]      = TxC(@"1P_NamePlate.png");
            NamePlate[1]      = TxC(@"2P_NamePlate.png");
            #endregion
            #region 1_タイトル画面
            Title_Background = TxC(TITLE + @"Background.png");
            Title_Menu       = TxC(TITLE + @"Menu.png");
            #endregion

            #region 2_コンフィグ画面
            Config_Background = TxC(CONFIG + @"Background.png");
            Config_Cursor     = TxC(CONFIG + @"Cursor.png");
            Config_ItemBox    = TxC(CONFIG + @"ItemBox.png");
            Config_Arrow      = TxC(CONFIG + @"Arrow.png");
            Config_KeyAssign  = TxC(CONFIG + @"KeyAssign.png");
            Config_Font       = TxC(CONFIG + @"Font.png");
            Config_Font_Bold  = TxC(CONFIG + @"Font_Bold.png");
            Config_Enum_Song  = TxC(CONFIG + @"Enum_Song.png");
            #endregion

            #region 3_選曲画面
            SongSelect_Background    = TxC(SONGSELECT + @"Background.png");
            SongSelect_Header        = TxC(SONGSELECT + @"Header.png");
            SongSelect_Footer        = TxC(SONGSELECT + @"Footer.png");
            SongSelect_Difficulty    = TxC(SONGSELECT + @"Difficulty.png");
            SongSelect_Auto          = TxC(SONGSELECT + @"Auto.png");
            SongSelect_Level         = TxC(SONGSELECT + @"Level.png");
            SongSelect_Branch        = TxC(SONGSELECT + @"Branch.png");
            SongSelect_Branch_Text   = TxC(SONGSELECT + @"Branch_Text.png");
            SongSelect_Bar_Center    = TxC(SONGSELECT + @"Bar_Center.png");
            SongSelect_Frame_Score   = TxC(SONGSELECT + @"Frame_Score.png");
            SongSelect_Frame_Box     = TxC(SONGSELECT + @"Frame_Box.png");
            SongSelect_Frame_BackBox = TxC(SONGSELECT + @"Frame_BackBox.png");
            SongSelect_Frame_Random  = TxC(SONGSELECT + @"Frame_Random.png");
            SongSelect_Score_Select  = TxC(SONGSELECT + @"Score_Select.png");
            //SongSelect_Frame_Dani = TxC(SONGSELECT + @"Frame_Dani.png");
            SongSelect_GenreText    = TxC(SONGSELECT + @"GenreText.png");
            SongSelect_Cursor_Left  = TxC(SONGSELECT + @"Cursor_Left.png");
            SongSelect_Cursor_Right = TxC(SONGSELECT + @"Cursor_Right.png");
            for (int i = 0; i < 9; i++)
            {
                SongSelect_Bar_Genre[i] = TxC(SONGSELECT + @"Bar_Genre_" + i.ToString() + ".png");
            }
            for (int i = 0; i < 5; i++)
            {
                SongSelect_ScoreWindow[i] = TxC(SONGSELECT + @"ScoreWindow_" + i.ToString() + ".png");
            }

            for (int i = 0; i < 9; i++)
            {
                SongSelect_GenreBack[i] = TxC(SONGSELECT + @"GenreBackground_" + i.ToString() + ".png");
            }
            SongSelect_ScoreWindow_Text = TxC(SONGSELECT + @"ScoreWindow_Text.png");
            #endregion

            #region 4_読み込み画面
            SongLoading_Plate   = TxC(SONGLOADING + @"Plate.png");
            SongLoading_FadeIn  = TxC(SONGLOADING + @"FadeIn.png");
            SongLoading_FadeOut = TxC(SONGLOADING + @"FadeOut.png");
            #endregion

            #region 5_演奏画面
            #region 共通
            Notes       = TxC(GAME + @"Notes.png");
            Judge_Frame = TxC(GAME + @"Notes.png");
            SENotes     = TxC(GAME + @"SENotes.png");
            Notes_Arm   = TxC(GAME + @"Notes_Arm.png");
            Judge       = TxC(GAME + @"Judge.png");

            Judge_Meter = TxC(GAME + @"Judge_Meter.png");
            Bar         = TxC(GAME + @"Bar.png");
            Bar_Branch  = TxC(GAME + @"Bar_Branch.png");

            #endregion
            #region キャラクター
            CDTXMania.Skin.Game_Chara_Ptn_Normal = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"Normal\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_Normal != 0)
            {
                Chara_Normal = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_Normal];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_Normal; i++)
                {
                    Chara_Normal[i] = TxC(GAME + CHARA + @"Normal\" + i.ToString() + ".png");
                }
            }
            CDTXMania.Skin.Game_Chara_Ptn_Clear = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"Clear\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_Clear != 0)
            {
                Chara_Normal_Cleared = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_Clear];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_Clear; i++)
                {
                    Chara_Normal_Cleared[i] = TxC(GAME + CHARA + @"Clear\" + i.ToString() + ".png");
                }
            }
            if (CDTXMania.Skin.Game_Chara_Ptn_Clear != 0)
            {
                Chara_Normal_Maxed = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_Clear];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_Clear; i++)
                {
                    Chara_Normal_Maxed[i] = TxC(GAME + CHARA + @"Clear_Max\" + i.ToString() + ".png");
                }
            }
            CDTXMania.Skin.Game_Chara_Ptn_GoGo = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"GoGo\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_GoGo != 0)
            {
                Chara_GoGoTime = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_GoGo];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_GoGo; i++)
                {
                    Chara_GoGoTime[i] = TxC(GAME + CHARA + @"GoGo\" + i.ToString() + ".png");
                }
            }
            if (CDTXMania.Skin.Game_Chara_Ptn_GoGo != 0)
            {
                Chara_GoGoTime_Maxed = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_GoGo];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_GoGo; i++)
                {
                    Chara_GoGoTime_Maxed[i] = TxC(GAME + CHARA + @"GoGo_Max\" + i.ToString() + ".png");
                }
            }

            CDTXMania.Skin.Game_Chara_Ptn_10combo = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"10combo\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_10combo != 0)
            {
                Chara_10Combo = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_10combo];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_10combo; i++)
                {
                    Chara_10Combo[i] = TxC(GAME + CHARA + @"10combo\" + i.ToString() + ".png");
                }
            }
            CDTXMania.Skin.Game_Chara_Ptn_10combo_Max = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"10combo_Max\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_10combo_Max != 0)
            {
                Chara_10Combo_Maxed = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_10combo_Max];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_10combo_Max; i++)
                {
                    Chara_10Combo_Maxed[i] = TxC(GAME + CHARA + @"10combo_Max\" + i.ToString() + ".png");
                }
            }

            CDTXMania.Skin.Game_Chara_Ptn_GoGoStart = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"GoGoStart\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_GoGoStart != 0)
            {
                Chara_GoGoStart = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_GoGoStart];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_GoGoStart; i++)
                {
                    Chara_GoGoStart[i] = TxC(GAME + CHARA + @"GoGoStart\" + i.ToString() + ".png");
                }
            }
            CDTXMania.Skin.Game_Chara_Ptn_GoGoStart_Max = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"GoGoStart_Max\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_GoGoStart_Max != 0)
            {
                Chara_GoGoStart_Maxed = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_GoGoStart_Max];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_GoGoStart_Max; i++)
                {
                    Chara_GoGoStart_Maxed[i] = TxC(GAME + CHARA + @"GoGoStart_Max\" + i.ToString() + ".png");
                }
            }
            CDTXMania.Skin.Game_Chara_Ptn_ClearIn = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"ClearIn\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_ClearIn != 0)
            {
                Chara_Become_Cleared = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_ClearIn];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_ClearIn; i++)
                {
                    Chara_Become_Cleared[i] = TxC(GAME + CHARA + @"ClearIn\" + i.ToString() + ".png");
                }
            }
            CDTXMania.Skin.Game_Chara_Ptn_SoulIn = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"SoulIn\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_SoulIn != 0)
            {
                Chara_Become_Maxed = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_SoulIn];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_SoulIn; i++)
                {
                    Chara_Become_Maxed[i] = TxC(GAME + CHARA + @"SoulIn\" + i.ToString() + ".png");
                }
            }
            CDTXMania.Skin.Game_Chara_Ptn_Balloon_Breaking = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"Balloon_Breaking\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_Balloon_Breaking != 0)
            {
                Chara_Balloon_Breaking = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_Balloon_Breaking];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_Balloon_Breaking; i++)
                {
                    Chara_Balloon_Breaking[i] = TxC(GAME + CHARA + @"Balloon_Breaking\" + i.ToString() + ".png");
                }
            }
            CDTXMania.Skin.Game_Chara_Ptn_Balloon_Broke = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"Balloon_Broke\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_Balloon_Broke != 0)
            {
                Chara_Balloon_Broke = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_Balloon_Broke];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_Balloon_Broke; i++)
                {
                    Chara_Balloon_Broke[i] = TxC(GAME + CHARA + @"Balloon_Broke\" + i.ToString() + ".png");
                }
            }
            CDTXMania.Skin.Game_Chara_Ptn_Balloon_Miss = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + CHARA + @"Balloon_Miss\"));
            if (CDTXMania.Skin.Game_Chara_Ptn_Balloon_Miss != 0)
            {
                Chara_Balloon_Miss = new CTexture[CDTXMania.Skin.Game_Chara_Ptn_Balloon_Miss];
                for (int i = 0; i < CDTXMania.Skin.Game_Chara_Ptn_Balloon_Miss; i++)
                {
                    Chara_Balloon_Miss[i] = TxC(GAME + CHARA + @"Balloon_Miss\" + i.ToString() + ".png");
                }
            }
            #endregion
            #region  り子
            CDTXMania.Skin.Game_Dancer_Ptn = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + DANCER + @"1\"));
            if (CDTXMania.Skin.Game_Dancer_Ptn != 0)
            {
                Dancer = new CTexture[5][];
                for (int i = 0; i < 5; i++)
                {
                    Dancer[i] = new CTexture[CDTXMania.Skin.Game_Dancer_Ptn];
                    for (int p = 0; p < CDTXMania.Skin.Game_Dancer_Ptn; p++)
                    {
                        Dancer[i][p] = TxC(GAME + DANCER + (i + 1) + @"\" + p.ToString() + ".png");
                    }
                }
            }
            #endregion
            #region モブ
            CDTXMania.Skin.Game_Mob_Ptn = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + MOB));
            Mob = new CTexture[CDTXMania.Skin.Game_Mob_Ptn];
            for (int i = 0; i < CDTXMania.Skin.Game_Mob_Ptn; i++)
            {
                Mob[i] = TxC(GAME + MOB + i.ToString() + ".png");
            }
            #endregion
            #region フッター
            Mob_Footer = TxC(GAME + FOOTER + @"0.png");
            #endregion
            #region 背景
            Background             = TxC(GAME + Background + @"0\" + @"Background.png");
            Background_Up          = new CTexture[2];
            Background_Up[0]       = TxC(GAME + BACKGROUND + @"0\" + @"1P_Up.png");
            Background_Up[1]       = TxC(GAME + BACKGROUND + @"0\" + @"2P_Up.png");
            Background_Up_Clear    = new CTexture[2];
            Background_Up_Clear[0] = TxC(GAME + BACKGROUND + @"0\" + @"1P_Up_Clear.png");
            Background_Up_Clear[1] = TxC(GAME + BACKGROUND + @"0\" + @"2P_Up_Clear.png");
            Background_Down        = TxC(GAME + BACKGROUND + @"0\" + @"Down.png");
            Background_Down_Clear  = TxC(GAME + BACKGROUND + @"0\" + @"Down_Clear.png");
            Background_Down_Scroll = TxC(GAME + BACKGROUND + @"0\" + @"Down_Scroll.png");

            #endregion
            #region 太鼓
            Taiko_Background      = new CTexture[2];
            Taiko_Background[0]   = TxC(GAME + TAIKO + @"1P_Background.png");
            Taiko_Background[1]   = TxC(GAME + TAIKO + @"2P_Background.png");
            Taiko_Frame           = new CTexture[2];
            Taiko_Frame[0]        = TxC(GAME + TAIKO + @"1P_Frame.png");
            Taiko_Frame[1]        = TxC(GAME + TAIKO + @"2P_Frame.png");
            Taiko_PlayerNumber    = new CTexture[2];
            Taiko_PlayerNumber[0] = TxC(GAME + TAIKO + @"1P_PlayerNumber.png");
            Taiko_PlayerNumber[1] = TxC(GAME + TAIKO + @"2P_PlayerNumber.png");
            Taiko_NamePlate       = new CTexture[2];
            Taiko_NamePlate[0]    = TxC(GAME + TAIKO + @"1P_NamePlate.png");
            Taiko_NamePlate[1]    = TxC(GAME + TAIKO + @"2P_NamePlate.png");
            Taiko_Base            = TxC(GAME + TAIKO + @"Base.png");
            Taiko_Don_Left        = TxC(GAME + TAIKO + @"Don.png");
            Taiko_Don_Right       = TxC(GAME + TAIKO + @"Don.png");
            Taiko_Ka_Left         = TxC(GAME + TAIKO + @"Ka.png");
            Taiko_Ka_Right        = TxC(GAME + TAIKO + @"Ka.png");
            Taiko_LevelUp         = TxC(GAME + TAIKO + @"LevelUp.png");
            Taiko_LevelDown       = TxC(GAME + TAIKO + @"LevelDown.png");
            Couse_Symbol          = new CTexture[6];
            string[] Couse_Symbols = new string[6] {
                "Easy", "Normal", "Hard", "Oni", "Edit", "Shin"
            };
            for (int i = 0; i < 6; i++)
            {
                Couse_Symbol[i] = TxC(GAME + COURSESYMBOL + Couse_Symbols[i] + ".png");
            }
            Taiko_Score        = new CTexture[3];
            Taiko_Score[0]     = TxC(GAME + TAIKO + @"Score.png");
            Taiko_Score[1]     = TxC(GAME + TAIKO + @"Score_1P.png");
            Taiko_Score[2]     = TxC(GAME + TAIKO + @"Score_2P.png");
            Taiko_Combo        = new CTexture[2];
            Taiko_Combo[0]     = TxC(GAME + TAIKO + @"Combo.png");
            Taiko_Combo[1]     = TxC(GAME + TAIKO + @"Combo_Big.png");
            Taiko_Combo_Effect = TxC(GAME + TAIKO + @"Combo_Effect.png");
            Taiko_Combo_Text   = TxC(GAME + TAIKO + @"Combo_Text.png");
            #endregion
            #region ゲージ
            Gauge         = new CTexture[2];
            Gauge[0]      = TxC(GAME + GAUGE + @"1P.png");
            Gauge[1]      = TxC(GAME + GAUGE + @"2P.png");
            Gauge_Base    = new CTexture[2];
            Gauge_Base[0] = TxC(GAME + GAUGE + @"1P_Base.png");
            Gauge_Base[1] = TxC(GAME + GAUGE + @"2P_Base.png");
            Gauge_Line    = new CTexture[2];
            Gauge_Line[0] = TxC(GAME + GAUGE + @"1P_Line.png");
            Gauge_Line[1] = TxC(GAME + GAUGE + @"2P_Line.png");
            CDTXMania.Skin.Game_Gauge_Rainbow_Ptn = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + GAUGE + @"Rainbow\"));
            if (CDTXMania.Skin.Game_Gauge_Rainbow_Ptn != 0)
            {
                Gauge_Rainbow = new CTexture[CDTXMania.Skin.Game_Gauge_Rainbow_Ptn];
                for (int i = 0; i < CDTXMania.Skin.Game_Gauge_Rainbow_Ptn; i++)
                {
                    Gauge_Rainbow[i] = TxC(GAME + GAUGE + @"Rainbow\" + i.ToString() + ".png");
                }
            }
            Gauge_Soul              = TxC(GAME + GAUGE + @"Soul.png");
            Gauge_Soul_Fire         = TxC(GAME + GAUGE + @"Fire.png");
            Gauge_Soul_Explosion    = new CTexture[2];
            Gauge_Soul_Explosion[0] = TxC(GAME + GAUGE + @"1P_Explosion.png");
            Gauge_Soul_Explosion[1] = TxC(GAME + GAUGE + @"2P_Explosion.png");
            #endregion
            #region 吹き出し
            Balloon_Combo        = new CTexture[2];
            Balloon_Combo[0]     = TxC(GAME + BALLOON + @"Combo_1P.png");
            Balloon_Combo[1]     = TxC(GAME + BALLOON + @"Combo_2P.png");
            Balloon_Roll         = TxC(GAME + BALLOON + @"Roll.png");
            Balloon_Balloon      = TxC(GAME + BALLOON + @"Balloon.png");
            Balloon_Number_Roll  = TxC(GAME + BALLOON + @"Number_Roll.png");
            Balloon_Number_Combo = TxC(GAME + BALLOON + @"Number_Combo.png");

            Balloon_Breaking = new CTexture[6];
            for (int i = 0; i < 6; i++)
            {
                Balloon_Breaking[i] = TxC(GAME + BALLOON + @"Breaking_" + i.ToString() + ".png");
            }
            #endregion
            #region エフェクト
            Effects_Hit_Explosion = TxCAf(GAME + EFFECTS + @"Hit\Explosion.png");
            if (Effects_Hit_Explosion != null)
            {
                Effects_Hit_Explosion.b加算合成 = true;
            }
            Effects_Hit_Explosion_Big = TxC(GAME + EFFECTS + @"Hit\Explosion_Big.png");
            if (Effects_Hit_Explosion_Big != null)
            {
                Effects_Hit_Explosion.b加算合成 = true;
            }
            Effects_Hit_FireWorks    = new CTextureAf[2];
            Effects_Hit_FireWorks[0] = TxCAf(GAME + EFFECTS + @"Hit\FireWorks_1P.png");
            if (Effects_Hit_FireWorks[0] != null)
            {
                Effects_Hit_FireWorks[0].b加算合成 = true;
            }
            Effects_Hit_FireWorks[1] = TxCAf(GAME + EFFECTS + @"Hit\FireWorks_2P.png");
            if (Effects_Hit_FireWorks[1] != null)
            {
                Effects_Hit_FireWorks[1].b加算合成 = true;
            }


            Effects_Fire = TxC(GAME + EFFECTS + @"Fire.png");
            if (Effects_Fire != null)
            {
                Effects_Fire.b加算合成 = true;
            }

            Effects_Rainbow = TxC(GAME + EFFECTS + @"Rainbow.png");

            Effects_Splash = new CTexture[30];
            for (int i = 0; i < 30; i++)
            {
                Effects_Splash[i] = TxC(GAME + EFFECTS + @"Splash\" + i.ToString() + ".png");
                if (Effects_Splash[i] != null)
                {
                    Effects_Splash[i].b加算合成 = true;
                }
            }
            Effects_Hit_Great     = new CTexture[15];
            Effects_Hit_Great_Big = new CTexture[15];
            Effects_Hit_Good      = new CTexture[15];
            Effects_Hit_Good_Big  = new CTexture[15];
            for (int i = 0; i < 15; i++)
            {
                Effects_Hit_Great[i]     = TxC(GAME + EFFECTS + @"Hit\" + @"Great\" + i.ToString() + ".png");
                Effects_Hit_Great_Big[i] = TxC(GAME + EFFECTS + @"Hit\" + @"Great_Big\" + i.ToString() + ".png");
                Effects_Hit_Good[i]      = TxC(GAME + EFFECTS + @"Hit\" + @"Good\" + i.ToString() + ".png");
                Effects_Hit_Good_Big[i]  = TxC(GAME + EFFECTS + @"Hit\" + @"Good_Big\" + i.ToString() + ".png");
            }
            CDTXMania.Skin.Game_Effect_Roll_Ptn = CDTXMania.t連番画像の枚数を数える(CSkin.Path(BASE + GAME + EFFECTS + @"Roll\"));
            Effects_Roll = new CTexture[CDTXMania.Skin.Game_Effect_Roll_Ptn];
            for (int i = 0; i < CDTXMania.Skin.Game_Effect_Roll_Ptn; i++)
            {
                Effects_Roll[i] = TxC(GAME + EFFECTS + @"Roll\" + i.ToString() + ".png");
            }
            #endregion
            #region レーン
            Lane_Base = new CTexture[3];
            Lane_Text = new CTexture[3];
            string[] Lanes = new string[3] {
                "Normal", "Expert", "Master"
            };
            for (int i = 0; i < 3; i++)
            {
                Lane_Base[i] = TxC(GAME + LANE + "Base_" + Lanes[i] + ".png");
                Lane_Text[i] = TxC(GAME + LANE + "Text_" + Lanes[i] + ".png");
            }
            Lane_Red             = TxC(GAME + LANE + @"Red.png");
            Lane_Blue            = TxC(GAME + LANE + @"Blue.png");
            Lane_Yellow          = TxC(GAME + LANE + @"Yellow.png");
            Lane_Background_Main = TxC(GAME + LANE + @"Background_Main.png");
            Lane_Background_Sub  = TxC(GAME + LANE + @"Background_Sub.png");
            Lane_Background_GoGo = TxC(GAME + LANE + @"Background_GoGo.png");

            #endregion
            #region 終了演出
            End_Clear_L = new CTexture[5];
            End_Clear_R = new CTexture[5];
            for (int i = 0; i < 5; i++)
            {
                End_Clear_L[i] = TxC(GAME + END + @"Clear_L_" + i.ToString() + ".png");
                End_Clear_R[i] = TxC(GAME + END + @"Clear_R_" + i.ToString() + ".png");
            }
            End_Clear_Text        = TxC(GAME + END + @"Clear_Text.png");
            End_Clear_Text_Effect = TxC(GAME + END + @"Clear_Text_Effect.png");
            if (End_Clear_Text_Effect != null)
            {
                End_Clear_Text_Effect.b加算合成 = true;
            }
            #endregion
            #region ゲームモード
            GameMode_Timer_Tick  = TxC(GAME + GAMEMODE + @"Timer_Tick.png");
            GameMode_Timer_Frame = TxC(GAME + GAMEMODE + @"Timer_Frame.png");
            #endregion
            #region ステージ失敗
            Failed_Game  = TxC(GAME + FAILED + @"Game.png");
            Failed_Stage = TxC(GAME + FAILED + @"Stage.png");
            #endregion
            #region ランナー
            Runner = TxC(GAME + RUNNER + @"0.png");
            #endregion
            #endregion

            #region 6_結果発表
            Result_Background   = TxC(RESULT + @"Background.png");
            Result_FadeIn       = TxC(RESULT + @"FadeIn.png");
            Result_Gauge        = TxC(RESULT + @"Gauge.png");
            Result_Gauge_Base   = TxC(RESULT + @"Gauge_Base.png");
            Result_Judge        = TxC(RESULT + @"Judge.png");
            Result_Header       = TxC(RESULT + @"Header.png");
            Result_Number       = TxC(RESULT + @"Number.png");
            Result_Panel        = TxC(RESULT + @"Panel.png");
            Result_Score_Text   = TxC(RESULT + @"Score_Text.png");
            Result_Score_Number = TxC(RESULT + @"Score_Number.png");
            #endregion

            #region 7_終了画面
            Exit_Background = TxC(EXIT + @"Background.png");
            #endregion
        }
Example #7
0
        public override void OnManagedCreateResources()
        {
            if (!base.bNotActivated)
            {
                this.ds背景動画       = CDTXMania.t失敗してもスキップ可能なDirectShowを生成する(CSkin.Path(@"Graphics\8_background.mp4"), CDTXMania.app.WindowHandle, true);
                this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background.jpg"));
                switch (CDTXMania.stageResult.n総合ランク値)
                {
                case 0:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankSS.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankSS.png"));
                    }
                    break;

                case 1:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankS.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankS.png"));
                    }
                    break;

                case 2:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankA.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankA.png"));
                    }
                    break;

                case 3:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankB.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankB.png"));
                    }
                    break;

                case 4:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankC.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankC.png"));
                    }
                    break;

                case 5:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankD.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankD.png"));
                    }
                    break;

                case 6:
                case 99:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankE.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankE.png"));
                    }
                    break;
                }
                this.txTopPanel    = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_header panel.png"), true);
                this.txBottomPanel = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_footer panel.png"), true);
                base.OnManagedCreateResources();
            }
        }
Example #8
0
        public override void OnManagedリソースの作成()
        {
            if (!this.b活性化してない)
            {
                //キャラクター画像を格納しているディレクトリに各モーションの画像がいくつあるかを検索。
                //現在は固定値。
                this.nキャラクター通常モーション枚数      = CDTXMania.ConfigIni.nCharaMotionCount;
                this.nキャラクターゴーゴーモーション枚数    = CDTXMania.ConfigIni.nCharaMotionCount_gogo;
                this.nキャラクタークリアモーション枚数     = CDTXMania.ConfigIni.nCharaMotionCount_clear;
                this.nキャラクターMAX通常モーション枚数   = CDTXMania.ConfigIni.nCharaMotionCount_max;
                this.nキャラクターMAXゴーゴーモーション枚数 = CDTXMania.ConfigIni.nCharaMotionCount_maxgogo;

                this.txキャラクターNormal = new CTexture[this.nキャラクター通常モーション枚数];
                for (int i = 0; i < this.nキャラクター通常モーション枚数; i++)
                {
                    this.txキャラクターNormal[i] = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\Chara\Normal_" + i.ToString() + ".png"));
                }

                this.txキャラクターGogo = new CTexture[this.nキャラクターゴーゴーモーション枚数];
                for (int i = 0; i < this.nキャラクターゴーゴーモーション枚数; i++)
                {
                    this.txキャラクターGogo[i] = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\Chara\gogo_" + i.ToString() + ".png"));
                }

                if (this.nキャラクタークリアモーション枚数 != 0)
                {
                    this.txキャラクターClear_Normal = new CTexture[this.nキャラクタークリアモーション枚数];
                    for (int i = 0; i < this.nキャラクタークリアモーション枚数; i++)
                    {
                        this.txキャラクターClear_Normal[i] = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\Chara\Clear_" + i.ToString() + ".png"));
                    }
                }

                if (this.nキャラクターMAX通常モーション枚数 != 0)
                {
                    this.txキャラクターMax_Normal = new CTexture[this.nキャラクターMAX通常モーション枚数];
                    for (int i = 0; i < this.nキャラクターMAX通常モーション枚数; i++)
                    {
                        this.txキャラクターMax_Normal[i] = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\Chara\Max_" + i.ToString() + ".png"));
                    }
                }

                if (this.nキャラクターMAXゴーゴーモーション枚数 != 0)
                {
                    this.txキャラクターMax_Gogo = new CTexture[this.nキャラクターMAXゴーゴーモーション枚数];
                    for (int i = 0; i < this.nキャラクターMAXゴーゴーモーション枚数; i++)
                    {
                        this.txキャラクターMax_Gogo[i] = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\Chara\Max_gogo_" + i.ToString() + ".png"));
                    }
                }


                //固定値
                //this.arゴーゴーモーション番号 = new int[]{ 0, 1, 2, 3, 3, 3, 3, 3, 3, 2, 1, 0, 0, 0, 0, 0 };

                //2015.08.05 Config.iniから変更可能にするための実験
                this.strList         = CDTXMania.ConfigIni.strCharaMotionList;
                this.strListGogo     = CDTXMania.ConfigIni.strCharaMotionList_gogo;
                this.strListClear    = CDTXMania.ConfigIni.strCharaMotionList_clear;
                this.strListMAX      = CDTXMania.ConfigIni.strCharaMotionList_max;
                this.strListMAXGogo  = CDTXMania.ConfigIni.strCharaMotionList_maxgogo;
                this.arモーション番号       = C変換.ar配列形式のstringをint配列に変換して返す(this.strList);
                this.arゴーゴーモーション番号   = C変換.ar配列形式のstringをint配列に変換して返す(this.strListGogo);
                this.arクリアモーション番号    = C変換.ar配列形式のstringをint配列に変換して返す(this.strListClear);
                this.ar黄色モーション番号     = C変換.ar配列形式のstringをint配列に変換して返す(this.strListGogo);
                this.ar黄色ゴーゴーモーション番号 = C変換.ar配列形式のstringをint配列に変換して返す(this.strListMAXGogo);

                this.ct通常モーション   = new CCounter(0, this.arモーション番号.Length - 1, 0.02, CSound管理.rc演奏用タイマ);
                this.ctゴーゴーモーション = new CCounter(0, this.arゴーゴーモーション番号.Length - 1, 50, CDTXMania.Timer);
                if (this.nキャラクタークリアモーション枚数 != 0)
                {
                    this.ctクリア通常モーション = new CCounter(0, this.arクリアモーション番号.Length - 1, 50, CDTXMania.Timer);
                }
                if (this.nキャラクターMAX通常モーション枚数 != 0)
                {
                    this.ctMAX通常モーション = new CCounter(0, this.ar黄色モーション番号.Length - 1, 50, CDTXMania.Timer);
                }
                if (this.nキャラクターMAXゴーゴーモーション枚数 != 0)
                {
                    this.ctMAXゴーゴーモーション = new CCounter(0, this.ar黄色ゴーゴーモーション番号.Length - 1, 50, CDTXMania.Timer);
                }

                base.OnManagedリソースの作成();
            }
        }
Example #9
0
        public override int On進行描画()
        {
            if (this.b活性化してない)
            {
                return(0);
            }

            #region [ 初めての進行描画 ]
            //-----------------
            if (this.b初めての進行描画)
            {
                for (int i = 0; i < 13; i++)
                {
                    this.ct登場アニメ用[i] = new CCounter(-i * 10, 100, 3, CDTXMania.Timer);
                }
                this.ct譜面分岐.t開始(1, 200, 10, CDTXMania.Timer);
                this.nスクロールタイマ = CSound管理.rc演奏用タイマ.n現在時刻;
                CDTXMania.stage選曲.t選択曲変更通知();

                this.n矢印スクロール用タイマ値 = CSound管理.rc演奏用タイマ.n現在時刻;
                this.ct三角矢印アニメ.t開始(0, 19, 40, CDTXMania.Timer);

                // 現在位置をかんたん~おに(エディット)の間に移動させる
#if DEBUG
                this.n現在の選択行 = 0;
#else
                this.n現在の選択行 = 3 + CDTXMania.stage選曲.act曲リスト.n現在選択中の曲の現在の難易度レベル;
#endif

                Point[] ptパネル座標 = new Point[]
                {
                    new Point(450, 84),
                    new Point(550, 84),
                    new Point(650, 84),
                    new Point(750, 84),
                    new Point(850, 84)
                };

                for (int j = 3; j < 7; j++)
                {
                    ST難易度選択項目 stDiffList = new ST難易度選択項目();

                    stDiffList.b選択可      = CDTXMania.stage選曲.act曲リスト.r現在選択中の曲.arスコア[j - 3] != null ? true : false;
                    stDiffList.b譜面分岐     = CDTXMania.stage選曲.act曲リスト.r現在選択中の曲.arスコア[j - 3] != null ? CDTXMania.stage選曲.act曲リスト.r現在選択中の曲.arスコア[j - 3].譜面情報.b譜面分岐[j - 3] : false;
                    stDiffList.e項目種類     = (E項目種類)(j - 3);
                    stDiffList.str項目名    = "Diff:" + j;
                    stDiffList.ptパネル座標   = ptパネル座標[j - 3];
                    stDiffList.rectパネル位置 = new Rectangle(0, 0, 0, 0);
                    stDiffList.txパネル     = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_diffboard_" + (j - 2) + ".png"));

                    this.list難易度選択項目[j] = stDiffList;
                }

                this.soundSelectAnnounce?.tサウンドを再生する();

                base.b初めての進行描画 = false;
            }
            //-----------------
            #endregion


            // 進行。
            //this.ct三角矢印アニメ.t進行Loop();
            this.ct譜面分岐?.t進行Loop();

            //if( this.tx背景 != null )
            //    this.tx背景.t2D描画( CDTXMania.app.Device, 0, 0 );

            //if( !this.b登場アニメ全部完了 )
            //{
            //             #region [ (1) 登場アニメフェーズの進行。]
            //             //-----------------


            //	//-----------------
            //	#endregion
            //}
            //else
            {
                #region [ (2) 通常フェーズの進行。]
                //-----------------

                //キー操作
                if (CDTXMania.Input管理.Keyboard.bキーが押された((int)SlimDX.DirectInput.Key.RightArrow))
                {
                    CDTXMania.Skin.soundカーソル移動音.t再生する();
                    this.t次に移動();
                }
                else if (CDTXMania.Input管理.Keyboard.bキーが押された((int)SlimDX.DirectInput.Key.LeftArrow))
                {
                    CDTXMania.Skin.soundカーソル移動音.t再生する();
                    this.t前に移動();
                }
                else if ((CDTXMania.Pad.b押されたDGB(Eパッド.Decide) ||
                          ((CDTXMania.ConfigIni.bEnterがキー割り当てのどこにも使用されていない && CDTXMania.Input管理.Keyboard.bキーが押された((int)SlimDX.DirectInput.Key.Return)))))
                {
                    if (this.list難易度選択項目[this.n現在の選択行].b選択可)
                    {
                        //CDTXMania.stage選曲.actPresound.tサウンド停止();
                        switch (this.list難易度選択項目[this.n現在の選択行].e項目種類)
                        {
                        case E項目種類.かんたん:
                        case E項目種類.ふつう:
                        case E項目種類.むずかしい:
                        case E項目種類.おに:
                        case E項目種類.エディット:
                        {
                            switch (CDTXMania.stage選曲.r現在選択中の曲.eノード種別)
                            {
                            case C曲リストノード.Eノード種別.SCORE:
                            {
                                CDTXMania.Skin.sound決定音.t再生する();
                                CDTXMania.stage選曲.t曲を選択する((int)this.list難易度選択項目[this.n現在の選択行].e項目種類);
                            }
                            break;

                            case C曲リストノード.Eノード種別.RANDOM:
                            {
                                CDTXMania.Skin.sound曲決定音.t再生する();
                                //CDTXMania.stage選曲.n確定された曲の難易度 = (int)this.list難易度選択項目[this.n現在の選択行].e項目種類;
                                CDTXMania.stage選曲.act曲リスト.n現在のアンカ難易度レベル_渡((int)this.list難易度選択項目[this.n現在の選択行].e項目種類);
                                CDTXMania.stage選曲.t曲をランダム選択する();
                            }
                            break;
                            }
                        }
                        break;

                        case E項目種類.戻る:
                            CDTXMania.stage選曲.t難易度選択画面を閉じる();
                            break;

                        case E項目種類.オプション:
                            break;

                        case E項目種類.音色:
                            break;
                        }
                    }
                    else
                    {
                        // 選択できない項目だった
                        CDTXMania.Skin.sound選択不可音.t再生する();
                    }
                }
                else if (CDTXMania.Input管理.Keyboard.bキーが押された((int)SlimDX.DirectInput.Key.Escape))
                {
                    CDTXMania.stage選曲.t難易度選択画面を閉じる();
                }
                #region [ F2 簡易オプション ]
                if (CDTXMania.Input管理.Keyboard.bキーが押された((int)SlimDX.DirectInput.Key.F2))
                {
                    CDTXMania.Skin.sound変更音.t再生する();
                    CDTXMania.stage選曲.actQuickConfig.tActivatePopupMenu(E楽器パート.DRUMS);
                }
                #endregion
                #region [ F3 オートON/OFF ]
                if (CDTXMania.Input管理.Keyboard.bキーが押された((int)SlimDX.DirectInput.Key.F3))
                {                       // [ESC]
                    CDTXMania.Skin.sound変更音.t再生する();
                    C共通.bToggleBoolian(ref CDTXMania.ConfigIni.b太鼓パートAutoPlay);
                }
                #endregion
                #region [ F4 ゲージ ]
                if (CDTXMania.Input管理.Keyboard.bキーが押された((int)SlimDX.DirectInput.Key.F4))
                {
                    CDTXMania.Skin.sound変更音.t再生する();
                    if (CDTXMania.ConfigIni.eGaugeMode == Eゲージモード.Normal)
                    {
                        CDTXMania.ConfigIni.eGaugeMode = Eゲージモード.IIDX;
                    }
                    else if (CDTXMania.ConfigIni.eGaugeMode == Eゲージモード.IIDX)
                    {
                        CDTXMania.ConfigIni.eGaugeMode = Eゲージモード.HARD;
                    }
                    else if (CDTXMania.ConfigIni.eGaugeMode == Eゲージモード.HARD)
                    {
                        CDTXMania.ConfigIni.eGaugeMode = Eゲージモード.EXHARD;
                    }
                    else if (CDTXMania.ConfigIni.eGaugeMode == Eゲージモード.EXHARD)
                    {
                        CDTXMania.ConfigIni.eGaugeMode = Eゲージモード.DEATH;
                    }
                    else if (CDTXMania.ConfigIni.eGaugeMode == Eゲージモード.DEATH)
                    {
                        CDTXMania.ConfigIni.eGaugeMode = Eゲージモード.Normal;
                    }
                }
                #endregion

                foreach (var item in this.list難易度選択項目)
                {
                    if (item.txパネル != null)
                    {
                        item.txパネル.n透明度 = item.b選択可 ? 255 : 127;
                        item.txパネル.t2D描画(CDTXMania.app.Device, item.ptパネル座標.X, item.ptパネル座標.Y);
                        if (item.b譜面)
                        {
                            if (item.b譜面分岐 ? (this.ct譜面分岐.n現在の値 >= 0 && this.ct譜面分岐.n現在の値 < 100) : false)
                            {
                                this.tx譜面分岐?.t2D描画(CDTXMania.app.Device, item.ptパネル座標.X, item.ptパネル座標.Y);
                                //CDTXMania.act文字コンソール.tPrint( CDTXMania.Skin.nSelectSongDiffIconX + (60 * i), 343, C文字コンソール.Eフォント種別.赤, "B\nr\na\nn\nc\nh" );
                            }
                            else
                            {
                                for (int i = 0; i < CDTXMania.stage選曲.r現在選択中のスコア.譜面情報.nレベル[(int)item.e項目種類]; i++)
                                {
                                    this.txレベル星.t2D描画(CDTXMania.app.Device, item.ptパネル座標.X + 40, (item.ptパネル座標.Y + 392) - (20 * i));
                                }
                            }
                        }
                    }
                }

                switch (this.list難易度選択項目[this.n現在の選択行].e項目種類)
                {
                case E項目種類.かんたん:
                case E項目種類.ふつう:
                case E項目種類.むずかしい:
                case E項目種類.おに:
                case E項目種類.エディット:
                    if (this.txカーソル大 != null)
                    {
                        this.txカーソル大.t2D描画(CDTXMania.app.Device, this.list難易度選択項目[this.n現在の選択行].ptパネル座標.X, this.list難易度選択項目[this.n現在の選択行].ptパネル座標.Y, new Rectangle(0, 0, 102, 530));
                    }
                    break;

                case E項目種類.戻る:
                case E項目種類.オプション:
                case E項目種類.音色:
                    if (this.txカーソル小 != null)
                    {
                        this.txカーソル小.t2D描画(CDTXMania.app.Device, this.list難易度選択項目[this.n現在の選択行].ptパネル座標.X, this.list難易度選択項目[this.n現在の選択行].ptパネル座標.Y, new Rectangle(0, 0, 70, 310));
                    }
                    break;
                }



                //-----------------
                #endregion
            }

            #region [ デバッグ用表示 ]
            //-----------------
#if DEBUG
            int nバー基準Y = 64;
            CDTXMania.act文字コンソール.tPrint(0, 32, C文字コンソール.Eフォント種別.白, this.n現在の選択行.ToString());

            for (int i = 0; i < this.list難易度選択項目.Count; i++)
            {
                C文字コンソール.Eフォント種別 bColorFlag = this.n現在の選択行 == i ? C文字コンソール.Eフォント種別.赤 : (this.list難易度選択項目[i].b選択可 ? C文字コンソール.Eフォント種別.白 : C文字コンソール.Eフォント種別.灰);

                nバー基準Y = nバー基準Y + 16;
                CDTXMania.act文字コンソール.tPrint(0, nバー基準Y, bColorFlag, this.list難易度選択項目[i].str項目名);
            }
            //-----------------
#endif
            #endregion

            if (this.txフッター != null)
            {
                this.txフッター.t2D描画(CDTXMania.app.Device, 0, 720 - this.txフッター.sz画像サイズ.Height);
            }

            return(0);
        }
Example #10
0
        public override void OnManagedリソースの作成()
        {
            if (this.b活性化してない)
            {
                return;
            }

            this.tx背景   = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_diffselect_background.png"));
            this.txヘッダー = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_diffselect_header_panel.png"));
            this.txフッター = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_footer panel.png"));

            this.txカーソル大 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_diff_coursol1.png"));
            this.txカーソル小 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_diff_coursol2.png"));

            this.tx説明背景 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_information_BG.png"));
            this.tx説明1  = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_information.png"));

            this.txレベル星 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_diffboard_star.png"));
            this.tx譜面分岐 = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_diffboard_branch.png"));

            this.soundSelectAnnounce = CDTXMania.Sound管理.tサウンドを生成する(CSkin.Path(@"Sounds\DiffSelect.ogg"));

            this.list難易度選択項目 = new List <ST難易度選択項目>();
            if (this.list難易度選択項目 != null)
            {
                for (int i = 0; i < 8; i++)
                {
                    // 項目リストを作る
                    ST難易度選択項目 stDiffList = new ST難易度選択項目();

                    switch (i)
                    {
                    case 0:
                        // 戻る
                        stDiffList.b選択可      = true;
                        stDiffList.str項目名    = "back";
                        stDiffList.e項目種類     = E項目種類.戻る;
                        stDiffList.ptパネル座標   = new Point(249, 114);
                        stDiffList.rectパネル位置 = new Rectangle(0, 0, 0, 0);
                        stDiffList.txパネル     = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_item_back.png"));
                        this.list難易度選択項目.Add(stDiffList);

                        break;

                    case 1:
                        // オプション
                        stDiffList.b選択可      = false;
                        stDiffList.str項目名    = "option";
                        stDiffList.e項目種類     = E項目種類.オプション;
                        stDiffList.ptパネル座標   = new Point(319, 114);
                        stDiffList.rectパネル位置 = new Rectangle(0, 0, 0, 0);
                        stDiffList.txパネル     = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_item_option.png"));
                        this.list難易度選択項目.Add(stDiffList);
                        break;

                    case 2:
                        // 音色
                        stDiffList.b選択可      = false;
                        stDiffList.str項目名    = "se";
                        stDiffList.e項目種類     = E項目種類.音色;
                        stDiffList.ptパネル座標   = new Point(389, 114);
                        stDiffList.rectパネル位置 = new Rectangle(0, 0, 0, 0);
                        stDiffList.txパネル     = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\5_item_se.png"));
                        this.list難易度選択項目.Add(stDiffList);
                        break;

                    case 3:
                        stDiffList.b選択可      = false;
                        stDiffList.e項目種類     = E項目種類.かんたん;
                        stDiffList.str項目名    = "Diff:0";
                        stDiffList.ptパネル座標   = new Point(450, 80);
                        stDiffList.rectパネル位置 = new Rectangle(0, 0, 0, 0);

                        this.list難易度選択項目.Add(stDiffList);
                        break;

                    case 4:
                        stDiffList.b選択可      = false;
                        stDiffList.e項目種類     = E項目種類.ふつう;
                        stDiffList.str項目名    = "Diff:1";
                        stDiffList.ptパネル座標   = new Point(550, 80);
                        stDiffList.rectパネル位置 = new Rectangle(0, 0, 0, 0);

                        this.list難易度選択項目.Add(stDiffList);
                        break;

                    case 5:
                        stDiffList.b選択可      = false;
                        stDiffList.e項目種類     = E項目種類.むずかしい;
                        stDiffList.str項目名    = "Diff:2";
                        stDiffList.ptパネル座標   = new Point(650, 0);
                        stDiffList.rectパネル位置 = new Rectangle(0, 0, 0, 0);

                        this.list難易度選択項目.Add(stDiffList);
                        break;

                    case 6:
                        stDiffList.b選択可      = false;
                        stDiffList.e項目種類     = E項目種類.おに;
                        stDiffList.str項目名    = "Diff:3";
                        stDiffList.ptパネル座標   = new Point(750, 0);
                        stDiffList.rectパネル位置 = new Rectangle(0, 0, 0, 0);

                        this.list難易度選択項目.Add(stDiffList);
                        break;
                        //case 7:
                        //    stDiffList.b選択可 = CDTXMania.stage選曲.act曲リスト.r現在選択中の曲.arスコア[ 4 ] != null ? true : false;
                        //    stDiffList.e項目種類 = E項目種類.エディット;
                        //    stDiffList.str項目名 = "Diff:4";
                        //    stDiffList.ptパネル座標 = new Point( 850, 0 );
                        //    stDiffList.rectパネル位置 = new Rectangle( 0, 0, 0, 0 );

                        //    this.list難易度選択項目.Add( stDiffList );
                        //    break;
                    }
                }
            }

            base.OnManagedリソースの作成();
        }
        public override void OnManagedCreateResources()
        {
            if (!base.bNotActivated)
            {
                this.txリザルト画像がないときの画像 = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\5_preimage default.png"));
                if (CDTXMania.ConfigIni.bストイックモード)
                {
                    this.txリザルト画像 = this.txリザルト画像がないときの画像;
                }
                else if (((!this.tリザルト画像の指定があれば構築する()) && (!this.tプレビュー画像の指定があれば構築する())))
                {
                    this.txリザルト画像 = this.txリザルト画像がないときの画像;
                }

                #region [ 曲名、アーティスト名テクスチャの生成 ]
                if (string.IsNullOrEmpty(CDTXMania.DTX.TITLE) || (!CDTXMania.bCompactMode && CDTXMania.ConfigIni.b曲名表示をdefのものにする))
                {
                    this.strSongName = CDTXMania.stageSongSelection.r現在選択中の曲.strタイトル;
                }
                else
                {
                    this.strSongName = CDTXMania.DTX.TITLE;
                }

                this.pfタイトル = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 20, FontStyle.Regular);
                Bitmap bmpSongName = new Bitmap(1, 1);
                bmpSongName     = pfタイトル.DrawPrivateFont(this.strSongName, CPrivateFont.DrawMode.Edge, Color.Black, Color.Black, this.clGITADORAgradationTopColor, this.clGITADORAgradationBottomColor, true);
                this.txSongName = CDTXMania.tGenerateTexture(bmpSongName, false);
                bmpSongName.Dispose();

                this.pfアーティスト = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 15, FontStyle.Regular);
                Bitmap bmpArtistName = new Bitmap(1, 1);
                bmpArtistName     = pfアーティスト.DrawPrivateFont(CDTXMania.DTX.ARTIST, CPrivateFont.DrawMode.Edge, Color.Black, Color.Black, this.clGITADORAgradationTopColor, this.clGITADORAgradationBottomColor, true);
                this.txArtistName = CDTXMania.tGenerateTexture(bmpArtistName, false);
                bmpArtistName.Dispose();
                #endregion

                Bitmap   bitmap2  = new Bitmap(0x3a, 0x12);
                Graphics graphics = Graphics.FromImage(bitmap2);

                graphics.Dispose();
                this.txSongDifficulty = new CTexture(CDTXMania.app.Device, bitmap2, CDTXMania.TextureFormat, false);
                bitmap2.Dispose();
                Bitmap bitmap3 = new Bitmap(100, 100);
                graphics = Graphics.FromImage(bitmap3);
                float num;
                //If Skill Mode is CLASSIC, always display lvl as Classic Style
                if (CDTXMania.ConfigIni.nSkillMode == 0 || (CDTXMania.ConfigIni.bCLASSIC譜面判別を有効にする &&
                                                            (CDTXMania.DTX.bチップがある.LeftCymbal == false) &&
                                                            (CDTXMania.DTX.bチップがある.LP == false) &&
                                                            (CDTXMania.DTX.bチップがある.LBD == false) &&
                                                            (CDTXMania.DTX.bチップがある.FT == false) &&
                                                            (CDTXMania.DTX.bチップがある.Ride == false)))
                {
                    num = ((float)CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums);
                }
                else
                {
                    if (CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums > 100)
                    {
                        num = ((float)CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums);
                    }
                    else
                    {
                        num = ((float)CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums) / 10f;
                    }
                }
                //If Skill Mode is CLASSIC, always display lvl as Classic Style
                if (CDTXMania.ConfigIni.nSkillMode == 0 || (CDTXMania.ConfigIni.bCLASSIC譜面判別を有効にする &&
                                                            (CDTXMania.DTX.bチップがある.LeftCymbal == false) &&
                                                            (CDTXMania.DTX.bチップがある.LP == false) &&
                                                            (CDTXMania.DTX.bチップがある.LBD == false) &&
                                                            (CDTXMania.DTX.bチップがある.FT == false) &&
                                                            (CDTXMania.DTX.bチップがある.Ride == false) &&
                                                            (CDTXMania.DTX.b強制的にXG譜面にする == false)))
                {
                    graphics.DrawString(string.Format("{0:00}", num), this.ftSongDifficultyFont, new SolidBrush(Color.FromArgb(0xba, 0xba, 0xba)), (float)0f, (float)-4f);
                }
                else
                {
                    graphics.DrawString(string.Format("{0:0.00}", num), this.ftSongDifficultyFont, new SolidBrush(Color.FromArgb(0xba, 0xba, 0xba)), (float)0f, (float)-4f);
                }
                this.txSongLevel = new CTexture(CDTXMania.app.Device, bitmap3, CDTXMania.TextureFormat, false);
                graphics.Dispose();
                bitmap3.Dispose();
                Bitmap bitmap4 = new Bitmap(0x2a, 0x30);
                graphics = Graphics.FromImage(bitmap4);
                graphics.DrawImage(this.iDrumSpeed, new Rectangle(0, 0, 0x2a, 0x30), new Rectangle(0, CDTXMania.ConfigIni.nScrollSpeed.Drums * 0x30, 0x2a, 0x30), GraphicsUnit.Pixel);
                this.txDrumSpeed = new CTexture(CDTXMania.app.Device, bitmap4, CDTXMania.TextureFormat, false);
                graphics.Dispose();
                //graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.Default;
                bitmap4.Dispose();
                base.OnManagedCreateResources();
            }
        }
 public override void OnManagedリソースの作成()
 {
     this.b再生済み      = false;
     this.soundClear = CDTXMania.Sound管理.tサウンドを生成する(CSkin.Path(@"Sounds\Clear.ogg"), ESoundGroup.SoundEffect);
     base.OnManagedリソースの作成();
 }
Example #13
0
        public override void OnManagedCreateResources()
        {
            if (!base.bNotActivated)
            {
                this.ftSongDifficultyFont = new System.Drawing.Font("Impact", 15f, FontStyle.Regular);
                this.iDrumSpeed           = Image.FromFile(CSkin.Path(@"Graphics\7_panel_icons.jpg"));
                this.txジャケットパネル           = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_JacketPanel.png"));

                this.txリザルト画像がないときの画像 = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\5_preimage default.png"));
                if (CDTXMania.ConfigIni.bストイックモード)
                {
                    this.txリザルト画像 = this.txリザルト画像がないときの画像;
                }
                else if (((!this.tリザルト画像の指定があれば構築する()) && (!this.tプレビュー画像の指定があれば構築する())))
                {
                    this.txリザルト画像 = this.txリザルト画像がないときの画像;
                }

                #region [ Generation of song title, artist name and disclaimer textures ]
                if (string.IsNullOrEmpty(CDTXMania.DTX.TITLE) || (!CDTXMania.bCompactMode && CDTXMania.ConfigIni.b曲名表示をdefのものにする))
                {
                    this.strSongName = CDTXMania.stageSongSelection.r現在選択中の曲.strタイトル;
                }
                else
                {
                    this.strSongName = CDTXMania.DTX.TITLE;
                }

                CPrivateFastFont pfTitle     = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 20, FontStyle.Regular);
                Bitmap           bmpSongName = pfTitle.DrawPrivateFont(this.strSongName, CPrivateFont.DrawMode.Edge, Color.Black, Color.Black, this.clGITADORAgradationTopColor, this.clGITADORAgradationBottomColor, true);
                this.txSongName = CDTXMania.tGenerateTexture(bmpSongName, false);
                bmpSongName.Dispose();
                pfTitle.Dispose();

                CPrivateFastFont pfArtist      = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 15, FontStyle.Regular);
                Bitmap           bmpArtistName = pfArtist.DrawPrivateFont(CDTXMania.DTX.ARTIST, CPrivateFont.DrawMode.Edge, Color.Black, Color.Black, this.clGITADORAgradationTopColor, this.clGITADORAgradationBottomColor, true);
                this.txArtistName = CDTXMania.tGenerateTexture(bmpArtistName, false);
                bmpArtistName.Dispose();
                pfArtist.Dispose();

                if (CDTXMania.ConfigIni.nPlaySpeed != 20)
                {
                    double           d = (double)(CDTXMania.ConfigIni.nPlaySpeed / 20.0);
                    String           strModifiedPlaySpeed = "Play Speed: x" + d.ToString("0.000");
                    CPrivateFastFont pfModifiedPlaySpeed  = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 18, FontStyle.Regular);
                    Bitmap           bmpModifiedPlaySpeed = pfModifiedPlaySpeed.DrawPrivateFont(strModifiedPlaySpeed, CPrivateFont.DrawMode.Edge, Color.White, Color.White, Color.Black, Color.Red, true);
                    this.txModifiedPlaySpeed = CDTXMania.tGenerateTexture(bmpModifiedPlaySpeed, false);
                    bmpModifiedPlaySpeed.Dispose();
                    pfModifiedPlaySpeed.Dispose();
                }

                if (CDTXMania.stageResult.bIsTrainingMode)
                {
                    String           strResultsNotSavedTraining = "Training feature used";
                    CPrivateFastFont pfResultsNotSavedTraining  = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 18, FontStyle.Regular);
                    Bitmap           bmpResultsNotSavedTraining = pfResultsNotSavedTraining.DrawPrivateFont(strResultsNotSavedTraining, CPrivateFont.DrawMode.Edge, Color.White, Color.White, Color.Black, Color.Red, true);
                    this.txTrainingMode = CDTXMania.tGenerateTexture(bmpResultsNotSavedTraining, false);
                    bmpResultsNotSavedTraining.Dispose();
                    pfResultsNotSavedTraining.Dispose();
                }

                String           strResultsNotSaved = "Score will not be saved";
                CPrivateFastFont pfResultsNotSaved  = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str選曲リストフォント), 18, FontStyle.Regular);
                Bitmap           bmpResultsNotSaved = pfResultsNotSaved.DrawPrivateFont(strResultsNotSaved, CPrivateFont.DrawMode.Edge, Color.White, Color.White, Color.Black, Color.Red, true);
                this.txResultsNotSaved = CDTXMania.tGenerateTexture(bmpResultsNotSaved, false);
                bmpResultsNotSaved.Dispose();
                pfResultsNotSaved.Dispose();
                #endregion

                Bitmap   bitmap2  = new Bitmap(0x3a, 0x12);
                Graphics graphics = Graphics.FromImage(bitmap2);

                graphics.Dispose();
                this.txSongDifficulty = new CTexture(CDTXMania.app.Device, bitmap2, CDTXMania.TextureFormat, false);
                bitmap2.Dispose();
                Bitmap bitmap3 = new Bitmap(100, 100);
                graphics = Graphics.FromImage(bitmap3);
                float num;
                //If Skill Mode is CLASSIC, always display lvl as Classic Style
                if (CDTXMania.ConfigIni.nSkillMode == 0 || (CDTXMania.ConfigIni.bCLASSIC譜面判別を有効にする &&
                                                            (CDTXMania.DTX.bチップがある.LeftCymbal == false) &&
                                                            (CDTXMania.DTX.bチップがある.LP == false) &&
                                                            (CDTXMania.DTX.bチップがある.LBD == false) &&
                                                            (CDTXMania.DTX.bチップがある.FT == false) &&
                                                            (CDTXMania.DTX.bチップがある.Ride == false)))
                {
                    num = ((float)CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums);
                }
                else
                {
                    if (CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums > 100)
                    {
                        num = ((float)CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums);
                    }
                    else
                    {
                        num = ((float)CDTXMania.stageSongSelection.rChosenScore.SongInformation.Level.Drums) / 10f;
                    }
                }
                //If Skill Mode is CLASSIC, always display lvl as Classic Style
                if (CDTXMania.ConfigIni.nSkillMode == 0 || (CDTXMania.ConfigIni.bCLASSIC譜面判別を有効にする &&
                                                            (CDTXMania.DTX.bチップがある.LeftCymbal == false) &&
                                                            (CDTXMania.DTX.bチップがある.LP == false) &&
                                                            (CDTXMania.DTX.bチップがある.LBD == false) &&
                                                            (CDTXMania.DTX.bチップがある.FT == false) &&
                                                            (CDTXMania.DTX.bチップがある.Ride == false) &&
                                                            (CDTXMania.DTX.b強制的にXG譜面にする == false)))
                {
                    graphics.DrawString(string.Format("{0:00}", num), this.ftSongDifficultyFont, new SolidBrush(Color.FromArgb(0xba, 0xba, 0xba)), (float)0f, (float)-4f);
                }
                else
                {
                    graphics.DrawString(string.Format("{0:0.00}", num), this.ftSongDifficultyFont, new SolidBrush(Color.FromArgb(0xba, 0xba, 0xba)), (float)0f, (float)-4f);
                }
                this.txSongLevel = new CTexture(CDTXMania.app.Device, bitmap3, CDTXMania.TextureFormat, false);
                graphics.Dispose();
                bitmap3.Dispose();
                Bitmap bitmap4 = new Bitmap(0x2a, 0x30);
                graphics = Graphics.FromImage(bitmap4);
                graphics.DrawImage(this.iDrumSpeed, new Rectangle(0, 0, 0x2a, 0x30), new Rectangle(0, CDTXMania.ConfigIni.nScrollSpeed.Drums * 0x30, 0x2a, 0x30), GraphicsUnit.Pixel);
                this.txDrumSpeed = new CTexture(CDTXMania.app.Device, bitmap4, CDTXMania.TextureFormat, false);
                graphics.Dispose();
                //graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.Default;
                bitmap4.Dispose();
                base.OnManagedCreateResources();
            }
        }
Example #14
0
        public override void OnManagedCreateResources()
        {
            if (!base.bNotActivated)
            {
                //
                this.rBackgroundVideoAVI = new CDTX.CAVI(1290, CSkin.Path(@"Graphics\8_background.mp4"), "", 20.0);
                this.rBackgroundVideoAVI.OnDeviceCreated();
                if (rBackgroundVideoAVI.avi != null)
                {
                    this.actBackgroundVideoAVI.bLoop = true;
                    this.actBackgroundVideoAVI.Start(EChannel.MovieFull, rBackgroundVideoAVI, 0, -1);
                    Trace.TraceInformation("Playing Background video for Result Screen");
                }

                //this.ds背景動画 = CDTXMania.t失敗してもスキップ可能なDirectShowを生成する(CSkin.Path(@"Graphics\8_background.mp4"), CDTXMania.app.WindowHandle, true);
                this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background.jpg"));
                switch (CDTXMania.stageResult.n総合ランク値)
                {
                case 0:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankSS.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankSS.png"));
                    }
                    break;

                case 1:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankS.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankS.png"));
                    }
                    break;

                case 2:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankA.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankA.png"));
                    }
                    break;

                case 3:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankB.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankB.png"));
                    }
                    break;

                case 4:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankC.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankC.png"));
                    }
                    break;

                case 5:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankD.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankD.png"));
                    }
                    break;

                case 6:
                case 99:
                    if (File.Exists(CSkin.Path(@"Graphics\8_background rankE.png")))
                    {
                        this.txBackground = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_background rankE.png"));
                    }
                    break;
                }
                this.txTopPanel    = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_header panel.png"), true);
                this.txBottomPanel = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\8_footer panel.png"), true);
                base.OnManagedCreateResources();
            }
        }
        public override void OnManagedリソースの作成()
        {
            if (!base.b活性化してない)
            {
                this.tReadSoundConfig();

                for (int i = 0; i < this.listComboVoice?.Count; i++)
                {
                    if (this.listComboVoice[i].bFileFound)
                    {
                        this.listComboVoice[i].soundComboVoice = CDTXMania.Sound管理.tサウンドを生成する(CSkin.Path(@"Sounds\" + this.listComboVoice[i].strFilePath));
                    }
                }
                for (int i = 0; i < this.listComboVoiceP2?.Count; i++)
                {
                    if (this.listComboVoiceP2[i].bFileFound)
                    {
                        this.listComboVoiceP2[i].soundComboVoice = CDTXMania.Sound管理.tサウンドを生成する(CSkin.Path(@"Sounds\" + this.listComboVoiceP2[i].strFilePath));
                    }
                }
                base.OnManagedリソースの作成();
            }
        }
Example #16
0
        public override void OnManagedリソースの作成()
        {
            if (this.b活性化してない)
            {
                return;
            }
            string pathNowEnumeratingSongs = CSkin.Path(@"Graphics\ScreenTitle NowEnumeratingSongs.png");

            if (File.Exists(pathNowEnumeratingSongs))
            {
                this.txNowEnumeratingSongs = CDTXMania.tテクスチャの生成(pathNowEnumeratingSongs, false);
            }
            else
            {
                this.txNowEnumeratingSongs = null;
            }
            string pathDialogNowEnumeratingSongs = CSkin.Path(@"Graphics\ScreenConfig NowEnumeratingSongs.png");

            if (File.Exists(pathDialogNowEnumeratingSongs))
            {
                this.txDialogNowEnumeratingSongs = CDTXMania.tテクスチャの生成(pathDialogNowEnumeratingSongs, false);
            }
            else
            {
                this.txDialogNowEnumeratingSongs = null;
            }

            try
            {
                System.Drawing.Font ftMessage  = new System.Drawing.Font("MS PGothic", 40f, FontStyle.Bold, GraphicsUnit.Pixel);
                string[]            strMessage =
                {
                    "     曲データの一覧を\n       取得しています。\n   しばらくお待ちください。",
                    " Now enumerating songs.\n         Please wait..."
                };
                int ci = (CultureInfo.CurrentCulture.TwoLetterISOLanguageName == "ja") ? 0 : 1;
                if ((strMessage != null) && (strMessage.Length > 0))
                {
                    Bitmap   image    = new Bitmap(1, 1);
                    Graphics graphics = Graphics.FromImage(image);
                    SizeF    ef       = graphics.MeasureString(strMessage[ci], ftMessage);
                    Size     size     = new Size((int)Math.Ceiling((double)ef.Width), (int)Math.Ceiling((double)ef.Height));
                    graphics.Dispose();
                    image.Dispose();
                    image    = new Bitmap(size.Width, size.Height);
                    graphics = Graphics.FromImage(image);
                    graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;
                    graphics.DrawString(strMessage[ci], ftMessage, Brushes.White, (float)0f, (float)0f);
                    graphics.Dispose();
                    this.txMessage          = new CTexture(CDTXMania.app.Device, image, CDTXMania.TextureFormat);
                    this.txMessage.vc拡大縮小倍率 = new Vector3(0.5f, 0.5f, 1f);
                    image.Dispose();
                    CDTXMania.t安全にDisposeする(ref ftMessage);
                }
                else
                {
                    this.txMessage = null;
                }
            }
            catch (CTextureCreateFailedException)
            {
                Trace.TraceError("テクスチャの生成に失敗しました。(txMessage)");
                this.txMessage = null;
            }

            base.OnManagedリソースの作成();
        }
Example #17
0
        public override void OnManagedCreateResources()
        {
            if (!base.bNotActivated)
            {
                this.prv表示用フォント = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str曲名表示フォント), 20, FontStyle.Regular);
                this.prv称号フォント  = new CPrivateFastFont(new FontFamily(CDTXMania.ConfigIni.str曲名表示フォント), 12, FontStyle.Regular);
                this.txスキルパネル   = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_SkillPanel.png"));
                this.txパネル文字[0] = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_Ratenumber_s.png"));
                this.txパネル文字[1] = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_Ratenumber_l.png"));
                this.tx難易度パネル   = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_Difficulty.png"));
                this.tx難易度用数字   = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_LevelNumber.png"));
                //Load new textures
                this.txPercent     = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_RatePercent_l.png"));
                this.txSkillMax    = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_skill max.png"));
                this.txLagHitCount = CDTXMania.tGenerateTexture(CSkin.Path(@"Graphics\7_lag numbers.png"));

                this.strPlayerName = string.IsNullOrEmpty(CDTXMania.ConfigIni.strCardName[0]) ? "GUEST" : CDTXMania.ConfigIni.strCardName[0];
                this.strTitleName  = string.IsNullOrEmpty(CDTXMania.ConfigIni.strGroupName[0]) ? "" : CDTXMania.ConfigIni.strGroupName[0];

                Bitmap   image2      = new Bitmap(257, 100);
                Graphics graネームプレート用 = Graphics.FromImage(image2);

                #region [ ネームカラー ]
                //--------------------
                Color clNameColor      = Color.White;
                Color clNameColorLower = Color.White;
                switch (CDTXMania.ConfigIni.nNameColor[0])
                {
                case 0:
                    clNameColor = Color.White;
                    break;

                case 1:
                    clNameColor = Color.LightYellow;
                    break;

                case 2:
                    clNameColor = Color.Yellow;
                    break;

                case 3:
                    clNameColor = Color.Green;
                    break;

                case 4:
                    clNameColor = Color.Blue;
                    break;

                case 5:
                    clNameColor = Color.Purple;
                    break;

                case 6:
                    clNameColor = Color.Red;
                    break;

                case 7:
                    clNameColor = Color.Brown;
                    break;

                case 8:
                    clNameColor = Color.Silver;
                    break;

                case 9:
                    clNameColor = Color.Gold;
                    break;

                case 10:
                    clNameColor = Color.White;
                    break;

                case 11:
                    clNameColor      = Color.LightYellow;
                    clNameColorLower = Color.White;
                    break;

                case 12:
                    clNameColor      = Color.Yellow;
                    clNameColorLower = Color.White;
                    break;

                case 13:
                    clNameColor      = Color.FromArgb(0, 255, 33);
                    clNameColorLower = Color.White;
                    break;

                case 14:
                    clNameColor      = Color.FromArgb(0, 38, 255);
                    clNameColorLower = Color.White;
                    break;

                case 15:
                    clNameColor      = Color.FromArgb(72, 0, 255);
                    clNameColorLower = Color.White;
                    break;

                case 16:
                    clNameColor      = Color.FromArgb(255, 255, 0, 0);
                    clNameColorLower = Color.White;
                    break;

                case 17:
                    clNameColor      = Color.FromArgb(255, 232, 182, 149);
                    clNameColorLower = Color.FromArgb(255, 122, 69, 26);
                    break;

                case 18:
                    clNameColor      = Color.FromArgb(246, 245, 255);
                    clNameColorLower = Color.FromArgb(125, 128, 137);
                    break;

                case 19:
                    clNameColor      = Color.FromArgb(255, 238, 196, 85);
                    clNameColorLower = Color.FromArgb(255, 255, 241, 200);
                    break;
                }
                //--------------------
                #endregion
                #region [ 名前とか ]
                Bitmap bmpCardName = new Bitmap(1, 1);
                bmpCardName = this.prv表示用フォント.DrawPrivateFont(this.strPlayerName, Color.White, Color.Transparent, clNameColor, (CDTXMania.ConfigIni.nNameColor[0] > 11 ? clNameColorLower : clNameColor));
                Bitmap bmpTitleName = new Bitmap(1, 1);
                bmpTitleName = this.prv称号フォント.DrawPrivateFont(this.strTitleName, Color.White, Color.Transparent);

                graネームプレート用.DrawImage(bmpCardName, -2f, 26f);
                graネームプレート用.DrawImage(bmpTitleName, 6f, 8f);
                #endregion

                bmpCardName.Dispose();
                bmpTitleName.Dispose();
                this.txネームプレート用文字 = new CTexture(CDTXMania.app.Device, image2, CDTXMania.TextureFormat, false);
                image2.Dispose();

                graネームプレート用.Dispose();

                base.OnManagedCreateResources();
            }
        }
Example #18
0
 internal CTextureAf TxCAf(string FileName)
 {
     return(CDTXMania.tテクスチャの生成Af(CSkin.Path(BASE + FileName)));
 }
        // メソッド

        public void SetPanelString(string str)
        {
            this.strパネル文字列 = str;
            if (base.b活性化してる)
            {
                if ((this.strパネル文字列 != null) && (this.strパネル文字列.Length > 0))
                {
                    try
                    {
                        Bitmap bmpSongTitle = new Bitmap(1, 1);
                        bmpSongTitle = pfMusicName.DrawPrivateFont(this.strパネル文字列, Color.White, Color.Black);
                        //Bitmap bmpVTest = new Bitmap( 1, 1 );
                        //bmpVTest = pf縦書きテスト.DrawPrivateFont( this.strパネル文字列, Color.White, Color.Black, true );
                        CDTXMania.t安全にDisposeする(ref this.txMusicName);
                        this.txMusicName = CDTXMania.tテクスチャの生成(bmpSongTitle, false);
                        Bitmap bmpDiff = new Bitmap(1, 1);
                        string strDiff = "";
                        if (CDTXMania.Skin.eDiffDispMode == E難易度表示タイプ.n曲目に表示)
                        {
                            switch (CDTXMania.stage選曲.n確定された曲の難易度)
                            {
                            case 0:
                                strDiff = "かんたん ";
                                break;

                            case 1:
                                strDiff = "ふつう ";
                                break;

                            case 2:
                                strDiff = "むずかしい ";
                                break;

                            case 3:
                                strDiff = "おに ";
                                break;

                            case 4:
                                strDiff = "えでぃと ";
                                break;

                            default:
                                strDiff = "おに ";
                                break;
                            }
                            bmpDiff = pfMusicName.DrawPrivateFont(strDiff + "1 曲目", Color.White, Color.Black);
                        }
                        else
                        {
                            bmpDiff = pfMusicName.DrawPrivateFont("1曲目", Color.White, Color.Black);
                        }
                        if (this.tx難易度とステージ数 == null)
                        {
                            this.tx難易度とステージ数 = CDTXMania.tテクスチャの生成(bmpDiff, false);
                        }

                        CDTXMania.t安全にDisposeする(ref bmpDiff);
                        CDTXMania.t安全にDisposeする(ref bmpSongTitle);
                        //CDTXMania.t安全にDisposeする( ref this.pfMusicName ); //たまにNullReferenceが出るのでダメ
                    }
                    catch (CTextureCreateFailedException)
                    {
                        Trace.TraceError("パネル文字列テクスチャの生成に失敗しました。");
                    }
                }
                if (!string.IsNullOrEmpty(CDTXMania.DTX.GENRE) && this.txGENRE == null)
                {
                    string strGenre = CDTXMania.DTX.GENRE;
                    if (strGenre.Equals("アニメ"))
                    {
                        this.txGENRE = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\7_Genre_anime.png"));
                    }
                    else if (strGenre.Equals("J-POP"))
                    {
                        this.txGENRE = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\7_Genre_JPOP.png"));
                    }
                    else if (strGenre.Equals("ゲームミュージック"))
                    {
                        this.txGENRE = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\7_Genre_game.png"));
                    }
                    else if (strGenre.Equals("ナムコオリジナル"))
                    {
                        this.txGENRE = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\7_Genre_namco.png"));
                    }
                    else if (strGenre.Equals("クラシック"))
                    {
                        this.txGENRE = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\7_Genre_classic.png"));
                    }
                    else if (strGenre.Equals("どうよう"))
                    {
                        this.txGENRE = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\7_Genre_child.png"));
                    }
                    else if (strGenre.Equals("バラエティ"))
                    {
                        this.txGENRE = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\7_Genre_variety.png"));
                    }
                    else if (strGenre.Equals("ボーカロイド") || strGenre.Equals("VOCALOID"))
                    {
                        this.txGENRE = CDTXMania.tテクスチャの生成(CSkin.Path(@"Graphics\7_Genre_vocaloid.png"));
                    }
                    else
                    {
                        Bitmap bmpDummy = new Bitmap(1, 1);
                        this.txGENRE = CDTXMania.tテクスチャの生成(bmpDummy, true);
                        CDTXMania.t安全にDisposeする(ref bmpDummy);
                    }
                }

                this.ct進行用 = new CCounter(0, 2000, 2, CDTXMania.Timer);
                this.Start();
            }
        }
Example #20
0
 internal CTexture TxCGen(string FileName)
 {
     return(CDTXMania.tテクスチャの生成(CSkin.Path(BASE + GAME + GENRE + FileName + ".png")));
 }