1
0
mirror of synced 2025-02-16 10:42:39 +01:00

Extend CMenuCharacter to Main menu

This commit is contained in:
0aubsq 2022-04-03 11:09:42 +02:00
parent 498545e5b6
commit 7d2aeeaf42
4 changed files with 90 additions and 14 deletions

View File

@ -12,12 +12,18 @@ namespace TJAPlayer3
private static CCounter[] ctCharacterNormal = new CCounter[4] { new CCounter(), new CCounter(), new CCounter(), new CCounter() };
private static CCounter[] ctCharacterSelect = new CCounter[4] { new CCounter(), new CCounter(), new CCounter(), new CCounter() };
private static CCounter[] ctCharacterStart = new CCounter[4] { new CCounter(), new CCounter(), new CCounter(), new CCounter() };
private static CCounter[] ctCharacterEntry = new CCounter[4] { new CCounter(), new CCounter(), new CCounter(), new CCounter() };
private static CCounter[] ctCharacterEntryNormal = new CCounter[4] { new CCounter(), new CCounter(), new CCounter(), new CCounter() };
public enum ECharacterAnimation
{
// Song select
NORMAL,
START,
SELECT
SELECT,
// Main menu
ENTRY,
ENTRY_NORMAL,
}
@ -47,13 +53,25 @@ namespace TJAPlayer3
return false;
break;
}
case (ECharacterAnimation.ENTRY):
{
if (TJAPlayer3.Tx.Characters_Title_Entry[_charaId].Length > 0)
return false;
break;
}
case (ECharacterAnimation.ENTRY_NORMAL):
{
if (TJAPlayer3.Tx.Characters_Title_Normal[_charaId].Length > 0)
return false;
break;
}
}
}
return true;
}
private static CTexture[] _getReferenceArray(int player, ECharacterAnimation eca)
public static CTexture[] _getReferenceArray(int player, ECharacterAnimation eca)
{
int _charaId = TJAPlayer3.NamePlateConfig.data.Character[TJAPlayer3.GetActualPlayer(player)];
@ -87,6 +105,22 @@ namespace TJAPlayer3
return TJAPlayer3.Tx.Characters_10Combo[_charaId];
break;
}
case (ECharacterAnimation.ENTRY):
{
if (TJAPlayer3.Tx.Characters_Title_Entry[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Title_Entry[_charaId];
if (TJAPlayer3.Tx.Characters_10Combo[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_10Combo[_charaId];
break;
}
case (ECharacterAnimation.ENTRY_NORMAL):
{
if (TJAPlayer3.Tx.Characters_Title_Normal[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Title_Normal[_charaId];
if (TJAPlayer3.Tx.Characters_Normal[_charaId].Length > 0)
return TJAPlayer3.Tx.Characters_Normal[_charaId];
break;
}
}
}
@ -110,6 +144,14 @@ namespace TJAPlayer3
{
return ctCharacterSelect;
}
case (ECharacterAnimation.ENTRY):
{
return ctCharacterEntry;
}
case (ECharacterAnimation.ENTRY_NORMAL):
{
return ctCharacterEntryNormal;
}
}
return null;
}
@ -136,6 +178,18 @@ namespace TJAPlayer3
ctCharacterSelect[i] = new CCounter();
break;
}
case (ECharacterAnimation.ENTRY):
{
for (int i = 0; i < 4; i++)
ctCharacterEntry[i] = new CCounter();
break;
}
case (ECharacterAnimation.ENTRY_NORMAL):
{
for (int i = 0; i < 4; i++)
ctCharacterEntryNormal[i] = new CCounter();
break;
}
}
}
@ -168,7 +222,9 @@ namespace TJAPlayer3
if (_ctref[player] != null)
{
if (eca == ECharacterAnimation.NORMAL)
if (eca == ECharacterAnimation.NORMAL
|| eca == ECharacterAnimation.ENTRY
|| eca == ECharacterAnimation.ENTRY_NORMAL)
_ctref[player].t進行Loop();
else
_ctref[player].t進行();

View File

@ -236,6 +236,8 @@ namespace TJAPlayer3
{
SongSelect_ScoreWindow[i] = TxC(SONGSELECT + @"ScoreWindow_" + i.ToString() + ".png");
}
/*
for (int i = 0; i < SongSelect_Donchan_Select.Length; i++)
{
SongSelect_Donchan_Select[i] = TxC(SONGSELECT + @"Donchan\Select\" + i.ToString() + ".png");
@ -248,6 +250,7 @@ namespace TJAPlayer3
{
SongSelect_Donchan_Jump[i] = TxC(SONGSELECT + @"Donchan\Start\" + i.ToString() + ".png");
}
*/
SongSelect_ScoreWindow_Text = TxC(SONGSELECT + @"ScoreWindow_Text.png");
@ -1458,9 +1461,11 @@ namespace TJAPlayer3
SongSelect_Box_Chara,
SongSelect_ScoreWindow = new CTexture[(int)Difficulty.Total],
SongSelect_Frame_Score = new CTexture[2],
/*
SongSelect_Donchan_Select = new CTexture[47],
SongSelect_Donchan_Normal = new CTexture[49],
SongSelect_Donchan_Jump = new CTexture[18],
*/
SongSelect_NamePlate = new CTexture[1],
SongSelect_Table = new CTexture[6];

View File

@ -149,8 +149,8 @@ namespace TJAPlayer3
this.ctエントリーバー点滅.t進行Loop();
this.ctエントリーバー決定点滅.t進行();
this.ctどんちゃんイン.t進行();
this.ctどんちゃんループ.t進行Loop();
this.ctどんちゃんエントリーループ.t進行Loop();
//this.ctどんちゃんループ.t進行Loop();
//this.ctどんちゃんエントリーループ.t進行Loop();
this.ctBarMove.t進行();
if (!TJAPlayer3.Skin.bgmタイトルイン.b再生中)
@ -509,7 +509,9 @@ namespace TJAPlayer3
{
if (!this.bどんちゃんカウンター初期化)
{
this.ctどんちゃんエントリーループ = new CCounter(0, TJAPlayer3.Tx.Donchan_Entry.Length - 1, 1000 / 60, TJAPlayer3.Timer);
//this.ctどんちゃんエントリーループ = new CCounter(0, TJAPlayer3.Tx.Donchan_Entry.Length - 1, 1000 / 60, TJAPlayer3.Timer);
CMenuCharacter.tMenuResetTimer(CMenuCharacter.ECharacterAnimation.ENTRY);
this.bどんちゃんカウンター初期化 = true;
}
@ -518,12 +520,20 @@ namespace TJAPlayer3
TJAPlayer3.Tx.Entry_Player[0].Opacity = alpha;
TJAPlayer3.Tx.Entry_Player[1].Opacity = alpha;
var ___ttx = CMenuCharacter._getReferenceArray(0, CMenuCharacter.ECharacterAnimation.ENTRY)
[CMenuCharacter._getReferenceCounter(CMenuCharacter.ECharacterAnimation.ENTRY)[0].n現在の値];
___ttx.Opacity = alpha;
TJAPlayer3.Tx.Donchan_Entry[this.ctどんちゃんエントリーループ.n現在の値].Opacity = alpha;
//TJAPlayer3.Tx.Donchan_Entry[this.ctどんちゃんエントリーループ.n現在の値].Opacity = alpha;
TJAPlayer3.Tx.Entry_Player[0].t2D描画(TJAPlayer3.app.Device, 0, 0);
TJAPlayer3.Tx.Donchan_Entry[this.ctどんちゃんエントリーループ.n現在の値].t2D描画(TJAPlayer3.app.Device, 485, 140);
//TJAPlayer3.Tx.Donchan_Entry[this.ctどんちゃんエントリーループ.n現在の値].t2D描画(TJAPlayer3.app.Device, 485, 140);
CMenuCharacter.tMenuDisplayCharacter(0, 485, 140, CMenuCharacter.ECharacterAnimation.ENTRY);
___ttx.Opacity = 255;
this.PuchiChara.On進行描画(485 + 100, 140 + 190, false, alpha);
TJAPlayer3.Tx.Entry_Player[2].Opacity = ctエントリーバー決定点滅.n現在の値 >= 800 ? 255 - (ctエントリーバー決定点滅.n現在の値 - 800) : (this.ctバナパス読み込み成功.n現在の値 - 3400) - (this.ctエントリーバー点滅.n現在の値 <= 255 ? this.ctエントリーバー点滅.n現在の値 : 255 - (this.ctエントリーバー点滅.n現在の値 - 255));
@ -579,7 +589,8 @@ namespace TJAPlayer3
DonchanX = (float)Math.Sin(ctどんちゃんイン.n現在の値 / 2 * (Math.PI / 180)) * 200f;
DonchanY = ( (float)Math.Sin((90 + (ctどんちゃんイン.n現在の値 / 2)) * (Math.PI / 180)) * 150f);
TJAPlayer3.Tx.Entry_Donchan_Normal[ctどんちゃんループ.n現在の値].t2D描画(TJAPlayer3.app.Device, -200 + DonchanX, 341 - DonchanY);
//TJAPlayer3.Tx.Entry_Donchan_Normal[ctどんちゃんループ.n現在の値].t2D描画(TJAPlayer3.app.Device, -200 + DonchanX, 341 - DonchanY);
CMenuCharacter.tMenuDisplayCharacter(0, (int)(-200 + DonchanX), (int)(341 - DonchanY), CMenuCharacter.ECharacterAnimation.ENTRY_NORMAL);
this.PuchiChara.On進行描画(0 + 100, 330 + 230, false);
@ -849,9 +860,14 @@ namespace TJAPlayer3
this.ctバナパス読み込み失敗 = new CCounter();
this.ctエントリーバー点滅 = new CCounter(0, 510, 2, TJAPlayer3.Timer);
this.ctエントリーバー決定点滅 = new CCounter();
this.ctどんちゃんエントリーループ = new CCounter();
//this.ctどんちゃんエントリーループ = new CCounter();
CMenuCharacter.tMenuResetTimer(CMenuCharacter.ECharacterAnimation.ENTRY);
this.ctどんちゃんイン = new CCounter();
this.ctどんちゃんループ = new CCounter(0, TJAPlayer3.Tx.Entry_Donchan_Normal.Length - 1, 1000 / 30, TJAPlayer3.Timer);
//this.ctどんちゃんループ = new CCounter(0, TJAPlayer3.Tx.Entry_Donchan_Normal.Length - 1, 1000 / 30, TJAPlayer3.Timer);
CMenuCharacter.tMenuResetTimer(CMenuCharacter.ECharacterAnimation.ENTRY_NORMAL);
this.ctBarAnimeIn = new CCounter();
this.ctBarMove = new CCounter();
this.ctBarMove.n現在の値 = 250;
@ -879,9 +895,9 @@ namespace TJAPlayer3
private CCounter ctエントリーバー点滅;
private CCounter ctエントリーバー決定点滅;
private CCounter ctどんちゃんエントリーループ;
//private CCounter ctどんちゃんエントリーループ;
private CCounter ctどんちゃんイン;
private CCounter ctどんちゃんループ;
//private CCounter ctどんちゃんループ;
private CCounter ctBarAnimeIn;
private CCounter ctBarMove;

View File

@ -4,7 +4,6 @@
#BACKCOLOR:#213d18
#BOXEXPLANATION1:Search and play songs that
#BOXEXPLANATION2:fit your level !
#BOXEXPLANATION3:(WIP, currently set to Oni 8)
#BGTYPE:1
#BOXTYPE:0
#BOXCOLOR:#5ac736