Add SE Notes for Konga notes, mine and purple note, Add Easy/Normal timezones for Dan songs using those difficulties, fix some parsing bugs
This commit is contained in:
parent
1fb8b24849
commit
0b1b700a79
@ -84,6 +84,13 @@ namespace TJAPlayer3
|
||||
return tex;
|
||||
}
|
||||
|
||||
internal CTexture TxCAbsolute(string FileName)
|
||||
{
|
||||
var tex = TJAPlayer3.tテクスチャの生成(FileName);
|
||||
listTexture.Add(tex);
|
||||
return tex;
|
||||
}
|
||||
|
||||
internal CTextureAf TxCAf(string FileName)
|
||||
{
|
||||
var tex = TJAPlayer3.tテクスチャの生成Af(CSkin.Path(BASE + FileName));
|
||||
@ -343,7 +350,13 @@ namespace TJAPlayer3
|
||||
Note_Swap = TxC(GAME + @"Swap.png");
|
||||
|
||||
Judge_Frame = TxC(GAME + @"Notes.png");
|
||||
SENotes = TxC(GAME + @"SENotes.png");
|
||||
|
||||
SENotes = new CTexture[2];
|
||||
SENotes[0] = TxC(GAME + @"SENotes.png");
|
||||
SENotes[1] = TxC(GAME + @"SENotes_Konga.png");
|
||||
|
||||
SENotesExtension = TxC(GAME + @"SENotes_Extension.png");
|
||||
|
||||
Notes_Arm = TxC(GAME + @"Notes_Arm.png");
|
||||
Judge = TxC(GAME + @"Judge.png");
|
||||
ChipEffect = TxC(GAME + @"ChipEffect.png");
|
||||
@ -1588,7 +1601,7 @@ namespace TJAPlayer3
|
||||
public CTexture Judge_Frame,
|
||||
Note_Mine,
|
||||
Note_Swap,
|
||||
SENotes,
|
||||
SENotesExtension,
|
||||
Notes_Arm,
|
||||
ChipEffect,
|
||||
ScoreRank,
|
||||
@ -1596,7 +1609,8 @@ namespace TJAPlayer3
|
||||
public CTexture Judge_Meter,
|
||||
Bar,
|
||||
Bar_Branch;
|
||||
public CTexture[] Notes;
|
||||
public CTexture[] Notes,
|
||||
SENotes;
|
||||
#endregion
|
||||
|
||||
|
||||
|
@ -796,12 +796,36 @@ namespace TJAPlayer3
|
||||
int diff = TJAPlayer3.stage選曲.n確定された曲の難易度[player];
|
||||
|
||||
// To change later to adapt to Tower Ama-kuchi
|
||||
diff = Math.Min(diff, (int)Difficulty.Oni);
|
||||
//diff = Math.Min(diff, (int)Difficulty.Oni);
|
||||
|
||||
int actual = TJAPlayer3.GetActualPlayer(player);
|
||||
|
||||
int timingShift = TJAPlayer3.ConfigIni.nTimingZones[actual];
|
||||
CConfigIni.CTimingZones tz = (diff <= (int)Difficulty.Normal) ? TJAPlayer3.ConfigIni.tzLevels[timingShift] : TJAPlayer3.ConfigIni.tzLevels[2 + timingShift];
|
||||
int timingShift = TJAPlayer3.ConfigIni.nTimingZones[actual];
|
||||
|
||||
bool _timingzonesAreEasy = false;
|
||||
|
||||
// Diff = Normal or Easy
|
||||
if (diff <= (int)Difficulty.Normal)
|
||||
{
|
||||
_timingzonesAreEasy = true;
|
||||
}
|
||||
|
||||
// Diff = Dan and current song is Normal or Easy
|
||||
if (diff == (int)Difficulty.Dan)
|
||||
{
|
||||
int _nb = TJAPlayer3.stage演奏ドラム画面.actDan.NowShowingNumber;
|
||||
var _danSongs = TJAPlayer3.stage選曲.r確定された曲.DanSongs;
|
||||
|
||||
if (_nb < _danSongs.Count)
|
||||
{
|
||||
var _currentDiff = _danSongs[_nb].Difficulty;
|
||||
if (_currentDiff <= (int)Difficulty.Normal)
|
||||
_timingzonesAreEasy = true;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
CConfigIni.CTimingZones tz = (_timingzonesAreEasy == true) ? TJAPlayer3.ConfigIni.tzLevels[timingShift] : TJAPlayer3.ConfigIni.tzLevels[2 + timingShift];
|
||||
|
||||
if (nDeltaTime <= tz.nGoodZone * (((double)TJAPlayer3.ConfigIni.n演奏速度) / 20.0))
|
||||
{
|
||||
|
@ -1833,7 +1833,9 @@ namespace TJAPlayer3
|
||||
case 0x101:
|
||||
{
|
||||
NotesManager.DisplayNote(nPlayer, x, y, pChip, num9);
|
||||
TJAPlayer3.Tx.SENotes?.t2D描画(device, x - 2, y + nSenotesY, new Rectangle(0, 30 * pChip.nSenote, 136, 30));
|
||||
NotesManager.DisplaySENotes(nPlayer, x - 2, y + nSenotesY, pChip);
|
||||
|
||||
//TJAPlayer3.Tx.SENotes[(int)_gt]?.t2D描画(device, x - 2, y + nSenotesY, new Rectangle(0, 30 * pChip.nSenote, 136, 30));
|
||||
break;
|
||||
}
|
||||
|
||||
@ -1853,7 +1855,7 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Tx.Notes_Arm?.t2D描画(device, x + 60, (y - 14) - nHand);
|
||||
}
|
||||
NotesManager.DisplayNote(nPlayer, x, y, pChip, num9);
|
||||
TJAPlayer3.Tx.SENotes?.t2D描画(device, x - 2, y + nSenotesY,
|
||||
TJAPlayer3.Tx.SENotes[(int)_gt]?.t2D描画(device, x - 2, y + nSenotesY,
|
||||
new Rectangle(0, pChip.nチャンネル番号 == 0x1A ? 390 : 420, 136, 30));
|
||||
}
|
||||
break;
|
||||
@ -2088,15 +2090,15 @@ namespace TJAPlayer3
|
||||
{
|
||||
NotesManager.DisplayRoll(nPlayer, x, y, pChip, num9, normalColor, effectedColor, x末端);
|
||||
|
||||
if (TJAPlayer3.Tx.SENotes != null)
|
||||
if (TJAPlayer3.Tx.SENotes[(int)_gt] != null)
|
||||
{
|
||||
int _shift = NotesManager.IsBigRoll(pChip) ? 26 : 0;
|
||||
|
||||
TJAPlayer3.Tx.SENotes.vc拡大縮小倍率.X = x末端 - x - 44 - _shift;
|
||||
TJAPlayer3.Tx.SENotes.t2D描画(TJAPlayer3.app.Device, x + 90 + _shift, y + nSenotesY, new Rectangle(60, 240, 1, 30));
|
||||
TJAPlayer3.Tx.SENotes.vc拡大縮小倍率.X = 1.0f;
|
||||
TJAPlayer3.Tx.SENotes.t2D描画(TJAPlayer3.app.Device, x + 30 + _shift, y + nSenotesY, new Rectangle(0, 240, 60, 30));
|
||||
TJAPlayer3.Tx.SENotes.t2D描画(TJAPlayer3.app.Device, x - (_shift / 13), y + nSenotesY, new Rectangle(0, 30 * pChip.nSenote, 136, 30));
|
||||
TJAPlayer3.Tx.SENotes[(int)_gt].vc拡大縮小倍率.X = x末端 - x - 44 - _shift;
|
||||
TJAPlayer3.Tx.SENotes[(int)_gt].t2D描画(TJAPlayer3.app.Device, x + 90 + _shift, y + nSenotesY, new Rectangle(60, 240, 1, 30));
|
||||
TJAPlayer3.Tx.SENotes[(int)_gt].vc拡大縮小倍率.X = 1.0f;
|
||||
TJAPlayer3.Tx.SENotes[(int)_gt].t2D描画(TJAPlayer3.app.Device, x + 30 + _shift, y + nSenotesY, new Rectangle(0, 240, 60, 30));
|
||||
TJAPlayer3.Tx.SENotes[(int)_gt].t2D描画(TJAPlayer3.app.Device, x - (_shift / 13), y + nSenotesY, new Rectangle(0, 30 * pChip.nSenote, 136, 30));
|
||||
}
|
||||
|
||||
}
|
||||
@ -2111,13 +2113,14 @@ namespace TJAPlayer3
|
||||
x = (349 + pChip.nバーからのノーツ末端距離dot);
|
||||
|
||||
NotesManager.DisplayNote(nPlayer, x, y, pChip, num9, 260);
|
||||
NotesManager.DisplaySENotes(nPlayer, x - 2, y + nSenotesY, pChip);
|
||||
|
||||
/*
|
||||
if (TJAPlayer3.ConfigIni.eSTEALTH != Eステルスモード.DORON)
|
||||
TJAPlayer3.Tx.Notes[(int)_gt].t2D描画(TJAPlayer3.app.Device, x, y, new Rectangle(1430, num9, 260, 130));
|
||||
*/
|
||||
|
||||
TJAPlayer3.Tx.SENotes.t2D描画(TJAPlayer3.app.Device, x - 2, y + nSenotesY, new Rectangle(0, 30 * pChip.nSenote, 136, 30));
|
||||
//TJAPlayer3.Tx.SENotes.t2D描画(TJAPlayer3.app.Device, x - 2, y + nSenotesY, new Rectangle(0, 30 * pChip.nSenote, 136, 30));
|
||||
}
|
||||
}
|
||||
if (NotesManager.IsRollEnd(pChip))
|
||||
@ -2142,7 +2145,7 @@ namespace TJAPlayer3
|
||||
{
|
||||
//if( CDTXMania.ConfigIni.eSTEALTH != Eステルスモード.DORON )
|
||||
// CDTXMania.Tx.Notes.t2D描画( CDTXMania.app.Device, x, y, new Rectangle( n, num9, 130, 130 ) );//大音符:1170
|
||||
TJAPlayer3.Tx.SENotes.t2D描画(TJAPlayer3.app.Device, x + 56, y + nSenotesY, new Rectangle(58, 270, 78, 30));
|
||||
TJAPlayer3.Tx.SENotes[(int)_gt]?.t2D描画(TJAPlayer3.app.Device, x + 56, y + nSenotesY, new Rectangle(58, 270, 78, 30));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -45,7 +45,8 @@ namespace TJAPlayer3
|
||||
|
||||
for (int i = 0; i < s.Length; i++)
|
||||
{
|
||||
if (GetNoteValueFromChar(s.Substring(i, 1)) == -1)
|
||||
if (GetNoteValueFromChar(s.Substring(i, 1)) == -1
|
||||
&& s.Substring(i, 1) != ",")
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -304,6 +305,25 @@ namespace TJAPlayer3
|
||||
TJAPlayer3.Tx.Notes[(int)_gt].color4 = normalColor;
|
||||
}
|
||||
|
||||
// SENotes
|
||||
public static void DisplaySENotes(int player, int x, int y, CDTX.CChip chip)
|
||||
{
|
||||
EGameType _gt = TJAPlayer3.ConfigIni.nGameType[TJAPlayer3.GetActualPlayer(player)];
|
||||
|
||||
if (IsMine(chip))
|
||||
{
|
||||
TJAPlayer3.Tx.SENotesExtension?.t2D描画(TJAPlayer3.app.Device, x, y, new Rectangle(0, 30, 136, 30));
|
||||
}
|
||||
else if (IsPurpleNote(chip) && _gt != EGameType.KONGA)
|
||||
{
|
||||
TJAPlayer3.Tx.SENotesExtension?.t2D描画(TJAPlayer3.app.Device, x, y, new Rectangle(0, 0, 136, 30));
|
||||
}
|
||||
else
|
||||
{
|
||||
TJAPlayer3.Tx.SENotes[(int)_gt]?.t2D描画(TJAPlayer3.app.Device, x, y, new Rectangle(0, 30 * chip.nSenote, 136, 30));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user