メインコンテンツへスキップ

エク

プロパティ一覧

種類

インフォメーション

Currently, storing dynamically sized objects or lists isn’t supported. We’re actively exploring this feature and would love to hear about your specific use cases.

The following data types are useful for creating Schema properties on a Custom Component or references to a specific type.

TypeDescription
ecs.eidEntity Reference
ecs.f3232-bit floating-point number
ecs.f6464-bit floating-point number
ecs.i3232-bit integer
ecs.ui88-bit unsigned integer
ecs.ui3232-bit unsigned integer
ecs.stringString
ecs.booleanBoolean

関数一覧

登録コンポーネント

コンポーネントをECSに登録する。

ecs.registerComponent({
name: string,
schema: Schema,
data: Schema,
schemaDefaults: Object,
add: function
remove: function,
tick: function
})// -> コンポーネント・ハンドル

状態

パラメーターType商品説明
トリガー(必須)Record<String, Trigger[]>このステートと遷移する次のステートの名前とそのトリガー。
オンエンター機能ステートに入る前に呼ばれる関数。
終了機能ステートに入る前に呼ばれる関数。

トリガー

イベントトリガー
パラメーターType商品説明
タイプ (必須)constant: 'event'トリガーのタイプを示す定数
イベント (必須)ストリングこのトリガーとなるイベントタイプ
ターゲットイードこのトリガーの状態を変更したいエンティティ
遷移前(event) => booleanトランジションの前に実行される関数で、結果が真であればトランジションは終了し、状態は変化しない。
タイムアウトトリガー
パラメーターType商品説明
タイプ (必須)constant: 'timeout'トリガーのタイプを示す定数
タイムアウト(必須)番号遷移するまでのミリ秒数

ステートマシン

ステートマシンを作る。

ecs.createStateMachine(world, owner, {initialState: string, states: Record<string, State>}) // -> ステートマシンID

デリートステートマシン

ステートマシンを削除する。

ecs.deleteStateMachine(world, machineId) // -> void

定義状態

状態を定義する。

ecs.defineState(name: string) // -> 状態

初回

この状態をステートマシンの初期状態としてマークする。

ecs.defineState(name).initial() // -> void

オンエンター

この状態になったときに実行するコールバックを設定する。

ecs.defineState(name).onEnter(callback) // -> void

オンイベント

イベント
パラメーターType商品説明
ターゲットイードこのトリガーの状態を変更したいエンティティ
遷移前(event) => boolean遷移の前に実行される関数で、結果が真であれば遷移は終了し、状態は変化しない。

イベント受信時に次のステートへの遷移をトリガーする。

ecs.defineState(name).onEvent(event: string, nextState: string | State, args: EventObject) // -> void

終了

この状態を終了するときに実行するコールバックを設定します。

ecs.defineState(name).onExit(callback) // -> void

ウェイト

状態を移行する前に待つ。

ecs.defineState(name).wait(waitTime: number, nextState: string | State) // -> void

定義システム

システムを定義する。

ecs.defineSystem([terms]: string[], behavior: function) // -> システム

定義クエリ

クエリーを定義する。

ecs.defineQuery([terms: string]) // -> コールバック

属性の取得

内蔵コンポーネントもecsのプロパティとして公開されている。

ecs.getAttribute(attributeName: string) // -> その名前で登録されている属性。

リスト属性

属性のリストを返す。

ecs.listAttributes() // -> string[].

ゲットビヘイビア

登録されているビヘイビアのリストを返します。

ecs.getBehaviors() // -> function[].

レジスタ・ビヘイビア

刻みごとにワールド上で実行される関数を登録する。

ecs.registerBehavior(behavior: function) // -> void

アンレジスタービヘイビア

ビヘイビアを非アクティブにする。

ecs.unregisterBehavior(behavior: function) // -> void