任意のクラスにインターフェースを実装することで
エンジンと連携したコンポーネントやハンドラを作成することができます。
IJNEventHandler
エンジンからの各種コールバックを受け取る
Method |
notes |
void OnExecute(JNCommandBundle) |
実行されたコマンドを受け取る |
void OnExecuted(JNCommandBundle) |
実行済みのコマンドを受け取る |
void OnAddBacklog(List) |
IAddBacklogを実装した実行済みのコマンドを取得する |
void OnLoadProgress(int, int) |
シナリオのロード進捗を取得する |
void OnLoadFinish() |
ロード完了 |
void OnFinish(object) |
シナリオの再生終了 |
IJNResourceHandler
標準で提供されるコマンドからのリソースのロードは、本インターフェースを通して要求される
型引数Tは要求されるリソースの型を示す
Method |
notes |
IEnumerator OnResourceLoad(JNResourceRequest) |
リソースのロード要求 |
IEnumerator OnPreprocessResourceLoad(JNResourceRequest) |
リソースのプレロード要求 |
IJNInputHandler
エンジンから各イベントへの登録が行われる
任意のタイミングや処理でイベントの発火を行う必要がある
event |
notes |
Action EOnClick |
クリック判定イベント |
クリックの判定を任意の処理に仕込むことができる。
public class InputHandler : MonoBehaviour, IPointerClickHandler, IJNInputHandler
{
public event Action EOnClick;
public void OnPointerClick(PointerEventData pointerEventData)
{
EOnClick.Invoke();
}
}
IJNView
実装したクラスをエンジンに登録することで、全コマンドのAwakeで渡される
Scene内部への処理はそのViewを通して処理することができる
Method |
notes |
void Initialize() |
初期化 |
IJNCanvasUI
標準で提供されるCanvas操作を含むコマンドを使用する際には
IJNViewを実装したクラスに、本インターフェースを実装する
Property |
notes |
JNCanvasManager CanvasManager |
get |
IJNSelectUI
標準で提供されるSelectコマンドを使用する際には
IJNViewを実装したクラスに、本インターフェースを実装する
Property |
notes |
JNSelectWindow SelectWindow |
get |
IJNTextUI
標準で提供されるTextコマンドを使用する際には
IJNViewを実装したクラスに、本インターフェースを実装する
Property |
notes |
JNTextWindow TextWindow |
get |