From 4b8f3e6c4aed25a0184bdd4d116d3054cc406521 Mon Sep 17 00:00:00 2001 From: John <63141077+AconiteX@users.noreply.github.com> Date: Sat, 14 Aug 2021 22:04:35 -0400 Subject: [PATCH] Add JNI Method for isPlanetEnabledForCluster --- .../src/shared/ScriptMethodsPlanet.cpp | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/engine/server/library/serverScript/src/shared/ScriptMethodsPlanet.cpp b/engine/server/library/serverScript/src/shared/ScriptMethodsPlanet.cpp index 9f708a22..ff933506 100755 --- a/engine/server/library/serverScript/src/shared/ScriptMethodsPlanet.cpp +++ b/engine/server/library/serverScript/src/shared/ScriptMethodsPlanet.cpp @@ -47,6 +47,7 @@ namespace ScriptMethodsPlanetNamespace jstring JNICALL getBuildoutAreaName( JNIEnv *env, jobject self, jfloat x, jfloat z, jstring scene ); jfloatArray JNICALL getBuildoutAreaSizeAndCenter(JNIEnv *env, jobject self, jfloat x, jfloat z, jstring scene, jboolean ignoreInternal, jboolean allowComposite); void JNICALL requestSameServer(JNIEnv *env, jobject self, jlong object1, jlong object2); + jboolean JNICALL isPlanetEnabledForCluster(JNIEnv *env, jobject self, jstring planetName); } @@ -71,6 +72,7 @@ const JNINativeMethod NATIVES[] = { JF("getBuildoutAreaName", "(FFLjava/lang/String;)Ljava/lang/String;", getBuildoutAreaName), JF("getBuildoutAreaSizeAndCenter", "(FFLjava/lang/String;ZZ)[F", getBuildoutAreaSizeAndCenter), JF("_requestSameServer", "(JJ)V", requestSameServer), + JF("isPlanetEnabledForCluster", "(Ljava/lang/String;)Z", isPlanetEnabledForCluster), }; return JavaLibrary::registerNatives(NATIVES, sizeof(NATIVES)/sizeof(NATIVES[0])); @@ -548,4 +550,28 @@ void JNICALL ScriptMethodsPlanetNamespace::requestSameServer(JNIEnv *env, jobjec GameServer::getInstance().sendToPlanetServer(rssMessage); } +// ---------------------------------------------------------------------- + +/** + * @return true if the provided planet is turned on + */ +jboolean JNICALL ScriptMethodsPlanetNamespace::isPlanetEnabledForCluster(JNIEnv *env, jobject self, jstring planetName) +{ + JavaStringParam javaStringParam_planetName (planetName); + std::string scene; + if (!JavaLibrary::convert (javaStringParam_planetName, scene)) + { + DEBUG_WARNING (true, ("isSceneAvailable: failed to convert parameter 1 (planetName) to string")); + return 0; + } + if(GameServer::getInstance().isPlanetEnabledForCluster(scene)) + { + return JNI_TRUE; + } + else + { + return JNI_FALSE; + } +} + // ======================================================================