Awesome
Docs.
slime
An ECS library for Elm. Slime provides an easy way to build a full game, using common Entity-Component-System architecture.
Examples
Pong is implemented in the examples directory. Link
To run locally:
git clone https://github.com/Seurimas/slime.git
cd slime/examples/pong
elm reactor
... Open http://localhost:8000/src/pong.elm ...
Change log
-
2.1.1 -> 3.0.0
- Small addition of a
Noop
engine message. - Fix for case-sensitive OSes.
- Small addition of a
-
2.1.0 -> 2.1.1
- Small documentation change, and testing a republish of the package to fix installation issues.
-
2.0.0 -> 2.1.0
- Added
componentSpec
for a type-ignorant constructor. Use that instead of { getter, setter } records. - Added
stepEntitiesAndThen
, for steppers who want to have side effects on the world. This won't work for every case, but it will cover a lot. - Added
forNewEntities
, for spawning several entities with particular parameters.
- Added
-
1.1.0 -> 2.0.0
- Revise system creation. Use
untimedSystem
,timedSystem
, andsystemWith
in Slime.Engine. - Revise steppers. Use
stepEntities
, andentities
/entities2
/entities3
. - Revise getters.
entities(/2/3)
->getEntities(/2/3)
or(world) &. entities(/2/3)
- Improve entity creation API. Use
forNewEntity
and&=>
.- See also:
forEntityById
andforEntityByUid
for entity updates.
- See also:
- Revise system creation. Use
-
1.1.0
- Initial release.