diff --git a/app/pages/PageEnigma/datastructures/clips/clip_ui.ts b/app/pages/PageEnigma/datastructures/clips/clip_ui.ts index 0c50561c54..2d2b773f19 100644 --- a/app/pages/PageEnigma/datastructures/clips/clip_ui.ts +++ b/app/pages/PageEnigma/datastructures/clips/clip_ui.ts @@ -14,6 +14,7 @@ export class ClipUI { length: number; // in frames should_play: boolean; clip_uuid: string; + keyframe_offset: number; constructor( version: number, @@ -26,6 +27,7 @@ export class ClipUI { object_name: string, offset: number, length: number, + keyframe_offset: number = 0, ) { this.version = version; this.group = group; // Only needed for UI @@ -41,6 +43,7 @@ export class ClipUI { this.offset = offset; this.length = length; this.should_play = true; + this.keyframe_offset = keyframe_offset; } toJSON(): any { @@ -55,6 +58,7 @@ export class ClipUI { media_id: this.media_id, start_offset: this.offset, ending_offset: this.length, + keyframe_offset: this.keyframe_offset, }; } } diff --git a/app/pages/PageEnigma/js/timeline.ts b/app/pages/PageEnigma/js/timeline.ts index 8dbcbb58ee..e578d35dcf 100644 --- a/app/pages/PageEnigma/js/timeline.ts +++ b/app/pages/PageEnigma/js/timeline.ts @@ -199,8 +199,9 @@ export class TimeLine { keyframe_uuid, uuid, object_name, - data_json['offset'], - this.absolute_end)) + 0, + this.absolute_end, + data_json['offset'])) } this.scene.createPoint(data_json['position'], data_json['keyframe_uuid']); diff --git a/app/pages/PageEnigma/proxy/storyteller_proxy_timeline.ts b/app/pages/PageEnigma/proxy/storyteller_proxy_timeline.ts index 788637432e..8c0c08051f 100644 --- a/app/pages/PageEnigma/proxy/storyteller_proxy_timeline.ts +++ b/app/pages/PageEnigma/proxy/storyteller_proxy_timeline.ts @@ -69,7 +69,8 @@ export class StoryTellerProxyTimeline { element.media_id, element.clip_uuid, element.object_uuid, element.object_name, - element.start_offset, element.ending_offset); + element.start_offset, element.ending_offset, + element.keyframe_offset); new_clips.push(clip); } }