Fix #61, implement Timing zones mod and add mod icons for song speed
This commit is contained in:
parent
cf6a73cd2b
commit
2c7ef598ee
@ -758,6 +758,7 @@ namespace TJAPlayer3
|
||||
|
||||
public STDGBVALUE<int> n表示可能な最小コンボ数;
|
||||
public int[] nScrollSpeed;
|
||||
public int[] nTimingZones;
|
||||
public string strDTXManiaのバージョン;
|
||||
public string str曲データ検索パス;
|
||||
public string FontName;
|
||||
@ -798,7 +799,7 @@ namespace TJAPlayer3
|
||||
new CTimingZones(42, 75, 108), // Lv3 (Hard-Extreme + "Lenient" timing mod or Easy-Normal + "Strict" mod)
|
||||
new CTimingZones(25, 75, 108), // Lv4 (Hard-Extreme / Tower Ex Kara-kuchi / Dan or Easy-Normal + "Rigorous" mod)
|
||||
new CTimingZones(25, 58, 108), // Lv5 (Hard-Extreme + "Strict" mod (Tatsu))
|
||||
new CTimingZones(25, 42, 108) // Lv6 (Hard-Extreme + "Rigorous" mod)
|
||||
new CTimingZones(17, 42, 108) // Lv6 (Hard-Extreme + "Rigorous" mod)
|
||||
};
|
||||
|
||||
public bool b大音符判定;
|
||||
@ -1403,6 +1404,7 @@ namespace TJAPlayer3
|
||||
this.e判定位置 = new STDGBVALUE<E判定位置>(); // #33891 2014.6.26 yyagi
|
||||
this.判定文字表示位置 = new STDGBVALUE<E判定文字表示位置>();
|
||||
this.nScrollSpeed = new int[4] { 9, 9, 9, 9 };
|
||||
this.nTimingZones = new int[4] { 2, 2, 2, 2 };
|
||||
this.nInputAdjustTimeMs = 0;
|
||||
this.nGlobalOffsetMs = 0;
|
||||
this.nJudgeLinePosOffset = new STDGBVALUE<int>(); // #31602 2013.6.23 yyagi
|
||||
@ -1427,6 +1429,7 @@ namespace TJAPlayer3
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
this.nScrollSpeed[i] = 9;
|
||||
this.nTimingZones[i] = 2;
|
||||
}
|
||||
|
||||
this.n演奏速度 = 20;
|
||||
@ -1999,6 +2002,12 @@ namespace TJAPlayer3
|
||||
sw.WriteLine("DrumsScrollSpeed3P={0}", this.nScrollSpeed[2]);
|
||||
sw.WriteLine("DrumsScrollSpeed4P={0}", this.nScrollSpeed[3]);
|
||||
sw.WriteLine();
|
||||
sw.WriteLine("; Timing Zones (0-1 : Lenient, 2 : Regular, 3-4 : Strict");
|
||||
sw.WriteLine("TimingZones1P={0}", this.nTimingZones[0]);
|
||||
sw.WriteLine("TimingZones2P={0}", this.nTimingZones[1]);
|
||||
sw.WriteLine("TimingZones3P={0}", this.nTimingZones[2]);
|
||||
sw.WriteLine("TimingZones4P={0}", this.nTimingZones[3]);
|
||||
sw.WriteLine();
|
||||
sw.WriteLine( "; 演奏速度(5~40)(→x5/20~x40/20)" );
|
||||
sw.WriteLine( "PlaySpeed={0}", this.n演奏速度 );
|
||||
sw.WriteLine();
|
||||
@ -2794,17 +2803,15 @@ namespace TJAPlayer3
|
||||
{
|
||||
this.判定文字表示位置.Drums = (E判定文字表示位置) C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 2, (int) this.判定文字表示位置.Drums );
|
||||
}
|
||||
|
||||
|
||||
#region [Mods]
|
||||
|
||||
#region [Scroll Speed]
|
||||
|
||||
else if ( str3.Equals( "DrumsScrollSpeed" ) )
|
||||
|
||||
else if (str3.Equals("DrumsScrollSpeed") || str3.Equals("DrumsScrollSpeed1P"))
|
||||
{
|
||||
this.nScrollSpeed[0] = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 0, 0x7cf, this.nScrollSpeed[0] );
|
||||
}
|
||||
else if (str3.Equals("DrumsScrollSpeed1P"))
|
||||
{
|
||||
this.nScrollSpeed[0] = C変換.n値を文字列から取得して範囲内に丸めて返す(str4, 0, 0x7cf, this.nScrollSpeed[0]);
|
||||
}
|
||||
else if (str3.Equals("DrumsScrollSpeed2P"))
|
||||
{
|
||||
this.nScrollSpeed[1] = C変換.n値を文字列から取得して範囲内に丸めて返す(str4, 0, 0x7cf, this.nScrollSpeed[1]);
|
||||
@ -2819,8 +2826,36 @@ namespace TJAPlayer3
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
else if( str3.Equals( "PlaySpeed" ) )
|
||||
|
||||
|
||||
#region [Timing Zones]
|
||||
|
||||
else if (str3.Equals("TimingZones1P"))
|
||||
{
|
||||
this.nTimingZones[0] = C変換.n値を文字列から取得して範囲内に丸めて返す(str4, 0, 4, this.nTimingZones[0]);
|
||||
}
|
||||
else if (str3.Equals("TimingZones2P"))
|
||||
{
|
||||
this.nTimingZones[1] = C変換.n値を文字列から取得して範囲内に丸めて返す(str4, 0, 4, this.nTimingZones[1]);
|
||||
}
|
||||
else if (str3.Equals("TimingZones3P"))
|
||||
{
|
||||
this.nTimingZones[2] = C変換.n値を文字列から取得して範囲内に丸めて返す(str4, 0, 4, this.nTimingZones[2]);
|
||||
}
|
||||
else if (str3.Equals("TimingZones4P"))
|
||||
{
|
||||
this.nTimingZones[3] = C変換.n値を文字列から取得して範囲内に丸めて返す(str4, 0, 4, this.nTimingZones[3]);
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
else if ( str3.Equals( "PlaySpeed" ) )
|
||||
{
|
||||
this.n演奏速度 = C変換.n値を文字列から取得して範囲内に丸めて返す( str4, 5, 400, this.n演奏速度 );
|
||||
}
|
||||
|
@ -276,6 +276,13 @@ namespace TJAPlayer3
|
||||
[406] = "Download Puchicharas",
|
||||
[407] = "Online Multiplayer",
|
||||
|
||||
[500] = "Timing",
|
||||
[501] = "Loose",
|
||||
[502] = "Lenient",
|
||||
[503] = "Normal",
|
||||
[504] = "Strict",
|
||||
[505] = "Rigorous",
|
||||
|
||||
[1000] = "Reached floor",
|
||||
[1001] = "F",
|
||||
[1002] = "P",
|
||||
|
@ -267,6 +267,13 @@ namespace TJAPlayer3
|
||||
[406] = "Télécharger des Puchicharas",
|
||||
[407] = "Multijoueur en ligne",
|
||||
|
||||
[500] = "Timing",
|
||||
[501] = "Laxiste",
|
||||
[502] = "Permissif",
|
||||
[503] = "Normal",
|
||||
[504] = "Strict",
|
||||
[505] = "Rigoureux",
|
||||
|
||||
[1000] = "Étage atteint",
|
||||
[1001] = "",
|
||||
[1002] = "P",
|
||||
|
@ -330,6 +330,13 @@ namespace TJAPlayer3
|
||||
[406] = "プチキャラダウンロード",
|
||||
[407] = "オンラインマルチプレイヤー",
|
||||
|
||||
[500] = "タイミング",
|
||||
[501] = "緩い",
|
||||
[502] = "易しい",
|
||||
[503] = "通常",
|
||||
[504] = "厳しい",
|
||||
[505] = "過酷",
|
||||
|
||||
[1000] = "到達階数",
|
||||
[1001] = "階",
|
||||
[1002] = "点",
|
||||
|
@ -777,6 +777,12 @@ namespace TJAPlayer3
|
||||
Mod_Timing[i] = TxC(GAME + MODICONS + @"Timing\" + i.ToString() + @".png");
|
||||
}
|
||||
|
||||
Mod_SongSpeed = new CTexture[2];
|
||||
for (int i = 0; i < Mod_SongSpeed.Length; i++)
|
||||
{
|
||||
Mod_SongSpeed[i] = TxC(GAME + MODICONS + @"SongSpeed\" + i.ToString() + @".png");
|
||||
}
|
||||
|
||||
Mod_Auto = TxC(GAME + MODICONS + @"Auto.png");
|
||||
Mod_None = TxC(GAME + MODICONS + @"None.png");
|
||||
|
||||
@ -1672,7 +1678,8 @@ namespace TJAPlayer3
|
||||
|
||||
#region [21_ModIcons]
|
||||
|
||||
public CTexture[] Mod_Timing,
|
||||
public CTexture[] Mod_Timing,
|
||||
Mod_SongSpeed,
|
||||
HiSp;
|
||||
public CTexture Mod_None,
|
||||
Mod_Auto;
|
||||
|
@ -61,10 +61,16 @@ namespace TJAPlayer3
|
||||
OptionType[1] = OptionTypeTx(CLangManager.LangInstance.GetString(9009), Color.White, Color.Black);
|
||||
OptionType[2] = OptionTypeTx(CLangManager.LangInstance.GetString(9010), Color.White, Color.Black);
|
||||
OptionType[3] = OptionTypeTx(CLangManager.LangInstance.GetString(9011), Color.White, Color.Black);
|
||||
OptionType[4] = OptionTypeTx(CLangManager.LangInstance.GetString(9012), Color.White, Color.Black);
|
||||
OptionType[5] = OptionTypeTx(CLangManager.LangInstance.GetString(9013), Color.White, Color.Black);
|
||||
OptionType[6] = OptionTypeTx(CLangManager.LangInstance.GetString(9014), Color.White, Color.Black);
|
||||
OptionType[7] = OptionTypeTx(CLangManager.LangInstance.GetString(9015), Color.White, Color.Black);
|
||||
OptionType[4] = OptionTypeTx(CLangManager.LangInstance.GetString(500), Color.White, Color.Black);
|
||||
OptionType[5] = OptionTypeTx(CLangManager.LangInstance.GetString(9012), Color.White, Color.Black);
|
||||
OptionType[6] = OptionTypeTx(CLangManager.LangInstance.GetString(9013), Color.White, Color.Black);
|
||||
OptionType[7] = OptionTypeTx(CLangManager.LangInstance.GetString(9014), Color.White, Color.Black);
|
||||
OptionType[8] = OptionTypeTx(CLangManager.LangInstance.GetString(9015), Color.White, Color.Black);
|
||||
|
||||
for (int i = 0; i < 5; i++)
|
||||
{
|
||||
txTiming[i] = OptionTypeTx(CLangManager.LangInstance.GetString(501 + i), Color.White, Color.Black);
|
||||
}
|
||||
|
||||
for (int i = 0; i < OptionType.Length; i++)
|
||||
OptionType[i].vc拡大縮小倍率.X = 0.96f;
|
||||
@ -93,6 +99,9 @@ namespace TJAPlayer3
|
||||
if (this.b活性化してない)
|
||||
return 0;
|
||||
|
||||
if (ctOpen.n現在の値 == 0)
|
||||
Init(player);
|
||||
|
||||
ctOpen.t進行();
|
||||
ctClose.t進行();
|
||||
|
||||
@ -114,31 +123,41 @@ namespace TJAPlayer3
|
||||
|
||||
#endregion
|
||||
|
||||
// Temporary textures, to reimplement to fit the new menu
|
||||
TJAPlayer3.Tx.Difficulty_Option.t2D描画(TJAPlayer3.app.Device, 0, y);
|
||||
|
||||
|
||||
TJAPlayer3.Tx.Difficulty_Option_Select.t2D描画(TJAPlayer3.app.Device, 0, y + NowCount * 40.7f);
|
||||
float baseX = (player == 0) ? 200 : 1180;
|
||||
float baseY = 659.9f + y - nOptionCount * 40.7f;
|
||||
|
||||
var _textures = new CTexture[]
|
||||
{
|
||||
txSpeed[nSpeedCount],
|
||||
txSwitch[nStealth],
|
||||
txSwitch[nAbekobe],
|
||||
txRandom[nRandom],
|
||||
txTiming[nTiming],
|
||||
txGameMode[nGameMode],
|
||||
txSwitch[nAutoMode],
|
||||
txNone,
|
||||
txNone,
|
||||
};
|
||||
|
||||
TJAPlayer3.Tx.Difficulty_Option_Select.t2D描画(TJAPlayer3.app.Device, baseX - 200, baseY - 375 + NowCount * 40.7f);
|
||||
|
||||
for (int i = 0; i < OptionType.Length; i++)
|
||||
{
|
||||
OptionType[i].t2D描画(TJAPlayer3.app.Device, 16, 379 + i * 40.8f + y);
|
||||
OptionType[i].t2D描画(TJAPlayer3.app.Device, baseX - 184, baseY + 4 + i * 40.8f);
|
||||
}
|
||||
|
||||
txSpeed[nSpeedCount].t2D拡大率考慮描画(TJAPlayer3.app.Device, CTexture.RefPnt.Up, 200, 375 + y);
|
||||
txSwitch[nStealth].t2D拡大率考慮描画(TJAPlayer3.app.Device, CTexture.RefPnt.Up, 200, 375 + y + 1 * 40.7f);
|
||||
txSwitch[nAbekobe].t2D拡大率考慮描画(TJAPlayer3.app.Device, CTexture.RefPnt.Up, 200, 375 + y + 2 * 40.7f);
|
||||
txRandom[nRandom].t2D拡大率考慮描画(TJAPlayer3.app.Device, CTexture.RefPnt.Up, 200, 375 + y + 3 * 40.7f);
|
||||
txGameMode[nGameMode].t2D拡大率考慮描画(TJAPlayer3.app.Device, CTexture.RefPnt.Up, 200, 375 + y + 4 * 40.7f);
|
||||
txSwitch[nAutoMode].t2D拡大率考慮描画(TJAPlayer3.app.Device, CTexture.RefPnt.Up, 200, 375 + y + 5 * 40.7f);
|
||||
|
||||
for (int i = 6; i < 8; i++)
|
||||
{
|
||||
txNone.t2D拡大率考慮描画(TJAPlayer3.app.Device, CTexture.RefPnt.Up, 200, 375 + y + i * 40.7f);
|
||||
for (int i = 0; i < _textures.Length; i++)
|
||||
{
|
||||
_textures[i]?.t2D拡大率考慮描画(TJAPlayer3.app.Device, CTexture.RefPnt.Up, baseX, baseY + i * 40.7f);
|
||||
}
|
||||
|
||||
if (ctClose.n現在の値 >= 50)
|
||||
{
|
||||
Decision();
|
||||
Decision(player);
|
||||
NowCount = 0;
|
||||
ctOpen.t停止();
|
||||
ctOpen.n現在の値 = 0;
|
||||
@ -152,17 +171,30 @@ namespace TJAPlayer3
|
||||
|
||||
if (!ctClose.b進行中)
|
||||
{
|
||||
if (TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.LBlue)) { OptionSelect(true); TJAPlayer3.Skin.sound変更音.t再生する(); };
|
||||
if (TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.RBlue)) { OptionSelect(false); TJAPlayer3.Skin.sound変更音.t再生する(); };
|
||||
bool _leftDrum = (player == 0)
|
||||
? TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.LBlue)
|
||||
: TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.LBlue2P);
|
||||
|
||||
if ((TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.LRed) || TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.RRed)) && ctOpen.n現在の値 >= ctOpen.n終了値)
|
||||
bool _rightDrum = (player == 0)
|
||||
? TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.RBlue)
|
||||
: TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.RBlue2P);
|
||||
|
||||
bool _centerDrum = (player == 0)
|
||||
? (TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.LRed) || TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.RRed))
|
||||
: (TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.LRed2P) || TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.RRed2P));
|
||||
|
||||
|
||||
if (_leftDrum) { OptionSelect(true); TJAPlayer3.Skin.sound変更音.t再生する(); };
|
||||
if (_rightDrum) { OptionSelect(false); TJAPlayer3.Skin.sound変更音.t再生する(); };
|
||||
|
||||
if (_centerDrum && ctOpen.n現在の値 >= ctOpen.n終了値)
|
||||
{
|
||||
TJAPlayer3.Skin.sound決定音.t再生する();
|
||||
if (NowCount < 7)
|
||||
if (NowCount < nOptionCount)
|
||||
{
|
||||
NowCount++;
|
||||
}
|
||||
else if (NowCount >= 7 && !bEnd)
|
||||
else if (NowCount >= nOptionCount && !bEnd)
|
||||
{
|
||||
bEnd = true;
|
||||
ctClose.t開始(0, 50, 6, TJAPlayer3.Timer);
|
||||
@ -172,13 +204,15 @@ namespace TJAPlayer3
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
public int nOptionCount = 8;
|
||||
|
||||
public CCounter ctOpen;
|
||||
public CCounter ctClose;
|
||||
public CTexture[] OptionType = new CTexture[8];
|
||||
public CTexture[] OptionType = new CTexture[9];
|
||||
|
||||
public int NowCount;
|
||||
public int[] NowCountType = new int[8];
|
||||
@ -203,6 +237,9 @@ namespace TJAPlayer3
|
||||
|
||||
public CTexture[] txSwitch = new CTexture[2];
|
||||
|
||||
public CTexture[] txTiming = new CTexture[5];
|
||||
public int nTiming = 2;
|
||||
|
||||
public CTexture OptionTypeTx(string str文字, Color forecolor, Color backcolor)
|
||||
{
|
||||
using (var bmp = new CPrivateFastFont(new FontFamily(TJAPlayer3.ConfigIni.FontName), 13).DrawPrivateFont(str文字, forecolor, backcolor))
|
||||
@ -211,21 +248,26 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
|
||||
private void ShiftVal(bool left, ref int value, int capUp, int capDown)
|
||||
{
|
||||
if (left)
|
||||
{
|
||||
if (value > capDown) value--;
|
||||
else value = capUp;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (value < capUp) value++;
|
||||
else value = capDown;
|
||||
}
|
||||
}
|
||||
|
||||
public void OptionSelect(bool left)
|
||||
{
|
||||
switch (NowCount)
|
||||
{
|
||||
case 0:
|
||||
if (left)
|
||||
{
|
||||
if (nSpeedCount > 0) nSpeedCount--;
|
||||
else nSpeedCount = 15;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (nSpeedCount < 15) nSpeedCount++;
|
||||
else nSpeedCount = 0;
|
||||
}
|
||||
ShiftVal(left, ref nSpeedCount, 15, 0);
|
||||
break;
|
||||
case 1:
|
||||
if (nStealth == 0) nStealth = 1;
|
||||
@ -236,59 +278,152 @@ namespace TJAPlayer3
|
||||
else nAbekobe = 0;
|
||||
break;
|
||||
case 3:
|
||||
if (left)
|
||||
{
|
||||
if (nRandom > 0) nRandom--;
|
||||
else nRandom = 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (nRandom < 2) nRandom++;
|
||||
else nRandom = 0;
|
||||
}
|
||||
ShiftVal(left, ref nRandom, 2, 0);
|
||||
break;
|
||||
case 4:
|
||||
ShiftVal(left, ref nTiming, 4, 0);
|
||||
break;
|
||||
case 5:
|
||||
if (nGameMode == 0) nGameMode = 1;
|
||||
else nGameMode = 0;
|
||||
break;
|
||||
case 5:
|
||||
case 6:
|
||||
if (nAutoMode == 0) nAutoMode = 1;
|
||||
else nAutoMode = 0;
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
public void Decision()
|
||||
|
||||
public void Init(int player)
|
||||
{
|
||||
int actual = TJAPlayer3.GetActualPlayer(player);
|
||||
|
||||
#region [ Speed ]
|
||||
|
||||
int speed = TJAPlayer3.ConfigIni.nScrollSpeed[actual];
|
||||
|
||||
if (speed <= 4)
|
||||
nSpeedCount = 0;
|
||||
else if (speed <= 19)
|
||||
nSpeedCount = speed - 8;
|
||||
else if (speed <= 24)
|
||||
nSpeedCount = 12;
|
||||
else if (speed <= 29)
|
||||
nSpeedCount = 13;
|
||||
else if (speed <= 34)
|
||||
nSpeedCount = 14;
|
||||
else
|
||||
nSpeedCount = 15;
|
||||
|
||||
#endregion
|
||||
|
||||
#region [ Doron ]
|
||||
|
||||
if (TJAPlayer3.ConfigIni.eSTEALTH == Eステルスモード.OFF)
|
||||
nStealth = 0;
|
||||
else if (TJAPlayer3.ConfigIni.eSTEALTH == Eステルスモード.DORON)
|
||||
nStealth = 1;
|
||||
|
||||
#endregion
|
||||
|
||||
#region [ Random ]
|
||||
|
||||
var rand_ = TJAPlayer3.ConfigIni.eRandom.Taiko;
|
||||
|
||||
if (rand_ == Eランダムモード.HYPERRANDOM)
|
||||
{
|
||||
nRandom = 2;
|
||||
nAbekobe = 1;
|
||||
}
|
||||
else if (rand_ == Eランダムモード.SUPERRANDOM)
|
||||
{
|
||||
nRandom = 2;
|
||||
nAbekobe = 0;
|
||||
}
|
||||
else if (rand_ == Eランダムモード.RANDOM)
|
||||
{
|
||||
nRandom = 1;
|
||||
nAbekobe = 0;
|
||||
}
|
||||
else if (rand_ == Eランダムモード.MIRROR)
|
||||
{
|
||||
nRandom = 0;
|
||||
nAbekobe = 1;
|
||||
}
|
||||
else if (rand_ == Eランダムモード.OFF)
|
||||
{
|
||||
nRandom = 0;
|
||||
nAbekobe = 0;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region [ Timing ]
|
||||
|
||||
nTiming = TJAPlayer3.ConfigIni.nTimingZones[actual];
|
||||
|
||||
#endregion
|
||||
|
||||
#region [ GameMode ]
|
||||
|
||||
if (TJAPlayer3.ConfigIni.bTokkunMode == true)
|
||||
nGameMode = 1;
|
||||
else
|
||||
nGameMode = 0;
|
||||
|
||||
#endregion
|
||||
|
||||
#region [ AutoMode ]
|
||||
|
||||
bool _auto = (player == 0)
|
||||
? TJAPlayer3.ConfigIni.b太鼓パートAutoPlay
|
||||
: TJAPlayer3.ConfigIni.b太鼓パートAutoPlay2P;
|
||||
|
||||
if (_auto == true)
|
||||
nAutoMode = 1;
|
||||
else
|
||||
nAutoMode = 0;
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
|
||||
public void Decision(int player)
|
||||
{
|
||||
int actual = TJAPlayer3.GetActualPlayer(player);
|
||||
|
||||
#region [ Speed ]
|
||||
|
||||
if (nSpeedCount == 0)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[TJAPlayer3.GetActualPlayer(0)] = 4;
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[actual] = 4;
|
||||
}
|
||||
else if (nSpeedCount > 0 && nSpeedCount <= 11)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[TJAPlayer3.GetActualPlayer(0)] = nSpeedCount + 8;
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[actual] = nSpeedCount + 8;
|
||||
}
|
||||
else if (nSpeedCount == 12)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[TJAPlayer3.GetActualPlayer(0)] = 24;
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[actual] = 24;
|
||||
}
|
||||
else if (nSpeedCount == 13)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[TJAPlayer3.GetActualPlayer(0)] = 29;
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[actual] = 29;
|
||||
}
|
||||
else if (nSpeedCount == 14)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[TJAPlayer3.GetActualPlayer(0)] = 34;
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[actual] = 34;
|
||||
}
|
||||
else if (nSpeedCount == 15)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[TJAPlayer3.GetActualPlayer(0)] = 39;
|
||||
TJAPlayer3.ConfigIni.nScrollSpeed[actual] = 39;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region [ Doron ]
|
||||
|
||||
if (nStealth == 0)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.eSTEALTH = Eステルスモード.OFF;
|
||||
@ -297,9 +432,12 @@ namespace TJAPlayer3
|
||||
{
|
||||
TJAPlayer3.ConfigIni.eSTEALTH = Eステルスモード.DORON;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region [ Random ]
|
||||
if(nRandom == 2 && nAbekobe == 1)
|
||||
|
||||
if (nRandom == 2 && nAbekobe == 1)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.eRandom.Taiko = Eランダムモード.HYPERRANDOM;
|
||||
}
|
||||
@ -322,10 +460,19 @@ namespace TJAPlayer3
|
||||
else if (nRandom == 0 && nAbekobe == 0)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.eRandom.Taiko = Eランダムモード.OFF;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region [ Timing ]
|
||||
|
||||
TJAPlayer3.ConfigIni.nTimingZones[actual] = nTiming;
|
||||
|
||||
#endregion
|
||||
|
||||
#region [ GameMode ]
|
||||
if(nGameMode == 0)
|
||||
|
||||
if (nGameMode == 0)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.bTokkunMode = false;
|
||||
}
|
||||
@ -333,16 +480,26 @@ namespace TJAPlayer3
|
||||
{
|
||||
TJAPlayer3.ConfigIni.bTokkunMode = true;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region [ AutoMode ]
|
||||
if(nAutoMode == 1)
|
||||
|
||||
if (nAutoMode == 1)
|
||||
{
|
||||
TJAPlayer3.ConfigIni.b太鼓パートAutoPlay = true;
|
||||
if (player == 0)
|
||||
TJAPlayer3.ConfigIni.b太鼓パートAutoPlay = true;
|
||||
else
|
||||
TJAPlayer3.ConfigIni.b太鼓パートAutoPlay2P = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
TJAPlayer3.ConfigIni.b太鼓パートAutoPlay = false;
|
||||
if (player == 0)
|
||||
TJAPlayer3.ConfigIni.b太鼓パートAutoPlay = false;
|
||||
else
|
||||
TJAPlayer3.ConfigIni.b太鼓パートAutoPlay2P = false;
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
|
@ -197,7 +197,7 @@ namespace TJAPlayer3
|
||||
|
||||
if (this.ctBarAnimeIn.b終了値に達した)
|
||||
{
|
||||
if (!bSelect[0] && !bOption[0])
|
||||
if (!bSelect[0] && !isOnOption())
|
||||
{
|
||||
if (TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.RBlue) || TJAPlayer3.Input管理.Keyboard.bキーが押された((int)SlimDXKeys.Key.RightArrow))
|
||||
{
|
||||
@ -250,7 +250,7 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
|
||||
if (!bSelect[1] && !bOption[1] && TJAPlayer3.ConfigIni.nPlayerCount > 1)
|
||||
if (!bSelect[1] && !isOnOption() && TJAPlayer3.ConfigIni.nPlayerCount > 1)
|
||||
{
|
||||
if (TJAPlayer3.Pad.b押された(E楽器パート.DRUMS, Eパッド.RBlue2P))
|
||||
{
|
||||
@ -478,6 +478,11 @@ namespace TJAPlayer3
|
||||
}
|
||||
}
|
||||
|
||||
private bool isOnOption()
|
||||
{
|
||||
return bOption[1] || bOption[0];
|
||||
}
|
||||
|
||||
public int nStrジャンルtoNum(string strジャンル)
|
||||
{
|
||||
return TJAPlayer3.stage選曲.act曲リスト.nStrジャンルtoNumBox(strジャンル);
|
||||
|
@ -792,8 +792,9 @@ namespace TJAPlayer3
|
||||
|
||||
// To change later to adapt to Tower Ama-kuchi
|
||||
diff = Math.Min(diff, (int)Difficulty.Oni);
|
||||
// To do : Add -2 ~ +2 mod modifiers
|
||||
CConfigIni.CTimingZones tz = (diff <= (int)Difficulty.Normal) ? TJAPlayer3.ConfigIni.tzLevels[2] : TJAPlayer3.ConfigIni.tzLevels[4];
|
||||
|
||||
int timingShift = TJAPlayer3.ConfigIni.nTimingZones[player];
|
||||
CConfigIni.CTimingZones tz = (diff <= (int)Difficulty.Normal) ? TJAPlayer3.ConfigIni.tzLevels[timingShift] : TJAPlayer3.ConfigIni.tzLevels[2 + timingShift];
|
||||
|
||||
if (nDeltaTime <= tz.nGoodZone * (((double)TJAPlayer3.ConfigIni.n演奏速度) / 20.0))
|
||||
{
|
||||
|
@ -18,8 +18,8 @@ namespace TJAPlayer3
|
||||
PLACEHOLDER_tDisplayNoneIcon(x + 60, y, player); // 3rd icon
|
||||
PLACEHOLDER_tDisplayNoneIcon(x + 90, y, player); // 4th icon
|
||||
PLACEHOLDER_tDisplayNoneIcon(x, y + 30, player); // 5th icon
|
||||
PLACEHOLDER_tDisplayNoneIcon(x + 30, y + 30, player); // 6th icon
|
||||
PLACEHOLDER_tDisplayNoneIcon(x + 60, y + 30, player); // 7th icon
|
||||
tDisplayTimingIcon(x + 30, y + 30, actual); // 6th icon
|
||||
tDisplaySongSpeedIcon(x + 60, y + 30, player); // 7th icon
|
||||
tDisplayAutoIcon(x + 90, y + 30, player); // 8th icon
|
||||
}
|
||||
|
||||
@ -35,8 +35,8 @@ namespace TJAPlayer3
|
||||
PLACEHOLDER_tDisplayNoneIcon(x + 60, y, player); // 3rd icon
|
||||
PLACEHOLDER_tDisplayNoneIcon(x + 90, y, player); // 4th icon
|
||||
PLACEHOLDER_tDisplayNoneIcon(x + 120, y, player); // 5th icon
|
||||
PLACEHOLDER_tDisplayNoneIcon(x + 150, y, player); // 6th icon
|
||||
PLACEHOLDER_tDisplayNoneIcon(x + 180, y, player); // 7th icon
|
||||
tDisplayTimingIcon(x + 150, y, actual); // 6th icon
|
||||
tDisplaySongSpeedIcon(x + 180, y, player); // 7th icon
|
||||
tDisplayAutoIcon(x + 210, y, player); // 8th icon
|
||||
|
||||
if (TJAPlayer3.Tx.Mod_None != null)
|
||||
@ -77,6 +77,26 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Tx.Mod_None?.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||
}
|
||||
|
||||
static private void tDisplaySongSpeedIcon(int x, int y, int player)
|
||||
{
|
||||
if (TJAPlayer3.ConfigIni.n演奏速度 > 20)
|
||||
TJAPlayer3.Tx.Mod_SongSpeed[1]?.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||
else if (TJAPlayer3.ConfigIni.n演奏速度 < 20)
|
||||
TJAPlayer3.Tx.Mod_SongSpeed[0]?.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||
else
|
||||
TJAPlayer3.Tx.Mod_None?.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||
}
|
||||
|
||||
static private void tDisplayTimingIcon(int x, int y, int player)
|
||||
{
|
||||
int zones = TJAPlayer3.ConfigIni.nTimingZones[player];
|
||||
|
||||
if (zones != 2)
|
||||
TJAPlayer3.Tx.Mod_Timing[zones]?.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||
else
|
||||
TJAPlayer3.Tx.Mod_None?.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||
}
|
||||
|
||||
static private void PLACEHOLDER_tDisplayNoneIcon(int x, int y, int player)
|
||||
{
|
||||
TJAPlayer3.Tx.Mod_None?.t2D描画(TJAPlayer3.app.Device, x, y);
|
||||
|
@ -227,6 +227,15 @@
|
||||
406 : Download puchicharas button
|
||||
407 : Online multiplayer button
|
||||
|
||||
# Mod specific (005XX)
|
||||
|
||||
500 : "Timing" mod name
|
||||
501 : "Loose" timing mod option
|
||||
502 : "Lenient" timing mod option
|
||||
503 : "Normal" timing mod option
|
||||
504 : "Strict" timing mod option
|
||||
505 : "Rigorous" timing mod option
|
||||
|
||||
# In-game pause menu (0090X)
|
||||
|
||||
900 : Continue
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 5.1 KiB |
Binary file not shown.
After Width: | Height: | Size: 5.2 KiB |
Loading…
x
Reference in New Issue
Block a user