Commit graph

108 commits

Author SHA1 Message Date
beab56033c -events are simplified to handleEvent(Entity*,Event) (use entity.getComponent to get entity components) 2019-08-13 11:13:26 +00:00
9402e917f2 -added function to create EntityTemplate form Entity 2019-08-10 16:32:57 +00:00
1be08eb534 -added pure annotation for some functions
-addEntity now returns pointer instead of reference (it's has more sense)
-added function addEntityCopy(EntityID) which adds copy of entity with it's whole data
2019-08-10 16:20:50 +00:00
8318d2efb4 -added support for optional components in event handling 2019-08-10 15:44:01 +00:00
dfdb56d501 -system name getter
-added error checking for event handling in registerSystem
-now only valid handleEvent() functions are taken by system during register
2019-08-10 15:35:36 +00:00
f27e4c30ad -updated copyright 2019-06-27 16:53:51 +00:00
86d91bc11c Merge branch 'master' of https://Mergul@bitbucket.org/mmcomando/ecs.git 2019-06-18 22:24:52 +00:00
01ff3962b5 -added SimpleVector (vector with only ubyte data)
-components adding and removing now use SimpleVector (optimalization)
2019-06-18 20:12:18 +02:00
b04ab77e0c -added components change caching (no HashMap searching during components adding or removing) 2019-06-18 17:49:51 +02:00
235bbb49f2 -block allocator now track allocated blocks and is able to free memory
-jobs data is now allocated in System struct
-written memory cleanup (AddressSanitizer don't show any leak)
2019-06-18 16:45:38 +02:00
9824b587fb -fixed stack-overflow error 2019-06-18 13:57:31 +02:00
17fc7bc004 -removed __xtoHash() method 2019-06-17 18:25:36 +00:00
28dfdc0176 Merge branch 'master' of https://Mergul@bitbucket.org/mmcomando/ecs.git 2019-06-17 18:05:01 +00:00
9f125078ed -dmd bug workaround 2019-06-17 18:04:54 +00:00
1396d0bf85 -removed -fvisibility=hidden (switch works only with betterC) 2019-06-02 11:05:38 +02:00
cb257a2360 -added export attribute 2019-05-15 08:47:30 +00:00
9220a28f7c -fixed issue with ExcludedComponents as enum or alias
-removed way to add excluded component by adding attribiute @excluded (it's very stupid way)
2019-04-06 20:27:28 +00:00
fe158e1b60 -removed commited code 2019-04-06 19:24:58 +00:00
8b24ecf7d1 -some changes in registerSystem 2019-04-06 19:22:25 +00:00
a5eade669e -removed mixin genFillInputData 2019-04-06 18:41:48 +00:00
a93529dad1 -removed commented code 2019-04-06 18:09:25 +00:00
63d5839225 -changed naming style to match whole project 2019-04-06 18:07:08 +00:00
b0760228b1 -changed assertion infos 2019-04-06 18:03:14 +00:00
71c7df2ab3 -added third mmcomando commit 2019-04-06 17:51:42 +00:00
eaf2d1581c -removed next two mixins:
*catchFunc
*catchEntityFunc
2019-04-06 16:28:59 +00:00
f39d5ab403 -removed next mixin genParamsChecking() 2019-04-06 15:30:49 +00:00
fd6e6c0355 -changed naming style to match whole project 2019-04-06 15:11:44 +00:00
bf8fac84cf -removed comments 2019-04-06 15:03:29 +00:00
e7d3d08feb -fixed mmcomando commit bug 2019-04-06 15:02:07 +00:00
be5de2ae9c -added second mmcommando commit
-removed some stupid feature
2019-04-06 14:47:33 +00:00
dbdbdb35e1 -added assert message 2019-04-06 14:36:50 +00:00
7e7658af3b -added first mmcommando commit 2019-04-06 14:24:31 +00:00
77f67004dd -removed string_intern
-removed unused traits
2019-04-06 14:15:02 +00:00
201681e4ca -fixed small issue, now Template.getComponent should return null if component doesn't exist in template 2019-04-04 17:54:39 +02:00
0608fe6e89 -added new listener callback: onChangeEntity. Callback is called when entity optional components are changed. There is no info about which components are changed (added/removed), but should be in the future).This is probably slowest callback. 2019-03-28 20:25:08 +01:00
7a33e4f94f -renamed callbacks:
*onAdd -> onAddEntity
*onRemove -> onRemoveEntity
*update -> onUpdate
2019-03-28 18:01:43 +01:00
d118adc028 -code foramtted with dfmt 2019-03-28 17:57:28 +01:00
280d7b8ec4 -onAdd/onRemove order is determined by system priority
-fixed many bug with onAdd/onRemove
-onAdd/onRemove now works even when system haven't update callback
2019-03-28 12:19:30 +01:00
c64d621f0e -fixed critical bug with onAdd callback 2019-03-26 13:13:32 +00:00
4ac80d7025 -onAdd/onRemove called when components are changed 2019-03-24 14:42:21 +00:00
e4be23ee96 -onRemove() called when entity is removed from EntityManager 2019-03-23 21:47:39 +00:00
1841c9c244 -working onAdd listener when new Entity is added to EntityManager 2019-03-23 20:34:50 +00:00
3aad89fc56 -fillInputData created as local function in register process
-call onAdd (WIP)
2019-03-23 20:18:26 +00:00
6bbc8b5152 -git now should ignore .dub/dub.json
-added onAdd/onRemove to test
-added onAdd/onRemove callbacks for system
-generating onAdd/onRemove listeners
2019-03-23 19:48:24 +00:00
a82ca1e659 -some documentation changes
-added Component onCreate callback which is called after allocating entity from template
2019-03-21 13:19:03 +01:00
b18440e9bc -fixed problems with new DMD 2019-01-16 13:51:28 +01:00
dec0582398 -removed some unittest and unused code 2018-11-07 19:53:33 +01:00
204ce9dc79 -almost every funtion is marked as @nogc and nothrow (only problem with HashMap) 2018-11-02 16:36:38 +01:00
fef55bd790 -removed imports (temporarly) 2018-11-02 15:52:35 +01:00
60f720151e -changed .gitignore
-imports temporarly removed from repo
2018-11-02 15:47:50 +01:00