Tags
Creators
Details
1.1.1-8
Compatibility
Required content
Changes
This release is API only. Plugin modules can now split their settings page into tabs of their own. Nothing changes for players: a HUD built from the same modules looks and behaves exactly as it did in 1.1.1-7.
Full reference: https://eymistaken.github.io/Eymistaken-s-HUD-Website/api-guide.html
Tabs on a plugin module's settings page
HudModule.getSettingsTabs() returns a list of SettingsTab(id, name, settings), and
each entry becomes a tab on that module's page alongside the POSITION tab the screen
builds from the module's anchor, offsets and scale. It defaults to an empty list, so a
module that does not override it keeps the flat SETTINGS tab it has today, down to the
ids the screen uses to track per-row state.
Declaring tabs does not discard the two existing setting lists. getContextMenuSettings()
leads the first tab, which preserves the rule that everything on the editor's right-click
menu also appears on the page, and getSettingsScreenSettings() becomes a trailing
SETTINGS tab.
Tabs with nothing to show are dropped rather than drawn empty, and duplicate tab ids —
including a module claiming the reserved pos or settings — are renumbered so no tab
becomes unselectable. A module that throws from getSettingsTabs() or returns nulls
falls back to the flat layout instead of taking the settings screen down with it.
Opening a module's settings from the HUD editor previously looked for a tab literally
named settings, which a module with its own tabs need not have; it now lands on the
first non-placement tab. Built-in module pages are unaffected.
Optional dependencies
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:F3jIqIf4:IcZtTsCO"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:F3jIqIf4:IcZtTsCO"
}

