行動
はじめに
ビヘイビアとは、World上で1ティックごとに実行される関数のことです。
行動の定義
次のコードは、カスタムビヘイビアを定義する方法の例です:
const behavior = (world) => {
if (world.time.elapsed % 5000 - world.time.delta < 0) {
const eid = world.createEntity()
Enemy.set(world, eid, {health: 100})
}.
}
行動の登録
次のコードは、カスタムビヘイビアを登録する方法の例です:
ecs.registerBehavior(振る舞い)
ビヘイビアを無効にする
次のコードは、カスタムビヘイビアを無効にする方法の例です:
ecs.unregisterBehavior(振る舞い)
ビヘイビア・クエリー
ビヘイビアは、エンティティIDのリストを返すクエリを実行できます。
const query = ecs.defineQuery([Enemy, Health])
const enemyDieBehavior = (world) => {
const enemies = query(world)
for (const enemyId in enemies) {
if (Health.get(world, enemyId).hp <= 0) {
world.destroyEntity(enemyId)
}.
}
}
ecs.registerBehavior(enemyDieBehavior)