1
0
mirror of synced 2024-11-28 09:20:53 +01:00

色々改善2 (#431)

This commit is contained in:
Takkkom 2023-02-25 03:36:32 +09:00 committed by GitHub
parent aadf53936c
commit ef93f94451
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 620 additions and 65 deletions

View File

@ -330,6 +330,7 @@ namespace TJAPlayer3
public Cシステムサウンド[] voiceMenuSongSelect = new Cシステムサウンド[5]; public Cシステムサウンド[] voiceMenuSongSelect = new Cシステムサウンド[5];
public Cシステムサウンド[] voiceMenuSongDecide = new Cシステムサウンド[5]; public Cシステムサウンド[] voiceMenuSongDecide = new Cシステムサウンド[5];
public Cシステムサウンド[] voiceMenuSongDecide_AI = new Cシステムサウンド[5];
public Cシステムサウンド[] voiceMenuDiffSelect = new Cシステムサウンド[5]; public Cシステムサウンド[] voiceMenuDiffSelect = new Cシステムサウンド[5];
public Cシステムサウンド[] voiceMenuDanSelectStart = new Cシステムサウンド[5]; public Cシステムサウンド[] voiceMenuDanSelectStart = new Cシステムサウンド[5];
public Cシステムサウンド[] voiceMenuDanSelectPrompt = new Cシステムサウンド[5]; public Cシステムサウンド[] voiceMenuDanSelectPrompt = new Cシステムサウンド[5];
@ -376,8 +377,11 @@ namespace TJAPlayer3
public Cシステムサウンド soundBomb = null; public Cシステムサウンド soundBomb = null;
//add //add
public Cシステムサウンド sound曲決定音 = null; public Cシステムサウンド sound曲決定音 = null;
public Cシステムサウンド soundSongDecide_AI = null;
public Cシステムサウンド bgmリザルトイン音 = null; public Cシステムサウンド bgmリザルトイン音 = null;
public Cシステムサウンド bgmリザルト音 = null; public Cシステムサウンド bgmリザルト音 = null;
public Cシステムサウンド bgmResultIn_AI = null;
public Cシステムサウンド bgmResult_AI = null;
public Cシステムサウンド bgmDanResult = null; public Cシステムサウンド bgmDanResult = null;
@ -758,6 +762,7 @@ namespace TJAPlayer3
//this.soundBlue = new Cシステムサウンド( @"Sounds\ka.ogg", false, false, true, ESoundType.SoundEffect ); //this.soundBlue = new Cシステムサウンド( @"Sounds\ka.ogg", false, false, true, ESoundType.SoundEffect );
this.soundBalloon = new Cシステムサウンド(@"Sounds\balloon.ogg", false, false, true, ESoundGroup.SoundEffect); this.soundBalloon = new Cシステムサウンド(@"Sounds\balloon.ogg", false, false, true, ESoundGroup.SoundEffect);
this.sound曲決定音 = new Cシステムサウンド(@"Sounds\SongDecide.ogg", false, false, true, ESoundGroup.Voice); this.sound曲決定音 = new Cシステムサウンド(@"Sounds\SongDecide.ogg", false, false, true, ESoundGroup.Voice);
this.soundSongDecide_AI = new Cシステムサウンド(@"Sounds\SongDecide_AI.ogg", false, false, true, ESoundGroup.Voice);
this.bgmタイトルイン = new Cシステムサウンド(@"Sounds\BGM\Title_Start.ogg", false, false, true, ESoundGroup.SongPlayback); this.bgmタイトルイン = new Cシステムサウンド(@"Sounds\BGM\Title_Start.ogg", false, false, true, ESoundGroup.SongPlayback);
this.bgmタイトル = new Cシステムサウンド(@"Sounds\BGM\Title.ogg", true, false, true, ESoundGroup.SongPlayback); this.bgmタイトル = new Cシステムサウンド(@"Sounds\BGM\Title.ogg", true, false, true, ESoundGroup.SongPlayback);
@ -767,6 +772,8 @@ namespace TJAPlayer3
this.bgmSongSelect_AI = new Cシステムサウンド(@"Sounds\BGM\SongSelect_AI.ogg", true, false, true, ESoundGroup.SongPlayback); this.bgmSongSelect_AI = new Cシステムサウンド(@"Sounds\BGM\SongSelect_AI.ogg", true, false, true, ESoundGroup.SongPlayback);
this.bgmリザルトイン音 = new Cシステムサウンド(@"Sounds\BGM\Result_In.ogg", false, false, true, ESoundGroup.SongPlayback); this.bgmリザルトイン音 = new Cシステムサウンド(@"Sounds\BGM\Result_In.ogg", false, false, true, ESoundGroup.SongPlayback);
this.bgmリザルト音 = new Cシステムサウンド(@"Sounds\BGM\Result.ogg", true, false, true, ESoundGroup.SongPlayback); this.bgmリザルト音 = new Cシステムサウンド(@"Sounds\BGM\Result.ogg", true, false, true, ESoundGroup.SongPlayback);
this.bgmResultIn_AI = new Cシステムサウンド(@"Sounds\BGM\Result_In_AI.ogg", false, false, true, ESoundGroup.SongPlayback);
this.bgmResult_AI = new Cシステムサウンド(@"Sounds\BGM\Result_AI.ogg", true, false, true, ESoundGroup.SongPlayback);
this.bgmDanResult = new Cシステムサウンド(@"Sounds\Dan\Dan_Result.ogg", true, false, false, ESoundGroup.SongPlayback); this.bgmDanResult = new Cシステムサウンド(@"Sounds\Dan\Dan_Result.ogg", true, false, false, ESoundGroup.SongPlayback);
@ -5092,6 +5099,22 @@ namespace TJAPlayer3
{ {
Game_DanC_Y = strParam.Split(',').Select(int.Parse).ToArray(); Game_DanC_Y = strParam.Split(',').Select(int.Parse).ToArray();
} }
else if (strCommand == nameof(Game_DanC_Base_Offset_X))
{
Game_DanC_Base_Offset_X = strParam.Split(',').Select(int.Parse).ToArray();
}
else if (strCommand == nameof(Game_DanC_Base_Offset_Y))
{
Game_DanC_Base_Offset_Y = strParam.Split(',').Select(int.Parse).ToArray();
}
else if (strCommand == nameof(Game_DanC_SmallBase_Offset_X))
{
Game_DanC_SmallBase_Offset_X = strParam.Split(',').Select(int.Parse).ToArray();
}
else if (strCommand == nameof(Game_DanC_SmallBase_Offset_Y))
{
Game_DanC_SmallBase_Offset_Y = strParam.Split(',').Select(int.Parse).ToArray();
}
else if (strCommand == nameof(Game_DanC_Size)) else if (strCommand == nameof(Game_DanC_Size))
{ {
@ -5874,6 +5897,46 @@ namespace TJAPlayer3
Result_MaxCombo_Y[i] = int.Parse(strSplit[i]); Result_MaxCombo_Y[i] = int.Parse(strSplit[i]);
} }
} }
else if (strCommand == "Result_ADLib_Show")
{
Result_ADLib_Show = C変換.bONorOFF(strParam[0]);
}
else if (strCommand == "Result_ADLib_X")
{
string[] strSplit = strParam.Split(',');
for (int i = 0; i < 2; i++)
{
Result_ADLib_X[i] = int.Parse(strSplit[i]);
}
}
else if (strCommand == "Result_ADLib_Y")
{
string[] strSplit = strParam.Split(',');
for (int i = 0; i < 2; i++)
{
Result_ADLib_Y[i] = int.Parse(strSplit[i]);
}
}
else if (strCommand == "Result_Bomb_Show")
{
Result_Bomb_Show = C変換.bONorOFF(strParam[0]);
}
else if (strCommand == "Result_Bomb_X")
{
string[] strSplit = strParam.Split(',');
for (int i = 0; i < 2; i++)
{
Result_Bomb_X[i] = int.Parse(strSplit[i]);
}
}
else if (strCommand == "Result_Bomb_Y")
{
string[] strSplit = strParam.Split(',');
for (int i = 0; i < 2; i++)
{
Result_Bomb_Y[i] = int.Parse(strSplit[i]);
}
}
else if (strCommand == "Result_Score_X") else if (strCommand == "Result_Score_X")
{ {
string[] strSplit = strParam.Split(','); string[] strSplit = strParam.Split(',');
@ -6349,6 +6412,38 @@ namespace TJAPlayer3
Result_MaxCombo_5P[i] = int.Parse(strSplit[i]); Result_MaxCombo_5P[i] = int.Parse(strSplit[i]);
} }
} }
else if (strCommand == "Result_ADLib_4P")
{
string[] strSplit = strParam.Split(',');
for (int i = 0; i < 2; i++)
{
Result_ADLib_4P[i] = int.Parse(strSplit[i]);
}
}
else if (strCommand == "Result_ADLib_5P")
{
string[] strSplit = strParam.Split(',');
for (int i = 0; i < 2; i++)
{
Result_ADLib_5P[i] = int.Parse(strSplit[i]);
}
}
else if (strCommand == "Result_Bomb_4P")
{
string[] strSplit = strParam.Split(',');
for (int i = 0; i < 2; i++)
{
Result_Bomb_4P[i] = int.Parse(strSplit[i]);
}
}
else if (strCommand == "Result_Bomb_5P")
{
string[] strSplit = strParam.Split(',');
for (int i = 0; i < 2; i++)
{
Result_Bomb_5P[i] = int.Parse(strSplit[i]);
}
}
else if (strCommand == "Result_Score_4P") else if (strCommand == "Result_Score_4P")
{ {
string[] strSplit = strParam.Split(','); string[] strSplit = strParam.Split(',');
@ -8067,8 +8162,8 @@ namespace TJAPlayer3
public int[] Game_Judge_4P = new int[] { 364, 32 }; public int[] Game_Judge_4P = new int[] { 364, 32 };
public int[] Game_Judge_5P = new int[] { 364, 24 }; public int[] Game_Judge_5P = new int[] { 364, 24 };
public int[] Game_UIMove_4P = new int[] { 165, 68 }; public int[] Game_UIMove_4P = new int[] { 0, 176 };
public int[] Game_UIMove_5P = new int[] { 165, 60 }; public int[] Game_UIMove_5P = new int[] { 0, 144 };
public int[] Game_ScoreRank_4P = new int[] { 87, 88 }; public int[] Game_ScoreRank_4P = new int[] { 87, 88 };
public int[] Game_ScoreRank_5P = new int[] { 87, 80 }; public int[] Game_ScoreRank_5P = new int[] { 87, 80 };
@ -8435,6 +8530,10 @@ namespace TJAPlayer3
public int[] Game_DanC_X = new int[] { 807, 70, 70, 70 }; // 329, 437 public int[] Game_DanC_X = new int[] { 807, 70, 70, 70 }; // 329, 437
public int[] Game_DanC_Y = new int[] { 116, 292, 292, 292 }; // { 116, 190, 236, 292 }; public int[] Game_DanC_Y = new int[] { 116, 292, 292, 292 }; // { 116, 190, 236, 292 };
public int[] Game_DanC_Base_Offset_X = new int[] { 0, 503 };
public int[] Game_DanC_Base_Offset_Y = new int[] { 0, 0 };
public int[] Game_DanC_SmallBase_Offset_X = new int[] { 745, 410 };
public int[] Game_DanC_SmallBase_Offset_Y = new int[] { 119, 119 };
public int[] Game_DanC_Number_XY = new int[] { 214, 67 }; public int[] Game_DanC_Number_XY = new int[] { 214, 67 };
public int[] Game_DanC_Dan_Plate = new int[] { 149, 416 }; public int[] Game_DanC_Dan_Plate = new int[] { 149, 416 };
@ -8591,6 +8690,14 @@ namespace TJAPlayer3
public int[] Result_MaxCombo_X = new int[] { 490, 1125 }; public int[] Result_MaxCombo_X = new int[] { 490, 1125 };
public int[] Result_MaxCombo_Y = new int[] { 356, 356 }; public int[] Result_MaxCombo_Y = new int[] { 356, 356 };
public bool Result_ADLib_Show = false;
public int[] Result_ADLib_X = new int[] { 0, 0 };
public int[] Result_ADLib_Y = new int[] { 0, 0 };
public bool Result_Bomb_Show = false;
public int[] Result_Bomb_X = new int[] { 0, 0 };
public int[] Result_Bomb_Y = new int[] { 0, 0 };
public int[] Result_Score_X = new int[] { 295, 930 }; public int[] Result_Score_X = new int[] { 295, 930 };
public int[] Result_Score_Y = new int[] { 212, 212 }; public int[] Result_Score_Y = new int[] { 212, 212 };
public int[] Result_Score_Number_Interval = new int[] { 33, 0 }; public int[] Result_Score_Number_Interval = new int[] { 33, 0 };
@ -8689,6 +8796,12 @@ namespace TJAPlayer3
public int[] Result_MaxCombo_4P = new int[] { 183, 419 }; public int[] Result_MaxCombo_4P = new int[] { 183, 419 };
public int[] Result_MaxCombo_5P = new int[] { 151, 419 }; public int[] Result_MaxCombo_5P = new int[] { 151, 419 };
public int[] Result_ADLib_4P = new int[] { 0, 0 };
public int[] Result_ADLib_5P = new int[] { 0, 0 };
public int[] Result_Bomb_4P = new int[] { 0, 0 };
public int[] Result_Bomb_5P = new int[] { 0, 0 };
public int[] Result_Score_4P = new int[] { 253, 180 }; public int[] Result_Score_4P = new int[] { 253, 180 };
public int[] Result_Score_5P = new int[] { 221, 180 }; public int[] Result_Score_5P = new int[] { 221, 180 };

View File

@ -951,7 +951,7 @@ namespace TJAPlayer3
Result_CrownEffect = TxC(RESULT + @"CrownEffect.png"); Result_CrownEffect = TxC(RESULT + @"CrownEffect.png");
Result_ScoreRankEffect = TxC(RESULT + @"ScoreRankEffect.png"); Result_ScoreRankEffect = TxC(RESULT + @"ScoreRankEffect.png");
Result_Cloud = TxC(RESULT + @"Cloud.png"); //Result_Cloud = TxC(RESULT + @"Cloud.png");
Result_Shine = TxC(RESULT + @"Shine.png"); Result_Shine = TxC(RESULT + @"Shine.png");
Result_Speech_Bubble[0] = TxC(RESULT + @"Speech_Bubble.png"); Result_Speech_Bubble[0] = TxC(RESULT + @"Speech_Bubble.png");
@ -968,18 +968,18 @@ namespace TJAPlayer3
for (int i = 1; i <= 5; i++) for (int i = 1; i <= 5; i++)
Result_Flower_Rotate[i - 1] = TxC(RESULT + @"Flower\Rotate_" + i.ToString() + ".png"); Result_Flower_Rotate[i - 1] = TxC(RESULT + @"Flower\Rotate_" + i.ToString() + ".png");
for (int i = 0; i < 3; i++) //for (int i = 0; i < 3; i++)
Result_Work[i] = TxC(RESULT + @"Work\" + i.ToString() + ".png"); //Result_Work[i] = TxC(RESULT + @"Work\" + i.ToString() + ".png");
for (int i = 0; i < 41; i++) for (int i = 0; i < 41; i++)
Result_Rainbow[i] = TxC(RESULT + @"Rainbow\" + i.ToString() + ".png"); Result_Rainbow[i] = TxC(RESULT + @"Rainbow\" + i.ToString() + ".png");
for (int i = 0; i < 6; i++) //for (int i = 0; i < 6; i++)
Result_Background[i] = TxC(RESULT + @"Background_" + i.ToString() + ".png"); //Result_Background[i] = TxC(RESULT + @"Background_" + i.ToString() + ".png");
for (int i = 0; i < 4; i++) //for (int i = 0; i < 4; i++)
Result_Mountain[i] = TxC(RESULT + @"Background_Mountain_" + i.ToString() + ".png"); //Result_Mountain[i] = TxC(RESULT + @"Background_Mountain_" + i.ToString() + ".png");
for (int i = 0; i < 3; i++) for (int i = 0; i < 3; i++)
Result_Crown[i] = TxC(RESULT + @"Crown\Crown_" + i.ToString() + ".png"); Result_Crown[i] = TxC(RESULT + @"Crown\Crown_" + i.ToString() + ".png");
@ -1002,7 +1002,7 @@ namespace TJAPlayer3
#region [7_DanResults] #region [7_DanResults]
DanResult_Background = TxC(DANRESULT + @"Background.png"); //DanResult_Background = TxC(DANRESULT + @"Background.png");
DanResult_Rank = TxC(DANRESULT + @"Rank.png"); DanResult_Rank = TxC(DANRESULT + @"Rank.png");
DanResult_SongPanel_Base = TxC(DANRESULT + @"SongPanel_Base.png"); DanResult_SongPanel_Base = TxC(DANRESULT + @"SongPanel_Base.png");
DanResult_StatePanel_Base = TxC(DANRESULT + @"StatePanel_Base.png"); DanResult_StatePanel_Base = TxC(DANRESULT + @"StatePanel_Base.png");
@ -1780,6 +1780,7 @@ namespace TJAPlayer3
_skin.voiceAILose[player]?.Dispose(); _skin.voiceAILose[player]?.Dispose();
_skin.voiceMenuSongSelect[player]?.Dispose(); _skin.voiceMenuSongSelect[player]?.Dispose();
_skin.voiceMenuSongDecide[player]?.Dispose(); _skin.voiceMenuSongDecide[player]?.Dispose();
_skin.voiceMenuSongDecide_AI[player]?.Dispose();
_skin.voiceMenuDiffSelect[player]?.Dispose(); _skin.voiceMenuDiffSelect[player]?.Dispose();
_skin.voiceMenuDanSelectStart[player]?.Dispose(); _skin.voiceMenuDanSelectStart[player]?.Dispose();
_skin.voiceMenuDanSelectPrompt[player]?.Dispose(); _skin.voiceMenuDanSelectPrompt[player]?.Dispose();
@ -1805,6 +1806,7 @@ namespace TJAPlayer3
_skin.voiceAILose[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Clear\AIBattle_Lose"); _skin.voiceAILose[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Clear\AIBattle_Lose");
_skin.voiceMenuSongSelect[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\SongSelect"); _skin.voiceMenuSongSelect[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\SongSelect");
_skin.voiceMenuSongDecide[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\SongDecide"); _skin.voiceMenuSongDecide[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\SongDecide");
_skin.voiceMenuSongDecide_AI[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\SongDecide_AI");
_skin.voiceMenuDiffSelect[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\DiffSelect"); _skin.voiceMenuDiffSelect[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\DiffSelect");
_skin.voiceMenuDanSelectStart[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\DanSelectStart"); _skin.voiceMenuDanSelectStart[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\DanSelectStart");
_skin.voiceMenuDanSelectPrompt[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\DanSelectPrompt"); _skin.voiceMenuDanSelectPrompt[player] = VoiceSelectOggOrWav(charaPath + @"\Sounds\Menu\DanSelectPrompt");
@ -2217,7 +2219,7 @@ namespace TJAPlayer3
Result_CrownEffect, Result_CrownEffect,
Result_ScoreRankEffect, Result_ScoreRankEffect,
Result_Cloud, //Result_Cloud,
Result_Flower, Result_Flower,
Result_Shine, Result_Shine,
@ -2227,17 +2229,17 @@ namespace TJAPlayer3
Result_Panel_5P = new CTexture[5], Result_Panel_5P = new CTexture[5],
Result_Panel_4P = new CTexture[4], Result_Panel_4P = new CTexture[4],
Result_Rainbow = new CTexture[41], Result_Rainbow = new CTexture[41],
Result_Background = new CTexture[6], //Result_Background = new CTexture[6],
Result_Crown = new CTexture[3], Result_Crown = new CTexture[3],
Result_Flower_Rotate = new CTexture[5], Result_Flower_Rotate = new CTexture[5],
Result_Work = new CTexture[3], //Result_Work = new CTexture[3],
Result_Gauge = new CTexture[5], Result_Gauge = new CTexture[5],
Result_Gauge_Base = new CTexture[5], Result_Gauge_Base = new CTexture[5],
Result_Speech_Bubble = new CTexture[2], Result_Speech_Bubble = new CTexture[2]
/*,
Result_Mountain = new CTexture[4]; Result_Mountain = new CTexture[4]*/;
#endregion #endregion
#region 7_AIResults #region 7_AIResults
@ -2255,7 +2257,8 @@ namespace TJAPlayer3
#region [7_DanResults] #region [7_DanResults]
public CTexture DanResult_Background, public CTexture
//DanResult_Background,
DanResult_Rank, DanResult_Rank,
DanResult_SongPanel_Base, DanResult_SongPanel_Base,
DanResult_StatePanel_Base, DanResult_StatePanel_Base,

View File

@ -281,7 +281,6 @@ namespace TJAPlayer3
this.bSelect[i] = true; this.bSelect[i] = true;
TJAPlayer3.Skin.sound決定音.t再生する();
bool allPlayerSelected = true; bool allPlayerSelected = true;
@ -298,9 +297,29 @@ namespace TJAPlayer3
if (allPlayerSelected) if (allPlayerSelected)
{ {
if (TJAPlayer3.Skin.soundSongDecide_AI.b読み込み成功 && TJAPlayer3.ConfigIni.bAIBattleMode)
{
TJAPlayer3.Skin.soundSongDecide_AI.t再生する();
}
else if (TJAPlayer3.Skin.sound曲決定音.b読み込み成功)
{
TJAPlayer3.Skin.sound曲決定音.t再生する();
}
else
{
TJAPlayer3.Skin.sound決定音.t再生する();
}
for (int i2 = 0; i2 < TJAPlayer3.ConfigIni.nPlayerCount; i2++) for (int i2 = 0; i2 < TJAPlayer3.ConfigIni.nPlayerCount; i2++)
{ {
TJAPlayer3.Skin.voiceMenuSongDecide[TJAPlayer3.SaveFile]?.t再生する(); if (TJAPlayer3.ConfigIni.bAIBattleMode)
{
TJAPlayer3.Skin.voiceMenuSongDecide_AI[TJAPlayer3.GetActualPlayer(i2)]?.t再生する();
}
else
{
TJAPlayer3.Skin.voiceMenuSongDecide[TJAPlayer3.GetActualPlayer(i2)]?.t再生する();
}
CMenuCharacter.tMenuResetTimer(i2, CMenuCharacter.ECharacterAnimation.START); CMenuCharacter.tMenuResetTimer(i2, CMenuCharacter.ECharacterAnimation.START);
if (TJAPlayer3.ConfigIni.bAIBattleMode) if (TJAPlayer3.ConfigIni.bAIBattleMode)
{ {
@ -312,6 +331,10 @@ namespace TJAPlayer3
} }
} }
} }
else
{
TJAPlayer3.Skin.sound決定音.t再生する();
}
} }
} }
} }

View File

@ -1053,7 +1053,7 @@ namespace TJAPlayer3
{ {
//this.ctDonchan_Jump[0].t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Jump.Length + 8, 1000 / 45, TJAPlayer3.Timer); //this.ctDonchan_Jump[0].t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Jump.Length + 8, 1000 / 45, TJAPlayer3.Timer);
//this.ctDonchan_Jump[1].t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Jump.Length + 8, 1000 / 45, TJAPlayer3.Timer); //this.ctDonchan_Jump[1].t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Jump.Length + 8, 1000 / 45, TJAPlayer3.Timer);
CMenuCharacter.tMenuResetTimer(CMenuCharacter.ECharacterAnimation.START); CMenuCharacter.tMenuResetTimer(CMenuCharacter.ECharacterAnimation.SELECT);
for (int i = 0; i < 7; i++) tカーソルスキップ(true); for (int i = 0; i < 7; i++) tカーソルスキップ(true);
} }
@ -1077,7 +1077,7 @@ namespace TJAPlayer3
{ {
//this.ctDonchan_Jump[0].t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Jump.Length + 8, 1000 / 45, TJAPlayer3.Timer); //this.ctDonchan_Jump[0].t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Jump.Length + 8, 1000 / 45, TJAPlayer3.Timer);
//this.ctDonchan_Jump[1].t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Jump.Length + 8, 1000 / 45, TJAPlayer3.Timer); //this.ctDonchan_Jump[1].t開始(0, TJAPlayer3.Tx.SongSelect_Donchan_Jump.Length + 8, 1000 / 45, TJAPlayer3.Timer);
CMenuCharacter.tMenuResetTimer(CMenuCharacter.ECharacterAnimation.START); CMenuCharacter.tMenuResetTimer(CMenuCharacter.ECharacterAnimation.SELECT);
for (int i = 0; i < 7; i++) tカーソルスキップ(false); for (int i = 0; i < 7; i++) tカーソルスキップ(false);
} }
@ -1647,8 +1647,16 @@ namespace TJAPlayer3
for (int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++) for (int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++)
{ {
this.n確定された曲の難易度[i] = tGetRandomSongDifficulty(usedDiffs[i]); this.n確定された曲の難易度[i] = tGetRandomSongDifficulty(usedDiffs[i]);
if (TJAPlayer3.ConfigIni.bAIBattleMode)
{
TJAPlayer3.Skin.voiceMenuSongDecide_AI[TJAPlayer3.GetActualPlayer(i)]?.t再生する();
}
else
{
TJAPlayer3.Skin.voiceMenuSongDecide[TJAPlayer3.GetActualPlayer(i)]?.t再生する(); TJAPlayer3.Skin.voiceMenuSongDecide[TJAPlayer3.GetActualPlayer(i)]?.t再生する();
} }
}
/* /*
this.n確定された曲の難易度[0] = this.act曲リスト.n現在のアンカ難易度レベルに最も近い難易度レベルを返す(this.r確定された曲); this.n確定された曲の難易度[0] = this.act曲リスト.n現在のアンカ難易度レベルに最も近い難易度レベルを返す(this.r確定された曲);

View File

@ -116,7 +116,11 @@ namespace TJAPlayer3
{ {
case 0: case 0:
{ {
if (TJAPlayer3.ConfigIni.bTokkunMode) if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan)
{
tex = TJAPlayer3.Tx.Taiko_Background[2];
}
else if (TJAPlayer3.ConfigIni.bTokkunMode)
{ {
if (TJAPlayer3.P1IsBlue()) if (TJAPlayer3.P1IsBlue())
tex = TJAPlayer3.Tx.Taiko_Background[6]; tex = TJAPlayer3.Tx.Taiko_Background[6];

View File

@ -609,8 +609,8 @@ namespace TJAPlayer3
int yOrigin = (isResult) ? TJAPlayer3.Skin.DanResult_Exam[1] : TJAPlayer3.Skin.Game_DanC_Y[1]; int yOrigin = (isResult) ? TJAPlayer3.Skin.DanResult_Exam[1] : TJAPlayer3.Skin.Game_DanC_Y[1];
// Origin position which will be used as a reference for bar elements // Origin position which will be used as a reference for bar elements
int barXOffset = xOrigin + (currentPosition >= 3 ? 503 : 0); int barXOffset = xOrigin + (currentPosition >= 3 ? TJAPlayer3.Skin.Game_DanC_Base_Offset_X[1] : TJAPlayer3.Skin.Game_DanC_Base_Offset_X[0]);
int barYOffset = yOrigin + TJAPlayer3.Skin.Game_DanC_Size[1] * yIndex + (yIndex * TJAPlayer3.Skin.Game_DanC_Padding); int barYOffset = yOrigin + (currentPosition >= 3 ? TJAPlayer3.Skin.Game_DanC_Base_Offset_Y[1] : TJAPlayer3.Skin.Game_DanC_Base_Offset_Y[0]) + TJAPlayer3.Skin.Game_DanC_Size[1] * yIndex + (yIndex * TJAPlayer3.Skin.Game_DanC_Padding);
// Small bar // Small bar
int lowerBarYOffset = barYOffset + TJAPlayer3.Skin.Game_DanC_Size[1] + TJAPlayer3.Skin.Game_DanC_Padding; int lowerBarYOffset = barYOffset + TJAPlayer3.Skin.Game_DanC_Size[1] + TJAPlayer3.Skin.Game_DanC_Padding;
@ -719,10 +719,10 @@ namespace TJAPlayer3
TJAPlayer3.Tx.DanC_SmallBase.vc拡大縮小倍率.X = isSmallGauge ? 0.34f : 1f; TJAPlayer3.Tx.DanC_SmallBase.vc拡大縮小倍率.X = isSmallGauge ? 0.34f : 1f;
// 815 : Small base (70 + 745) // 815 : Small base (70 + 745)
int miniBarPositionX = barXOffset + (isSmallGauge ? 410 : 745); int miniBarPositionX = barXOffset + (isSmallGauge ? TJAPlayer3.Skin.Game_DanC_SmallBase_Offset_X[1] : TJAPlayer3.Skin.Game_DanC_SmallBase_Offset_X[0]);
// 613 + (j - 1) * 33 : Small base (barYoffset for 3rd exam : 494 + 119 + Local song offset (j - 1) * 33) // 613 + (j - 1) * 33 : Small base (barYoffset for 3rd exam : 494 + 119 + Local song offset (j - 1) * 33)
int miniBarPositionY = (barYOffset + 119) + (j - 1) * 33 - (TJAPlayer3.Skin.Game_DanC_Size[1] + (TJAPlayer3.Skin.Game_DanC_Padding)); int miniBarPositionY = (barYOffset + (isSmallGauge ? TJAPlayer3.Skin.Game_DanC_SmallBase_Offset_Y[1] : TJAPlayer3.Skin.Game_DanC_SmallBase_Offset_Y[0])) + (j - 1) * 33 - (TJAPlayer3.Skin.Game_DanC_Size[1] + (TJAPlayer3.Skin.Game_DanC_Padding));
// Display bars // Display bars
#region [Displayables] #region [Displayables]

View File

@ -144,7 +144,7 @@ namespace TJAPlayer3
double value = (Flying[i].Counter.n現在の値 / 140.0); double value = (Flying[i].Counter.n現在の値 / 140.0);
Flying[i].X = StartPointX[Flying[i].Player] + TJAPlayer3.stage演奏ドラム画面.GetJPOSCROLLX(Flying[i].Player) + (movingDistanceX * value); Flying[i].X = StartPointX[Flying[i].Player] + TJAPlayer3.stage演奏ドラム画面.GetJPOSCROLLX(Flying[i].Player) + (movingDistanceX * value);
Flying[i].Y = TJAPlayer3.Skin.Game_Effect_FlyingNotes_StartPoint_Y[Flying[i].Player] + TJAPlayer3.stage演奏ドラム画面.GetJPOSCROLLX(Flying[i].Player) + (int)(movingDistanceY * value); Flying[i].Y = TJAPlayer3.Skin.Game_Effect_FlyingNotes_StartPoint_Y[Flying[i].Player] + TJAPlayer3.stage演奏ドラム画面.GetJPOSCROLLY(Flying[i].Player) + (int)(movingDistanceY * value);
if (TJAPlayer3.ConfigIni.bAIBattleMode) if (TJAPlayer3.ConfigIni.bAIBattleMode)
{ {

View File

@ -184,7 +184,14 @@ namespace TJAPlayer3
try try
{ {
LuaSetConstValues.Call(TJAPlayer3.ConfigIni.nPlayerCount, TJAPlayer3.P1IsBlue()); LuaSetConstValues.Call(TJAPlayer3.ConfigIni.nPlayerCount, TJAPlayer3.P1IsBlue());
LuaUpdateValues.Call(TJAPlayer3.FPS.DeltaTime, TJAPlayer3.FPS.n現在のFPS, TJAPlayer3.stage演奏ドラム画面.bIsAlreadyCleared, 0); LuaUpdateValues.Call(TJAPlayer3.FPS.DeltaTime,
TJAPlayer3.FPS.n現在のFPS,
TJAPlayer3.stage演奏ドラム画面.bIsAlreadyCleared,
0,
TJAPlayer3.stage演奏ドラム画面.AIBattleState,
TJAPlayer3.stage演奏ドラム画面.bIsAIBattleWin,
TJAPlayer3.stage演奏ドラム画面.actGauge.db現在のゲージ値,
TJAPlayer3.stage演奏ドラム画面.actPlayInfo.dbBPM);
LuaInit.Call(); LuaInit.Call();
} }
@ -209,7 +216,14 @@ namespace TJAPlayer3
currentFloorPositionMax140 = Math.Min(TJAPlayer3.stage演奏ドラム画面.actPlayInfo.NowMeasure[0] / (float)nightTime, 1f); currentFloorPositionMax140 = Math.Min(TJAPlayer3.stage演奏ドラム画面.actPlayInfo.NowMeasure[0] / (float)nightTime, 1f);
} }
LuaUpdateValues.Call(TJAPlayer3.FPS.DeltaTime, TJAPlayer3.FPS.n現在のFPS, TJAPlayer3.stage演奏ドラム画面.bIsAlreadyCleared, (double)currentFloorPositionMax140, TJAPlayer3.stage演奏ドラム画面.AIBattleState, TJAPlayer3.stage演奏ドラム画面.bIsAIBattleWin); LuaUpdateValues.Call(TJAPlayer3.FPS.DeltaTime,
TJAPlayer3.FPS.n現在のFPS,
TJAPlayer3.stage演奏ドラム画面.bIsAlreadyCleared,
(double)currentFloorPositionMax140,
TJAPlayer3.stage演奏ドラム画面.AIBattleState,
TJAPlayer3.stage演奏ドラム画面.bIsAIBattleWin,
TJAPlayer3.stage演奏ドラム画面.actGauge.db現在のゲージ値,
TJAPlayer3.stage演奏ドラム画面.actPlayInfo.dbBPM);
/*LuaScript.SetObjectToPath("fps", TJAPlayer3.FPS.n現在のFPS); /*LuaScript.SetObjectToPath("fps", TJAPlayer3.FPS.n現在のFPS);
LuaScript.SetObjectToPath("deltaTime", TJAPlayer3.FPS.DeltaTime); LuaScript.SetObjectToPath("deltaTime", TJAPlayer3.FPS.DeltaTime);
LuaScript.SetObjectToPath("isClear", TJAPlayer3.stage演奏ドラム画面.bIsAlreadyCleared); LuaScript.SetObjectToPath("isClear", TJAPlayer3.stage演奏ドラム画面.bIsAlreadyCleared);

View File

@ -168,9 +168,10 @@ namespace TJAPlayer3
public void tSkipResultAnimations() public void tSkipResultAnimations()
{ {
TJAPlayer3.stage結果.Background.SkipAnimation();
ct全体進行.n現在の値 = (int)MountainAppearValue; ct全体進行.n現在の値 = (int)MountainAppearValue;
for (int i = 0; i < 9; i++) for (int i = 0; i < b音声再生.Length; i++)
{ {
b音声再生[i] = true; b音声再生[i] = true;
} }
@ -614,9 +615,10 @@ namespace TJAPlayer3
TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nGreat, TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nGreat,
TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nGood, TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nGood,
TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nMiss, TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nMiss,
//TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nRoll.ToString(),
TJAPlayer3.stage演奏ドラム画面.GetRoll(i), TJAPlayer3.stage演奏ドラム画面.GetRoll(i),
TJAPlayer3.stage演奏ドラム画面.actCombo.n現在のコンボ数.[i] TJAPlayer3.stage演奏ドラム画面.actCombo.n現在のコンボ数.[i],
TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nADLIB,
TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nMine,
}; };
int[][] num_x; int[][] num_x;
@ -641,6 +643,12 @@ namespace TJAPlayer3
num_x[4][pos] = TJAPlayer3.Skin.Result_MaxCombo_5P[0] + (TJAPlayer3.Skin.Result_UIMove_5P[0] * pos); num_x[4][pos] = TJAPlayer3.Skin.Result_MaxCombo_5P[0] + (TJAPlayer3.Skin.Result_UIMove_5P[0] * pos);
num_y[4][pos] = TJAPlayer3.Skin.Result_MaxCombo_5P[1] + (TJAPlayer3.Skin.Result_UIMove_5P[1] * pos); num_y[4][pos] = TJAPlayer3.Skin.Result_MaxCombo_5P[1] + (TJAPlayer3.Skin.Result_UIMove_5P[1] * pos);
num_x[5][pos] = TJAPlayer3.Skin.Result_ADLib_5P[0] + (TJAPlayer3.Skin.Result_UIMove_5P[0] * pos);
num_y[5][pos] = TJAPlayer3.Skin.Result_ADLib_5P[1] + (TJAPlayer3.Skin.Result_UIMove_5P[1] * pos);
num_x[6][pos] = TJAPlayer3.Skin.Result_Bomb_5P[0] + (TJAPlayer3.Skin.Result_UIMove_5P[0] * pos);
num_y[6][pos] = TJAPlayer3.Skin.Result_Bomb_5P[1] + (TJAPlayer3.Skin.Result_UIMove_5P[1] * pos);
} }
else if (TJAPlayer3.ConfigIni.nPlayerCount > 2) else if (TJAPlayer3.ConfigIni.nPlayerCount > 2)
{ {
@ -661,6 +669,12 @@ namespace TJAPlayer3
num_x[4][pos] = TJAPlayer3.Skin.Result_MaxCombo_4P[0] + (TJAPlayer3.Skin.Result_UIMove_4P[0] * pos); num_x[4][pos] = TJAPlayer3.Skin.Result_MaxCombo_4P[0] + (TJAPlayer3.Skin.Result_UIMove_4P[0] * pos);
num_y[4][pos] = TJAPlayer3.Skin.Result_MaxCombo_4P[1] + (TJAPlayer3.Skin.Result_UIMove_4P[1] * pos); num_y[4][pos] = TJAPlayer3.Skin.Result_MaxCombo_4P[1] + (TJAPlayer3.Skin.Result_UIMove_4P[1] * pos);
num_x[5][pos] = TJAPlayer3.Skin.Result_ADLib_4P[0] + (TJAPlayer3.Skin.Result_UIMove_4P[0] * pos);
num_y[5][pos] = TJAPlayer3.Skin.Result_ADLib_4P[1] + (TJAPlayer3.Skin.Result_UIMove_4P[1] * pos);
num_x[6][pos] = TJAPlayer3.Skin.Result_Bomb_4P[0] + (TJAPlayer3.Skin.Result_UIMove_4P[0] * pos);
num_y[6][pos] = TJAPlayer3.Skin.Result_Bomb_4P[1] + (TJAPlayer3.Skin.Result_UIMove_4P[1] * pos);
} }
else else
{ {
@ -669,7 +683,9 @@ namespace TJAPlayer3
TJAPlayer3.Skin.Result_Good_X, TJAPlayer3.Skin.Result_Good_X,
TJAPlayer3.Skin.Result_Miss_X, TJAPlayer3.Skin.Result_Miss_X,
TJAPlayer3.Skin.Result_Roll_X, TJAPlayer3.Skin.Result_Roll_X,
TJAPlayer3.Skin.Result_MaxCombo_X TJAPlayer3.Skin.Result_MaxCombo_X,
TJAPlayer3.Skin.Result_ADLib_X,
TJAPlayer3.Skin.Result_Bomb_X
}; };
num_y = new int[][] { num_y = new int[][] {
@ -677,25 +693,33 @@ namespace TJAPlayer3
TJAPlayer3.Skin.Result_Good_Y, TJAPlayer3.Skin.Result_Good_Y,
TJAPlayer3.Skin.Result_Miss_Y, TJAPlayer3.Skin.Result_Miss_Y,
TJAPlayer3.Skin.Result_Roll_Y, TJAPlayer3.Skin.Result_Roll_Y,
TJAPlayer3.Skin.Result_MaxCombo_Y TJAPlayer3.Skin.Result_MaxCombo_Y,
TJAPlayer3.Skin.Result_ADLib_Y,
TJAPlayer3.Skin.Result_Bomb_Y
}; };
} }
for (int k = 0; k < 5; k++) for (int k = 0; k < 7; k++)
{ {
if (ct全体進行.n現在の値 >= AnimeCount + (Interval * k)) if (ct全体進行.n現在の値 >= AnimeCount + (Interval * k))
{ {
TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体進行.n現在の値 <= AnimeCount + (Interval * k) + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + (Interval * k))) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f; TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = ct全体進行.n現在の値 <= AnimeCount + (Interval * k) + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + (Interval * k))) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体進行.n現在の値 <= AnimeCount + (Interval * k) + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + (Interval * k))) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f; TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = ct全体進行.n現在の値 <= AnimeCount + (Interval * k) + AddCount ? 1.3f - (float)Math.Sin((ct全体進行.n現在の値 - (AnimeCount + (Interval * k))) / (AddCount / 90) * (Math.PI / 180)) * 0.3f : 1.0f;
if ((k != 5 || TJAPlayer3.Skin.Result_ADLib_Show) && (k != 6 || TJAPlayer3.Skin.Result_Bomb_Show))
{
this.t小文字表示(num_x[k][pos], num_y[k][pos], scoresArr[k]); this.t小文字表示(num_x[k][pos], num_y[k][pos], scoresArr[k]);
}
TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1f; TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.X = 1f;
TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1f; TJAPlayer3.Tx.Result_Number.vc拡大縮小倍率.Y = 1f;
if (!this.b音声再生[1 + k]) if (!this.b音声再生[1 + k])
{
if ((k != 5 || TJAPlayer3.Skin.Result_ADLib_Show) && (k != 6 || TJAPlayer3.Skin.Result_Bomb_Show))
{ {
TJAPlayer3.Skin.soundPon.t再生する(); TJAPlayer3.Skin.soundPon.t再生する();
}
this.b音声再生[1 + k] = true; this.b音声再生[1 + k] = true;
} }
} }
@ -736,10 +760,10 @@ namespace TJAPlayer3
this.tスコア文字表示(score_x, score_y, (int)TJAPlayer3.stage演奏ドラム画面.actScore.Get(E楽器パート.DRUMS, i));// TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nScore.ToString())); this.tスコア文字表示(score_x, score_y, (int)TJAPlayer3.stage演奏ドラム画面.actScore.Get(E楽器パート.DRUMS, i));// TJAPlayer3.stage演奏ドラム画面.CChartScore[i].nScore.ToString()));
if (!b音声再生[6]) if (!b音声再生[8])
{ {
TJAPlayer3.Skin.soundScoreDon.t再生する(); TJAPlayer3.Skin.soundScoreDon.t再生する();
b音声再生[6] = true; b音声再生[8] = true;
} }
} }
@ -1023,7 +1047,7 @@ namespace TJAPlayer3
TJAPlayer3.Tx.Result_Speech_Bubble[pos].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Speech_Bubble_X[pos], TJAPlayer3.Skin.Result_Speech_Bubble_Y[pos], TJAPlayer3.Tx.Result_Speech_Bubble[pos].t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.Result_Speech_Bubble_X[pos], TJAPlayer3.Skin.Result_Speech_Bubble_Y[pos],
new Rectangle(Mood * speechBuddle_width, RandomText * speechBuddle_height, speechBuddle_width, speechBuddle_height)); new Rectangle(Mood * speechBuddle_width, RandomText * speechBuddle_height, speechBuddle_width, speechBuddle_height));
} }
if (!b音声再生[9]) if (!b音声再生[11])
{ {
if (gaugeValues[p] >= 80.0f) if (gaugeValues[p] >= 80.0f)
{ {
@ -1037,7 +1061,7 @@ namespace TJAPlayer3
} }
if (p == TJAPlayer3.ConfigIni.nPlayerCount - 1) if (p == TJAPlayer3.ConfigIni.nPlayerCount - 1)
b音声再生[9] = true; b音声再生[11] = true;
} }
#endregion #endregion
@ -1109,10 +1133,10 @@ namespace TJAPlayer3
TJAPlayer3.Tx.Result_ScoreRankEffect.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, scoreRankEffect_x, scoreRankEffect_y, TJAPlayer3.Tx.Result_ScoreRankEffect.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, scoreRankEffect_x, scoreRankEffect_y,
new Rectangle((TJAPlayer3.stage結果.nスコアランク[p] - 1) * scoreRank_width, CurrentFlash * scoreRank_height, scoreRank_width, scoreRank_height)); new Rectangle((TJAPlayer3.stage結果.nスコアランク[p] - 1) * scoreRank_width, CurrentFlash * scoreRank_height, scoreRank_width, scoreRank_height));
if (!b音声再生[7] && ct全体進行.n現在の値 >= ScoreApparitionTimeStamp + 1180) if (!b音声再生[9] && ct全体進行.n現在の値 >= ScoreApparitionTimeStamp + 1180)
{ {
TJAPlayer3.Skin.soundRankIn.t再生する(); TJAPlayer3.Skin.soundRankIn.t再生する();
b音声再生[7] = true; b音声再生[9] = true;
} }
} }
@ -1184,10 +1208,10 @@ namespace TJAPlayer3
TJAPlayer3.Tx.Result_CrownEffect.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, crownEffect_x, crownEffect_y, TJAPlayer3.Tx.Result_CrownEffect.t2D拡大率考慮中央基準描画(TJAPlayer3.app.Device, crownEffect_x, crownEffect_y,
new Rectangle(ClearType * crownEffect_width, CurrentFlash * crownEffect_height, crownEffect_width, crownEffect_height)); new Rectangle(ClearType * crownEffect_width, CurrentFlash * crownEffect_height, crownEffect_width, crownEffect_height));
if (!b音声再生[8] && ct全体進行.n現在の値 >= ScoreApparitionTimeStamp + 2680) if (!b音声再生[10] && ct全体進行.n現在の値 >= ScoreApparitionTimeStamp + 2680)
{ {
TJAPlayer3.Skin.soundCrownIn.t再生する(); TJAPlayer3.Skin.soundCrownIn.t再生する();
b音声再生[8] = true; b音声再生[10] = true;
} }
} }
@ -1244,7 +1268,7 @@ namespace TJAPlayer3
public float MountainAppearValue; public float MountainAppearValue;
private int GaugeFactor; private int GaugeFactor;
public bool[] b音声再生 = { false, false, false, false, false, false, false, false, false, false, false, false, false }; public bool[] b音声再生 = { false, false, false, false, false, false, false, false, false, false, false, false, false, false, false };
// Cherry blossom flowers variables // Cherry blossom flowers variables
/* /*

View File

@ -105,7 +105,7 @@ namespace TJAPlayer3
{ {
if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan && TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Tower) if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Dan && TJAPlayer3.stage選曲.n確定された曲の難易度[0] != (int)Difficulty.Tower)
TJAPlayer3.Skin.bgmリザルトイン音.t再生する(); bgmResultIn.t再生する();
Trace.TraceInformation("結果ステージを活性化します。"); Trace.TraceInformation("結果ステージを活性化します。");
Trace.Indent(); Trace.Indent();
@ -745,9 +745,8 @@ namespace TJAPlayer3
} }
else if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan) else if (TJAPlayer3.stage選曲.n確定された曲の難易度[0] == (int)Difficulty.Dan)
{ {
//Luaに移植する時にコメントアウトを解除 Background = new ResultBG(CSkin.Path($@"{TextureLoader.BASE}{TextureLoader.DANRESULT}Script.lua"));
//Background = new ScriptBG(CSkin.Path($@"{TextureLoader.BASE}{TextureLoader.DANRESULT}\Script.lua")); Background.Init();
//Background.Init();
if (!string.IsNullOrEmpty(TJAPlayer3.ConfigIni.FontName)) if (!string.IsNullOrEmpty(TJAPlayer3.ConfigIni.FontName))
{ {
@ -773,14 +772,14 @@ namespace TJAPlayer3
} }
else if (TJAPlayer3.ConfigIni.bAIBattleMode) else if (TJAPlayer3.ConfigIni.bAIBattleMode)
{ {
Background = new ScriptBG(CSkin.Path($@"{TextureLoader.BASE}{TextureLoader.RESULT}\AIBattle\Script.lua")); Background = new ResultBG(CSkin.Path($@"{TextureLoader.BASE}{TextureLoader.RESULT}AIBattle\Script.lua"));
Background.Init(); Background.Init();
} }
else else
{ {
//Luaに移植する時にコメントアウトを解除 //Luaに移植する時にコメントアウトを解除
//Background = new ScriptBG(CSkin.Path($@"{TextureLoader.BASE}{TextureLoader.RESULT}\Script.lua")); Background = new ResultBG(CSkin.Path($@"{TextureLoader.BASE}{TextureLoader.RESULT}\Script.lua"));
//Background.Init(); Background.Init();
} }
base.OnManagedリソースの作成(); base.OnManagedリソースの作成();
@ -858,13 +857,14 @@ namespace TJAPlayer3
{ {
#region [Ensou game result screen] #region [Ensou game result screen]
if (!b音声再生 && !TJAPlayer3.Skin.bgmリザルトイン音.b再生中) if (!b音声再生 && !bgmResultIn.b再生中)
{ {
TJAPlayer3.Skin.bgmリザルト音.t再生する(); bgmResultLoop.t再生する();
b音声再生 = true; b音声再生 = true;
} }
if (!TJAPlayer3.ConfigIni.bAIBattleMode) if (!TJAPlayer3.ConfigIni.bAIBattleMode)
{ {
/*
if (TJAPlayer3.Tx.Result_Background != null) if (TJAPlayer3.Tx.Result_Background != null)
{ {
bool is1P = (TJAPlayer3.ConfigIni.nPlayerCount == 1); bool is1P = (TJAPlayer3.ConfigIni.nPlayerCount == 1);
@ -1110,7 +1110,7 @@ namespace TJAPlayer3
} }
} }
} }
*/
if (TJAPlayer3.Tx.Result_Header != null) if (TJAPlayer3.Tx.Result_Header != null)
{ {
TJAPlayer3.Tx.Result_Header.t2D描画(TJAPlayer3.app.Device, 0, 0); TJAPlayer3.Tx.Result_Header.t2D描画(TJAPlayer3.app.Device, 0, 0);
@ -1131,9 +1131,9 @@ namespace TJAPlayer3
} }
*/ */
if (!b音声再生 && !TJAPlayer3.Skin.bgmリザルトイン音.b再生中) if (!b音声再生 && !bgmResultIn.b再生中)
{ {
TJAPlayer3.Skin.bgmリザルト音.t再生する(); bgmResultLoop.t再生する();
b音声再生 = true; b音声再生 = true;
} }
@ -1180,7 +1180,7 @@ namespace TJAPlayer3
b音声再生 = true; b音声再生 = true;
} }
TJAPlayer3.Tx.DanResult_Background.t2D描画(TJAPlayer3.app.Device, 0, 0); //TJAPlayer3.Tx.DanResult_Background.t2D描画(TJAPlayer3.app.Device, 0, 0);
TJAPlayer3.Tx.DanResult_SongPanel_Base.t2D描画(TJAPlayer3.app.Device, 0, 0); TJAPlayer3.Tx.DanResult_SongPanel_Base.t2D描画(TJAPlayer3.app.Device, 0, 0);
#region [DanPlate] #region [DanPlate]
@ -1540,7 +1540,7 @@ namespace TJAPlayer3
{ {
#region [ Return to song select screen (Faster method) ] #region [ Return to song select screen (Faster method) ]
TJAPlayer3.Skin.bgmリザルト音.t停止する(); bgmResultLoop.t停止する();
TJAPlayer3.Skin.bgmDanResult.t停止する(); TJAPlayer3.Skin.bgmDanResult.t停止する();
TJAPlayer3.Skin.bgmTowerResult.t停止する(); TJAPlayer3.Skin.bgmTowerResult.t停止する();
TJAPlayer3.Skin.sound決定音.t再生する(); TJAPlayer3.Skin.sound決定音.t再生する();
@ -1606,7 +1606,7 @@ namespace TJAPlayer3
{ {
base.eフェーズID = CStage.Eフェーズ._フェードアウト; base.eフェーズID = CStage.Eフェーズ._フェードアウト;
this.eフェードアウト完了時の戻り値 = E戻り値.; this.eフェードアウト完了時の戻り値 = E戻り値.;
TJAPlayer3.Skin.bgmリザルト音.t停止する(); bgmResultLoop.t停止する();
TJAPlayer3.Skin.bgmDanResult.t停止する(); TJAPlayer3.Skin.bgmDanResult.t停止する();
TJAPlayer3.Skin.bgmTowerResult.t停止する(); TJAPlayer3.Skin.bgmTowerResult.t停止する();
} }
@ -1970,7 +1970,7 @@ namespace TJAPlayer3
private int n最後に再生したHHのWAV番号; private int n最後に再生したHHのWAV番号;
private int n最後に再生したHHのチャンネル番号; private int n最後に再生したHHのチャンネル番号;
private CSound rResultSound; private CSound rResultSound;
private ScriptBG Background; public ResultBG Background;
public bool[] bClear public bool[] bClear
{ {
@ -2063,6 +2063,36 @@ namespace TJAPlayer3
private CPrivateFastFont pfTowerText48; private CPrivateFastFont pfTowerText48;
private CPrivateFastFont pfTowerText72; private CPrivateFastFont pfTowerText72;
private CSkin.Cシステムサウンド bgmResultIn
{
get
{
if (TJAPlayer3.ConfigIni.bAIBattleMode)
{
return TJAPlayer3.Skin.bgmResultIn_AI;
}
else
{
return TJAPlayer3.Skin.bgmリザルトイン音;
}
}
}
private CSkin.Cシステムサウンド bgmResultLoop
{
get
{
if (TJAPlayer3.ConfigIni.bAIBattleMode)
{
return TJAPlayer3.Skin.bgmResult_AI;
}
else
{
return TJAPlayer3.Skin.bgmリザルト音;
}
}
}
// Modal queues // Modal queues
private ModalQueue mqModals; private ModalQueue mqModals;
private Modal[] displayedModals; private Modal[] displayedModals;

View File

@ -0,0 +1,41 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using NLua;
using FDK;
namespace TJAPlayer3
{
class ResultBG : ScriptBG
{
private LuaFunction LuaSkipAnimation;
public ResultBG(string filePath) : base(filePath)
{
if (LuaScript != null)
{
LuaSkipAnimation = LuaScript.GetFunction("skipAnime");
}
}
public new void Dispose()
{
base.Dispose();
LuaSkipAnimation?.Dispose();
}
public void SkipAnimation()
{
if (LuaScript == null) return;
try
{
LuaSkipAnimation.Call();
}
catch (Exception ex)
{
}
}
}
}

View File

@ -159,6 +159,7 @@
<Compile Include="Stages\07.Game\Taiko\EndAnimeScript.cs" /> <Compile Include="Stages\07.Game\Taiko\EndAnimeScript.cs" />
<Compile Include="Stages\07.Game\Taiko\NotesManager.cs" /> <Compile Include="Stages\07.Game\Taiko\NotesManager.cs" />
<Compile Include="Stages\07.Game\Taiko\ScriptBG.cs" /> <Compile Include="Stages\07.Game\Taiko\ScriptBG.cs" />
<Compile Include="Stages\08.Result\ResultBG.cs" />
<Compile Include="Stages\15.OpenEncyclopedia\CEncyclopediaControler.cs" /> <Compile Include="Stages\15.OpenEncyclopedia\CEncyclopediaControler.cs" />
<Compile Include="Stages\15.OpenEncyclopedia\COpenEncyclopedia.cs" /> <Compile Include="Stages\15.OpenEncyclopedia\COpenEncyclopedia.cs" />
<Compile Include="Stages\XX.Templates\CStageTemplate.cs" /> <Compile Include="Stages\XX.Templates\CStageTemplate.cs" />

View File

@ -7,13 +7,15 @@ local isClear = { false, false, false, false, false }
local towerNightNum = 0 local towerNightNum = 0
local battleState = 0 local battleState = 0
local battleWin = false local battleWin = false
local gauge = { 0, 0, 0, 0, 0 }
local bpm = { 0, 0, 0, 0, 0 }
function setConstValues(_playerCount, _p1IsBlue) function setConstValues(_playerCount, _p1IsBlue)
playerCount = _playerCount playerCount = _playerCount
p1IsBlue = _p1IsBlue p1IsBlue = _p1IsBlue
end end
function updateValues(_deltaTime, _fps, _isClear, _towerNightNum, _battleState, _battleWin) function updateValues(_deltaTime, _fps, _isClear, _towerNightNum, _battleState, _battleWin, _gauge, _bpm)
deltaTime = _deltaTime deltaTime = _deltaTime
fps = _fps fps = _fps
isClear = _isClear isClear = _isClear
@ -21,4 +23,6 @@ function updateValues(_deltaTime, _fps, _isClear, _towerNightNum, _battleState,
deltaTime = _deltaTime deltaTime = _deltaTime
battleState = _battleState battleState = _battleState
battleWin = _battleWin battleWin = _battleWin
gauge = _gauge
bpm = _bpm
end end

View File

@ -443,6 +443,14 @@ Game_DanC_X=807,70,70,70
Game_DanC_Y=116,292,292,292 Game_DanC_Y=116,292,292,292
Game_DanC_Base_Offset_X=0,503
Game_DanC_Base_Offset_Y=0,0
Game_DanC_SmallBase_Offset_X=745,410
Game_DanC_SmallBase_Offset_Y=119,119
Game_DanC_Number_XY=214,67 Game_DanC_Number_XY=214,67
Game_DanC_Dan_Plate=1120,535 Game_DanC_Dan_Plate=1120,535

View File

@ -10,6 +10,58 @@
--func:SetScale(xscale, yscale, "filename") --func:SetScale(xscale, yscale, "filename")
--func:SetColor(r, g, b, "filename") --func:SetColor(r, g, b, "filename")
local bg_width = 1280
local bg_height = 720
local cloud_width = 1200
local cloud_height = 360
local cloud_count = 11
local cloud_x = { 642, 612, 652, 1148, 1180, 112, 8, 1088, 1100, 32, 412 }
local cloud_y = { 202, 424, 636, 530, 636, 636, 102, 52, 108, 326, 644 }
local cloud_move = { 150, 120, 180, 60, 90, 150, 120, 50, 45, 120, 180 }
local shine_count = 6
local shine_x = {
{ 885, 1255, 725, 890, 1158, 1140 },
{ 395, 25, 555, 390, 122, 140 }
}
local shine_y = {
{ 650, 405, 645, 420, 202, 585 },
{ 650, 405, 645, 420, 202, 585 }
}
local shine_size = { 0.44, 0.6, 0.4, 0.15, 0.35, 0.6 }
local work_count = 3
local work_x = {
{ 800, 900, 1160 },
{ 480, 380, 120 }
}
local work_y = {
{ 435, 185, 260 },
{ 435, 185, 260 }
}
local worksTimeStamp = { 1000, 2000, 3000 }
local commonCounter = 0
local gaugeFactor = 0
local mountainAppearValue = 0
local mountainClearIncounter = 0
local shineCounter = 0
local workCounter = 0
function skipAnime()
commonCounter = mountainAppearValue
end
function clearIn(player) function clearIn(player)
end end
@ -17,10 +69,218 @@ function clearOut(player)
end end
function init() function init()
func:AddGraph("Background.png")
func:AddGraph("Background_0.png")
func:AddGraph("Background_1.png")
func:AddGraph("Background_2.png")
func:AddGraph("Background_3.png")
func:AddGraph("Background_4.png")
func:AddGraph("Background_5.png")
func:AddGraph("Background_Mountain_0.png")
func:AddGraph("Background_Mountain_1.png")
func:AddGraph("Background_Mountain_2.png")
func:AddGraph("Background_Mountain_3.png")
func:AddGraph("Cloud.png")
func:AddGraph("Shine.png")
for i = 0, work_count - 1 do
func:AddGraph("Work/"..tostring(i)..".png")
end
commonCounter = 0
gaugeFactor = math.max(gauge[0], math.max(gauge[1], math.max(gauge[2], math.max(gauge[3], gauge[4])))) / 2
mountainAppearValue = 10275 + (66 * gaugeFactor)
mountainClearIncounter = 0
shineCounter = 0
end end
function update() function update()
commonCounter = commonCounter + (deltaTime * 1000)
if commonCounter >= mountainAppearValue then
mountainClearIncounter = mountainClearIncounter + (deltaTime * 333)
mountainClearIncounter = math.min(mountainClearIncounter, 515)
end
shineCounter = shineCounter + (deltaTime * 1000)
if shineCounter > 1000 then
shineCounter = 0
end
workCounter = workCounter + (deltaTime * 1000)
if workCounter > 4000 then
workCounter = 0
end
end end
function draw() function draw()
func:DrawGraph(0, 0, "Background.png")
gaugeAnimFactors = (commonCounter - mountainAppearValue) * 3
if playerCount == 1 then
index = 0
if p1IsBlue then
index = 2
end
mountainScale = 1.0
if commonCounter >= mountainAppearValue and isClear[0] then
func:SetOpacity(gaugeAnimFactors, "Background_1.png")
func:SetOpacity(255 - gaugeAnimFactors, "Background_Mountain_"..tostring(index)..".png")
func:SetOpacity(gaugeAnimFactors, "Background_Mountain_"..tostring(index + 1)..".png")
if mountainClearIncounter <= 90 then
mountainScale = 1.0 - math.sin(mountainClearIncounter * (math.pi / 180)) * 0.18
elseif mountainClearIncounter <= 225 then
mountainScale = 0.82 + math.sin((mountainClearIncounter - 90) / 1.5 * (math.pi / 180)) * 0.58
elseif mountainClearIncounter <= 245 then
mountainScale = 1.4
elseif mountainClearIncounter <= 335 then
mountainScale = 0.9 + math.sin((mountainClearIncounter - 155) * (math.pi / 180)) * 0.5
elseif mountainClearIncounter <= 515 then
mountainScale = 0.9 + math.sin((mountainClearIncounter - 335) * (math.pi / 180)) * 0.4
else
mountainScale = 0.9
end
else
func:SetOpacity(0, "Background_1.png")
func:SetOpacity(255, "Background_Mountain_"..tostring(index)..".png")
func:SetOpacity(0, "Background_Mountain_"..tostring(index + 1)..".png")
end
func:SetScale(1.0, mountainScale, "Background_Mountain_"..tostring(index + 1)..".png")
if p1IsBlue then
func:DrawGraph(0, 0, "Background_2.png")
else
func:DrawGraph(0, 0, "Background_0.png")
end
func:DrawGraph(0, 0, "Background_1.png")
func:DrawGraph(0, 0 - ((mountainScale - 1.0) * bg_height), "Background_Mountain_"..tostring(index)..".png")
func:DrawGraph(0, 0 - ((mountainScale - 1.0) * bg_height), "Background_Mountain_"..tostring(index + 1)..".png")
func:SetScale(0.65, 0.65, "Cloud.png")
cloudOpacity = 0
if commonCounter >= mountainAppearValue and isClear[0] then
cloudOpacity = math.min(255, math.max(0, commonCounter - mountainAppearValue))
end
for i = 0, cloud_count - 1 do
move = (cloud_move[i + 1] * (commonCounter / 10000))
clearValue = ((commonCounter - mountainAppearValue) % 10000) / 10000.0
clearMove = (cloud_move[i + 1] * clearValue)
func:SetOpacity(255 - cloudOpacity, "Cloud.png")
func:DrawGraphRectCenter(cloud_x[i + 1] - move, cloud_y[i + 1], cloud_width * i, cloud_height * index, cloud_width, cloud_height, "Cloud.png")
func:SetOpacity(cloudOpacity + (math.min(math.sin(clearValue * math.pi) * 1000, 255) - 255), "Cloud.png")
func:DrawGraphRectCenter(cloud_x[i + 1] - clearMove, cloud_y[i + 1], cloud_width * i, cloud_height, cloud_width, cloud_height, "Cloud.png")
end
if commonCounter >= mountainAppearValue and isClear[0] then
quadrant500 = shineCounter % 500
for i = 0, shine_count - 1 do
--shineCounter
if (i < 2 and shineCounter >= 500) or (i >= 2 and shineCounter < 500) then
func:SetOpacity(0, "Shine.png")
elseif quadrant500 >= 100 and quadrant500 <= 500 - 100 then
func:SetOpacity(255, "Shine.png")
else
func:SetOpacity((255 * math.min(quadrant500, 500 - quadrant500)) / 100, "Shine.png")
end
func:SetScale(shine_size[i + 1], shine_size[i + 1], "Shine.png")
if p1IsBlue then
func:DrawGraphCenter(shine_x[2][i + 1], shine_y[2][i + 1], "Shine.png")
else
func:DrawGraphCenter(shine_x[1][i + 1], shine_y[1][i + 1], "Shine.png")
end
end
if commonCounter <= mountainAppearValue + 1000 then
for i = 0, work_count - 1 do
if commonCounter <= mountainAppearValue + 255 then
tmpTimer = commonCounter - mountainAppearValue
func:SetOpacity(tmpTimer, "Work/"..tostring(i)..".png")
func:SetScale(0.6 * (tmpTimer / 225), 0.6 * (tmpTimer / 225), "Work/"..tostring(i)..".png")
else
tmpTimer = math.max(0, (2 * 255) - (commonCounter - mountainAppearValue - 255))
func:SetOpacity(tmpTimer, "Work/"..tostring(i)..".png")
func:SetScale(0.6, 0.6, "Work/"..tostring(i)..".png")
end
if p1IsBlue then
func:DrawGraphCenter(work_x[2][i + 1], work_y[2][i + 1], "Work/"..tostring(i)..".png")
else
func:DrawGraphCenter(work_x[1][i + 1], work_y[1][i + 1], "Work/"..tostring(i)..".png")
end
end
else
for i = 0, work_count - 1 do
tmpStamp = worksTimeStamp[i + 1]
if workCounter <= tmpStamp + 255 then
tmpTimer = workCounter - tmpStamp
func:SetOpacity(tmpTimer, "Work/"..tostring(i)..".png")
func:SetScale(0.6 * (tmpTimer / 225), 0.6 * (tmpTimer / 225), "Work/"..tostring(i)..".png")
else
tmpTimer = math.max(0, (2 * 255) - (workCounter - tmpStamp - 255))
func:SetOpacity(tmpTimer / 2, "Work/"..tostring(i)..".png")
func:SetScale(0.6 , 0.6, "Work/"..tostring(i)..".png")
end
if p1IsBlue then
func:DrawGraphCenter(work_x[2][i + 1], work_y[2][i + 1], "Work/"..tostring(i)..".png")
else
func:DrawGraphCenter(work_x[1][i + 1], work_y[1][i + 1], "Work/"..tostring(i)..".png")
end
end
end
end
elseif playerCount == 2 then
for i = 0, 1 do
if isClear[i] then
func:SetOpacity(gaugeAnimFactors, "Background_1.png")
else
func:SetOpacity(0, "Background_1.png")
end
func:DrawRectGraph((bg_width / 2) * i, 0, (bg_width / 2) * i, 0, (bg_width / 2), bg_height, "Background_"..tostring(2 * i)..".png")
func:DrawRectGraph((bg_width / 2) * i, 0, (bg_width / 2) * i, 0, (bg_width / 2), bg_height, "Background_1.png")
end
else
drawCount = math.max(playerCount, 4)
for i = 0, drawCount - 1 do
index = i + 1
if i == 0 then
index = 0
end
if isClear[i] then
func:SetOpacity(gaugeAnimFactors, "Background_1.png")
else
func:SetOpacity(0, "Background_1.png")
end
func:DrawRectGraph((bg_width / drawCount) * i, 0, (bg_width / drawCount) * i, 0, (bg_width / drawCount), bg_height, "Background_"..tostring(index)..".png")
func:DrawRectGraph((bg_width / drawCount) * i, 0, (bg_width / drawCount) * i, 0, (bg_width / drawCount), bg_height, "Background_1.png")
end
end
end end

View File

@ -17,10 +17,12 @@ function clearOut(player)
end end
function init() function init()
func:AddGraph("Background.png")
end end
function update() function update()
end end
function draw() function draw()
func:DrawGraph(0, 0, "Background.png")
end end

View File

@ -41,6 +41,12 @@ Result_Roll_5P=151,377
Result_MaxCombo_4P=183,419 Result_MaxCombo_4P=183,419
Result_MaxCombo_5P=151,419 Result_MaxCombo_5P=151,419
Result_ADLib_4P=0,0
Result_ADLib_5P=0,0
Result_Bomb_4P=0,0
Result_Bomb_5P=0,0
Result_Score_4P=253,180 Result_Score_4P=253,180
Result_Score_5P=221,180 Result_Score_5P=221,180

View File

@ -104,6 +104,20 @@ Result_MaxCombo_X=490,1125
Result_MaxCombo_Y=356,356 Result_MaxCombo_Y=356,356
Result_ADLib_Show=0
Result_ADLib_X=0,0
Result_ADLib_Y=0,0
Result_Bomb_Show=0
Result_Bomb_X=0,0
Result_Bomb_Y=0,0
Result_Score_X=295,930 Result_Score_X=295,930
Result_Score_Y=212,212 Result_Score_Y=212,212