Added basic AiScore functionality
Nothing was added to the database, so the main database comparison logic isn't there yet, but I added some comments describing how it should be updating.
This commit is contained in:
parent
90878fa848
commit
de1a50682e
@ -15,6 +15,59 @@ public class GetAiScoreController : BaseController<GetAiScoreController>
|
||||
Result = 1
|
||||
};
|
||||
|
||||
// There's either 3 or 5 total sections
|
||||
// SectionNo doesn't seem to actually affect which section is being assigned to, only the List order matters
|
||||
response.AryBestSectionDatas.Add(new GetAiScoreResponse.AiBestSectionData()
|
||||
{
|
||||
SectionNo = 1,
|
||||
Crown = (uint)CrownType.Clear,
|
||||
Score = 100000,
|
||||
GoodCnt = 100,
|
||||
OkCnt = 50,
|
||||
NgCnt = 25,
|
||||
PoundCnt = 12
|
||||
});
|
||||
response.AryBestSectionDatas.Add(new GetAiScoreResponse.AiBestSectionData()
|
||||
{
|
||||
SectionNo = 2,
|
||||
Crown = (uint)CrownType.Gold,
|
||||
Score = 100001,
|
||||
GoodCnt = 101,
|
||||
OkCnt = 50,
|
||||
NgCnt = 25,
|
||||
PoundCnt = 12
|
||||
});
|
||||
response.AryBestSectionDatas.Add(new GetAiScoreResponse.AiBestSectionData()
|
||||
{
|
||||
SectionNo = 3,
|
||||
Crown = (uint)CrownType.Dondaful,
|
||||
Score = 100002,
|
||||
GoodCnt = 102,
|
||||
OkCnt = 50,
|
||||
NgCnt = 25,
|
||||
PoundCnt = 12
|
||||
});
|
||||
response.AryBestSectionDatas.Add(new GetAiScoreResponse.AiBestSectionData()
|
||||
{
|
||||
SectionNo = 4,
|
||||
Crown = (uint)CrownType.Gold,
|
||||
Score = 100003,
|
||||
GoodCnt = 103,
|
||||
OkCnt = 50,
|
||||
NgCnt = 25,
|
||||
PoundCnt = 12
|
||||
});
|
||||
response.AryBestSectionDatas.Add(new GetAiScoreResponse.AiBestSectionData()
|
||||
{
|
||||
SectionNo = 5,
|
||||
Crown = (uint)CrownType.Clear,
|
||||
Score = 100004,
|
||||
GoodCnt = 104,
|
||||
OkCnt = 50,
|
||||
NgCnt = 25,
|
||||
PoundCnt = 12
|
||||
});
|
||||
|
||||
return Ok(response);
|
||||
}
|
||||
}
|
@ -36,7 +36,7 @@ public class InitialDataCheckController : BaseController<InitialDataCheckControl
|
||||
{
|
||||
Result = 1,
|
||||
IsDanplay = true,
|
||||
IsAibattle = false,
|
||||
IsAibattle = true,
|
||||
IsClose = false,
|
||||
DefaultSongFlg = enabledArray,
|
||||
AchievementSongBit = enabledArray,
|
||||
|
@ -63,6 +63,13 @@ public class PlayResultController : BaseController<PlayResultController>
|
||||
{
|
||||
var stageData = playResultData.AryStageInfoes[songNumber];
|
||||
|
||||
if (playMode == PlayMode.AiBattle)
|
||||
{
|
||||
await UpdateAiBattleData(request, stageData);
|
||||
// Update AI win count here somewhere, or in UpdatePlayData?
|
||||
// I have no clue how to update input median or variance
|
||||
}
|
||||
|
||||
await UpdateBestData(request, stageData, bestData);
|
||||
|
||||
await UpdatePlayData(request, songNumber, stageData, lastPlayDatetime);
|
||||
@ -208,6 +215,19 @@ public class PlayResultController : BaseController<PlayResultController>
|
||||
await songBestDatumService.UpdateOrInsertSongBestDatum(bestDatum);
|
||||
}
|
||||
|
||||
private async Task UpdateAiBattleData(PlayResultRequest request, StageData stageData)
|
||||
{
|
||||
for (int i = 0; i < stageData.ArySectionDatas.Count; i++)
|
||||
{
|
||||
// Only update crown if it's a higher crown than the previous best crown
|
||||
|
||||
// Maybe have a "SectionNo" variable for which section number it is on the DB
|
||||
// compare DB.SectionNo == i
|
||||
// if any aspect of the section is higher than the previous best, update it
|
||||
// Similar to Dan best play updates
|
||||
}
|
||||
}
|
||||
|
||||
private static CrownType PlayResultToCrown(StageData stageData)
|
||||
{
|
||||
var crown = (CrownType)stageData.PlayResult;
|
||||
|
Loading…
Reference in New Issue
Block a user