最近の研究ではまた、LUA制御UIを使用する方法を所有し、その後、オンラインプレゼンテーションを見て、XLuaを使用することを決め、結局、アウトTXの父、それがどのように自分の使用を疑問に、維持し、それが使用可能な記録として出てきました。
もちろん、XLua更新は主にそれを試してみて、どのように相互作用とC#を見るために自分自身を持って、熱のために使用されています。
そして、アドレスXLuaをダウンロードします。https://github.com/Tencent/xLua
ダウンロードが完了した後、内部のプロジェクトの下のフォルダAssectのものは、準備ができて、名前空間XLuaの導入に使用します。
使用して System.IOを; //は、とパスを入力するために、この空間に導入 使っUnityEngine; 使用 XLua; //は、最初Xlua名前空間導入 パブリック クラスCSToLua:{MonoBehaviour // この初期化のために使用 無効(スタート){ LuaEnvルア = 新新を LuaEnv(); // 私たちは、新しいクラスの使用と同様、このステップを、実行する必要がありますが、これはLuaの置き換え lua.AddLoader(CustomLoaderを); // これはLuaのためのカスタム・ロード・パスであるので、このカスタムパスで見つけることができ lua.DoStringを(「必要『MainLuaは、』」); // これはMainLuaのためのロードされたLUAスクリプトの名前である } //更新が呼び出されたフレームごとにいったん 無効に更新(){ } プライベート バイト [] CustomLoader(REF 文字列のファイルパスを) // これは、インターネットをチェックしているAPIの下、機能がカスタムパスを返すとして、使用することができます { //をABは、ローカルパスを指定することができるパッケージを読み取るようにリダイレクトすることができる 文字列 STR = Application.dataPath + " /ルア/ " +ファイルパス+ " .lua " ; DEBUG.LOG(STR); IF (File.Exists( STR)) 戻りFile.ReadAllBytes(STR); 戻り NULL ; } }
この実行した後、その後、ルアウは、それを実行する方法ですか?そして、それを使用する方法である必要があり、このライフサイクルと更新機能で団結?そして、何を実現
まず、ユニティ、それが実行を停止させるために更新のための委員会の設立にしたいです
使用してUnityEngineを。 パブリック デリゲート 無効LuaUpdate(); パブリック クラスLuaBehaviour:MonoBehaviour { 公共LuaUpdate luaUpdate。 ボイド開始(){ }
// 関数が更新を行われたデリゲートLuaUpdate期間 ボイド更新を(){ IF(luaUpdate =!ヌル) luaUpdate(); } }
その後、我々は、これは、その後のLUA関数が繰り返しLuaUpdateに追加手数料を実行する必要があります、LUAマウントコードを使用することです見つけるに行きます
-私LuaのマウントはToLuaVoid上記の目的を、我々は最初のゲームオブジェクトを見つけ、時間の団結で、あなたはCSに.API(名前空間API)が必要です。
-使用するときのためとして、ときに使用する「:」私はそれが入ってくるかどうか、自己が、まだすべて間違って変更した後、ここで変更に変更はシンボルが使用したものを知って、理解していないにも関するチェックを。「」。(他のすべての情報を確認して) luaBehaviour = CS.UnityEngine.GameObject.Find(" ToLuaVoid " ):GetComponent(typeof演算(CS.LuaBehaviour)) -全くのluaのC#がないため、ここでは組み立てのため、typeof演算(タイプ)を使用します<T>この一般的な使用 のローカル TimeCount = 0 ローカル 関数UpdataLua() TimeCount = TimeCount + CS.UnityEngine.Time.deltaTime 印刷(TimeCount) 終了 luaBehaviour.luaUpdate = UpdataLuaを - Luaので機能するには、デリゲートの内部に追加しました(初回のみ空気が報告されますので、=、+ =、することはできませんが、C#には、あなたが最初に+ =を使用することができますと