Fix quests always showing dungeon IDs

This commit is contained in:
KingRainbow44 2023-04-20 00:26:35 -04:00
parent a53328346a
commit 84c5a76e5d
No known key found for this signature in database
GPG Key ID: FC2CB64B00D257BE

View File

@ -288,21 +288,19 @@ public class GameQuest {
* is the dungeon's scene point.
*/
public List<IntIntImmutablePair> getDungeonIds() {
var conditions =
this.getQuestData().getFinishCond().stream()
.filter(cond -> cond.getType() == QuestContent.QUEST_CONTENT_ENTER_DUNGEON)
.toList();
// Check if this quest is active.
if (this.state != QuestState.UNFINISHED) return List.of();
return conditions.stream()
.map(
condition -> {
var params = condition.getParam();
// The first parameter is the ID of the dungeon.
// The second parameter is the dungeon entry's scene point.
// ex. [1, 1] = dungeon ID 1, scene point 1 or 'KaeyaDungeon'.
return new IntIntImmutablePair(params[0], params[1]);
})
.toList();
return this.getQuestData().getFinishCond().stream()
.filter(cond -> cond.getType() == QuestContent.QUEST_CONTENT_ENTER_DUNGEON)
.map(condition -> {
var params = condition.getParam();
// The first parameter is the ID of the dungeon.
// The second parameter is the dungeon entry's scene point.
// ex. [1, 1] = dungeon ID 1, scene point 1 or 'KaeyaDungeon'.
return new IntIntImmutablePair(params[0], params[1]);
})
.toList();
}
public void save() {