[−][src]Module rust_action_heroes::system::movement_solver
Movement was so complicated it has two systems
The only thing here is the MovementSolverSystem struct, so go read about that!
Structs
MovementEvent | |
MovementSolverSystem | It reads in TransformedInputEvents and outputs MovementEvents. Sounds simple enough... This is easily the most complicated system in the game. |
Functions
add_all_holding | Geneartes a queue of all movaable entities in the "holding" state. |
add_all_pushed | Given a queue of movement events, determines which entities will be pushed. Think Crates, Keys, other characters, etc. |
core_movement_event | Generates a MovementEvent for the entity we're moving. Moving Left/Right produces the entity for "Prince horizontival the first" (veritcal), Up/Down -> "Duke vert the pure" (horizontal). |
would_collide | Very simple method to determine if two positions overlap. |
would_hit_obstacle | Given a set of MovementEvents, determines if that set would collide with an immovable object -- like a wall. |