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

feat: implement state machine to model game state #256

Draft
wants to merge 52 commits into
base: develop
Choose a base branch
from

Conversation

skaldarnar
Copy link
Contributor

No description provided.

jdrueckert and others added 15 commits November 21, 2021 10:44
- move `Phase` enum out of `PhaseSystem`
- simplify `Phase` enum (for now)
- remove separate components for phases
- fix `start/end..Phase` methods
- create authority package for encapsulation
- enhance phase enum with event suppliers
- use event suppliers to generalize phase transition in PhaseSystem
…mand arguments

The parsing of the in-game console arguments is handled by central `ParameterAdapter`s. Modules can register new adapters to extend the support for custom types.

This adds support for the `Phase` enum to be used in the in-game console.
@jdrueckert

This comment was marked as resolved.

- only in pre-game and countdown phases
- only if player is neither spectator (white team) nor unassigned
- create PlayerExitedArenaEvent
- on arena exit remove AllowShopScreenComponent (players only need the shop in-game)
- move check for condition changes that trigger a phase change into LASSystem
- switch player to white team instead of removing LASTeam component
- trigger arena exit clean up actions for disconnecting clients before they are disconnected (requires MovingBlocks/Terasology#5077)
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.

None yet

2 participants