? ? ? ? 在使用虚幻做成的服务端的时候,可以通过-port=1234的参数来启动,这样就可以直接监听这个端口,但是,在服务端内部是很难得到这个正在监听的端口的。
? ? ? ? 所以,需要一些方法来获取这个端口。当然为了方便,是要能够使用蓝图获取这个的。
? ? ? ? 首先,新建一个C++类,选择BlueprintFunctionLibrary
? ? ? ? 在.h文件中的GENERATED_BODY()下面添加
UFUNCTION(BlueprintPure, Category = "Net")
static const FString GetPort(UObject* WorldContextObject);
? ? ? ? 然后在.cpp文件中添加
const FString UMyBlueprintFunctionLibrary::GetPort(UObject* WorldContextObject)
{
if (WorldContextObject)
{
if (UWorld* World = WorldContextObject->GetWorld())
{
return FString::FromInt(World->URL.Port);
}
}
return "WorldContextObject FALSE";
}
编译后,就可以在蓝图中使用GetPort来直接获取这个正在监听的端口啦~
|