Commit Graph

48 Commits (591cd980d955bcfc2f5017265b1a901d82005db2)

Author SHA1 Message Date
Evan Hemsley 85f99a565c adds some convenience methods and doc comments 2019-10-24 12:48:36 -07:00
Evan Hemsley 5bcde8bb96 fix crash where overwriting an existing component on the same frame as an entity was being destroyed would cause the component to not be destroyed 2019-08-22 20:07:41 -07:00
Evan Hemsley 971a663cf9 write priority system and require read declaration for entity lookups by component 2019-08-21 15:13:48 -07:00
thatcosmonaut 9813c260ae started the component write priority system 2019-08-20 19:25:59 -07:00
thatcosmonaut b8d3d706ad fix crash when entity is added and removed same frame 2019-08-20 15:44:01 -07:00
thatcosmonaut d084286c83 delayed message system 2019-08-19 19:05:18 -07:00
Evan Hemsley 8fd2307fbb fix pending component type and id lookups 2019-08-11 11:47:12 -07:00
Evan Hemsley 162dbe52a2 fix broken entity ID lookup on pending components 2019-08-11 11:26:31 -07:00
Evan Hemsley c1e206ef49 allow only one component per type per entity 2019-08-10 17:34:00 -07:00
Evan Hemsley dbe6cc4f53 accidentally destroyed every pooled dictionary when an entity was destroyed LOOOL 2019-08-01 23:09:41 -07:00
Evan Hemsley d86c002305 optimize component message system 2019-08-01 16:24:57 -07:00
Evan Hemsley d6c84b950a remove activation concept from components and entities 2019-07-31 10:35:17 -07:00
thatcosmonaut fea5c57860 update engine generator 2019-07-19 17:50:13 -07:00
thatcosmonaut 89154f21d7 introduce concept of pending component 2019-07-19 16:15:48 -07:00
Evan Hemsley 1845d5f766 read new and existing component system 2019-07-19 12:47:17 -07:00
Evan Hemsley 80effc06dc fix componentmessage self-cycle and rename WorldBuilder.EmitMessage 2019-07-18 21:07:26 -07:00
Evan Hemsley 0639eef118 rename EmitMessage to SendMessage and add special case for component self-cycle 2019-07-18 20:31:31 -07:00
Evan Hemsley c8c5a8c7c4 change attributes 2019-07-18 18:20:38 -07:00
thatcosmonaut a42123f58d the big ComponentMessage rework 2019-07-18 14:02:57 -07:00
thatcosmonaut a62153730f component updates at end of frame 2019-07-17 18:53:31 -07:00
thatcosmonaut f960712f57 component writes moved back to end of frame 2019-07-17 18:12:29 -07:00
Evan Hemsley 918621db73 adds SomeComponent to Engine and renames Some to SomeMessage 2019-07-17 11:46:54 -07:00
Evan Hemsley 64f6e13216 move all methods off of Entity 2019-07-17 11:24:21 -07:00
Evan Hemsley 9b58473ae8 engines must declare component reads + validation for Reads and Writes arguments 2019-07-16 11:17:07 -07:00
Evan Hemsley 7ab512e522 started reworking component mutation 2019-07-16 09:47:58 -07:00
Evan Hemsley 2d929e4665 adds EntityExists method + fixes crash when destroying an entity that has no components 2019-07-12 17:37:31 -07:00
Evan Hemsley 751d36a844 fix crash when removing a specific component from an entity the same frame the entity is destroyed 2019-07-10 18:22:08 -07:00
Evan Hemsley caac238ff9 fix issue where ReadComponents would read inactive components 2019-07-10 09:53:38 -07:00
Evan Hemsley 87c5a785c7 changing KeyValueTuple component returns to ValueTuple 2019-06-27 16:55:12 -07:00
Evan Hemsley 29179e0ad6 fix borked tests 2019-06-24 12:40:40 -07:00
thatcosmonaut c7a4297cff
Merge pull request #1 from encompass-ecs/special_engines
Detectors and some API Changes
2019-06-24 12:35:32 -07:00
Evan Hemsley 9bb8fbda25 change WorldBuilder.AddEngine to take an instantiated Engine 2019-06-24 12:26:19 -07:00
Evan Hemsley b4347f4085 implement Detector and change World and Engine update to use double 2019-06-24 12:14:37 -07:00
Evan Hemsley 88248a962c rename some engine methods for consistency 2019-06-21 17:50:01 -07:00
Evan Hemsley e964055ec1 add some convenience methods to Engines 2019-06-21 17:44:07 -07:00
Evan Hemsley fde3cfe9e3 fix null lookup bug in message manager 2019-06-21 17:23:52 -07:00
Evan Hemsley dd75a94d18 misc backend fixes + more tests 2019-06-19 20:37:46 -07:00
Evan Hemsley 5bd21c631e more component read tests 2019-06-17 12:12:07 -07:00
Evan Hemsley 7c787290eb refactor so entity and components use GUID 2019-06-17 11:33:38 -07:00
Evan Hemsley e8a8488dbb test undeclared some 2019-06-16 18:16:45 -07:00
Evan Hemsley 0e3c775bc5 Some method 2019-06-16 18:11:35 -07:00
Evan Hemsley c2abd4b292 fix message add 2019-06-16 18:03:57 -07:00
Evan Hemsley c1aa6a07c9 start on message stuff 2019-06-15 18:55:35 -07:00
Evan Hemsley 700f10f31e formatting 2019-06-15 12:32:56 -07:00
Evan Hemsley d9756e0c3d update component uses a callback now 2019-06-15 11:40:42 -07:00
Evan Hemsley cb872b7c42 component update mechanism 2019-06-15 00:39:08 -07:00
Evan Hemsley 4b9610762a read component tests 2019-06-14 18:13:24 -07:00
Evan Hemsley 40763d2559 initial engine 2019-06-14 17:51:06 -07:00