I am in the process of porting a script from UT3 to UDK. The script is for class ZOUIFrontEnd_MainMenu extends UTUIFrontEnd_MainMenu
.
I'm getting the following compiler error:
C:\UDK\UDK-2010-03\Development\Src\FixIt\Classes\ZOUIFrontEnd_MainMenu.uc(18) : Error, Bad or missing expression in Call to 'OpenSceneByName', parameter 1
The referenced line is as follows:
OpenSceneByName(SettingsScene);
Okay, so I figured the OpenSceneByName function changed in UDK. Tracing the path of inheritance all the way up to UDKUIScene.uc, I found the definition:
function UIScene OpenSceneByName(string SceneToOpen, bool bSkipAnimation=false, optional delegate<OnSceneActivated> SceneDelegate=None)
Assuming SettingsScene is a string, everything looks fine, right? So I figured I would find SettingsScene to make sure it's a string. Well doing a search for "SettingsScene" in all files turned up only one other line; UTGameReplicationInfo.uc line 334:
UTPC.OpenUIScene(class'UTUIFrontEnd_MainMenu'.default.SettingsScene);
But UTUIFrontEnd_MainMenu doesn't have a SettingsScene variable in it! Just to check, I changed my line of code to match:
OpenSceneByName(class'UTUIFrontEnd_MainMenu'.default.SettingsScene);
And indeed, I get the following compile error now:
C:\UDK\UDK-2010-03\Development\Src\FixIt\Classes\ZOUIFrontEnd_MainMenu.uc(18) : Error, Unknown Property 'SettingsScene' in 'Class UTGame.UTUIFrontEnd_MainMenu'
How does UTGameReplicationInfo.uc successfully compile? Where is the SettingsScene variable?