diff --git a/TJAPlayer3/Common/CSkin.cs b/TJAPlayer3/Common/CSkin.cs index 3624d4e0..5dfa857e 100644 --- a/TJAPlayer3/Common/CSkin.cs +++ b/TJAPlayer3/Common/CSkin.cs @@ -3296,6 +3296,14 @@ namespace TJAPlayer3 Game_Gauge_Y[i] = int.Parse(strSplit[i]); } } + else if (strCommand == "Game_Gauge_X_AI") + { + Game_Gauge_X_AI = int.Parse(strParam); + } + else if (strCommand == "Game_Gauge_Y_AI") + { + Game_Gauge_Y_AI = int.Parse(strParam); + } else if (strCommand == "Game_Gauge_Rect") { string[] strSplit = strParam.Split(','); @@ -3320,6 +3328,14 @@ namespace TJAPlayer3 Game_Gauge_ClearText_Y[i] = int.Parse(strSplit[i]); } } + else if (strCommand == "Game_Gauge_ClearText_X_AI") + { + Game_Gauge_ClearText_X_AI = int.Parse(strParam); + } + else if (strCommand == "Game_Gauge_ClearText_Y_AI") + { + Game_Gauge_ClearText_Y_AI = int.Parse(strParam); + } else if (strCommand == "Game_Gauge_ClearText_Rect") { string[] strSplit = strParam.Split(','); @@ -3352,6 +3368,14 @@ namespace TJAPlayer3 Gauge_Soul_Y[i] = int.Parse(strSplit[i]); } } + else if (strCommand == "Gauge_Soul_X_AI") + { + Gauge_Soul_X_AI = int.Parse(strParam); + } + else if (strCommand == "Gauge_Soul_Y_AI") + { + Gauge_Soul_Y_AI = int.Parse(strParam); + } else if (strCommand == "Gauge_Soul_Fire_X") { string[] strSplit = strParam.Split(','); @@ -3368,6 +3392,14 @@ namespace TJAPlayer3 Gauge_Soul_Fire_Y[i] = int.Parse(strSplit[i]); } } + else if (strCommand == "Gauge_Soul_Fire_X_AI") + { + Gauge_Soul_Fire_X_AI = int.Parse(strParam); + } + else if (strCommand == "Gauge_Soul_Fire_Y_AI") + { + Gauge_Soul_Fire_Y_AI = int.Parse(strParam); + } else if (strCommand == "Game_Gauge_Rainbow_Timer") { if (int.Parse(strParam) != 0) @@ -4144,6 +4176,78 @@ namespace TJAPlayer3 { Game_AIBattle_Batch_Move[i] = int.Parse(strSplit[i]); } + } + else if (strCommand == "Game_AIBattle_Judge_Meter_X") + { + string[] strSplit = strParam.Split(','); + for (int i = 0; i < 2; i++) + { + Game_AIBattle_Judge_Meter_X[i] = int.Parse(strSplit[i]); + } + } + else if (strCommand == "Game_AIBattle_Judge_Meter_Y") + { + string[] strSplit = strParam.Split(','); + for (int i = 0; i < 2; i++) + { + Game_AIBattle_Judge_Meter_Y[i] = int.Parse(strSplit[i]); + } + } + else if (strCommand == "Game_AIBattle_Judge_Number_Perfect_X") + { + string[] strSplit = strParam.Split(','); + for (int i = 0; i < 2; i++) + { + Game_AIBattle_Judge_Number_Perfect_X[i] = int.Parse(strSplit[i]); + } + } + else if (strCommand == "Game_AIBattle_Judge_Number_Perfect_Y") + { + string[] strSplit = strParam.Split(','); + for (int i = 0; i < 2; i++) + { + Game_AIBattle_Judge_Number_Perfect_Y[i] = int.Parse(strSplit[i]); + } + } + else if (strCommand == "Game_AIBattle_Judge_Number_Good_X") + { + string[] strSplit = strParam.Split(','); + for (int i = 0; i < 2; i++) + { + Game_AIBattle_Judge_Number_Good_X[i] = int.Parse(strSplit[i]); + } + } + else if (strCommand == "Game_AIBattle_Judge_Number_Good_Y") + { + string[] strSplit = strParam.Split(','); + for (int i = 0; i < 2; i++) + { + Game_AIBattle_Judge_Number_Good_Y[i] = int.Parse(strSplit[i]); + } + } + else if (strCommand == "Game_AIBattle_Judge_Number_Miss_X") + { + string[] strSplit = strParam.Split(','); + for (int i = 0; i < 2; i++) + { + Game_AIBattle_Judge_Number_Miss_X[i] = int.Parse(strSplit[i]); + } + } + else if (strCommand == "Game_AIBattle_Judge_Number_Miss_Y") + { + string[] strSplit = strParam.Split(','); + for (int i = 0; i < 2; i++) + { + Game_AIBattle_Judge_Number_Miss_Y[i] = int.Parse(strSplit[i]); + } + } + else if (strCommand == "Game_AIBattle_Judge_Number_Interval") + { + string[] strSplit = strParam.Split(','); + for (int i = 0; i < 2; i++) + { + Game_AIBattle_Judge_Number_Interval[i] = int.Parse(strSplit[i]); + } } #endregion @@ -5599,15 +5703,23 @@ namespace TJAPlayer3 #region Gauge public int[] Game_Gauge_X = new int[] { 492, 492 }; public int[] Game_Gauge_Y = new int[] { 144, 532 }; + public int Game_Gauge_X_AI = 650; + public int Game_Gauge_Y_AI = 153; public int[] Game_Gauge_Rect = new int[] { 0, 0, 700, 44 }; public int[] Game_Gauge_ClearText_X = new int[] { 1038, 1038 }; public int[] Game_Gauge_ClearText_Y = new int[] { 144, 554 }; + public int Game_Gauge_ClearText_X_AI = 1087; + public int Game_Gauge_ClearText_Y_AI = 153; public int[] Game_Gauge_ClearText_Rect = new int[] { 0, 44, 58, 24 }; public int[] Game_Gauge_ClearText_Clear_Rect = new int[] { 58, 44, 58, 24 }; public int[] Gauge_Soul_X = new int[] { 1184, 1184 }; public int[] Gauge_Soul_Y = new int[] { 125, 516 }; + public int Gauge_Soul_X_AI = 1200; + public int Gauge_Soul_Y_AI = 140; public int[] Gauge_Soul_Fire_X = new int[] { 1112, 1112 }; public int[] Gauge_Soul_Fire_Y = new int[] { 52, 443 }; + public int Gauge_Soul_Fire_X_AI = 1143; + public int Gauge_Soul_Fire_Y_AI = 83; public int Game_Gauge_Rainbow_Ptn; public int Game_Gauge_Dan_Rainbow_Ptn; public int Game_Gauge_Rainbow_Timer = 50; @@ -5778,7 +5890,24 @@ namespace TJAPlayer3 public int[] Game_AIBattle_Batch_Anime = new int[] { 260, -35 }; public int[] Game_AIBattle_Batch_Anime_Size = new int[] { 274, 274 }; - public int[] Game_AIBattle_Batch_Move = new int[] { 30, 15 }; + public int[] Game_AIBattle_Batch_Move = new int[] { 30, 15 }; + + public int[] Game_AIBattle_Judge_Meter_X = new int[] { 3, 3 }; + public int[] Game_AIBattle_Judge_Meter_Y = new int[] { 55, 418 }; + + public int[] Game_AIBattle_Judge_Number_Perfect_X = new int[] { 107, 107 }; + public int[] Game_AIBattle_Judge_Number_Perfect_Y = new int[] { 74, 437 }; + + public int[] Game_AIBattle_Judge_Number_Good_X = new int[] { 107, 107 }; + public int[] Game_AIBattle_Judge_Number_Good_Y = new int[] { 91, 454 }; + + public int[] Game_AIBattle_Judge_Number_Miss_X = new int[] { 107, 107 }; + public int[] Game_AIBattle_Judge_Number_Miss_Y = new int[] { 108, 471 }; + + public int[] Game_AIBattle_Judge_Number_Roll_X = new int[] { 107, 107 }; + public int[] Game_AIBattle_Judge_Number_Roll_Y = new int[] { 125, 488 }; + + public int[] Game_AIBattle_Judge_Number_Interval = new int[] { 10, 0 }; #endregion #endregion diff --git a/TJAPlayer3/Stages/01.StartUp/TextureLoader.cs b/TJAPlayer3/Stages/01.StartUp/TextureLoader.cs index a35df904..e79c7f7e 100644 --- a/TJAPlayer3/Stages/01.StartUp/TextureLoader.cs +++ b/TJAPlayer3/Stages/01.StartUp/TextureLoader.cs @@ -404,11 +404,13 @@ namespace TJAPlayer3 Taiko_Background[9] = TxC(GAME + TAIKO + @"AI_Background.png"); Taiko_Background[10] = TxC(GAME + TAIKO + @"Boss_Background.png"); - Taiko_Frame = new CTexture[4]; + Taiko_Frame = new CTexture[6]; Taiko_Frame[0] = TxC(GAME + TAIKO + @"1P_Frame.png"); Taiko_Frame[1] = TxC(GAME + TAIKO + @"2P_Frame.png"); Taiko_Frame[2] = TxC(GAME + TAIKO + @"Tower_Frame.png"); Taiko_Frame[3] = TxC(GAME + TAIKO + @"Tokkun_Frame.png"); + Taiko_Frame[4] = TxC(GAME + TAIKO + @"2P_None_Frame.png"); + Taiko_Frame[5] = TxC(GAME + TAIKO + @"AI_Frame.png"); Taiko_PlayerNumber = new CTexture[2]; Taiko_PlayerNumber[0] = TxC(GAME + TAIKO + @"1P_PlayerNumber.png"); @@ -873,6 +875,11 @@ namespace TJAPlayer3 AIBattle_Batch_Base = TxC(GAME + AIBATTLE + @"Batch_Base.png"); AIBattle_Batch = TxC(GAME + AIBATTLE + @"Batch.png"); + AIBattle_Judge_Meter[0] = TxC(GAME + AIBATTLE + @"Judge_Meter.png"); + AIBattle_Judge_Meter[1] = TxC(GAME + AIBATTLE + @"Judge_Meter_AI.png"); + + AIBattle_Judge_Number = TxC(GAME + AIBATTLE + @"Judge_Number.png"); + #endregion #endregion @@ -2045,7 +2052,10 @@ namespace TJAPlayer3 AIBattle_SectionTime_Bar_Normal, AIBattle_SectionTime_Bar_Finish, AIBattle_Batch_Base, - AIBattle_Batch; + AIBattle_Batch, + AIBattle_Judge_Number; + + public CTexture[] AIBattle_Judge_Meter = new CTexture[2]; #endregion diff --git a/TJAPlayer3/Stages/05.SongSelect/CActSelect難易度選択画面.cs b/TJAPlayer3/Stages/05.SongSelect/CActSelect難易度選択画面.cs index 1d257703..b31d29a8 100644 --- a/TJAPlayer3/Stages/05.SongSelect/CActSelect難易度選択画面.cs +++ b/TJAPlayer3/Stages/05.SongSelect/CActSelect難易度選択画面.cs @@ -241,7 +241,7 @@ namespace TJAPlayer3 } else { - if (TJAPlayer3.stage選曲.r現在選択中のスコア.譜面情報.nレベル[n現在の選択行[0] - 2] > 0) + if (TJAPlayer3.stage選曲.r現在選択中のスコア.譜面情報.nレベル[n現在の選択行[i] - 2] > 0) { //TJAPlayer3.stage選曲.ctDonchan_Jump[0].t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Jump.Length - 1, 1000 / 45, TJAPlayer3.Timer); diff --git a/TJAPlayer3/Stages/07.Game/CAct演奏スコア共通.cs b/TJAPlayer3/Stages/07.Game/CAct演奏スコア共通.cs index edcd875b..75013a30 100644 --- a/TJAPlayer3/Stages/07.Game/CAct演奏スコア共通.cs +++ b/TJAPlayer3/Stages/07.Game/CAct演奏スコア共通.cs @@ -218,8 +218,10 @@ namespace TJAPlayer3 /// /// public void Add( E楽器パート part, STAUTOPLAY bAutoPlay, long delta, int player ) - { - double rev = 1.0; + { + if (TJAPlayer3.ConfigIni.bAIBattleMode && player == 1) return; + + double rev = 1.0; delta = (long)(delta * TJAPlayer3.stage選曲.actPlayOption.tGetModMultiplier(CActPlayOption.EBalancingType.SCORE, false, player)); @@ -257,7 +259,9 @@ namespace TJAPlayer3 public void BonusAdd( int player ) { - for( int sc = 0; sc < 1; sc++ ) + if (TJAPlayer3.ConfigIni.bAIBattleMode && player == 1) return; + + for ( int sc = 0; sc < 1; sc++ ) { for( int i = 0; i < 256; i++ ) { diff --git a/TJAPlayer3/Stages/07.Game/Taiko/AIBattle.cs b/TJAPlayer3/Stages/07.Game/Taiko/AIBattle.cs index 69ce3a48..42691b77 100644 --- a/TJAPlayer3/Stages/07.Game/Taiko/AIBattle.cs +++ b/TJAPlayer3/Stages/07.Game/Taiko/AIBattle.cs @@ -1,4 +1,5 @@ using System; +using System.Drawing; using System.Collections.Generic; using System.Linq; using System.Text; @@ -115,7 +116,7 @@ namespace TJAPlayer3 for (int i = 0; i < TJAPlayer3.stage演奏ドラム画面.NowAIBattleSectionCount; i++) { - + var section = TJAPlayer3.stage演奏ドラム画面.AIBattleSections[i]; int upDown = (i % 2); @@ -181,6 +182,41 @@ namespace TJAPlayer3 } } + for (int player = 0; player < 2; player++) + { + TJAPlayer3.Tx.AIBattle_Judge_Meter[player]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_AIBattle_Judge_Meter_X[player], TJAPlayer3.Skin.Game_AIBattle_Judge_Meter_Y[player]); + + + int[] numArr = new int[4] + { + TJAPlayer3.stage演奏ドラム画面.CChartScore[player].nGreat, + TJAPlayer3.stage演奏ドラム画面.CChartScore[player].nGood, + TJAPlayer3.stage演奏ドラム画面.CChartScore[player].nMiss, + TJAPlayer3.stage演奏ドラム画面.CChartScore[player].nRoll + }; + + int[] num_x = new int[4] + { + TJAPlayer3.Skin.Game_AIBattle_Judge_Number_Perfect_X[player], + TJAPlayer3.Skin.Game_AIBattle_Judge_Number_Good_X[player], + TJAPlayer3.Skin.Game_AIBattle_Judge_Number_Miss_X[player], + TJAPlayer3.Skin.Game_AIBattle_Judge_Number_Roll_X[player] + }; + + int[] num_y = new int[4] + { + TJAPlayer3.Skin.Game_AIBattle_Judge_Number_Perfect_Y[player], + TJAPlayer3.Skin.Game_AIBattle_Judge_Number_Good_Y[player], + TJAPlayer3.Skin.Game_AIBattle_Judge_Number_Miss_Y[player], + TJAPlayer3.Skin.Game_AIBattle_Judge_Number_Roll_Y[player] + }; + + for (int i = 0; i < 4; i++) + { + DrawJudgeNumber(num_x[i], num_y[i], numArr[i]); + } + } + return 0; } @@ -190,6 +226,24 @@ namespace TJAPlayer3 private CCounter BarFlashCounter; public CCounter BatchAnimeCounter; + private void DrawJudgeNumber(int x, int y, int num) + { + int[] nums = C変換.SeparateDigits(num); + for (int j = 0; j < nums.Length; j++) + { + float offset = j - (nums.Length / 2.0f); + + float width = TJAPlayer3.Tx.AIBattle_Judge_Number.sz画像サイズ.Width / 10.0f; + float height = TJAPlayer3.Tx.AIBattle_Judge_Number.sz画像サイズ.Height; + + float _x = x - (TJAPlayer3.Skin.Game_AIBattle_Judge_Number_Interval[0] * offset); + float _y = y - (TJAPlayer3.Skin.Game_AIBattle_Judge_Number_Interval[1] * offset); + + TJAPlayer3.Tx.AIBattle_Judge_Number.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, _x + (width / 2), _y + (height / 2), + new RectangleF(width * nums[j], 0, width, height)); + } + } + #endregion } } diff --git a/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏DrumsMtaiko.cs b/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏DrumsMtaiko.cs index 12ee09dd..b4919c58 100644 --- a/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏DrumsMtaiko.cs +++ b/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏DrumsMtaiko.cs @@ -235,7 +235,8 @@ namespace TJAPlayer3 } for( int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++ ) - { + { + if (TJAPlayer3.ConfigIni.bAIBattleMode && i == 1) break; ModIcons.tDisplayMods(TJAPlayer3.Skin.Game_Taiko_ModIcons_X[i], TJAPlayer3.Skin.Game_Taiko_ModIcons_Y[i], i); diff --git a/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsゲージ.cs b/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsゲージ.cs index 677bcd85..89392983 100644 --- a/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsゲージ.cs +++ b/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsゲージ.cs @@ -187,6 +187,12 @@ namespace TJAPlayer3 if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Tower || TJAPlayer3.ConfigIni.bTokkunMode) return 0; + float scale = 1.0f; + if (TJAPlayer3.ConfigIni.bAIBattleMode) + { + scale = 0.8f; + } + #region [Gauge base] if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan) @@ -219,7 +225,7 @@ namespace TJAPlayer3 } else { - if (TJAPlayer3.stage演奏ドラム画面.bDoublePlay) + if (TJAPlayer3.stage演奏ドラム画面.bDoublePlay && !TJAPlayer3.ConfigIni.bAIBattleMode) { TJAPlayer3.Tx.Gauge_Base[1]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[1], TJAPlayer3.Skin.Game_Gauge_Y[1], new Rectangle(TJAPlayer3.Skin.Game_Gauge_Rect[0], TJAPlayer3.Skin.Game_Gauge_Rect[1], TJAPlayer3.Skin.Game_Gauge_Rect[2], TJAPlayer3.Skin.Game_Gauge_Rect[3])); @@ -231,8 +237,27 @@ namespace TJAPlayer3 } else { - TJAPlayer3.Tx.Gauge_Base[0]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0], TJAPlayer3.Skin.Game_Gauge_Y[0], - new Rectangle(TJAPlayer3.Skin.Game_Gauge_Rect[0], TJAPlayer3.Skin.Game_Gauge_Rect[1], TJAPlayer3.Skin.Game_Gauge_Rect[2], TJAPlayer3.Skin.Game_Gauge_Rect[3])); + int x; + int y; + if (TJAPlayer3.ConfigIni.bAIBattleMode) + { + x = TJAPlayer3.Skin.Game_Gauge_X_AI; + y = TJAPlayer3.Skin.Game_Gauge_Y_AI; + } + else + { + x = TJAPlayer3.Skin.Game_Gauge_X[0]; + y = TJAPlayer3.Skin.Game_Gauge_Y[0]; + } + + if (TJAPlayer3.Tx.Gauge_Base[0] != null) + { + TJAPlayer3.Tx.Gauge_Base[0].vc拡大縮小倍率.X = scale; + TJAPlayer3.Tx.Gauge_Base[0].vc拡大縮小倍率.Y = scale; + + TJAPlayer3.Tx.Gauge_Base[0].t2D描画(TJAPlayer3.app.Device, x, y, + new Rectangle(TJAPlayer3.Skin.Game_Gauge_Rect[0], TJAPlayer3.Skin.Game_Gauge_Rect[1], TJAPlayer3.Skin.Game_Gauge_Rect[2], TJAPlayer3.Skin.Game_Gauge_Rect[3])); + } } } @@ -242,27 +267,39 @@ namespace TJAPlayer3 if( TJAPlayer3.Tx.Gauge[0] != null ) { + int x; + int y; + if (TJAPlayer3.ConfigIni.bAIBattleMode) + { + x = TJAPlayer3.Skin.Game_Gauge_X_AI; + y = TJAPlayer3.Skin.Game_Gauge_Y_AI; + } + else + { + x = TJAPlayer3.Skin.Game_Gauge_X[0]; + y = TJAPlayer3.Skin.Game_Gauge_Y[0]; + } if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan) { if (TJAPlayer3.P1IsBlue()) - TJAPlayer3.Tx.Gauge_Dan[5]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0], TJAPlayer3.Skin.Game_Gauge_Y[0], new Rectangle(0, 0, nRectX, TJAPlayer3.Skin.Game_Gauge_Rect[3])); + TJAPlayer3.Tx.Gauge_Dan[5]?.t2D描画(TJAPlayer3.app.Device, x, y, new Rectangle(0, 0, nRectX, TJAPlayer3.Skin.Game_Gauge_Rect[3])); else - TJAPlayer3.Tx.Gauge_Dan[1]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0], TJAPlayer3.Skin.Game_Gauge_Y[0], new Rectangle(0, 0, nRectX, TJAPlayer3.Skin.Game_Gauge_Rect[3])); + TJAPlayer3.Tx.Gauge_Dan[1]?.t2D描画(TJAPlayer3.app.Device, x, y, new Rectangle(0, 0, nRectX, TJAPlayer3.Skin.Game_Gauge_Rect[3])); for (int i = 0; i < TJAPlayer3.DTX.Dan_C.Length; i++) { if (TJAPlayer3.DTX.Dan_C[i] != null && TJAPlayer3.DTX.Dan_C[i].GetExamType() == Exam.Type.Gauge && db現在のゲージ値[0] >= TJAPlayer3.DTX.Dan_C[i].GetValue(false)) { TJAPlayer3.Tx.Gauge_Dan[3].Opacity = 255; - TJAPlayer3.Tx.Gauge_Dan[3]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0] + (TJAPlayer3.DTX.Dan_C[i].GetValue(false) / 2 * nWidth), TJAPlayer3.Skin.Game_Gauge_Y[0], new Rectangle(0, 0, nRectX - (TJAPlayer3.DTX.Dan_C[i].GetValue(false) / 2 * nWidth), TJAPlayer3.Skin.Game_Gauge_Rect[3])); + TJAPlayer3.Tx.Gauge_Dan[3]?.t2D描画(TJAPlayer3.app.Device, x + (TJAPlayer3.DTX.Dan_C[i].GetValue(false) / 2 * nWidth), y, new Rectangle(0, 0, nRectX - (TJAPlayer3.DTX.Dan_C[i].GetValue(false) / 2 * nWidth), TJAPlayer3.Skin.Game_Gauge_Rect[3])); int Opacity = 0; if (this.ctGaugeFlash.n現在の値 <= 365) Opacity = 0; else if (this.ctGaugeFlash.n現在の値 <= 448) Opacity = (int)((this.ctGaugeFlash.n現在の値 - 365) / 83f * 255f); else if (this.ctGaugeFlash.n現在の値 <= 531) Opacity = 255 - (int)((this.ctGaugeFlash.n現在の値 - 448) / 83f * 255f); TJAPlayer3.Tx.Gauge_Dan[3].Opacity = Opacity; - TJAPlayer3.Tx.Gauge_Dan[3]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0], TJAPlayer3.Skin.Game_Gauge_Y[0], new Rectangle(0, 0, TJAPlayer3.DTX.Dan_C[i].GetValue(false) / 2 * nWidth, TJAPlayer3.Skin.Game_Gauge_Rect[3])); + TJAPlayer3.Tx.Gauge_Dan[3]?.t2D描画(TJAPlayer3.app.Device, x, y, new Rectangle(0, 0, TJAPlayer3.DTX.Dan_C[i].GetValue(false) / 2 * nWidth, TJAPlayer3.Skin.Game_Gauge_Rect[3])); break; } @@ -272,9 +309,17 @@ namespace TJAPlayer3 else { if (TJAPlayer3.P1IsBlue()) - TJAPlayer3.Tx.Gauge[2]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0], TJAPlayer3.Skin.Game_Gauge_Y[0], new Rectangle(0, 0, nRectX, TJAPlayer3.Skin.Game_Gauge_Rect[3])); + TJAPlayer3.Tx.Gauge[2]?.t2D描画(TJAPlayer3.app.Device, x, y, new Rectangle(0, 0, nRectX, TJAPlayer3.Skin.Game_Gauge_Rect[3])); else - TJAPlayer3.Tx.Gauge[0]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0], TJAPlayer3.Skin.Game_Gauge_Y[0], new Rectangle(0, 0, nRectX, TJAPlayer3.Skin.Game_Gauge_Rect[3])); + { + if (TJAPlayer3.Tx.Gauge[0] != null) + { + TJAPlayer3.Tx.Gauge[0].vc拡大縮小倍率.X = scale; + TJAPlayer3.Tx.Gauge[0].vc拡大縮小倍率.Y = scale; + + TJAPlayer3.Tx.Gauge[0].t2D描画(TJAPlayer3.app.Device, x, y, new Rectangle(0, 0, nRectX, TJAPlayer3.Skin.Game_Gauge_Rect[3])); + } + } } if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan && db現在のゲージ値[0] >= 80.0 && db現在のゲージ値[0] < 100.0) @@ -286,8 +331,11 @@ namespace TJAPlayer3 if (TJAPlayer3.Tx.Gauge_Flash != null) { + TJAPlayer3.Tx.Gauge_Flash.vc拡大縮小倍率.X = scale; + TJAPlayer3.Tx.Gauge_Flash.vc拡大縮小倍率.Y = scale; + TJAPlayer3.Tx.Gauge_Flash.Opacity = Opacity; - TJAPlayer3.Tx.Gauge_Flash.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0], TJAPlayer3.Skin.Game_Gauge_Y[0], + TJAPlayer3.Tx.Gauge_Flash.t2D描画(TJAPlayer3.app.Device, x, y, new Rectangle(TJAPlayer3.Skin.Game_Gauge_Rect[0], TJAPlayer3.Skin.Game_Gauge_Rect[1], TJAPlayer3.Skin.Game_Gauge_Rect[2], TJAPlayer3.Skin.Game_Gauge_Rect[3])); } @@ -304,14 +352,20 @@ namespace TJAPlayer3 this.ct虹透明度.t進行Loop(); if(TJAPlayer3.Tx.Gauge_Rainbow[ this.ct虹アニメ.n現在の値 ] != null ) { - TJAPlayer3.Tx.Gauge_Rainbow[this.ct虹アニメ.n現在の値].Opacity = 255; - TJAPlayer3.Tx.Gauge_Rainbow[this.ct虹アニメ.n現在の値].t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0], TJAPlayer3.Skin.Game_Gauge_Y[0] + (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan ? (TJAPlayer3.Skin.Game_Gauge_Rect[3] / 2) : 0), + TJAPlayer3.Tx.Gauge_Rainbow[this.ct虹アニメ.n現在の値].vc拡大縮小倍率.X = scale; + TJAPlayer3.Tx.Gauge_Rainbow[this.ct虹アニメ.n現在の値].vc拡大縮小倍率.Y = scale; + + TJAPlayer3.Tx.Gauge_Rainbow[虹ベース].vc拡大縮小倍率.X = scale; + TJAPlayer3.Tx.Gauge_Rainbow[虹ベース].vc拡大縮小倍率.Y = scale; + + TJAPlayer3.Tx.Gauge_Rainbow[this.ct虹アニメ.n現在の値].Opacity = 255; + TJAPlayer3.Tx.Gauge_Rainbow[this.ct虹アニメ.n現在の値].t2D描画(TJAPlayer3.app.Device, x, y + (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan ? (TJAPlayer3.Skin.Game_Gauge_Rect[3] / 2) : 0), new RectangleF(0, TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan ? 22 : 0, TJAPlayer3.Tx.Gauge_Rainbow[this.ct虹アニメ.n現在の値].szテクスチャサイズ.Width, TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan ? TJAPlayer3.Tx.Gauge_Rainbow[this.ct虹アニメ.n現在の値].szテクスチャサイズ.Height - (TJAPlayer3.Skin.Game_Gauge_Rect[3] / 2) : TJAPlayer3.Tx.Gauge_Rainbow[this.ct虹アニメ.n現在の値].szテクスチャサイズ.Height)); TJAPlayer3.Tx.Gauge_Rainbow[虹ベース].Opacity = (ct虹透明度.n現在の値 * 255 / (int)ct虹透明度.n終了値)/1; - TJAPlayer3.Tx.Gauge_Rainbow[虹ベース].t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0], TJAPlayer3.Skin.Game_Gauge_Y[0] + (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan ? 22 : 0), + TJAPlayer3.Tx.Gauge_Rainbow[虹ベース].t2D描画(TJAPlayer3.app.Device, x, y + (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan ? 22 : 0), new RectangleF(0, TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan ? 22 : 0, TJAPlayer3.Tx.Gauge_Rainbow[虹ベース].szテクスチャサイズ.Width, @@ -322,20 +376,36 @@ namespace TJAPlayer3 #endregion - TJAPlayer3.Tx.Gauge_Line[0].t2D描画( TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[0], TJAPlayer3.Skin.Game_Gauge_X[1]); + TJAPlayer3.Tx.Gauge_Line[0].vc拡大縮小倍率.X = scale; + TJAPlayer3.Tx.Gauge_Line[0].vc拡大縮小倍率.Y = scale; + + TJAPlayer3.Tx.Gauge_Line[0].t2D描画( TJAPlayer3.app.Device, x, y); } #region[ 「Clear」icon ] if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan) { + int text_x; + int text_y; + if (TJAPlayer3.ConfigIni.bAIBattleMode) + { + text_x = TJAPlayer3.Skin.Game_Gauge_ClearText_X_AI; + text_y = TJAPlayer3.Skin.Game_Gauge_ClearText_Y_AI; + } + else + { + text_x = TJAPlayer3.Skin.Game_Gauge_ClearText_X[0]; + text_y = TJAPlayer3.Skin.Game_Gauge_ClearText_Y[0]; + } + if (this.db現在のゲージ値[0] >= 80.0) { - TJAPlayer3.Tx.Gauge[0].t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_ClearText_X[0], TJAPlayer3.Skin.Game_Gauge_ClearText_Y[0], + TJAPlayer3.Tx.Gauge[0].t2D描画(TJAPlayer3.app.Device, text_x, text_y, new Rectangle(TJAPlayer3.Skin.Game_Gauge_ClearText_Rect[0], TJAPlayer3.Skin.Game_Gauge_ClearText_Rect[1], TJAPlayer3.Skin.Game_Gauge_ClearText_Rect[2], TJAPlayer3.Skin.Game_Gauge_ClearText_Rect[3])); } else { - TJAPlayer3.Tx.Gauge[0].t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_ClearText_X[0], TJAPlayer3.Skin.Game_Gauge_ClearText_Y[0], + TJAPlayer3.Tx.Gauge[0].t2D描画(TJAPlayer3.app.Device, text_x, text_y, new Rectangle(TJAPlayer3.Skin.Game_Gauge_ClearText_Clear_Rect[0], TJAPlayer3.Skin.Game_Gauge_ClearText_Clear_Rect[1], TJAPlayer3.Skin.Game_Gauge_ClearText_Clear_Rect[2], TJAPlayer3.Skin.Game_Gauge_ClearText_Clear_Rect[3])); } } @@ -347,7 +417,7 @@ namespace TJAPlayer3 #region [ Gauge 2P ] - if( TJAPlayer3.stage演奏ドラム画面.bDoublePlay && TJAPlayer3.Tx.Gauge[1] != null ) + if( TJAPlayer3.stage演奏ドラム画面.bDoublePlay && !TJAPlayer3.ConfigIni.bAIBattleMode && TJAPlayer3.Tx.Gauge[1] != null ) { TJAPlayer3.Tx.Gauge[1].t2D描画( TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Gauge_X[1], TJAPlayer3.Skin.Game_Gauge_Y[1], new Rectangle( 0, 0, nRectX2P, TJAPlayer3.Skin.Game_Gauge_Rect[3]) ); if (db現在のゲージ値[1] >= 80.0 && db現在のゲージ値[1] < 100.0) @@ -399,10 +469,29 @@ namespace TJAPlayer3 int soulfire_height = TJAPlayer3.Tx.Gauge_Soul_Fire.szテクスチャサイズ.Height; for ( int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++ ) { - if( this.db現在のゲージ値[ i ] >= 100.0) + if (TJAPlayer3.ConfigIni.bAIBattleMode && i == 1) break; + + int x; + int y; + if (TJAPlayer3.ConfigIni.bAIBattleMode) + { + x = TJAPlayer3.Skin.Gauge_Soul_Fire_X_AI; + y = TJAPlayer3.Skin.Gauge_Soul_Fire_Y_AI; + } + else + { + x = TJAPlayer3.Skin.Gauge_Soul_Fire_X[i]; + y = TJAPlayer3.Skin.Gauge_Soul_Fire_Y[i]; + } + + if ( this.db現在のゲージ値[ i ] >= 100.0) { this.ct炎.t進行Loop(); - TJAPlayer3.Tx.Gauge_Soul_Fire.t2D描画( TJAPlayer3.app.Device, TJAPlayer3.Skin.Gauge_Soul_Fire_X[i], TJAPlayer3.Skin.Gauge_Soul_Fire_Y[i], new Rectangle(soulfire_width * ( this.ct炎.n現在の値 ), 0, soulfire_width, soulfire_height) ); + + TJAPlayer3.Tx.Gauge_Soul_Fire.vc拡大縮小倍率.X = scale; + TJAPlayer3.Tx.Gauge_Soul_Fire.vc拡大縮小倍率.Y = scale; + + TJAPlayer3.Tx.Gauge_Soul_Fire.t2D描画( TJAPlayer3.app.Device, x, y, new Rectangle(soulfire_width * ( this.ct炎.n現在の値 ), 0, soulfire_width, soulfire_height) ); } } } @@ -412,13 +501,31 @@ namespace TJAPlayer3 int soul_height = TJAPlayer3.Tx.Gauge_Soul.szテクスチャサイズ.Height / 2; for( int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++ ) { - if( this.db現在のゲージ値[ i ] >= 80.0) + if (TJAPlayer3.ConfigIni.bAIBattleMode && i == 1) break; + + int x; + int y; + if (TJAPlayer3.ConfigIni.bAIBattleMode) { - TJAPlayer3.Tx.Gauge_Soul.t2D描画( TJAPlayer3.app.Device, TJAPlayer3.Skin.Gauge_Soul_X[i], TJAPlayer3.Skin.Gauge_Soul_Y[i], new Rectangle( 0, 0, TJAPlayer3.Tx.Gauge_Soul.szテクスチャサイズ.Width, soul_height) ); + x = TJAPlayer3.Skin.Gauge_Soul_X_AI; + y = TJAPlayer3.Skin.Gauge_Soul_Y_AI; } else { - TJAPlayer3.Tx.Gauge_Soul.t2D描画( TJAPlayer3.app.Device, TJAPlayer3.Skin.Gauge_Soul_X[i], TJAPlayer3.Skin.Gauge_Soul_Y[i], new Rectangle( 0, soul_height, TJAPlayer3.Tx.Gauge_Soul.szテクスチャサイズ.Width, soul_height) ); + x = TJAPlayer3.Skin.Gauge_Soul_X[i]; + y = TJAPlayer3.Skin.Gauge_Soul_Y[i]; + } + + TJAPlayer3.Tx.Gauge_Soul.vc拡大縮小倍率.X = scale; + TJAPlayer3.Tx.Gauge_Soul.vc拡大縮小倍率.Y = scale; + + if ( this.db現在のゲージ値[ i ] >= 80.0) + { + TJAPlayer3.Tx.Gauge_Soul.t2D描画( TJAPlayer3.app.Device, x, y, new Rectangle( 0, 0, TJAPlayer3.Tx.Gauge_Soul.szテクスチャサイズ.Width, soul_height) ); + } + else + { + TJAPlayer3.Tx.Gauge_Soul.t2D描画( TJAPlayer3.app.Device, x, y, new Rectangle( 0, soul_height, TJAPlayer3.Tx.Gauge_Soul.szテクスチャサイズ.Width, soul_height) ); } } } diff --git a/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsコンボ吹き出し.cs b/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsコンボ吹き出し.cs index a042a822..33938d62 100644 --- a/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsコンボ吹き出し.cs +++ b/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsコンボ吹き出し.cs @@ -73,7 +73,9 @@ namespace TJAPlayer3 if( !base.b活性化してない ) { for( int i = 0; i < 2; i++ ) - { + { + if (TJAPlayer3.ConfigIni.bAIBattleMode) break; + int j = i; if (TJAPlayer3.PlayerSide == 1 && TJAPlayer3.ConfigIni.nPlayerCount == 1) j = 1; diff --git a/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsスコア.cs b/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsスコア.cs index add1184d..a0526fbc 100644 --- a/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsスコア.cs +++ b/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsスコア.cs @@ -61,7 +61,7 @@ namespace TJAPlayer3 //CDTXMania.act文字コンソール.tPrint(0, 0, C文字コンソール.Eフォント種別.白, this.ctボーナス加算タイマ[0].n現在の値.ToString()); base.t小文字表示(TJAPlayer3.Skin.Game_Score_X[0], TJAPlayer3.Skin.Game_Score_Y[0], string.Format( "{0,7:######0}", this.n現在表示中のスコア[ 0 ].Taiko ), 0 , 256, 0); - if( TJAPlayer3.stage演奏ドラム画面.bDoublePlay ) base.t小文字表示(TJAPlayer3.Skin.Game_Score_X[1], TJAPlayer3.Skin.Game_Score_Y[1], string.Format( "{0,7:######0}", this.n現在表示中のスコア[ 1 ].Taiko ), 0 , 256, 1); + if( TJAPlayer3.stage演奏ドラム画面.bDoublePlay && !TJAPlayer3.ConfigIni.bAIBattleMode) base.t小文字表示(TJAPlayer3.Skin.Game_Score_X[1], TJAPlayer3.Skin.Game_Score_Y[1], string.Format( "{0,7:######0}", this.n現在表示中のスコア[ 1 ].Taiko ), 0 , 256, 1); for( int i = 0; i < 256; i++ ) { diff --git a/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsレーン太鼓.cs b/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsレーン太鼓.cs index 20619621..0c8b2f39 100644 --- a/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsレーン太鼓.cs +++ b/TJAPlayer3/Stages/07.Game/Taiko/CAct演奏Drumsレーン太鼓.cs @@ -600,11 +600,18 @@ namespace TJAPlayer3 TJAPlayer3.Tx.Taiko_Frame[3]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Taiko_Frame_X[0], TJAPlayer3.Skin.Game_Taiko_Frame_Y[0]); else if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Tower && TJAPlayer3.Tx.Taiko_Frame[2] != null) TJAPlayer3.Tx.Taiko_Frame[2]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Taiko_Frame_X[0], TJAPlayer3.Skin.Game_Taiko_Frame_Y[0]); + else if (TJAPlayer3.ConfigIni.bAIBattleMode && TJAPlayer3.Tx.Taiko_Frame[5] != null) + TJAPlayer3.Tx.Taiko_Frame[5]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Taiko_Frame_X[0], TJAPlayer3.Skin.Game_Taiko_Frame_Y[0]); else TJAPlayer3.Tx.Taiko_Frame[0]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Taiko_Frame_X[0], TJAPlayer3.Skin.Game_Taiko_Frame_Y[0]); if (TJAPlayer3.stage演奏ドラム画面.bDoublePlay) - TJAPlayer3.Tx.Taiko_Frame[1]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Taiko_Frame_X[1], TJAPlayer3.Skin.Game_Taiko_Frame_Y[1]); + { + if (TJAPlayer3.ConfigIni.bAIBattleMode) + TJAPlayer3.Tx.Taiko_Frame[4]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Taiko_Frame_X[1], TJAPlayer3.Skin.Game_Taiko_Frame_Y[1]); + else + TJAPlayer3.Tx.Taiko_Frame[1]?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Game_Taiko_Frame_X[1], TJAPlayer3.Skin.Game_Taiko_Frame_Y[1]); + } } var nTime = (long)(CSound管理.rc演奏用タイマ.n現在時刻 * (((double)TJAPlayer3.ConfigIni.n演奏速度) / 20.0)); diff --git a/Test/System/SimpleStyle/GameConfig.ini b/Test/System/SimpleStyle/GameConfig.ini index 2a4088b7..6e7acbb1 100644 --- a/Test/System/SimpleStyle/GameConfig.ini +++ b/Test/System/SimpleStyle/GameConfig.ini @@ -171,6 +171,10 @@ Game_Gauge_X=492,492 Game_Gauge_Y=144,532 +Game_Gauge_X_AI=650 + +Game_Gauge_Y_AI=153 + Game_Gauge_Rect=0,0,700,44 @@ -184,15 +188,25 @@ Game_Gauge_ClearText_Clear_Rect=58,44,58,24 Gauge_Soul_X=1184,1184 - + Gauge_Soul_Y=125,516 +Gauge_Soul_X_AI=1200 + +Gauge_Soul_Y_AI=140 + + Gauge_Soul_Fire_X=1112,1112 Gauge_Soul_Fire_Y=52,443 +Gauge_Soul_Fire_X_AI=1143 + +Gauge_Soul_Fire_Y_AI=83 + + Game_Balloon_Combo_X=253,253 Game_Balloon_Combo_Y=-11,538 @@ -416,4 +430,26 @@ Game_AIBattle_Batch_Size=70,70 Game_AIBattle_Batch_Anime=397,102 Game_AIBattle_Batch_Anime_Size=274,274 -Game_AIBattle_Batch_Move=30,15 \ No newline at end of file +Game_AIBattle_Batch_Move=30,15 + +Game_AIBattle_Judge_Meter_X=3,3 + +Game_AIBattle_Judge_Meter_Y=55,418 + +Game_AIBattle_Judge_Number_Perfect_X=107,107 + +Game_AIBattle_Judge_Number_Perfect_Y=74,437 + +Game_AIBattle_Judge_Number_Good_X=107,107 + +Game_AIBattle_Judge_Number_Good_Y=91,454 + +Game_AIBattle_Judge_Number_Miss_X=107,107 + +Game_AIBattle_Judge_Number_Miss_Y=108,471 + +Game_AIBattle_Judge_Number_Roll_X=107,107 + +Game_AIBattle_Judge_Number_Roll_Y=125,488 + +Game_AIBattle_Judge_Number_Interval=10,0 \ No newline at end of file diff --git a/Test/System/SimpleStyle/Graphics/5_Game/22_AIBattle/Judge_Meter.png b/Test/System/SimpleStyle/Graphics/5_Game/22_AIBattle/Judge_Meter.png new file mode 100644 index 00000000..8140e47f Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/22_AIBattle/Judge_Meter.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/22_AIBattle/Judge_Meter_AI.png b/Test/System/SimpleStyle/Graphics/5_Game/22_AIBattle/Judge_Meter_AI.png new file mode 100644 index 00000000..4d20f46a Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/22_AIBattle/Judge_Meter_AI.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/22_AIBattle/Judge_Number.png b/Test/System/SimpleStyle/Graphics/5_Game/22_AIBattle/Judge_Number.png new file mode 100644 index 00000000..215a9e89 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/22_AIBattle/Judge_Number.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/0.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/0.png new file mode 100644 index 00000000..0c6c2892 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/0.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/1.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/1.png new file mode 100644 index 00000000..8c1916f2 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/1.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/2.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/2.png new file mode 100644 index 00000000..4757250f Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/2.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/3.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/3.png new file mode 100644 index 00000000..9338256c Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/3.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/4.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/4.png new file mode 100644 index 00000000..c06a4320 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/4.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/5.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/5.png new file mode 100644 index 00000000..4ee24b5a Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Animation/5.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Frame.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Frame.png new file mode 100644 index 00000000..2f0eaefc Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Frame.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Script.lua b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Script.lua index 9d68d52b..ffdd8bb1 100644 --- a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Script.lua +++ b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Script.lua @@ -6,7 +6,13 @@ --func:SetScale(xscale, yscale, "filename"); --func:SetColor(r, g, b, "filename"); -inAnimeCounter = -20 +local inAnimeCounter = -20 + +local animeCounter = 0 + +local nowAnimeFrame = 0 + +local maxAnimeFrame = 5 function clearIn(player) end @@ -16,14 +22,31 @@ end function init() func:AddGraph("Base.png") + func:AddGraph("Frame.png") for i = 0 , 18 do + func:AddGraph("Up_1P/"..tostring(i)..".png") + func:AddGraph("Up_2P/"..tostring(i)..".png") + func:AddGraph("Down_1P/"..tostring(i)..".png") func:AddGraph("Down_2P/"..tostring(i)..".png") end + + for i = 0 , maxAnimeFrame do + func:AddGraph("Animation/"..tostring(i)..".png") + end end function update() inAnimeCounter = inAnimeCounter + (20 * deltaTime) + + animeCounter = animeCounter + (10 * deltaTime) + + nowAnimeFrame = math.floor(animeCounter+0.5) + + if nowAnimeFrame > maxAnimeFrame then + animeCounter = 0; + nowAnimeFrame = 0; + end end function draw() @@ -32,14 +55,36 @@ function draw() for i = 0 , 18 do pos = i - 9 if 9 - math.abs(pos) <= inAnimeCounter then - x = -32 + (71 * i) - y = 536 + + offset1 = -(math.sin((pos / 9.0) * math.pi) * 6) + + offset2 = 0 + + if pos > 0 then + offset2 = (math.cos((pos / 9.0) * math.pi) * 5) + elseif pos < 0 then + offset2 = -(math.cos((pos / 9.0) * math.pi) * 5) + end + + up_x = 504 + (61 * pos) + offset1 + offset2; + up_y = 38 + + down_x = -32 + (71 * i) + down_y = 536 if pos <= battleState then - func:DrawGraph(x, y, "Down_1P/"..tostring(i)..".png") + func:DrawGraph(up_x, up_y, "Up_1P/"..tostring(i)..".png") + func:DrawGraph(down_x, down_y, "Down_1P/"..tostring(i)..".png") else - func:DrawGraph(x, y, "Down_2P/"..tostring(i)..".png") + func:DrawGraph(up_x, up_y, "Up_2P/"..tostring(i)..".png") + func:DrawGraph(down_x, down_y, "Down_2P/"..tostring(i)..".png") end end end + + if inAnimeCounter > 9 then + func:DrawGraph(0, 0, "Frame.png") + + func:DrawGraph(0, 0, "Animation/"..tostring(nowAnimeFrame)..".png") + end end diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/0.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/0.png new file mode 100644 index 00000000..db86dce4 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/0.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/1.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/1.png new file mode 100644 index 00000000..8adda4f5 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/1.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/10.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/10.png new file mode 100644 index 00000000..17778b2e Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/10.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/11.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/11.png new file mode 100644 index 00000000..eca1c98e Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/11.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/12.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/12.png new file mode 100644 index 00000000..92938667 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/12.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/13.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/13.png new file mode 100644 index 00000000..810cd337 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/13.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/14.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/14.png new file mode 100644 index 00000000..9b02c8bc Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/14.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/15.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/15.png new file mode 100644 index 00000000..473acffa Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/15.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/16.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/16.png new file mode 100644 index 00000000..6b760e1c Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/16.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/17.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/17.png new file mode 100644 index 00000000..6f1abcbf Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/17.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/18.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/18.png new file mode 100644 index 00000000..41ae5840 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/18.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/2.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/2.png new file mode 100644 index 00000000..8adf8efe Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/2.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/3.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/3.png new file mode 100644 index 00000000..decbf36d Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/3.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/4.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/4.png new file mode 100644 index 00000000..b3f2561e Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/4.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/5.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/5.png new file mode 100644 index 00000000..fcce6721 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/5.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/6.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/6.png new file mode 100644 index 00000000..b364a76e Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/6.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/7.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/7.png new file mode 100644 index 00000000..07646abb Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/7.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/8.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/8.png new file mode 100644 index 00000000..cf3c4182 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/8.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/9.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/9.png new file mode 100644 index 00000000..0a6423a7 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_1P/9.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/0.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/0.png new file mode 100644 index 00000000..6cea38cb Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/0.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/1.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/1.png new file mode 100644 index 00000000..502b8de0 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/1.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/10.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/10.png new file mode 100644 index 00000000..b7022527 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/10.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/11.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/11.png new file mode 100644 index 00000000..c3b15ba9 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/11.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/12.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/12.png new file mode 100644 index 00000000..189b31d0 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/12.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/13.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/13.png new file mode 100644 index 00000000..a547528a Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/13.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/14.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/14.png new file mode 100644 index 00000000..e6217764 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/14.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/15.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/15.png new file mode 100644 index 00000000..9167f322 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/15.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/16.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/16.png new file mode 100644 index 00000000..7c864663 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/16.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/17.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/17.png new file mode 100644 index 00000000..07eb851f Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/17.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/18.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/18.png new file mode 100644 index 00000000..44b0d69f Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/18.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/2.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/2.png new file mode 100644 index 00000000..74d71da9 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/2.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/3.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/3.png new file mode 100644 index 00000000..50506175 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/3.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/4.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/4.png new file mode 100644 index 00000000..73241c9a Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/4.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/5.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/5.png new file mode 100644 index 00000000..f0f71c0c Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/5.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/6.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/6.png new file mode 100644 index 00000000..2b4b3da4 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/6.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/7.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/7.png new file mode 100644 index 00000000..4a8832c3 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/7.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/8.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/8.png new file mode 100644 index 00000000..45951aef Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/8.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/9.png b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/9.png new file mode 100644 index 00000000..c2eb032d Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/5_Background/AI/Up/0/Up_2P/9.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/6_Taiko/2P_None_Frame.png b/Test/System/SimpleStyle/Graphics/5_Game/6_Taiko/2P_None_Frame.png new file mode 100644 index 00000000..e47369a3 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/6_Taiko/2P_None_Frame.png differ diff --git a/Test/System/SimpleStyle/Graphics/5_Game/6_Taiko/AI_Frame.png b/Test/System/SimpleStyle/Graphics/5_Game/6_Taiko/AI_Frame.png new file mode 100644 index 00000000..9ba2a990 Binary files /dev/null and b/Test/System/SimpleStyle/Graphics/5_Game/6_Taiko/AI_Frame.png differ