public static UniqueTree GetImmediateCopy(this TreeInfo tree, string newName, string newDescription = "", uint treeID = 0) { string oldName = tree.name; tree.CopyInfo(newName); PrefabCollection <BuildingInfo> .BindPrefabs(); tree.CopyFields(newName); TreeInfo newInfo = PrefabCollection <TreeInfo> .FindLoaded(newName); if (treeID != 0) { TreeManager.instance.m_trees.m_buffer[treeID].Info = newInfo; TreeManager.instance.m_trees.m_buffer[treeID].UpdateTree(treeID); TreeManager.instance.UpdateTreeRenderer(treeID, true); TreeManager.instance.UpdateTree(treeID); } return(new UniqueTree(newInfo, oldName, newName, newDescription)); }