Compare commits
2 Commits
a11e708c4d
...
a3f042e7f7
Author | SHA1 | Date | |
---|---|---|---|
a3f042e7f7 | |||
fba93075b0 |
@ -488,7 +488,6 @@ if (Round_ForceEndRound || Round_SkipPauseRound) {
|
|||||||
Match_RegistrationIsOpen = False;
|
Match_RegistrationIsOpen = False;
|
||||||
|
|
||||||
// Eliminate last players
|
// Eliminate last players
|
||||||
Race::SortScores(Race::C_Sort_PrevRaceTime);
|
|
||||||
declare Integer ParticipantsNb = GetParticipantsNb();
|
declare Integer ParticipantsNb = GetParticipantsNb();
|
||||||
declare Integer AliveScoresNb = GetAliveScoresNb();
|
declare Integer AliveScoresNb = GetAliveScoresNb();
|
||||||
declare Integer LossOfLifeNb = GetLossOfLifeNb(Match_CurrentRoundNb, AliveScoresNb);
|
declare Integer LossOfLifeNb = GetLossOfLifeNb(Match_CurrentRoundNb, AliveScoresNb);
|
||||||
@ -842,7 +841,6 @@ Text GetScoreRemainingLivesText(CSmScore _Score) {
|
|||||||
Void UpdateCustomRanking(Boolean _DisplayTimes) {
|
Void UpdateCustomRanking(Boolean _DisplayTimes) {
|
||||||
declare Text[] AccountIdsToDisplay = [];
|
declare Text[] AccountIdsToDisplay = [];
|
||||||
declare Text[][Text] CustomPoints = [];
|
declare Text[][Text] CustomPoints = [];
|
||||||
declare Integer[Text] CustomTimes = [];
|
|
||||||
|
|
||||||
declare Integer ParticipantsNb = GetParticipantsNb();
|
declare Integer ParticipantsNb = GetParticipantsNb();
|
||||||
declare Integer AliveScoresNb = GetAliveScoresNb();
|
declare Integer AliveScoresNb = GetAliveScoresNb();
|
||||||
@ -854,10 +852,10 @@ Void UpdateCustomRanking(Boolean _DisplayTimes) {
|
|||||||
AccountIdsToDisplay.add(Score.User.WebServicesUserId);
|
AccountIdsToDisplay.add(Score.User.WebServicesUserId);
|
||||||
if (!ScoreIsAlive(Score)) continue;
|
if (!ScoreIsAlive(Score)) continue;
|
||||||
|
|
||||||
Scores::SetPlayerMatchPoints(Score, Scores.count + ParticipantsNb - Index);
|
if (_DisplayTimes) {
|
||||||
if (_DisplayTimes && Score.PrevRaceTimes.count == 0) {
|
Scores::SetPlayerMatchPoints(Score, ParticipantsNb + ParticipantsNb - Index);
|
||||||
CustomTimes[Score.User.WebServicesUserId] = 0; //@ prev race is updated automatically at the moment (22/10/20) so we need to use this
|
} else {
|
||||||
} else if (!_DisplayTimes) {
|
Scores::SetPlayerMatchPoints(Score, ParticipantsNb + GetScoreRemainingLives(Score));
|
||||||
CustomPoints[Score.User.WebServicesUserId] = [GetScoreRemainingLivesText(Score)];
|
CustomPoints[Score.User.WebServicesUserId] = [GetScoreRemainingLivesText(Score)];
|
||||||
}
|
}
|
||||||
if (AliveScoresNb == 1 && ParticipantsNb > 1) {
|
if (AliveScoresNb == 1 && ParticipantsNb > 1) {
|
||||||
@ -869,7 +867,9 @@ Void UpdateCustomRanking(Boolean _DisplayTimes) {
|
|||||||
declare Text[Text] CustomRanks = [];
|
declare Text[Text] CustomRanks = [];
|
||||||
Race::SortScores(Race::C_Sort_TotalPoints);
|
Race::SortScores(Race::C_Sort_TotalPoints);
|
||||||
foreach (Score in Scores) {
|
foreach (Score in Scores) {
|
||||||
if (ScoreIsAlive(Score)) {
|
if (AliveScoresNb == 1 && ScoreIsAlive(Score)) {
|
||||||
|
CustomRanks[Score.User.WebServicesUserId] = "1";
|
||||||
|
} else if (ScoreIsAlive(Score)) {
|
||||||
CustomRanks[Score.User.WebServicesUserId] = "-";
|
CustomRanks[Score.User.WebServicesUserId] = "-";
|
||||||
} else if (ScoreIsRegistered(Score)) {
|
} else if (ScoreIsRegistered(Score)) {
|
||||||
CustomRanks[Score.User.WebServicesUserId] = ""^Rank;
|
CustomRanks[Score.User.WebServicesUserId] = ""^Rank;
|
||||||
@ -881,7 +881,6 @@ Void UpdateCustomRanking(Boolean _DisplayTimes) {
|
|||||||
UIModules_ScoresTable::SetCustomRanks(CustomRanks);
|
UIModules_ScoresTable::SetCustomRanks(CustomRanks);
|
||||||
UIModules_ScoresTable::DisplayOnly(AccountIdsToDisplay); // Display only registered players
|
UIModules_ScoresTable::DisplayOnly(AccountIdsToDisplay); // Display only registered players
|
||||||
UIModules_ScoresTable::SetCustomPoints(CustomPoints);
|
UIModules_ScoresTable::SetCustomPoints(CustomPoints);
|
||||||
UIModules_ScoresTable::SetCustomTimes(CustomTimes);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //
|
||||||
@ -1332,7 +1331,8 @@ Void UpdateRanking() {
|
|||||||
} else {
|
} else {
|
||||||
declare Ident PlayerId = ScoreIdToPlayerId.get(Score.Id, NullId);
|
declare Ident PlayerId = ScoreIdToPlayerId.get(Score.Id, NullId);
|
||||||
if (PlayerId != NullId) {
|
if (PlayerId != NullId) {
|
||||||
declare CSmPlayer Player <=> Players[PlayerId];
|
declare CSmPlayer Player <=> Players.get(PlayerId, Null);
|
||||||
|
if (Player != Null) {
|
||||||
PlayerState.CPNb = Player.RaceWaypointTimes.count;
|
PlayerState.CPNb = Player.RaceWaypointTimes.count;
|
||||||
PlayerState.IsNotPlaying = (Player.SpawnStatus == CSmPlayer::ESpawnStatus::NotSpawned);
|
PlayerState.IsNotPlaying = (Player.SpawnStatus == CSmPlayer::ESpawnStatus::NotSpawned);
|
||||||
PlayerState.Finished = (Score.PrevRaceTimes.count != 0);
|
PlayerState.Finished = (Score.PrevRaceTimes.count != 0);
|
||||||
@ -1343,6 +1343,7 @@ Void UpdateRanking() {
|
|||||||
if (GlobalLastCPTime < PlayerState.LastCPTime) GlobalLastCPTime = PlayerState.LastCPTime;
|
if (GlobalLastCPTime < PlayerState.LastCPTime) GlobalLastCPTime = PlayerState.LastCPTime;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!Ranking.existskey(PlayerState.CPNb)) Ranking[PlayerState.CPNb] = [];
|
if (!Ranking.existskey(PlayerState.CPNb)) Ranking[PlayerState.CPNb] = [];
|
||||||
if (!Ranking[PlayerState.CPNb].existskey(PlayerState.LastCPTime)) Ranking[PlayerState.CPNb][PlayerState.LastCPTime] = [];
|
if (!Ranking[PlayerState.CPNb].existskey(PlayerState.LastCPTime)) Ranking[PlayerState.CPNb][PlayerState.LastCPTime] = [];
|
||||||
@ -1393,7 +1394,10 @@ Void UpdateRanking() {
|
|||||||
PlayerState.InDanger = (Rank >= LostOfLifeRank);
|
PlayerState.InDanger = (Rank >= LostOfLifeRank);
|
||||||
|
|
||||||
if (FirstPlayer == Null) {
|
if (FirstPlayer == Null) {
|
||||||
FirstPlayer <=> Players[ScoreIdToPlayerId.get(PlayerState.ScoreId, NullId)];
|
declare Ident FirstPlayerId = ScoreIdToPlayerId.get(PlayerState.ScoreId, NullId);
|
||||||
|
if (FirstPlayerId != NullId) {
|
||||||
|
FirstPlayer <=> Players[FirstPlayerId];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (FirstPlayer != Null) {
|
if (FirstPlayer != Null) {
|
||||||
|
Loading…
Reference in New Issue
Block a user