diff --git a/Engine/source/T3D/assets/LevelAsset.cpp b/Engine/source/T3D/assets/LevelAsset.cpp index de6f18caa..8b043a0f1 100644 --- a/Engine/source/T3D/assets/LevelAsset.cpp +++ b/Engine/source/T3D/assets/LevelAsset.cpp @@ -362,22 +362,29 @@ void LevelAsset::unloadDependencies() } DefineEngineMethod(LevelAsset, getLevelPath, const char*, (),, - "Creates a new script asset using the targetFilePath.\n" - "@return The bool result of calling exec") + "Gets the full path of the asset's defined level file.\n" + "@return The string result of the level path") { return object->getLevelPath(); } +DefineEngineMethod(LevelAsset, getPreviewImagePath, const char*, (), , + "Gets the full path of the asset's defined preview image file.\n" + "@return The string result of the level preview image path") +{ + return object->getImagePath(); +} + DefineEngineMethod(LevelAsset, getPostFXPresetPath, const char*, (), , - "Creates a new script asset using the targetFilePath.\n" - "@return The bool result of calling exec") + "Gets the full path of the asset's defined postFX preset file.\n" + "@return The string result of the postFX preset path") { return object->getPostFXPresetPath(); } DefineEngineMethod(LevelAsset, getDecalsPath, const char*, (), , - "Creates a new script asset using the targetFilePath.\n" - "@return The bool result of calling exec") + "Gets the full path of the asset's defined decal file.\n" + "@return The string result of the decal path") { return object->getDecalsPath(); } diff --git a/Templates/BaseGame/game/data/ui/guis/chooseLevelDlg.cs b/Templates/BaseGame/game/data/ui/guis/chooseLevelDlg.cs index 3632da70b..adfb088b0 100644 --- a/Templates/BaseGame/game/data/ui/guis/chooseLevelDlg.cs +++ b/Templates/BaseGame/game/data/ui/guis/chooseLevelDlg.cs @@ -83,9 +83,9 @@ function ChooseLevelDlg::onWake( %this ) for(%i=0; %i < LevelListEntries.count(); %i++) { - %levelEntry = LevelListEntries.getKey(%i); + %levelAsset = LevelListEntries.getKey(%i); - LevelList.addRow(getField(%levelEntry, 0), "", -1, -30); + LevelList.addRow(%levelAsset.LevelName, "", -1, -30); } LevelList.setSelected(0); @@ -140,45 +140,33 @@ function ChooseLevelDlg::addMissionFile( %this, %file ) function ChooseLevelDlg::addLevelAsset( %this, %levelAsset ) { - %file = %levelAsset.getAssetId(); - - %levelName = %levelAsset.LevelName; - %levelDesc = %levelAsset.description; - %levelPreview = %levelAsset.levelPreviewImage; - - LevelListEntries.add( %levelName TAB %file TAB %levelDesc TAB %levelPreview ); + LevelListEntries.add( %levelAsset ); } function LevelList::onChange(%this) { %index = %this.getSelectedRow(); - %levelEntry = LevelListEntries.getKey(%index); + %levelAsset = LevelListEntries.getKey(%index); // Get the name - ChooseLevelWindow->LevelName.text = getField(%levelEntry, 0); + ChooseLevelWindow->LevelName.text = %levelAsset.LevelName; - // Get the level file - $selectedLevelAsset = getField(%levelEntry, 1); + // Get the level id + $selectedLevelAsset = %levelAsset.getAssetId(); // Find the preview image - %levelPreview = getField(%levelEntry, 3); + %levelPreview = %levelAsset.getPreviewImagePath(); // Test against all of the different image formats // This should probably be moved into an engine function - if (isFile(%levelPreview @ ".png") || - isFile(%levelPreview @ ".jpg") || - isFile(%levelPreview @ ".bmp") || - isFile(%levelPreview @ ".gif") || - isFile(%levelPreview @ ".jng") || - isFile(%levelPreview @ ".mng") || - isFile(%levelPreview @ ".tga")) - ChooseLevelWindow->CurrentPreview.setBitmap(%previewFile); + if (isFile(%levelPreview)) + ChooseLevelWindow->CurrentPreview.setBitmap(%levelPreview); else ChooseLevelWindow->CurrentPreview.setBitmap("data/ui/images/no-preview"); // Get the description - %levelDesc = getField(%levelEntry, 2); + %levelDesc = %levelAsset.description; if(%levelDesc !$= "") {