mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2026-02-07 18:46:49 +01:00
Load talks from MainQuestData
This commit is contained in:
@@ -63,6 +63,10 @@ public class MainQuestData {
|
||||
|
||||
this.talks = this.talks.stream()
|
||||
.filter(Objects::nonNull).toList();
|
||||
// Apply talk data to the quest talk map.
|
||||
this.talks.forEach(talkData -> GameData.getQuestTalkMap().put(
|
||||
talkData.getId(), this.getId()));
|
||||
// Apply additional sub-quest data to sub-quests.
|
||||
Arrays.stream(this.subQuests).forEach(quest -> {
|
||||
var questData = GameData.getQuestDataMap().get(quest.getSubId());
|
||||
if (questData != null) questData.applyFrom(quest);
|
||||
|
||||
@@ -1,33 +1,28 @@
|
||||
package emu.grasscutter.data.excels;
|
||||
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import lombok.AccessLevel;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.experimental.FieldDefaults;
|
||||
|
||||
@ResourceType(name = "ChapterExcelConfigData.json")
|
||||
@Getter
|
||||
@Setter // TODO: remove on next API break
|
||||
@FieldDefaults(level = AccessLevel.PRIVATE)
|
||||
public class ChapterData extends GameResource {
|
||||
// Why public? TODO: privatise next API break
|
||||
public static final Map<Integer, ChapterData> beginQuestChapterMap = new HashMap<>();
|
||||
public static final Map<Integer, ChapterData> endQuestChapterMap = new HashMap<>();
|
||||
|
||||
@Getter(onMethod_ = @Override)
|
||||
int id;
|
||||
|
||||
int beginQuestId;
|
||||
int endQuestId;
|
||||
int needPlayerLevel;
|
||||
|
||||
@Override
|
||||
public void onLoad() {
|
||||
beginQuestChapterMap.put(beginQuestId, this);
|
||||
beginQuestChapterMap.put(endQuestId, this);
|
||||
}
|
||||
}
|
||||
package emu.grasscutter.data.excels;
|
||||
|
||||
import emu.grasscutter.data.GameResource;
|
||||
import emu.grasscutter.data.ResourceType;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
@ResourceType(name = "ChapterExcelConfigData.json")
|
||||
public class ChapterData extends GameResource {
|
||||
@Getter private static final Map<Integer, ChapterData> beginQuestChapterMap
|
||||
= new HashMap<>();
|
||||
@Getter private static final Map<Integer, ChapterData> endQuestChapterMap
|
||||
= new HashMap<>();
|
||||
|
||||
@Getter(onMethod_ = @Override)
|
||||
private int id;
|
||||
private int beginQuestId;
|
||||
private int endQuestId;
|
||||
private int needPlayerLevel;
|
||||
|
||||
@Override
|
||||
public void onLoad() {
|
||||
beginQuestChapterMap.put(beginQuestId, this);
|
||||
beginQuestChapterMap.put(endQuestId, this);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user