Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add puzzle 011 #16

Merged
merged 5 commits into from
Feb 8, 2024
Merged

Add puzzle 011 #16

merged 5 commits into from
Feb 8, 2024

Conversation

kflorence
Copy link
Owner

@kflorence kflorence commented Feb 8, 2024

This puzzle introduces directional portals. It also refines the rules for portals in general and improves collision logic for beams using portals.

Additionally, support for sequential mask resolution was added. For example, this is the case if multiple beams enter portals at the same time.

Contains rule refinement for portals, updates to beam collisions so
collisions with self create infinite loops to match the behavior of
infinite loops on beams colliding with other beams and updates to puzzle
mask to allow for multiple, sequential mask choices from a user (for
example, if multiple beams enter portals at the same time).
Handles beams entering/exiting portals in different directions. So long
as they don't try to exit in the same direction, or one tries to enter
at the opposite direction of one exiting, there shouldn't be any
collisions. In other words, beams are free to use any open direction
when entering/exiting a portal.

Step.Stop was also removed in favor of just returning currentStep, which
will cause processing to stop anyways since it will detect the same
point twice in a row.
Also enable beam history evaluation if the last step ended with a portal
entry.
@kflorence kflorence merged commit 64debbc into main Feb 8, 2024
1 check passed
@kflorence kflorence deleted the 011 branch February 8, 2024 00:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant