@@ -113,6 +113,7 @@ type NodeType =
113113 | 'item_display'
114114 | 'block_display'
115115 | 'text_display'
116+ | 'interaction'
116117 | 'structure'
117118 | 'camera'
118119 | 'locator'
@@ -122,14 +123,14 @@ type PluginNode =
122123 type : 'bone'
123124 parent ?: string
124125 default_transformation ?: NodeTransformation
125- display_properties ?: Record < string , unknown >
126+ entity_properties ?: Record < string , unknown >
126127 elements : BoneElement [ ]
127128 }
128129 | {
129130 type : Exclude < NodeType , 'bone' >
130131 parent ?: string
131132 default_transformation ?: NodeTransformation
132- display_properties ?: Record < string , unknown >
133+ entity_properties ?: Record < string , unknown >
133134 }
134135
135136type LoopMode = { type : 'once' } | { type : 'hold' } | { type : 'loop' ; loop_delay ?: string }
@@ -364,7 +365,7 @@ function serializeNode(
364365 return scrubUndefined ( {
365366 type : 'bone' ,
366367 ...base ,
367- display_properties : displayProps ,
368+ entity_properties : displayProps ,
368369 elements : serializeBoneElements ( model , {
369370 textureIdToKey : options . textureIdToKey ,
370371 textureKeyToPaletteId : options . textureKeyToPaletteId ,
@@ -375,7 +376,7 @@ function serializeNode(
375376 return scrubUndefined ( {
376377 type : 'item_display' ,
377378 ...base ,
378- display_properties : scrubUndefined ( {
379+ entity_properties : scrubUndefined ( {
379380 ...displayProps ,
380381 item : ( node as any ) . item ,
381382 item_display : ( node as any ) . item_display ,
@@ -386,7 +387,7 @@ function serializeNode(
386387 return scrubUndefined ( {
387388 type : 'block_display' ,
388389 ...base ,
389- display_properties : scrubUndefined ( {
390+ entity_properties : scrubUndefined ( {
390391 ...displayProps ,
391392 block_state : ( node as any ) . block ,
392393 } ) ,
@@ -397,7 +398,7 @@ function serializeNode(
397398 return scrubUndefined ( {
398399 type : 'text_display' ,
399400 ...base ,
400- display_properties : scrubUndefined ( {
401+ entity_properties : scrubUndefined ( {
401402 ...displayProps ,
402403 alignment : ( node as any ) . align ,
403404 background_color : argb ,
@@ -409,6 +410,15 @@ function serializeNode(
409410 } ) ,
410411 } satisfies PluginNode )
411412 }
413+ case 'interaction' :
414+ return scrubUndefined ( {
415+ type : 'interaction' ,
416+ ...base ,
417+ entity_properties : {
418+ width : node . width ,
419+ height : node . height ,
420+ } ,
421+ } )
412422 case 'struct' :
413423 return { type : 'structure' , ...base }
414424 case 'camera' :
@@ -704,7 +714,7 @@ export function exportPluginBlueprint(options: {
704714 }
705715
706716 const blueprint : PluginBlueprintJson = scrubUndefined ( {
707- format_version : 1 ,
717+ format_version : 2 ,
708718 settings : {
709719 id : aj . blueprint_id ,
710720 } ,
0 commit comments