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

Change the screen handling to no longer reuse instances #33

Closed
8 of 9 tasks
crykn opened this issue Aug 13, 2023 · 0 comments · Fixed by #37
Closed
8 of 9 tasks

Change the screen handling to no longer reuse instances #33

crykn opened this issue Aug 13, 2023 · 0 comments · Fixed by #37
Assignees
Labels
area: core type: enhancement Make an existing feature better

Comments

@crykn
Copy link
Member

crykn commented Aug 13, 2023

Depenency Injection

  • Add dependency injection to pancake
  • Load all assets at the start of the game (listAssets() via Gradle task?); use xyz.png.desc files for AssetLoaderParameters
  • Inject them via the new DI mechanism (use a qualifier annotation)

Screen handling changes

  • Change libgdx-screenmanager to no longer reuse screen instances: create new screens and transitions on every push; registration is no longer needed; remove create() etc.; automatically dispose screens
  • Adapt pancake accordingly:
    • Implement screenmanager's changes
    • Use dependency injection for easier object handling; also change the asset handling to use the new DI mechanism
    • Add an EskalonApplicationContext for variables (app name, config stuff, debug environment, version, platform?) which is registered with the DI service
  • Integrate changes into ProjektGG
@crykn crykn self-assigned this Aug 13, 2023
@crykn crykn added type: enhancement Make an existing feature better area: core labels Aug 13, 2023
crykn added a commit to eskalon/pancake that referenced this issue Aug 14, 2023
instances; also move the examples into their own project.

Part of eskalon/ProjektGG#33.
crykn added a commit to eskalon/pancake that referenced this issue Sep 17, 2023
This includes a few changes in other areas:
- The app is now started via an EskalonApplicationStarter.
- App configuration and start args are properly separated.
- The examples are launched as a separate process.

Part of eskalon/ProjektGG#33.
crykn added a commit that referenced this issue Oct 15, 2023
rework the networking; improve the game processing.

Also rename the packages to "de.eskalon.gg", move screens and rendering
into better places & add pancake as Git submodule.

Closes #33 & #34.
@crykn crykn linked a pull request Oct 29, 2023 that will close this issue
@crykn crykn closed this as completed in #37 Oct 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: core type: enhancement Make an existing feature better
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant