Skip to content

Releases: HexDecimal/python-tcod-ecs

4.4.0

12 Aug 05:03
4.4.0
3f66157

Choose a tag to compare

Added

  • Added WorldQuery.get_entities for returning query results as a set.

Fixed

  • Removed an optimization which would check the equality of component values, since this would fail when comparing some types such as NumPy arrays.
  • Removed unintentional iteration behavior from World. #8

4.3.1

02 Aug 10:52
4.3.1
4a3ebfe

Choose a tag to compare

Fixed

  • Relation component lookup tables were replacing previous entries instead of adding to them.
  • Relation ellipsis lookup tables were discarding entities which still had a relevant relation.

4.3.0

01 Aug 16:55
4.3.0
1fa2f47

Choose a tag to compare

Added

  • tcod.ecs.typing.ComponentKey is now stable.
  • Can now register a callback to be called on component changes.

Fixed

  • Fixed stale caches for relation component queries.

4.2.1

29 Jul 01:38
4.2.1
b235b9d

Choose a tag to compare

Fixed

  • Unpickled worlds had reversed relations from what were saved.

4.2.0

29 Jul 00:37
4.2.0
087a06b

Choose a tag to compare

Added

  • Entity.relation_components now has MutableMapping functionality.
  • You can now set the value of Entity.relation_components[component_key] = {target: component}.
  • Added the Entity.clear method which effectively deletes an entity by removing its components/tags/relations.
    This does not delete relations targeting the cleared entity.

4.1.0

28 Jul 13:55
4.1.0
51a5b45

Choose a tag to compare

Added

  • Now supports giving a query to another relation query, allowing conditional and chained relation queries. #1

4.0.0

26 Jul 13:06
4.0.0
4d0a488

Choose a tag to compare

Changed

  • The type returned by World.Q has been renamed from tcod.ecs.Query to tcod.ecs.query.WorldQuery.
  • Serialization format updated.

Performance

  • Added a simple query cache.
    A query is automatically cached until any of the components/tags/relations it depends on have changed.