Commit Graph

47 Commits (2ff13966644d1f3818688ca8805250d04d754f59)

Author SHA1 Message Date
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