Boats push creatures in water out of the way #30519
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
SUMMARY: Features "Boats push creatures in water out of the way"
Purpose of change
One of the gating factors for adding Boats to mainline is the issue where boats on deep water will collide with invisible fishes, wrecking the boat's hull.
Change that so the fish get pushed out of the way.
Describe the solution
when a vehicle part collides with a creature while the creature is on a water tile, displace the creature 2 tiles on a 45 degree angle away from the vehicle's direction of movement until the creature is no longer colliding with the vehicle and the creature is not in the same tile as any other creature.
Also, make sure that non-friendly monsters that end up riding in a vehicle can still move around.
Describe alternatives you've considered
It may be necessary to use a variant of get_points() that returns the vehicle's future points, not current points.
Additional context
About to run into a flock of ducks at 20 mph:
Ducks get displaced without damaging the vehicle: