diff --git a/[editor]/edf/edf.lua b/[editor]/edf/edf.lua index 903a5a404..73ba1cfef 100644 --- a/[editor]/edf/edf.lua +++ b/[editor]/edf/edf.lua @@ -25,9 +25,19 @@ end -- basic element create functions table (cdata holds creation parameters) local edfCreateBasic = { - object = function(cdata) + object = function(cdata, editorMode) local object = createObject(cdata.model, cdata.position[1], cdata.position[2], cdata.position[3], cdata.rotation[1], cdata.rotation[2], cdata.rotation[3]) setObjectScale(object, cdata.scale) + -- Create object's LOD if editing a map in Map Editor & LODs are enabled in the map's settings + if editorMode and exports.editor_main:getMapSettingValue("useLODs") then + local lodModel = getObjectLowLODModel(cdata.model) + if lodModel then + local lodObject = createObject(lodModel, cdata.position[1], cdata.position[2], cdata.position[3], cdata.rotation[1], cdata.rotation[2], cdata.rotation[3], true) + setObjectScale(lodObject, cdata.scale) + setLowLODElement(object, lodObject) + setElementParent(lodObject, object) + end + end return object end, vehicle = function(cdata) @@ -499,7 +509,7 @@ function edfRepresentElement(theElement, resource, parentData, editorMode, restr end -- create our basic element - component = edfCreateBasic[definedChild.type](childData) + component = edfCreateBasic[definedChild.type](childData, editorMode) componentHandle = component @@ -598,7 +608,7 @@ function edfCreateElement(elementType, creatorClient, fromResource, parametersTa childData[property] = parametersTable[property] or propertyData.default end - theElement = edfCreateBasic[elementType](childData) + theElement = edfCreateBasic[elementType](childData, editorMode) setElementInterior(theElement, parametersTable.interior) setElementDimension(theElement, parametersTable.dimension) diff --git a/[editor]/edf/meta.xml b/[editor]/edf/meta.xml index 074e23c42..0c2818897 100644 --- a/[editor]/edf/meta.xml +++ b/[editor]/edf/meta.xml @@ -1,6 +1,7 @@ +