Commit graph

142 commits

Author SHA1 Message Date
EncodedVenom
d76f343cb0
Add Issue and PR templates (#73)
* init bug / feat templates

* capital J for style

* PR templates

* Combine templates because github be like that
2024-07-13 04:57:53 +02:00
Marcus
45adef066d
Fixed regression in Without (#72)
* Return empty query when Without removes all archetypes

* Type replace callback as Any

* Add test with ChangeTracker
2024-07-13 04:32:31 +02:00
Ukendio
e486c11dc2 bump wally version 2024-07-09 23:36:14 +02:00
Ukendio
fb3b8a5f67 Extract logic from ensureComponentRecord 2024-07-08 23:31:13 +02:00
EncodedVenom
7d2cd6219b
Add world.clear to types (#68)
* Sync typescript types to 0.2.2

* semicolon

* Add world.clear to the types

* Add luau type for clear
2024-07-08 16:04:28 +02:00
EncodedVenom
6b8dde8fd3
Fix EmptyQuery to properly return an empty iterator (#70)
* Fix EmptyQuery to properly return an empty iterator

* Remove actualNoOperation and enforce style guide
2024-07-08 16:04:04 +02:00
EncodedVenom
706eded24f
Add null query unit tests (#69)
* Add null query unit test

* Add unit test

* Update unit tests

* Remove __iter from already tested case
2024-07-08 15:51:34 +02:00
EncodedVenom
a62475471f
Update default.project.json (#71) 2024-07-08 14:43:35 +02:00
EncodedVenom
97d6955da0
Sync typescript types (v0.2.2) (#65)
* Sync typescript types to 0.2.2

* semicolon
2024-07-07 22:29:30 +02:00
Ukendio
4e9aa2ced0 Remove init.luau from src in main 2024-07-07 05:36:14 +02:00
Ukendio
ec88b25503 Fix grammar 2024-07-07 05:17:12 +02:00
Ukendio
cead7ceafe Fix typings folder 2024-07-07 05:12:14 +02:00
Ukendio
d517ded636 Fix typings folder 2024-07-07 05:11:50 +02:00
Marcus
aa853de818
Release 0.2.2 (#64)
* Bump package versions

* Fix typo
2024-07-07 04:59:44 +02:00
Marcus
0fe23e151c
Add replace method to query (#46)
* Add replace function

* Add next method

* Remove tostring

* Fix EmptyQuery

* add replace method

* merge conflicts

* return self in without

* Make aliases relative

* Add test

* add to changelog
2024-07-07 04:53:17 +02:00
Ukendio
b73d7e12b7 Give aliases to jecs and testkit 2024-07-06 23:37:11 +02:00
Ukendio
60c6177815 Add luaurc 2024-07-06 23:30:14 +02:00
Marcus
c0e73273d1
Add backwards iteration (#61)
* Iterate backwards

* Should test for removing as well

* Add test

* Add faíling test

* Add to changelog
2024-07-06 16:36:00 +02:00
Marcus
6559c56d47
Initial commit (#63) 2024-07-06 16:21:44 +02:00
Ukendio
afc0c949f0 Bump wally version 2024-07-03 17:48:55 +02:00
Ukendio
de34636bb3 Add EcsComponent built-in component 2024-07-03 17:48:32 +02:00
EncodedVenom
f041d6fa74
Rename Matter -> Jecs in release workflow (#60)
* Rename Matter -> Jecs in release workflow

* Delete body from release message

This should theoretically prevent the overriding description bug that Ukendio mentioned on discord. Unsure since I haven't tested in another repo workflow yet.
2024-07-03 03:42:57 +02:00
Ukendio
bd2ed21fc3 Bump wally version 2024-07-03 02:47:29 +02:00
Ukendio
b4a1db871e Change test to use built in component 2024-07-03 02:46:54 +02:00
Ukendio
0324d3a33f ChildOf as built-in component 2024-07-03 02:23:16 +02:00
Ukendio
ebc916c7ef Remove redundant TODO 2024-07-03 02:13:35 +02:00
Ukendio
ec833464a5 Add parent method 2024-07-03 02:10:16 +02:00
Ukendio
b8f35ccb85 Change variable names and style 2024-07-03 02:10:11 +02:00
Marcus
5ff6a43750
Add clear (#59)
* Rename files to luau

* Rename remaining files

* Update bench.project.json for luau files

* Stress test insertion

* Add clear

* Add a few guards

* Use next() in World.__iter

* Add tests
2024-07-03 01:24:17 +02:00
Ukendio
0f67cb1c86 tuple isnt optional 2024-07-02 14:20:35 +02:00
Ukendio
0256c765a0 Drainless iterators 2024-07-02 12:53:33 +02:00
Ukendio
0ff2348a6e Uniform function declarations 2024-06-26 15:50:00 +02:00
Ukendio
6b4597ab96 Remove allocations per compatible archetype to optimize fragmented iterations 2024-06-26 11:51:49 +02:00
Ukendio
bc43ee336b Freeze the world inside export declaration 2024-06-25 01:44:27 +02:00
Marcus
c95bc2a582
Update benchmarks (#55)
* Update bench.project.json for luau files

* Stress test insertion
2024-06-24 19:02:27 +02:00
Marcus
6a507d35ea
Update README.md 2024-06-24 04:08:57 +02:00
Marcus
d4be467c6c
Rename files to luau (#54)
* Rename files to luau

* Rename remaining files
2024-06-24 03:20:43 +02:00
Kalrnlo
f852ca9a88
Cleanup functions and add missing types (#53)
* update

* Cleanup functions and add missing types

* Replace 0x10 with ECS_ID_FLAGS_MASK

* Fixes
2024-06-24 03:01:55 +02:00
Ukendio
1d7fe3d93a Separate query 2024-06-24 01:30:59 +02:00
Ukendio
eae51988a9 Update benchmarks image 2024-06-22 01:08:51 +02:00
Ukendio
5bd43bddd4 Add queryNext 2024-06-22 00:15:03 +02:00
EncodedVenom
ea12df96a4
Add Typescript Types (#51)
* Add package.json, tsconfig.json, and change gitignore

* Typescript Types

* Make World a single class, refactor of all query types

* Fix InferComponents types due to typo / misunderstanding

* Bump dependencies

* Fix get type to include undefined and add documentation

* Remove non-user facing types

* Rename PossiblyUndefinedPack -> Nullable

* Some changes to how EntityIndex is handled

* Consistent formatting

* Remove EntityIndex related type definitions

* Match API

* Doc comments
2024-06-15 22:03:04 +02:00
Ukendio
1344398ffe Fix types 2024-06-15 20:03:12 +02:00
Marcus
c3d745a88b
Create LICENSE 2024-06-11 21:06:27 +02:00
Ukendio
1553362014 Please the type solver overlord 2024-06-11 01:39:43 +02:00
Ukendio
a62cb370cf Everything are entities! 2024-06-09 23:58:01 +02:00
Ukendio
818dfdd216 Low foot print ids 2024-06-06 00:38:27 +02:00
Marcus
63f40a22c0
Add Types (#21)
* Add Types

* Fix return type of without

* implement types

* make types more specific

* reduce query to 10 generics

* Remove second type pack

---------

Co-authored-by: alice <166900055+alicesaidhi@users.noreply.github.com>
2024-06-05 23:34:24 +02:00
Ukendio
e6260541c3 Merge branch 'main' of https://github.com/Ukendio/jecs 2024-05-27 20:09:25 +02:00
Ukendio
05d61bd6da Fix doc 2024-05-27 20:09:22 +02:00