Commit graph

112 commits

Author SHA1 Message Date
0eaff0adad -Components onDestroy() support (called when component is destoryed)
-EntityCallers pointers to systems now are updated after adding new system (or in future system reloading)
-fixed compilation issue referenced to filling components with default values
2018-09-13 21:32:13 +02:00
624c899c8c -getComponent functions for Template and Entity
-error information about adding system with non existing component (prints name of system and component)
-fill components in template with default values
2018-09-13 20:53:34 +02:00
4b19907c03 -formatted all files with dfmt
-more messy tests
-some documentation
-some useful code moved to functions
-adding components to existing entity
-opportunity to get entity by ID
-fixed calculating deltas
-sorting IDs arrays for allocating Templates
-fixed alignment caluclation
-added compile-time checks for "component_id" member existing in component
2018-09-13 00:10:48 +02:00
d3222eefbb -some usefull functions for IDManager
-added EntityManager.removeEntity(EntityID)
-EntitiesBlock now has ID usefull for updating first_free_block in EntityInfo
2018-09-12 17:38:41 +02:00
ae53e13d42 -add systemCaller to entity only if their components matches
-System onEnable() and onDisable() callbacks
2018-09-12 15:28:10 +02:00
17551b08a5 -IDManager
-times counting for tests
2018-09-12 14:01:35 +02:00
86e4e57f74 Format files with dfmt 2018-09-10 21:48:33 +02:00
2069e7b420 Optimize alignNum 2018-09-10 21:38:36 +02:00
9c5a60447c Update for all entities 2018-09-10 18:52:31 +02:00
4d35bc2a1b Support more than one bucket for given entity type 2018-09-10 18:34:40 +02:00
a61a54b43f -components and infos are now stored in hash maps
-adding entities
-Template allocating and freeing
-Deltas calulating for components in EntityType
-Updating for every EntityType and System
-Generate deltas, components list, and functions callers for Systems
2018-09-09 23:28:18 +02:00
6217aec6be -changed README
-license changed to BSD (maybe temporary)
-added configurations to dub.json
-initial ECS implementation (WIP):
	-Manager, System, Entity, Component
	-registering components
	-registering systems
	-calling update
2018-09-07 20:54:29 +02:00