Better score calculation for dan charts, tried something for branches in dans but doesn't work yet
This commit is contained in:
parent
254c4eb463
commit
eb3f67e0a3
@ -1246,14 +1246,20 @@ namespace TJAPlayer3
|
||||
private bool bMOVIEOFFSETの値がマイナスである = false;
|
||||
private double dbNowBPM = 120.0;
|
||||
private int nDELAY = 0;
|
||||
|
||||
public bool[] bHasBranch = new bool[(int)Difficulty.Total] { false, false, false, false, false, false, false };
|
||||
|
||||
public bool[] bHasBranchDan = new bool[1] { false };
|
||||
|
||||
//分岐関連
|
||||
private ECourse n現在のコース = ECourse.eNormal;
|
||||
|
||||
private bool b最初の分岐である;
|
||||
public int[] nノーツ数 = new int[4]; //3:共通
|
||||
|
||||
public int[] nDan_NotesCount = new int[1];
|
||||
// public int[] nDan_BallonCount = new int[1];
|
||||
|
||||
public int[] nノーツ数_Branch = new int[4]; //
|
||||
public CChip[] pDan_LastChip;
|
||||
public int[] n風船数 = new int[4]; //0~2:各コース 3:共通
|
||||
@ -4073,6 +4079,9 @@ namespace TJAPlayer3
|
||||
|
||||
this.listWAV[1].strファイル名 = "";
|
||||
|
||||
Array.Resize(ref bHasBranchDan, List_DanSongs.Count);
|
||||
bHasBranchDan[bHasBranchDan.Length - 1] = false;
|
||||
|
||||
// チップを配置。
|
||||
this.listChip.Add(nextSongnextSongChip);
|
||||
|
||||
@ -4504,13 +4513,20 @@ namespace TJAPlayer3
|
||||
{
|
||||
//風船はこのままでも機能しているので何もしない.
|
||||
|
||||
if (this.b最初の分岐である == false)
|
||||
this.n風船数[(int)this.n現在のコース]++;
|
||||
else
|
||||
this.n風船数[3]++;
|
||||
if (this.b最初の分岐である == false)
|
||||
{
|
||||
this.n風船数[(int)this.n現在のコース]++;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.n風船数[3]++;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Array.Resize(ref nDan_NotesCount, nDan_NotesCount.Length + 1);
|
||||
// Array.Resize(ref nDan_BallonCount, nDan_BallonCount.Length + 1);
|
||||
|
||||
this.listChip.Add(chip);
|
||||
|
||||
if(IsEndedBranching)
|
||||
@ -4804,6 +4820,11 @@ namespace TJAPlayer3
|
||||
//本来はヘッダ命令ではありませんが、難易度ごとに違う項目なのでここで読み込ませます。
|
||||
//Lengthのチェックをされる前ににif文を入れています。
|
||||
this.bHasBranch[this.n参照中の難易度] = true;
|
||||
|
||||
if (this.n参照中の難易度 == (int)Difficulty.Dan)
|
||||
{
|
||||
this.bHasBranchDan[this.bHasBranchDan.Length - 1] = true;
|
||||
}
|
||||
}
|
||||
|
||||
//まずは「:」でSplitして割り当てる。
|
||||
|
@ -1969,7 +1969,8 @@ namespace TJAPlayer3
|
||||
break;
|
||||
}
|
||||
|
||||
if (TJAPlayer3.Tx.SongSelect_Branch_Text != null && TJAPlayer3.stage選曲.r現在選択中のスコア.譜面情報.b譜面分岐[TJAPlayer3.stage選曲.n現在選択中の曲の難易度])
|
||||
if (TJAPlayer3.Tx.SongSelect_Branch_Text != null
|
||||
&& TJAPlayer3.stage選曲.r現在選択中のスコア.譜面情報.b譜面分岐[TJAPlayer3.stage選曲.n現在選択中の曲の難易度])
|
||||
TJAPlayer3.Tx.SongSelect_Branch_Text.t2D描画(TJAPlayer3.app.Device, 483, TJAPlayer3.Skin.SongSelect_Overall_Y + 21);
|
||||
|
||||
}
|
||||
|
@ -374,6 +374,27 @@ namespace TJAPlayer3
|
||||
this.ListDan_Number = 0;
|
||||
this.IsDanFailed = false;
|
||||
}
|
||||
|
||||
|
||||
public void ftDanReSetScoreNiji(int songNotes, int ballons)
|
||||
{
|
||||
if (songNotes == 0 && ballons == 0)
|
||||
{
|
||||
nAddScoreNiji[0] = 1000000;
|
||||
}
|
||||
else
|
||||
{
|
||||
nAddScoreNiji[0] = (double)Math.Ceiling((decimal)(1000000 - (ballons * 100)) / songNotes / 10) * 10;
|
||||
}
|
||||
}
|
||||
|
||||
public void ftDanReSetBranches(bool hasBranches)
|
||||
{
|
||||
this.tBranchReset(0);
|
||||
TJAPlayer3.stage選曲.r確定されたスコア.譜面情報.b譜面分岐[(int)Difficulty.Dan] = hasBranches;
|
||||
}
|
||||
|
||||
|
||||
public override void On非活性化()
|
||||
{
|
||||
this.bgmlength = 1;
|
||||
|
@ -76,11 +76,20 @@ namespace TJAPlayer3
|
||||
}
|
||||
|
||||
ScreenPoint = new double[] { TJAPlayer3.Skin.nScrollFieldBGX[0] - TJAPlayer3.Tx.DanC_Screen.szテクスチャサイズ.Width / 2, 1280 };
|
||||
TJAPlayer3.stage演奏ドラム画面.ReSetScore(TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].ScoreInit, TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].ScoreDiff);
|
||||
|
||||
TJAPlayer3.stage演奏ドラム画面.ReSetScore(TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].ScoreInit, TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].ScoreDiff);
|
||||
|
||||
TJAPlayer3.stage演奏ドラム画面.ftDanReSetScoreNiji(TJAPlayer3.DTX.nDan_NotesCount[NowShowingNumber], 0);
|
||||
TJAPlayer3.stage演奏ドラム画面.ftDanReSetBranches(TJAPlayer3.DTX.bHasBranchDan[NowShowingNumber]);
|
||||
|
||||
IsAnimating = true;
|
||||
|
||||
//段位道場
|
||||
//TJAPlayer3.stage演奏ドラム画面.actPanel.SetPanelString(TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].Title, TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].Genre, 1 + NowShowingNumber + "曲目");
|
||||
TJAPlayer3.stage演奏ドラム画面.actPanel.SetPanelString(TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].Title, "段位道場", 1 + NowShowingNumber + "曲目");
|
||||
TJAPlayer3.stage演奏ドラム画面.actPanel.SetPanelString(TJAPlayer3.DTX.List_DanSongs[NowShowingNumber].Title,
|
||||
CLangManager.LangInstance.GetString(101),
|
||||
1 + NowShowingNumber + "曲目");
|
||||
|
||||
if (number == 0) Sound_Section_First?.t再生を開始する();
|
||||
else Sound_Section?.t再生を開始する();
|
||||
}
|
||||
@ -261,6 +270,8 @@ namespace TJAPlayer3
|
||||
|
||||
// 音源が終了したやつの分岐。
|
||||
// ( CDTXMania.DTX.listChip.Count > 0 ) ? CDTXMania.DTX.listChip[ CDTXMania.DTX.listChip.Count - 1 ].n発声時刻ms : 0;
|
||||
|
||||
// Bug here when charts have an extra roll ?
|
||||
if(!IsEnded[NowShowingNumber])
|
||||
{
|
||||
if (TJAPlayer3.DTX.listChip.Count <= 0) continue;
|
||||
@ -501,6 +512,7 @@ namespace TJAPlayer3
|
||||
return base.On進行描画();
|
||||
}
|
||||
|
||||
// Regular ingame exams draw
|
||||
public void DrawExam(Dan_C[] dan_C)
|
||||
{
|
||||
int count = 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user