Skip to content

refactor(map)!: migrate BaseMap to record and improve map loading#69

Open
theEvilReaper wants to merge 8 commits intodevelopfrom
feature/mapModernize
Open

refactor(map)!: migrate BaseMap to record and improve map loading#69
theEvilReaper wants to merge 8 commits intodevelopfrom
feature/mapModernize

Conversation

@theEvilReaper
Copy link
Copy Markdown
Contributor

Proposed changes

The map-related code has been modernized in some areas to improve game setup implementations. However, the core logic remains unchanged and currently relies on duplicate method definitions. This pull request migrates the BaseMap class into a record, removing its mutable nature. Creating a new map must now be done via the BaseMapBuilder.

In addition, the AbstractMapProvider has been updated to improve null checks and related behavior. The internal list storing MapEntry instances is now instantiated by default as an empty list. During loading, each entry is added to this list. Note that if loading is triggered multiple times, all existing entries will be cleared before being added again.

Types of changes

What types of changes does your code introduce to this project?
Put an x in the boxes that apply

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation Update (if none of the other choices apply)

Checklist

Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of
them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before
merging your code.

  • I have read the CONTRIBUTING.md
  • I have added tests that prove my fix is effective or that my feature works
  • I have added necessary documentation (if appropriate)

@theEvilReaper theEvilReaper self-assigned this Apr 26, 2026
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