From 9ea7674a0f4e2882af0df4c23464809e227afaad Mon Sep 17 00:00:00 2001 From: Osten <11805592+LagradOst@users.noreply.github.com> Date: Fri, 2 Feb 2024 22:18:54 +0100 Subject: [PATCH] Update MainAPI.kt --- .../java/com/lagradost/cloudstream3/MainAPI.kt | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/lagradost/cloudstream3/MainAPI.kt b/app/src/main/java/com/lagradost/cloudstream3/MainAPI.kt index a4edec33..7a25b738 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/MainAPI.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/MainAPI.kt @@ -1587,8 +1587,15 @@ data class AnimeLoadResponse( } override fun getTotalEpisodeIndex(episode: Int, season: Int): Int { + val displayMap = this.seasonNames?.associate { it.season to it.displaySeason } ?: emptyMap() + return this.episodes.maxOf { (_, episodes) -> - episodes.count { ((it.season ?: Int.MIN_VALUE) < season) && it.season != 0 } + episodes.count { episodeData -> + // Prioritize display season as actual season may be something random to fit multiple seasons into one. + val episodeSeason = displayMap[episodeData.season] ?: episodeData.season ?: Int.MIN_VALUE + // Count all episodes from season 1 to below the current season. + episodeSeason in 1.. + // Prioritize display season as actual season may be something random to fit multiple seasons into one. + val episodeSeason = displayMap[episodeData.season] ?: episodeData.season ?: Int.MIN_VALUE + // Count all episodes from season 1 to below the current season. + episodeSeason in 1..