mirror of
https://github.com/AxioDL/PrimeWorldEditor.git
synced 2025-12-10 14:07:56 +00:00
Added support for preview scale on script templates
This commit is contained in:
@@ -283,6 +283,14 @@ void CTemplateWriter::SaveScriptTemplate(CScriptTemplate *pTemp, const TString&
|
||||
pAssets->LinkEndChild(pAsset);
|
||||
}
|
||||
|
||||
// Preview Scale
|
||||
if (pTemp->mPreviewScale != 1.f)
|
||||
{
|
||||
XMLElement *pPreviewScale = scriptXML.NewElement("preview_scale");
|
||||
pEditor->LinkEndChild(pPreviewScale);
|
||||
pPreviewScale->SetText(pTemp->mPreviewScale);
|
||||
}
|
||||
|
||||
// Rot/Scale Type
|
||||
XMLElement *pRotType = scriptXML.NewElement("rotation_type");
|
||||
pEditor->LinkEndChild(pRotType);
|
||||
|
||||
@@ -385,6 +385,17 @@ CScriptTemplate* CTemplateLoader::LoadScriptTemplate(tinyxml2::XMLDocument *pDoc
|
||||
pAsset = pAsset->NextSiblingElement();
|
||||
}
|
||||
|
||||
// Preview Scale
|
||||
tinyxml2::XMLElement *pPreviewScale = pEditor->FirstChildElement("preview_scale");
|
||||
|
||||
if (pPreviewScale)
|
||||
{
|
||||
const char *kpScale = pPreviewScale->GetText();
|
||||
|
||||
if (kpScale)
|
||||
pScript->mPreviewScale = std::stof(kpScale);
|
||||
}
|
||||
|
||||
// Rotation
|
||||
tinyxml2::XMLElement *pRotType = pEditor->FirstChildElement("rotation_type");
|
||||
|
||||
|
||||
@@ -11,6 +11,7 @@ CScriptTemplate::CScriptTemplate(CMasterTemplate *pMaster)
|
||||
{
|
||||
mpMaster = pMaster;
|
||||
mVisible = true;
|
||||
mPreviewScale = 1.f;
|
||||
mVolumeShape = eNoShape;
|
||||
}
|
||||
|
||||
@@ -77,6 +78,11 @@ CScriptTemplate::EScaleType CScriptTemplate::ScaleType() const
|
||||
return mScaleType;
|
||||
}
|
||||
|
||||
float CScriptTemplate::PreviewScale() const
|
||||
{
|
||||
return mPreviewScale;
|
||||
}
|
||||
|
||||
u32 CScriptTemplate::ObjectID() const
|
||||
{
|
||||
return mObjectID;
|
||||
|
||||
@@ -62,8 +62,6 @@ private:
|
||||
CMasterTemplate *mpMaster;
|
||||
std::vector<SPropertySet> mPropertySets;
|
||||
std::list<CScriptObject*> mObjectList;
|
||||
ERotationType mRotationType;
|
||||
EScaleType mScaleType;
|
||||
TString mTemplateName;
|
||||
TString mSourceFile;
|
||||
u32 mObjectID;
|
||||
@@ -78,6 +76,10 @@ private:
|
||||
TIDString mLightParametersIDString;
|
||||
std::vector<SEditorAsset> mAssets;
|
||||
|
||||
float mPreviewScale;
|
||||
ERotationType mRotationType;
|
||||
EScaleType mScaleType;
|
||||
|
||||
// Preview Volume
|
||||
EVolumeShape mVolumeShape;
|
||||
TIDString mVolumeConditionIDString;
|
||||
@@ -100,6 +102,7 @@ public:
|
||||
u32 NumPropertySets() const;
|
||||
ERotationType RotationType() const;
|
||||
EScaleType ScaleType() const;
|
||||
float PreviewScale() const;
|
||||
u32 ObjectID() const;
|
||||
void SetVisible(bool visible);
|
||||
bool IsVisible() const;
|
||||
|
||||
Reference in New Issue
Block a user