world

worldオブジェクトはPyxenのエンティティシステムの中核です。エンティティのライフサイクル、コンポーネントストレージ、クエリを管理します。

参照:ゲームループ


エンティティのライフサイクル

生成

e = world.spawn(name="enemy", x=100, y=50)

オプションのコンポーネント付きで新しいエンティティを作成します。

参照:spawn()


破棄

world.destroy(e)

エンティティとそのすべてのコンポーネントを削除します。

参照:destroy()


クエリ

world.all()

for e in world.all("enemy", without=("dead",)):
    ...

必要なコンポーネントに一致するエンティティのイテレータを返します。

参照:world.all()


検索

world.get()

名前でエンティティを取得します。

player = world.get(name="player")

同じ名前のエンティティが複数ある場合、最小のエンティティIDを持つものが返されます。

参照:world.get()


空間システム

GridMap

エンティティに空間グリッドコンテナをアタッチします。

e.map = GridMap(rows=10, columns=10, size=(16,16))

参照:GridMap

GridBody

グリッドベースの衝突と移動をアタッチします。

e.body = GridBody(...)

参照:GridBody