mBaaS上に任意のコードを保存し、実行できるスクリプト機能ですが、特に使われると思うのがゲーム分野です。チート対策であったり、ガチャ機能などに使えると考えています。
その筆頭とも言えるのがUnityではないでしょうか。今回はUnity SDKからの実行方法を紹介します。
Unity SDKを組み込む
任意のUnityプロジェクトへUnity SDKを組み込む方法はイントロダクション (Unity) : クイックスタートを参照してください。基本的にはNCMB.unitypackageをインポートして、空のゲームオブジェクトを作ってキーを設定する程度です。
スクリプトを実行する
実際に呼び出し方ですが、次のようなコードを書きます。NCMBScriptのインスタンスを作る際に、一つ目の引数が実行するスクリプトのファイル名、二つ目がHTTPメソッドになります。
後はExecuteAsyncを実行します。HTTPヘッダー、データ、クエリの3つを指定できます。データやクエリはDictionaryで定義してください。
NCMBScript script = new NCMBScript ("helloworld.js", NCMBScript.MethodType.GET); // パラメータを使う場合 Dictionary<string, object> query = new Dictionary<string, object> (){ { "name", "tarou" } }; script.ExecuteAsync (null, null, query, (byte[] result, NCMBException e) => { if (e != null) { // 失敗 } else { // 成功 Debug.Log(System.Text.Encoding.UTF8.GetString(result)); } });
実行後、非同期で結果が返ってきます。スクリプト側から送信したデータはバイト文字列になって返ってきますので、 System.Text.Encoding.UTF8.GetString(result)
などとして文字列にします。さらにこれをLitJsonなどを使ってオブジェクトに変換すれば使いやすくなるでしょう。
ぜひUnity SDKでもスクリプトをお試しください!