我对 UDK 的脚本编写经验几乎为零,但我认为我正在尝试做的事情相当简单。我想在脚本中定义一个变量,然后我可以在 Kismet 中访问它。
这是我到目前为止所拥有的:
MyGameInfo.uc 看起来像这样
class MyGameInfo extends UDKGame;
defaultproperties{
PlayerControllerClass=class'MyGameInfo.MyPlayerController'
}
event InitGame( string Options, out string Error )
{
// Call the parent(i.e. GameInfo) InitGame event version and pass the parameters
super.InitGame( Options, Error );
// Unreal Engine 3
`log( "Hello, world!" );
}
MyPlayerController.uc 看起来像:
class MyPlayerController extends UDKPlayerController;
var() localized string LangText;
defaultproperties{
LangText="asdfasdf";
}
然后,在 Kismet 中,我使用 Get Property,以玩家 0 作为目标,尝试获取属性 LangText。我将字符串输出用于绘制文本(是的,我确保设置了字体)。
它看起来像这样:
我觉得我真的很接近,但绘制文本中没有显示任何文本。有任何想法吗?
另外,我为什么要这样做?出于本地化目的。据我所知,在 Kismet 中使用本地化字符串绘制文本并不容易。我的想法只是为每段对话创建一个本地化字符串,然后根据需要从 Kismet 调用这些字符串。