Ex/Extra transition animation support (#468)
This commit is contained in:
parent
76c4e38baf
commit
9690374ece
@ -1215,6 +1215,8 @@ namespace TJAPlayer3
|
||||
|
||||
public bool bJudgeCountDisplay;
|
||||
|
||||
public bool ShowExExtraAnime;
|
||||
|
||||
public bool bEnableCountdownTimer;
|
||||
|
||||
// 各画像の表示・非表示設定
|
||||
@ -1224,7 +1226,6 @@ namespace TJAPlayer3
|
||||
public bool ShowFooter;
|
||||
public bool ShowMob;
|
||||
public bool ShowPuchiChara; // リザーブ
|
||||
//
|
||||
|
||||
public EScrollMode eScrollMode = EScrollMode.Normal;
|
||||
public bool bスクロールモードを上書き = false;
|
||||
@ -1924,7 +1925,9 @@ namespace TJAPlayer3
|
||||
|
||||
this.bJudgeCountDisplay = false;
|
||||
|
||||
ShowChara = true;
|
||||
ShowExExtraAnime = true;
|
||||
|
||||
ShowChara = true;
|
||||
ShowDancer = true;
|
||||
ShowRunner = true;
|
||||
ShowFooter = true;
|
||||
@ -2402,7 +2405,7 @@ namespace TJAPlayer3
|
||||
sw.WriteLine("ShowFooter={0}", ShowFooter ? 1 : 0);
|
||||
sw.WriteLine("; ぷちキャラ画像 (0:OFF, 1:ON)");
|
||||
sw.WriteLine("ShowPuchiChara={0}", ShowPuchiChara ? 1 : 0);
|
||||
sw.WriteLine();
|
||||
sw.WriteLine();
|
||||
sw.WriteLine( "; DARKモード(0:OFF, 1:HALF, 2:FULL)" );
|
||||
sw.WriteLine( "Dark={0}", (int) this.eDark );
|
||||
sw.WriteLine();
|
||||
@ -2551,6 +2554,9 @@ namespace TJAPlayer3
|
||||
sw.WriteLine( "; 判定数の表示(0:OFF, 1:ON)" );
|
||||
sw.WriteLine( "JudgeCountDisplay={0}", this.bJudgeCountDisplay ? 1 : 0 );
|
||||
sw.WriteLine();
|
||||
sw.WriteLine("; 裏表移行アニメーションを有効する (0:OFF, 1:ON)");
|
||||
sw.WriteLine("ShowExExtraAnime={0}", this.ShowExExtraAnime ? 1 : 0);
|
||||
sw.WriteLine();
|
||||
sw.WriteLine( "; プレイ人数" );
|
||||
sw.WriteLine( "PlayerCount={0}", this.nPlayerCount );
|
||||
sw.WriteLine();
|
||||
@ -3683,8 +3689,12 @@ namespace TJAPlayer3
|
||||
{
|
||||
this.bJudgeCountDisplay = C変換.bONorOFF( str4[ 0 ] );
|
||||
}
|
||||
else if (str3.Equals("ShowExExtraAnime"))
|
||||
{
|
||||
this.ShowExExtraAnime = C変換.bONorOFF(str4[0]);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
else if ( str3.Equals( "PlayerCount" ) )
|
||||
{
|
||||
|
@ -418,12 +418,13 @@ namespace TJAPlayer3
|
||||
public Cシステムサウンド soundEncyclopediaBGM = null;
|
||||
public Cシステムサウンド soundTowerSelectBGM = null;
|
||||
|
||||
public Cシステムサウンド[] soundExToExtra = null;
|
||||
public Cシステムサウンド[] soundExtraToEx = null;
|
||||
|
||||
public Cシステムサウンド[] soundModal = null;
|
||||
|
||||
public Cシステムサウンド soundCrownIn = null;
|
||||
public Cシステムサウンド soundRankIn = null;
|
||||
public Cシステムサウンド soundDonClear = null;
|
||||
public Cシステムサウンド soundDonFailed = null;
|
||||
|
||||
public Cシステムサウンド soundSelectAnnounce = null;
|
||||
|
||||
@ -801,6 +802,9 @@ namespace TJAPlayer3
|
||||
this.soundEncyclopediaBGM = new Cシステムサウンド(@"Sounds\Encyclopedia\BGM.ogg", true, false, false, ESoundGroup.SongPlayback);
|
||||
this.soundTowerSelectBGM = new Cシステムサウンド(@"Sounds\Tower\BGM.ogg", true, false, false, ESoundGroup.SongPlayback);
|
||||
|
||||
soundExToExtra = new Cシステムサウンド[1] { new Cシステムサウンド(@"Sounds\SongSelect\0\ExToExtra.ogg", false, false, false, ESoundGroup.SoundEffect) }; // Placeholder until Komi decides
|
||||
soundExtraToEx = new Cシステムサウンド[1] { new Cシステムサウンド(@"Sounds\SongSelect\0\ExtraToEx.ogg", false, false, false, ESoundGroup.SoundEffect) }; // what to do with it lol
|
||||
|
||||
soundModal = new Cシステムサウンド[6];
|
||||
for (int i = 0; i < soundModal.Length - 1; i++)
|
||||
{
|
||||
@ -2721,6 +2725,14 @@ namespace TJAPlayer3
|
||||
SongSelect_Difficulty_Select_Bar_Move[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_Difficulty_Bar_ExExtra_AnimeDuration")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
SongSelect_Difficulty_Bar_ExExtra_AnimeDuration[i] = int.Parse(strSplit[i]);
|
||||
}
|
||||
}
|
||||
else if (strCommand == "SongSelect_Preimage")
|
||||
{
|
||||
string[] strSplit = strParam.Split(',');
|
||||
@ -8290,6 +8302,8 @@ namespace TJAPlayer3
|
||||
public int[] SongSelect_Difficulty_Select_Bar_AnimeIn = new int[] { 0, 50 };
|
||||
public int[] SongSelect_Difficulty_Select_Bar_Move = new int[] { 25, 0 };
|
||||
|
||||
public int[] SongSelect_Difficulty_Bar_ExExtra_AnimeDuration = new int[] { -1, -1 };
|
||||
|
||||
public int[] SongSelect_Preimage = new int[] { 120, 110 };
|
||||
public int[] SongSelect_Preimage_Size = new int[] { 200, 200 };
|
||||
|
||||
|
@ -274,6 +274,9 @@ namespace TJAPlayer3
|
||||
[10122] = "Clap5P",
|
||||
[10123] = "Konga key assign:\nTo assign key/pads for Clap5P\n button.",
|
||||
|
||||
[10124] = "Use Extreme/Extra Transitions",
|
||||
[10125] = "Play a skin-defined animation\nwhile switching between\nExtreme & Extra.",
|
||||
|
||||
[100] = "Taiko Mode",
|
||||
[101] = "Dan-i Dojo",
|
||||
[102] = "Taiko Towers",
|
||||
|
@ -328,6 +328,9 @@ namespace TJAPlayer3
|
||||
[10122] = "Clap5P",
|
||||
[10123] = "コンガの拍手へのキーの割り当てを設\n定します。",
|
||||
|
||||
[10124] = "裏表移行アニメーション",
|
||||
[10125] = "裏表移行アニメーションを有効する",
|
||||
|
||||
[100] = "演奏ゲーム",
|
||||
[101] = "段位道場",
|
||||
[102] = "太鼓タワー",
|
||||
|
@ -375,7 +375,11 @@ namespace TJAPlayer3
|
||||
this.iTaikoJudgeCountDisp = new CItemToggle(CLangManager.LangInstance.GetString(93), TJAPlayer3.ConfigIni.bJudgeCountDisplay,
|
||||
CLangManager.LangInstance.GetString(94));
|
||||
this.list項目リスト.Add( this.iTaikoJudgeCountDisp );
|
||||
|
||||
|
||||
this.iShowExExtraAnime = new CItemToggle(CLangManager.LangInstance.GetString(10124), TJAPlayer3.ConfigIni.ShowExExtraAnime,
|
||||
CLangManager.LangInstance.GetString(10125));
|
||||
this.list項目リスト.Add(this.iShowExExtraAnime);
|
||||
|
||||
this.iDrumsGoToKeyAssign = new CItemBase(CLangManager.LangInstance.GetString(95), CItemBase.Eパネル種別.通常,
|
||||
CLangManager.LangInstance.GetString(96));
|
||||
this.list項目リスト.Add( this.iDrumsGoToKeyAssign );
|
||||
@ -1557,6 +1561,7 @@ namespace TJAPlayer3
|
||||
CItemToggle ShowMob;
|
||||
CItemToggle ShowFooter;
|
||||
CItemToggle ShowPuchiChara;
|
||||
CItemToggle iShowExExtraAnime;
|
||||
CItemToggle ShinuchiMode;
|
||||
CItemToggle FastRender;
|
||||
CItemInteger MusicPreTimeMs;
|
||||
@ -1712,8 +1717,9 @@ namespace TJAPlayer3
|
||||
|
||||
TJAPlayer3.ConfigIni.eGameMode = (EGame)this.iTaikoGameMode.n現在選択されている項目番号;
|
||||
//TJAPlayer3.ConfigIni.bJust = this.iTaikoJust.bON;
|
||||
TJAPlayer3.ConfigIni.bJudgeCountDisplay = this.iTaikoJudgeCountDisp.bON;
|
||||
TJAPlayer3.ConfigIni.b大音符判定 = this.iTaikoBigNotesJudge.bON;
|
||||
TJAPlayer3.ConfigIni.bJudgeCountDisplay = this.iTaikoJudgeCountDisp.bON;
|
||||
TJAPlayer3.ConfigIni.ShowExExtraAnime = this.iShowExExtraAnime.bON;
|
||||
TJAPlayer3.ConfigIni.b大音符判定 = this.iTaikoBigNotesJudge.bON;
|
||||
}
|
||||
//-----------------
|
||||
#endregion
|
||||
|
38
TJAPlayer3/Stages/05.SongSelect/AnimeBG.cs
Normal file
38
TJAPlayer3/Stages/05.SongSelect/AnimeBG.cs
Normal file
@ -0,0 +1,38 @@
|
||||
using NLua;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace TJAPlayer3
|
||||
{
|
||||
internal class AnimeBG : ScriptBG
|
||||
{
|
||||
private LuaFunction LuaPlayAnimation;
|
||||
public AnimeBG(string filePath) : base(filePath)
|
||||
{
|
||||
if (LuaScript != null)
|
||||
{
|
||||
LuaPlayAnimation = LuaScript.GetFunction("playAnime");
|
||||
}
|
||||
}
|
||||
public new void Dispose()
|
||||
{
|
||||
base.Dispose();
|
||||
LuaPlayAnimation?.Dispose();
|
||||
}
|
||||
|
||||
public void PlayAnimation()
|
||||
{
|
||||
if (LuaScript == null) return;
|
||||
try
|
||||
{
|
||||
LuaPlayAnimation.Call();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
137
TJAPlayer3/Stages/05.SongSelect/CActSelectExExtraTransAnime.cs
Normal file
137
TJAPlayer3/Stages/05.SongSelect/CActSelectExExtraTransAnime.cs
Normal file
@ -0,0 +1,137 @@
|
||||
using FDK;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace TJAPlayer3
|
||||
{
|
||||
internal class CActSelectExExtraTransAnime : CActivity
|
||||
{
|
||||
enum AnimeState
|
||||
{
|
||||
NotRunning = 0,
|
||||
ExToExtra = 1,
|
||||
ExtraToEx = 2,
|
||||
}
|
||||
|
||||
// Timer & script for each anime
|
||||
// Activate when swapping between ex/extra
|
||||
// Do not let player move until timer is complete
|
||||
// Stop drawing script when timer is finished
|
||||
public CActSelectExExtraTransAnime()
|
||||
{
|
||||
|
||||
}
|
||||
// because i can't read japanese very well :
|
||||
public override void OnManagedリソースの作成() //On Managed Create Resource
|
||||
{
|
||||
base.OnManagedリソースの作成();
|
||||
|
||||
CurrentState = AnimeState.NotRunning;
|
||||
|
||||
ExToExtraCounter = new CCounter(0, 1, TJAPlayer3.Skin.SongSelect_Difficulty_Bar_ExExtra_AnimeDuration[0], TJAPlayer3.Timer);
|
||||
ExtraToExCounter = new CCounter(0, 1, TJAPlayer3.Skin.SongSelect_Difficulty_Bar_ExExtra_AnimeDuration[1], TJAPlayer3.Timer);
|
||||
|
||||
ExToExtraScript = new AnimeBG(CSkin.Path($"{TextureLoader.BASE}{TextureLoader.SONGSELECT}Difficulty_Select\\ExToExtra\\0\\Script.lua"));
|
||||
ExtraToExScript = new AnimeBG(CSkin.Path($"{TextureLoader.BASE}{TextureLoader.SONGSELECT}Difficulty_Select\\ExtraToEx\\0\\Script.lua"));
|
||||
|
||||
ExToExtraScript.Init();
|
||||
ExtraToExScript.Init();
|
||||
}
|
||||
|
||||
public override void OnManagedリソースの解放() //On Managed Release Resource
|
||||
{
|
||||
base.OnManagedリソースの解放();
|
||||
|
||||
ExToExtraCounter = null;
|
||||
ExtraToExCounter = null;
|
||||
|
||||
if (ExToExtraScript != null)
|
||||
{
|
||||
ExToExtraScript.Dispose();
|
||||
ExToExtraScript = null;
|
||||
}
|
||||
if (ExtraToExScript != null)
|
||||
{
|
||||
ExtraToExScript.Dispose();
|
||||
ExtraToExScript = null;
|
||||
}
|
||||
}
|
||||
|
||||
public override void On活性化() //On Activate
|
||||
{
|
||||
base.On活性化();
|
||||
}
|
||||
|
||||
public override int On進行描画() //On Progress Draw
|
||||
{
|
||||
switch (CurrentState)
|
||||
{
|
||||
case AnimeState.ExToExtra:
|
||||
ExToExtraCounter.t進行();
|
||||
if (ExToExtraCounter.b終了値に達した)
|
||||
{
|
||||
CurrentState = AnimeState.NotRunning;
|
||||
ExToExtraCounter.t停止();
|
||||
return 0;
|
||||
}
|
||||
|
||||
ExToExtraScript.Update();
|
||||
ExToExtraScript.Draw();
|
||||
return 1;
|
||||
|
||||
case AnimeState.ExtraToEx:
|
||||
ExtraToExCounter.t進行();
|
||||
if (ExtraToExCounter.b終了値に達した)
|
||||
{
|
||||
CurrentState = AnimeState.NotRunning;
|
||||
ExtraToExCounter.t停止();
|
||||
return 0;
|
||||
}
|
||||
|
||||
ExtraToExScript.Update();
|
||||
ExtraToExScript.Draw();
|
||||
return 1;
|
||||
|
||||
case AnimeState.NotRunning:
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
public override void On非活性化() //On Deactivate
|
||||
{
|
||||
base.On非活性化();
|
||||
}
|
||||
|
||||
public void BeginAnime(bool toExtra)
|
||||
{
|
||||
if (!TJAPlayer3.ConfigIni.ShowExExtraAnime) return;
|
||||
else if (toExtra && !ExToExtraScript.Exists()) return;
|
||||
else if (!toExtra && !ExtraToExScript.Exists()) return;
|
||||
|
||||
CurrentState = toExtra ? AnimeState.ExToExtra : AnimeState.ExtraToEx;
|
||||
if (toExtra)
|
||||
{
|
||||
ExToExtraCounter = new CCounter(0, 1, TJAPlayer3.Skin.SongSelect_Difficulty_Bar_ExExtra_AnimeDuration[0], TJAPlayer3.Timer);
|
||||
ExToExtraScript.PlayAnimation();
|
||||
TJAPlayer3.Skin.soundExToExtra[0]?.t再生する(); // Placeholder code
|
||||
}
|
||||
else
|
||||
{
|
||||
ExtraToExCounter = new CCounter(0, 1, TJAPlayer3.Skin.SongSelect_Difficulty_Bar_ExExtra_AnimeDuration[1], TJAPlayer3.Timer);
|
||||
ExtraToExScript.PlayAnimation();
|
||||
TJAPlayer3.Skin.soundExtraToEx[0]?.t再生する(); // Placeholder code
|
||||
}
|
||||
}
|
||||
|
||||
#region Private
|
||||
CCounter ExToExtraCounter, ExtraToExCounter;
|
||||
AnimeBG ExToExtraScript, ExtraToExScript;
|
||||
|
||||
AnimeState CurrentState;
|
||||
#endregion
|
||||
}
|
||||
}
|
@ -77,10 +77,14 @@ namespace TJAPlayer3
|
||||
{
|
||||
if (n現在の選択行[i] == 5)
|
||||
{
|
||||
// Extreme to Extra
|
||||
TJAPlayer3.stage選曲.actExExtraTransAnime.BeginAnime(true);
|
||||
n現在の選択行[i] = 6;
|
||||
}
|
||||
else if (n現在の選択行[i] == 6)
|
||||
{
|
||||
//Extra to Extreme
|
||||
TJAPlayer3.stage選曲.actExExtraTransAnime.BeginAnime(false);
|
||||
n現在の選択行[i] = 5;
|
||||
}
|
||||
}
|
||||
@ -204,7 +208,7 @@ namespace TJAPlayer3
|
||||
|
||||
#region [ キー入力 ]
|
||||
|
||||
if (this.ctBarAnimeIn.b終了値に達した)
|
||||
if (this.ctBarAnimeIn.b終了値に達した && exextraAnimation == 0) // Prevent player actions if animation is active
|
||||
{
|
||||
for (int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++)
|
||||
{
|
||||
@ -378,7 +382,7 @@ namespace TJAPlayer3
|
||||
|
||||
TJAPlayer3.Tx.Difficulty_Back[boxType].t2D中心基準描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.SongSelect_Difficulty_Back[0], TJAPlayer3.Skin.SongSelect_Difficulty_Back[1]);
|
||||
|
||||
for(int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++)
|
||||
for (int i = 0; i < TJAPlayer3.ConfigIni.nPlayerCount; i++)
|
||||
{
|
||||
if (TJAPlayer3.ConfigIni.bAIBattleMode && i == 1) break;
|
||||
|
||||
@ -408,6 +412,7 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Rect[i][3])); //閉じる
|
||||
}
|
||||
|
||||
exextraAnimation = TJAPlayer3.stage選曲.actExExtraTransAnime.On進行描画();
|
||||
|
||||
for (int i = 0; i <= (int)Difficulty.Edit; i++)
|
||||
{
|
||||
@ -425,11 +430,14 @@ namespace TJAPlayer3
|
||||
else
|
||||
TJAPlayer3.Tx.Difficulty_Bar.color4 = new Color4(0.5f, 0.5f, 0.5f, 1.0f);
|
||||
|
||||
TJAPlayer3.Tx.Difficulty_Bar.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.SongSelect_Difficulty_Bar_X[i + 2], TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Y[i + 2],
|
||||
new RectangleF(TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Rect[i + 2][0],
|
||||
TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Rect[i + 2][1],
|
||||
TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Rect[i + 2][2],
|
||||
TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Rect[i + 2][3]));
|
||||
if (!(i >= (int)Difficulty.Oni && exextraAnimation > 0)) // Hide Oni/Ura during transition
|
||||
{
|
||||
TJAPlayer3.Tx.Difficulty_Bar.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.SongSelect_Difficulty_Bar_X[i + 2], TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Y[i + 2],
|
||||
new RectangleF(TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Rect[i + 2][0],
|
||||
TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Rect[i + 2][1],
|
||||
TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Rect[i + 2][2],
|
||||
TJAPlayer3.Skin.SongSelect_Difficulty_Bar_Rect[i + 2][3]));
|
||||
}
|
||||
|
||||
if (!avaliable)
|
||||
continue;
|
||||
@ -471,7 +479,7 @@ namespace TJAPlayer3
|
||||
*/
|
||||
}
|
||||
|
||||
if (level >= 0)
|
||||
if (level >= 0 && (!(i >= (int)Difficulty.Oni && exextraAnimation > 0)))
|
||||
t小文字表示(TJAPlayer3.stage選曲.r現在選択中のスコア.譜面情報.nレベル[i],
|
||||
TJAPlayer3.Skin.SongSelect_Difficulty_Number_X[i],
|
||||
TJAPlayer3.Skin.SongSelect_Difficulty_Number_Y[i],
|
||||
@ -479,19 +487,22 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.stage選曲.r現在選択中のスコア.譜面情報.nLevelIcon[i]
|
||||
);
|
||||
|
||||
for (int g = 0; g < 10; g++)
|
||||
if (!(i >= (int)Difficulty.Oni && exextraAnimation > 0))
|
||||
{
|
||||
if (level > g + 10)
|
||||
for (int g = 0; g < 10; g++)
|
||||
{
|
||||
TJAPlayer3.Tx.Difficulty_Star.color4 = new Color4(1f, 0.2f, 0.2f, 1.0f);
|
||||
TJAPlayer3.Tx.Difficulty_Star?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.SongSelect_Difficulty_Star_X[i] + g * TJAPlayer3.Skin.SongSelect_Difficulty_Star_Interval[0], TJAPlayer3.Skin.SongSelect_Difficulty_Star_Y[i] + g * TJAPlayer3.Skin.SongSelect_Difficulty_Star_Interval[1]);
|
||||
}
|
||||
else if (level > g)
|
||||
{
|
||||
TJAPlayer3.Tx.Difficulty_Star.color4 = new Color4(1f, 1f, 1f, 1.0f);
|
||||
TJAPlayer3.Tx.Difficulty_Star?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.SongSelect_Difficulty_Star_X[i] + g * TJAPlayer3.Skin.SongSelect_Difficulty_Star_Interval[0], TJAPlayer3.Skin.SongSelect_Difficulty_Star_Y[i] + g * TJAPlayer3.Skin.SongSelect_Difficulty_Star_Interval[1]);
|
||||
}
|
||||
|
||||
if (level > g + 10)
|
||||
{
|
||||
TJAPlayer3.Tx.Difficulty_Star.color4 = new Color4(1f, 0.2f, 0.2f, 1.0f);
|
||||
TJAPlayer3.Tx.Difficulty_Star?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.SongSelect_Difficulty_Star_X[i] + g * TJAPlayer3.Skin.SongSelect_Difficulty_Star_Interval[0], TJAPlayer3.Skin.SongSelect_Difficulty_Star_Y[i] + g * TJAPlayer3.Skin.SongSelect_Difficulty_Star_Interval[1]);
|
||||
}
|
||||
else if (level > g)
|
||||
{
|
||||
TJAPlayer3.Tx.Difficulty_Star.color4 = new Color4(1f, 1f, 1f, 1.0f);
|
||||
TJAPlayer3.Tx.Difficulty_Star?.t2D描画(TJAPlayer3.app.Device, TJAPlayer3.Skin.SongSelect_Difficulty_Star_X[i] + g * TJAPlayer3.Skin.SongSelect_Difficulty_Star_Interval[0], TJAPlayer3.Skin.SongSelect_Difficulty_Star_Y[i] + g * TJAPlayer3.Skin.SongSelect_Difficulty_Star_Interval[1]);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
if (TJAPlayer3.stage選曲.r現在選択中のスコア.譜面情報.b譜面分岐[i])
|
||||
@ -587,8 +598,10 @@ namespace TJAPlayer3
|
||||
private CCounter ctBarAnimeIn;
|
||||
private CCounter[] ctBarAnime = new CCounter[2];
|
||||
|
||||
//0 閉じる 1 演奏オプション 2~ 難易度
|
||||
public int[] n現在の選択行;
|
||||
private int exextraAnimation;
|
||||
|
||||
//0 閉じる 1 演奏オプション 2~ 難易度
|
||||
public int[] n現在の選択行;
|
||||
private int nスイッチカウント;
|
||||
|
||||
private bool b裏譜面;
|
||||
|
@ -209,7 +209,7 @@ namespace TJAPlayer3
|
||||
base.list子Activities.Add(this.actQuickConfig = new CActSelectQuickConfig());
|
||||
base.list子Activities.Add(this.act難易度選択画面 = new CActSelect難易度選択画面());
|
||||
base.list子Activities.Add(this.actPlayOption = new CActPlayOption());
|
||||
|
||||
base.list子Activities.Add(this.actExExtraTransAnime = new CActSelectExExtraTransAnime());
|
||||
base.list子Activities.Add(this.PuchiChara = new PuchiChara());
|
||||
|
||||
|
||||
@ -1387,6 +1387,7 @@ namespace TJAPlayer3
|
||||
private CActSelectShowCurrentPosition actShowCurrentPosition;
|
||||
public CActSelect難易度選択画面 act難易度選択画面;
|
||||
public CActPlayOption actPlayOption;
|
||||
public CActSelectExExtraTransAnime actExExtraTransAnime;
|
||||
|
||||
public CActSortSongs actSortSongs;
|
||||
private CActSelectQuickConfig actQuickConfig;
|
||||
|
@ -126,6 +126,10 @@ namespace TJAPlayer3
|
||||
LuaScript = null;
|
||||
}
|
||||
}
|
||||
public bool Exists()
|
||||
{
|
||||
return LuaScript != null;
|
||||
}
|
||||
public void Dispose()
|
||||
{
|
||||
List<CTexture> texs = new List<CTexture>();
|
||||
|
@ -163,6 +163,8 @@
|
||||
<Compile Include="Songs\VTTParser.cs" />
|
||||
<Compile Include="Stages\01.StartUp\CCharacter.cs" />
|
||||
<Compile Include="Stages\01.StartUp\CPuchichara.cs" />
|
||||
<Compile Include="Stages\05.SongSelect\AnimeBG.cs" />
|
||||
<Compile Include="Stages\05.SongSelect\CActSelectExExtraTransAnime.cs" />
|
||||
<Compile Include="Stages\07.Game\Taiko\AIBattle.cs" />
|
||||
<Compile Include="Stages\07.Game\Taiko\CAct演奏DrumsRunner.cs" />
|
||||
<Compile Include="Stages\07.Game\Taiko\EndAnimeScript.cs" />
|
||||
|
1
Test/Songs/S1 Dan-i Dojo/99b. 例2/uniqueID.json
Normal file
1
Test/Songs/S1 Dan-i Dojo/99b. 例2/uniqueID.json
Normal file
@ -0,0 +1 @@
|
||||
{"id":"qCNzKkLs4jIOYogQx3ZZy3ErWvy55EuSomhch1yqK7XIzTUGOaA0PvhJ6FCo5g7D","url":""}
|
Binary file not shown.
After Width: | Height: | Size: 160 KiB |
@ -0,0 +1,51 @@
|
||||
--func:DrawText(x, y, text);
|
||||
--func:DrawNum(x, y, num);
|
||||
--func:AddGraph("filename");
|
||||
--func:DrawGraph(x, y, filename);
|
||||
--func:DrawRectGraph(x, y, rect_x, rect_y, rect_width, rect_height, filename);
|
||||
--func:SetOpacity(opacity, "filename");
|
||||
--func:SetScale(xscale, yscale, "filename");
|
||||
--func:SetColor(r, g, b, "filename");
|
||||
|
||||
local xPos = 1292
|
||||
local yPos = 405
|
||||
|
||||
local rectWidth = 197
|
||||
local rectHeight = 355
|
||||
|
||||
local swipeWidth = 10
|
||||
local swipeLength = 187
|
||||
|
||||
local animeDraw = 0
|
||||
local swipeDraw = 0
|
||||
|
||||
local drawSpeed = 0
|
||||
|
||||
function init()
|
||||
animeDraw = 0
|
||||
swipeDraw = 0
|
||||
drawSpeed = 197 / 0.15
|
||||
|
||||
func:AddGraph("Diffs.png")
|
||||
func:AddGraph("Swipe.png")
|
||||
end
|
||||
|
||||
function playAnime()
|
||||
animeDraw = 0
|
||||
swipeDraw = 0
|
||||
end
|
||||
|
||||
function update()
|
||||
animeDraw = animeDraw + (drawSpeed * deltaTime)
|
||||
swipeDraw = math.min(animeDraw, swipeWidth) - math.min(math.max(animeDraw - swipeLength, 0), swipeWidth)
|
||||
end
|
||||
|
||||
function draw()
|
||||
-- Draw Extreme
|
||||
func:DrawRectGraph(xPos + animeDraw, yPos, 0 + animeDraw, 0, math.max(rectWidth - animeDraw, 0), rectHeight, "Diffs.png")
|
||||
-- Draw Extra
|
||||
func:DrawRectGraph(xPos, yPos, rectWidth, 0, math.min(animeDraw, rectWidth), rectHeight, "Diffs.png")
|
||||
|
||||
-- Draw Swipe
|
||||
func:DrawRectGraph(xPos + animeDraw, yPos, 0, 0, swipeDraw, rectHeight, "Swipe.png")
|
||||
end
|
Binary file not shown.
After Width: | Height: | Size: 3.2 KiB |
Binary file not shown.
After Width: | Height: | Size: 160 KiB |
@ -0,0 +1,51 @@
|
||||
--func:DrawText(x, y, text);
|
||||
--func:DrawNum(x, y, num);
|
||||
--func:AddGraph("filename");
|
||||
--func:DrawGraph(x, y, filename);
|
||||
--func:DrawRectGraph(x, y, rect_x, rect_y, rect_width, rect_height, filename);
|
||||
--func:SetOpacity(opacity, "filename");
|
||||
--func:SetScale(xscale, yscale, "filename");
|
||||
--func:SetColor(r, g, b, "filename");
|
||||
|
||||
local xPos = 1292
|
||||
local yPos = 405
|
||||
|
||||
local rectWidth = 197
|
||||
local rectHeight = 355
|
||||
|
||||
local swipeWidth = 10
|
||||
local swipeLength = 187
|
||||
|
||||
local animeDraw = 0
|
||||
local swipeDraw = 0
|
||||
|
||||
local drawSpeed = 0
|
||||
|
||||
function init()
|
||||
animeDraw = 0
|
||||
swipeDraw = 0
|
||||
drawSpeed = 197 / 0.15
|
||||
|
||||
func:AddGraph("Diffs.png")
|
||||
func:AddGraph("Swipe.png")
|
||||
end
|
||||
|
||||
function playAnime()
|
||||
animeDraw = 0
|
||||
swipeDraw = 0
|
||||
end
|
||||
|
||||
function update()
|
||||
animeDraw = animeDraw + (drawSpeed * deltaTime)
|
||||
swipeDraw = math.min(animeDraw, swipeWidth) - math.min(math.max(animeDraw - swipeLength, 0), swipeWidth)
|
||||
end
|
||||
|
||||
function draw()
|
||||
-- Draw Extra
|
||||
func:DrawRectGraph(xPos + animeDraw, yPos, rectWidth + animeDraw, 0, math.max(rectWidth - animeDraw, 0), rectHeight, "Diffs.png")
|
||||
-- Draw Extreme
|
||||
func:DrawRectGraph(xPos, yPos, 0, 0, math.min(animeDraw, rectWidth), rectHeight, "Diffs.png")
|
||||
|
||||
-- Draw Swipe
|
||||
func:DrawRectGraph(xPos + animeDraw, yPos, 0, 0, swipeDraw, rectHeight, "Swipe.png")
|
||||
end
|
Binary file not shown.
After Width: | Height: | Size: 3.2 KiB |
@ -224,6 +224,8 @@ SongSelect_Difficulty_Number_Y=653,653,653,653,653
|
||||
|
||||
SongSelect_Difficulty_Number_Interval=17,0
|
||||
|
||||
; Duration in ms for Extreme->Extra and Extra->Extreme animation
|
||||
SongSelect_Difficulty_Bar_ExExtra_AnimeDuration=150,150
|
||||
|
||||
SongSelect_Difficulty_Crown_1P_X=668,884,1100,1316,1316
|
||||
SongSelect_Difficulty_Crown_2P_X=779,995,1211,1427,1427
|
||||
|
Loading…
Reference in New Issue
Block a user