|
@@ -3820,16 +3820,16 @@ class SceneEditor {
|
|
var newElements = [];
|
|
var newElements = [];
|
|
var lastElem = elements[elements.length-1];
|
|
var lastElem = elements[elements.length-1];
|
|
var lastIndex = lastElem.parent.children.indexOf(lastElem);
|
|
var lastIndex = lastElem.parent.children.indexOf(lastElem);
|
|
|
|
+ beginRebuild();
|
|
for(i => elt in elements) {
|
|
for(i => elt in elements) {
|
|
@:pirvateAccess var clone = hrt.prefab.Prefab.createFromDynamic(haxe.Json.parse(haxe.Json.stringify(elt.serialize())), null, elt.parent.shared);
|
|
@:pirvateAccess var clone = hrt.prefab.Prefab.createFromDynamic(haxe.Json.parse(haxe.Json.stringify(elt.serialize())), null, elt.parent.shared);
|
|
var index = lastIndex+1+i;
|
|
var index = lastIndex+1+i;
|
|
elt.parent.children.insert(index, clone);
|
|
elt.parent.children.insert(index, clone);
|
|
@:bypassAccessor clone.parent = elt.parent;
|
|
@:bypassAccessor clone.parent = elt.parent;
|
|
- clone.shared.current2d = elt.parent.findFirstLocal2d();
|
|
|
|
- clone.shared.current3d = elt.parent.findFirstLocal3d();
|
|
|
|
- clone.make();
|
|
|
|
-
|
|
|
|
autoName(clone);
|
|
autoName(clone);
|
|
|
|
+
|
|
|
|
+ queueRebuild(clone);
|
|
|
|
+
|
|
newElements.push(clone);
|
|
newElements.push(clone);
|
|
|
|
|
|
var all = clone.flatten();
|
|
var all = clone.flatten();
|
|
@@ -3842,6 +3842,7 @@ class SceneEditor {
|
|
else elt.parent.children.insert(index, clone);
|
|
else elt.parent.children.insert(index, clone);
|
|
});
|
|
});
|
|
}
|
|
}
|
|
|
|
+ endRebuild();
|
|
|
|
|
|
refreshTree(function() {
|
|
refreshTree(function() {
|
|
selectElements(newElements, NoHistory);
|
|
selectElements(newElements, NoHistory);
|