Update scene document migration to support new versions and add dialogue handling
This commit is contained in:
@@ -4217,7 +4217,9 @@ export function migrateSceneDocument(source: unknown): SceneDocument {
|
||||
source.version !== WHITEBOX_GEOMETRY_SCENE_DOCUMENT_VERSION &&
|
||||
source.version !== NPC_COLLIDER_SCENE_DOCUMENT_VERSION &&
|
||||
source.version !== PROJECT_SCHEDULER_FOUNDATION_SCENE_DOCUMENT_VERSION &&
|
||||
source.version !== EXPANDED_CONTROL_SURFACE_SCENE_DOCUMENT_VERSION
|
||||
source.version !== EXPANDED_CONTROL_SURFACE_SCENE_DOCUMENT_VERSION &&
|
||||
source.version !== SCHEDULER_ACTOR_ROUTINE_EFFECTS_SCENE_DOCUMENT_VERSION &&
|
||||
source.version !== PROJECT_DIALOGUE_LIBRARY_SCENE_DOCUMENT_VERSION
|
||||
) {
|
||||
throw new Error(
|
||||
`Unsupported scene document version: ${String(source.version)}.`
|
||||
@@ -4237,6 +4239,9 @@ export function migrateSceneDocument(source: unknown): SceneDocument {
|
||||
allowMissing:
|
||||
source.version < PROJECT_SCHEDULER_FOUNDATION_SCENE_DOCUMENT_VERSION
|
||||
}),
|
||||
dialogues: readProjectDialogueLibrary(source.dialogues, "dialogues", {
|
||||
allowMissing: source.version < PROJECT_DIALOGUE_LIBRARY_SCENE_DOCUMENT_VERSION
|
||||
}),
|
||||
world: readWorldSettings(source.world, {
|
||||
legacyProjectTimeValue:
|
||||
source.version < SCENE_DOCUMENT_VERSION ? source.time : undefined
|
||||
@@ -4369,7 +4374,11 @@ export function migrateProjectDocument(source: unknown): ProjectDocument {
|
||||
allowMissing:
|
||||
source.version < PROJECT_SCHEDULER_FOUNDATION_SCENE_DOCUMENT_VERSION
|
||||
}),
|
||||
activeSceneId: expectString(source.activeSceneId, "activeSceneId"),
|
||||
activeSceneId: expectString(source.activeSceneId, "activeSceneId"),
|
||||
dialogues: readProjectDialogueLibrary(source.dialogues, "dialogues", {
|
||||
allowMissing:
|
||||
source.version < PROJECT_DIALOGUE_LIBRARY_SCENE_DOCUMENT_VERSION
|
||||
}),
|
||||
scenes,
|
||||
materials,
|
||||
textures: expectEmptyCollection(source.textures, "textures"),
|
||||
|
||||
Reference in New Issue
Block a user