Class BaseController<Command, ActionData>

通信レイヤーにおける Action / Command の送受信時の処理を定義する抽象 Controller 。

このクラスは以下の役割を持つ。

  1. Controller は View または信用された経路から send された action を Controller#onAction で受け取ることができる。
  2. Controller は View に対して Command を broadcast する。

本クラスのインスタンスはサーバ側にのみ仮想的に存在している。 View は View#send() によってのみ Controller に対して Action を送信することができる。 View が自身の保持する Controller#broadcast() を呼び出しても機能しないことに注意。

Type Parameters

  • Command
  • ActionData

Hierarchy (view full)

Implements

Constructors

Properties

actionReceived: Trigger<Action<ActionData>> = ...

Deprecated

非推奨である。将来的に削除される。代わりに onActionReceive を利用すること。

asset: AssetAccessor

本 Controller と紐づく Scene のアセットへのアクセサ。

assets: {
    [assetId: string]: g.Asset;
} = {}

本 Controller と紐づく Scene のアセット情報。 this.onLoad の発火以降しか取得できない点に注意。

Type declaration

  • [assetId: string]: g.Asset
broadcastDataBuffer: BroadcastDataBuffer<any>[] = []
loaded: Trigger<void> = ...

Deprecated

非推奨である。将来的に削除される。代わりに onLoad を利用すること。

lockingProcessingMessageEvent: boolean = false

本 controller による g.MessageEvent の処理を一時的にロックするかどうか。

通常、ゲーム開発者は本値を参照・また書き換えてはならない。

onActionReceive: Trigger<Action<ActionData>> = ...

この Controller に対して action が送信された際に発火する trigger 。

onLoad: Trigger<void> = ...

本 controller によるイベントの消化を一時的にロックするかどうか。

onUpdate: Trigger<void> = ...
timerManager: TimerManager
update: Trigger<void> = ...

Deprecated

非推奨である。将来的に削除される。代わりに onUpdate を利用すること。

Methods

  • View に対してデータをブロードキャストする。

    Parameters

    • data: Command

      プロードキャストするデータ

    • priority: number = 0

      プライオリティ。省略時は 0

    Returns void

  • Parameters

    • func: (() => void)
        • (): void
        • Returns void

    • interval: number
    • Optional owner: any

    Returns TimerIdentifier

  • Parameters

    • func: (() => void)
        • (): void
        • Returns void

    • duration: number
    • Optional owner: any

    Returns TimerIdentifier

Generated using TypeDoc