mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-01-19 20:24:49 +00:00
493 lines
21 KiB
Plaintext
493 lines
21 KiB
Plaintext
//-----------------------------------------------------------------------------
|
|
// Copyright (c) 2012 GarageGames, LLC
|
|
//
|
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
// of this software and associated documentation files (the "Software"), to
|
|
// deal in the Software without restriction, including without limitation the
|
|
// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
|
// sell copies of the Software, and to permit persons to whom the Software is
|
|
// furnished to do so, subject to the following conditions:
|
|
//
|
|
// The above copyright notice and this permission notice shall be included in
|
|
// all copies or substantial portions of the Software.
|
|
//
|
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
|
// IN THE SOFTWARE.
|
|
//-----------------------------------------------------------------------------
|
|
function ESettingsWindow::onAdd(%this)
|
|
{
|
|
new ArrayObject(EditorSettingsPageList);
|
|
new ArrayObject(GameSettingsPageList);
|
|
}
|
|
|
|
function ESettingsWindow::startup( %this )
|
|
{
|
|
%this.addEditorSettingsPage("Axis", "Axis Gizmo");
|
|
%this.addEditorSettingsPage("General", "General Settings");
|
|
%this.addEditorSettingsPage("Camera", "Camera Settings");
|
|
%this.addEditorSettingsPage("SceneEditor", "Scene Editor");
|
|
%this.addEditorSettingsPage("ShapeEditor", "Shape Editor");
|
|
%this.addEditorSettingsPage("NavEditor", "Navigation Editor");
|
|
%this.addEditorSettingsPage("Theme", "Theme");
|
|
%this.addEditorSettingsPage("AssetEditing", "Asset Editing");
|
|
%this.addEditorSettingsPage("PostFX", "Post Effects");
|
|
|
|
%this.addGameSettingsPage("GameGeneral", "General");
|
|
%this.addGameSettingsPage("Gameplay", "Gameplay");
|
|
%this.addGameSettingsPage("Paths", "Paths");
|
|
%this.addGameSettingsPage("UI", "UI");
|
|
%this.addGameSettingsPage("LevelDefaults", "Level Defaults");
|
|
%this.addGameSettingsPage("GameOptions", "Game Options");
|
|
%this.addGameSettingsPage("AssetManagement", "Asset Management");
|
|
|
|
%this.mode = "Editor";
|
|
}
|
|
|
|
function ESettingsWindow::onWake( %this )
|
|
{
|
|
|
|
}
|
|
|
|
function ESettingsWindow::hideDialog( %this )
|
|
{
|
|
Canvas.popDialog(EditorSettingsWindow);
|
|
}
|
|
|
|
function ESettingsWindow::ToggleVisibility()
|
|
{
|
|
if(ESettingsWindow.isAwake())
|
|
{
|
|
Canvas.popDialog(EditorSettingsWindow);
|
|
}
|
|
else
|
|
{
|
|
Canvas.pushDialog(EditorSettingsWindow);
|
|
|
|
ESettingsWindow.selectWindow();
|
|
ESettingsWindow.setCollapseGroup(false);
|
|
|
|
ESettingsWindowList.clear();
|
|
|
|
ESettingsWindowList.setSelectedById( 1 );
|
|
}
|
|
}
|
|
|
|
function ESettingsWindow::toggleProjectSettings(%this)
|
|
{
|
|
%this.ToggleVisibility();
|
|
|
|
%count = GameSettingsPageList.count();
|
|
for(%i=0; %i < %count; %i++)
|
|
{
|
|
%settingsPageText = GameSettingsPageList.getValue(%i);
|
|
ESettingsWindowList.addRow( %i, %settingsPageText );
|
|
}
|
|
ESettingsWindowList.sort(0);
|
|
|
|
%this.mode = "Project";
|
|
ESettingsWindow.text = "Game Project Settings";
|
|
|
|
ESettingsWindowList.setSelectedById( 1 );
|
|
}
|
|
|
|
function ESettingsWindow::toggleEditorSettings(%this)
|
|
{
|
|
%this.ToggleVisibility();
|
|
|
|
%count = EditorSettingsPageList.count();
|
|
for(%i=0; %i < %count; %i++)
|
|
{
|
|
%settingsPageText = EditorSettingsPageList.getValue(%i);
|
|
ESettingsWindowList.addRow( %i, %settingsPageText );
|
|
}
|
|
ESettingsWindowList.sort(0);
|
|
|
|
%this.mode = "Editor";
|
|
ESettingsWindow.text = ":: Editor Settings";
|
|
|
|
ESettingsWindowList.setSelectedById( 1 );
|
|
}
|
|
|
|
function ESettingsWindow::addEditorSettingsPage(%this, %settingsPageName, %settingsPageText)
|
|
{
|
|
EditorSettingsPageList.add(%settingsPageName, %settingsPageText);
|
|
}
|
|
|
|
function ESettingsWindow::addGameSettingsPage(%this, %settingsPageName, %settingsPageText)
|
|
{
|
|
GameSettingsPageList.add(%settingsPageName, %settingsPageText);
|
|
}
|
|
|
|
function ESettingsWindow::refresh(%this)
|
|
{
|
|
if(ESettingsWindow.selectedPageId !$= "")
|
|
{
|
|
ESettingsWindowList.setSelectedById( ESettingsWindow.selectedPageId );
|
|
}
|
|
else
|
|
{
|
|
ESettingsWindowList.setSelectedById( 1 );
|
|
}
|
|
}
|
|
|
|
//-----------------------------------------------------------------------------
|
|
|
|
function ESettingsWindowList::onSelect( %this, %id, %text )
|
|
{
|
|
SettingsInspector.clearFields();
|
|
|
|
if(ESettingsWindow.mode $= "Editor")
|
|
%pageName = EditorSettingsPageList.getKey(EditorSettingsPageList.getIndexFromValue(%text));
|
|
else
|
|
%pageName = GameSettingsPageList.getKey(GameSettingsPageList.getIndexFromValue(%text));
|
|
|
|
eval("ESettingsWindow.get" @ %pageName @ "Settings();");
|
|
|
|
ESettingsWindow.selectedPageId = %id;
|
|
ESettingsWindow.selectedPageText = %text;
|
|
}
|
|
|
|
//Read/write field functions
|
|
function SettingsInspector::addSettingsField(%this, %settingsFieldName, %labelText, %fieldType, %tooltip, %fieldData)
|
|
{
|
|
%moddedSettingsFieldName = strreplace(%settingsFieldName, "/", "-");
|
|
|
|
if(ESettingsWindow.mode $= "Editor")
|
|
%this.addCallbackField(%moddedSettingsFieldName, %labelText, %fieldType, "", EditorSettings.value(%settingsFieldName), %fieldData, "changeEditorSetting");
|
|
else
|
|
%this.addCallbackField(%moddedSettingsFieldName, %labelText, %fieldType, "", ProjectSettings.value(%settingsFieldName), %fieldData, "changeEditorSetting");
|
|
}
|
|
|
|
function SettingsInspector::changeEditorSetting(%this, %varName, %value)
|
|
{
|
|
%varName = strreplace(%varName, "-", "/");
|
|
|
|
if(%value !$= "" && (fileExt(%value) !$= "" || IsDirectory(%value)))
|
|
{
|
|
%value = makeFullPath(%value);
|
|
}
|
|
|
|
//echo("Set " @ %varName @ " to be " @ %value);
|
|
|
|
if(ESettingsWindow.mode $= "Editor")
|
|
%oldValue = EditorSettings.value(%varName);
|
|
else
|
|
%oldValue = ProjectSettings.value(%varName);
|
|
|
|
if(ESettingsWindow.mode $= "Editor")
|
|
EditorSettings.setValue(%varName, %value);
|
|
else
|
|
ProjectSettings.setValue(%varName, %value);
|
|
|
|
if(ESettingsWindow.mode $= "Editor")
|
|
{
|
|
%success = EditorSettings.write();
|
|
|
|
//Bit of a hack, but if we were editing the theme, reexec the profiles for GUI
|
|
if(ESettingsWindow.selectedPageText $= "Theme")
|
|
exec("tools/gui/profiles.ed." @ $TorqueScriptFileExtension);
|
|
}
|
|
else
|
|
%success = ProjectSettings.write();
|
|
|
|
if(%oldValue !$= %value)
|
|
ESettingsWindow.schedule(15,"refresh");
|
|
}
|
|
|
|
function GuiInspectorVariableGroup::buildOptionsSettingField(%this, %fieldName, %fieldLabel, %fieldDesc, %fieldDefaultVal, %fieldDataVals, %ownerObj)
|
|
{
|
|
%extent = 200;
|
|
|
|
%fieldCtrl = %this.createInspectorField();
|
|
|
|
%fieldCtrl.setHeightOverride(true, 200);
|
|
|
|
%extent = %this.stack.getExtent();
|
|
|
|
%width = mRound(%extent/2);
|
|
%height = 20;
|
|
%inset = 10;
|
|
|
|
%editControl = new GuiPopUpMenuCtrl() {
|
|
class = "guiInspectorListField";
|
|
maxPopupHeight = "200";
|
|
sbUsesNAColor = "0";
|
|
reverseTextList = "0";
|
|
bitmapBounds = "16 16";
|
|
maxLength = "1024";
|
|
Margin = "0 0 0 0";
|
|
Padding = "0 0 0 0";
|
|
AnchorTop = "1";
|
|
AnchorBottom = "0";
|
|
AnchorLeft = "1";
|
|
AnchorRight = "0";
|
|
isContainer = "0";
|
|
Profile = "ToolsGuiPopUpMenuProfile";
|
|
HorizSizing = "right";
|
|
VertSizing = "bottom";
|
|
Position = %fieldCtrl.edit.position;
|
|
Extent = %fieldCtrl.edit.extent;
|
|
MinExtent = "8 2";
|
|
canSave = "1";
|
|
Visible = "1";
|
|
tooltipprofile = "ToolsGuiToolTipProfile";
|
|
tooltip = "";//%tooltip;
|
|
text = %fieldDefaultVal;
|
|
hovertime = "1000";
|
|
ownerObject = %ownerObj;
|
|
fieldName = %fieldName;
|
|
};
|
|
|
|
//set the field value
|
|
if(getSubStr(%this.fieldName, 0, 1) $= "$")
|
|
{
|
|
if(%fieldName $= "")
|
|
%editControl.setText(%fieldName);
|
|
}
|
|
else
|
|
{
|
|
//regular variable
|
|
%setCommand = %editControl @ ".setText(" @ %ownerObj @ "." @ %fieldName @ ");";
|
|
eval(%setCommand);
|
|
}
|
|
|
|
%listCount = getTokenCount(%fieldDataVals, ",");
|
|
|
|
for(%i=0; %i < %listCount; %i++)
|
|
{
|
|
%entryText = getToken(%fieldDataVals, ",", %i);
|
|
%editControl.add(%entryText);
|
|
}
|
|
|
|
%fieldCtrl.setCaption(%fieldLabel);
|
|
%fieldCtrl.setEditControl(%editControl);
|
|
|
|
%this.addInspectorField(%fieldCtrl);
|
|
}
|
|
|
|
//
|
|
// COMMON EDITOR SETTINGS
|
|
//
|
|
function ESettingsWindow::getAxisSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Gizmo");
|
|
SettingsInspector.addSettingsField("AxisGizmo/mouseRotateScalar", "Rotate Scalar", "float", "");
|
|
SettingsInspector.addSettingsField("AxisGizmo/mouseScaleScalar", "Scale Scalar", "float", "");
|
|
SettingsInspector.addSettingsField("AxisGizmo/renderWhenUsed", "Render When Manipulated", "bool", "");
|
|
SettingsInspector.addSettingsField("AxisGizmo/renderInfoText", "Render Tool Text", "bool", "");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Grid");
|
|
SettingsInspector.addSettingsField("AxisGizmo/Grid/renderPlane", "Render Plane", "bool", "");
|
|
SettingsInspector.addSettingsField("AxisGizmo/Grid/renderPlaneHashes", "Render Plane Hashes", "bool", "");
|
|
SettingsInspector.addSettingsField("AxisGizmo/Grid/planeDim", "Plane Size", "float", "");
|
|
SettingsInspector.addSettingsField("AxisGizmo/Grid/gridColor", "Plane Color", "colorI", "");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getGeneralSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Level Load");
|
|
SettingsInspector.addSettingsField("WorldEditor/LevelLoad/LoadMode", "Editor Startup Scene", "list", "When the editor loads, this setting dictates what scene is loaded first",
|
|
"Last Edited Level,Editor Default Scene");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Autosave");
|
|
SettingsInspector.addSettingsField("WorldEditor/AutosaveInterval", "Autosave Interval(in minutes)", "int", "");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("SubScenes");
|
|
SettingsInspector.addSettingsField("WorldEditor/subSceneCreateScalar", "SubScene Creation Scalar", "float", "Amount to scale SubScene's bounds by when creating from scene objects.", "1.5");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Paths");
|
|
//SettingsInspector.addSettingsField("WorldEditor/torsionPath", "Torsion Path", "filename", "");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Layout");
|
|
/*SettingsInspector.addSettingsField("WorldEditor/Layout/LayoutMode", "Editor Layout Mode", "list", "This dictates which layout style the editor should use." @
|
|
"WARNING - Modern layout is highlight experimental." @
|
|
"Updating this requires a restart of the program", "Classic,Modern");*/
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getCameraSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Mouse Control");
|
|
SettingsInspector.addSettingsField("Camera/invertYAxis", "Invert Y Axis", "bool", "");
|
|
SettingsInspector.addSettingsField("Camera/invertXAxis", "Invert X Axis", "bool", "");
|
|
SettingsInspector.endGroup();
|
|
|
|
//Based on currently loaded level(rootScene)
|
|
SettingsInspector.startGroup(EditorSettings.value("WorldEditor/newLevelFile") @ " Camera");
|
|
SettingsInspector.addSettingsField("Camera/cameraMinSpeed", "Camera Speed Min", "float", "");
|
|
SettingsInspector.addSettingsField("Camera/cameraMaxSpeed", "Camera Speed Max", "float", "");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getNavEditorSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Test Spawn");
|
|
SettingsInspector.addSettingsField("NavEditor/SpawnClass", "Spawn Class", "list", "", "AIPlayer");
|
|
SettingsInspector.addSettingsField("NavEditor/SpawnDatablock", "Datablock", "string", "");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Colors");
|
|
SettingsInspector.addSettingsField("NavEditor/HoverSplineColor", "Hover Spline", "colorI", "");
|
|
SettingsInspector.addSettingsField("NavEditor/SelectedSplineColor", "Select Spline", "colorI", "");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getSceneEditorSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Render");
|
|
SettingsInspector.addSettingsField("WorldEditor/Render/renderObjHandle", "Object Icons", "bool", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Render/renderObjText", "Object Text", "bool", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Render/showMousePopupInfo", "Mouse Popup Info", "bool", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Render/renderPopupBackground", "Popup Menu Background", "bool", "");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Colors");
|
|
SettingsInspector.addSettingsField("WorldEditor/Grid/gridColor", "Grid Major", "colorI", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Grid/gridMinorColor", "Grid Minor", "colorI", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Grid/gridOriginColor", "Grid Origin", "colorI", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Color/dragRectColor", "Drag Rect", "colorI", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Color/objectTextColor", "Object Text", "colorI", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Color/popupTextColor", "Popup Text", "colorI", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Color/popupBackgroundColor", "Popup Back", "colorI", "");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Misc");
|
|
//SettingsInspector.addSettingsField("WorldEditor/forceLoadDAE", "Force Load DAE", "bool", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/dropAtScreenCenterScalar", "Screen Center Scalar", "string", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/dropAtScreenCenterMax", "Screen Center Max", "string", "");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Layout");
|
|
SettingsInspector.addSettingsField("WorldEditor/forceSidebarToSide", "Force Sidebar Window(s) to side", "bool", "1");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Behavior");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/snapGround", "Snap Objects to Ground", "bool", "0");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/TerrainSnapOffsetZ", "Add Offset of Terrain Snapping on Z Axis", "bool", "0");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/OffsetZValue", "Offset Z Value", "float", "0.01");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/snapSoft", "Do Soft Snap", "bool", "0");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/snapSoftSize", "Soft Snap Size", "bool", "2");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/boundingBoxCollision", "Use Bounding Box for Collision", "bool", "0");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/objectsUseBoxCenter", "Objects Use Box Center", "bool", "1");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/dropAtScreenCenterScalar", "Drop at Sceen Center Scalar", "bool", "1");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/dropAtScreenCenterMax", "Drop at Screen Center Max Dist.", "float", "100");
|
|
SettingsInspector.addSettingsField("WorldEditor/Tools/UseGroupCenter", "Use Group Center when snapping", "bool", "0");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Images");
|
|
SettingsInspector.addSettingsField("WorldEditor/Images/defaultHandle", "Default Handle Image", "string", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Images/lockedHandle", "Locked Handle Image", "string", "");
|
|
SettingsInspector.addSettingsField("WorldEditor/Images/selectHandle", "Selected Handle Image", "string", "");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getShapeEditorSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Colors");
|
|
SettingsInspector.addSettingsField("ShapeEditor/SunDiffuseColor", "Sun Diffuse", "colorI", "");
|
|
SettingsInspector.addSettingsField("ShapeEditor/SunAmbientColor", "Sun Ambient", "colorI", "");
|
|
SettingsInspector.addSettingsField("ShapeEditor/BackgroundColor", "Background", "colorI", "");
|
|
SettingsInspector.endGroup();
|
|
|
|
SettingsInspector.startGroup("Grid");
|
|
SettingsInspector.addSettingsField("ShapeEditor/GridSize", "Grid Size", "float", "");
|
|
SettingsInspector.addSettingsField("ShapeEditor/GridDimension", "Grid Dimension", "vector2", "");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getThemeSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Colors");
|
|
SettingsInspector.addSettingsField("Theme/headerColor", "Headerbar Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/windowBackgroundColor", "Window Background Color", "ColorI", "");
|
|
|
|
SettingsInspector.addSettingsField("Theme/tabsColor", "Tabs Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/tabsHLColor", "Tabs Highlight Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/tabsSELColor", "Tabs Selected Color", "ColorI", "");
|
|
|
|
SettingsInspector.addSettingsField("Theme/dividerDarkColor", "Divider Dark Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/dividerMidColor", "Divider Mid Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/dividerLightColor", "Divider Light Color", "ColorI", "");
|
|
|
|
SettingsInspector.addSettingsField("Theme/headerTextColor", "Header Text Color", "ColorI", "");
|
|
|
|
SettingsInspector.addSettingsField("Theme/fieldTextColor", "Field Text Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/fieldTextHLColor", "Field Text Highlight Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/fieldTextSELColor", "Field Text Selected Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/fieldTextNAColor", "Field Text N/A Color", "ColorI", "");
|
|
|
|
SettingsInspector.addSettingsField("Theme/fieldBGColor", "Field Background Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/fieldBGHLColor", "Field Background Highlight Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/fieldBGSELColor", "Field Background Selected Color", "ColorI", "");
|
|
|
|
SettingsInspector.addSettingsField("Theme/tooltipBGColor", "Tooltip Background Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/tooltipTextColor", "Tooltip Text Highlight Color", "ColorI", "");
|
|
SettingsInspector.addSettingsField("Theme/tooltipDivColor", "Tooltip Divider Color", "ColorI", "");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getPostFXSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Post Effects");
|
|
SettingsInspector.addField("Edit Default PostFX", "Edit Default PostFX Config", "button", "Edit Default PostFX Config", "", "PostFXEditor.editDefaultPostFXSettings();");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getObjectEditorSettings(%this)
|
|
{
|
|
}
|
|
//
|
|
// COMMON GAME SETTINGS
|
|
//
|
|
function ESettingsWindow::getGameGeneralSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("General");
|
|
SettingsInspector.addSettingsField("General/ProjectName", "Project Name", "string", "");
|
|
SettingsInspector.addSettingsField("General/LightingMode", "Lighting Mode", "list", "Dictates the lighting mode the project uses", "Deferred,Forward");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getPathsSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Paths");
|
|
SettingsInspector.addSettingsField("Paths/splashImagePath", "Splash Image", "filename", "");
|
|
SettingsInspector.addSettingsField("Paths/iconImagePath", "Icon Image", "filename", "");
|
|
SettingsInspector.addSettingsField("Paths/missingTexturePath", "Missing Texture Image", "filename", "");
|
|
SettingsInspector.addSettingsField("Paths/noMaterialPath", "No Material Image", "filename", "");
|
|
SettingsInspector.addSettingsField("Paths/errorMaterialMath", "Error Material Image", "filename", "");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getUISettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("UI");
|
|
SettingsInspector.addSettingsField("UI/playGUIName", "Play GUI Name", "string", "");
|
|
SettingsInspector.addSettingsField("UI/mainMenuName", "Main Menu GUI Name", "string", "");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getGameplaySettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Game Modes");
|
|
SettingsInspector.addSettingsField("Gameplay/GameModes/defaultModeName", "Default Gamemode Name", "string", "");
|
|
SettingsInspector.endGroup();
|
|
}
|
|
|
|
function ESettingsWindow::getGameOptionsSettings(%this)
|
|
{
|
|
SettingsInspector.startGroup("Options Settings");
|
|
SettingsInspector.addSettingsField("Options/optionsList", "OptionsList", "OptionsSetting", "");
|
|
SettingsInspector.endGroup();
|
|
}
|