Any entity with the Movement component intelligently avoids obstacles. However, not all entities that can move can steer; for example, Topplegrass is moved only by the wind. Therefore, add a new component tag AvoidObstaclesTag to all entities that are supposed to steer.
Add new resource Wind. Implement debug keyboard inputs to change wind direction and speed. Load initial wind vector from a config file. In order to load from file, pass the assets directory path to the loading state.
Add gravity system that affects entities with the FallingTag.
Add system that deletes Topplegrass entities when they leave the world bounds.
Refer to issue #61 Topplegrass is explained here: https://community.amethyst.rs/t/evoli-creature-designs/814/10
Any entity with the Movement component intelligently avoids obstacles. However, not all entities that can move can steer; for example, Topplegrass is moved only by the wind. Therefore, add a new component tag AvoidObstaclesTag to all entities that are supposed to steer.
Add new resource Wind. Implement debug keyboard inputs to change wind direction and speed. Load initial wind vector from a config file. In order to load from file, pass the assets directory path to the loading state.
Add gravity system that affects entities with the FallingTag.
Add system that deletes Topplegrass entities when they leave the world bounds.