Links
Tags
Creators
Details
1.0.0+1.20
Compatibility
Changes
This is a partial rewrite of the mod designed for mod and modpack compatibility, as well as general cleanup.
Changes:
- Mod ID changed to
inventory-tabs. Repackaged tofolk.sisby.- All addons will be broken, so this is precautionary.
- Redid buildscripts/meta in qfapi
- Redid config in Kaleido
- Smaller tabs and buttons
- Restricted tabs to the top row
- Removed explicit compatibility with mods like biginv
- Fixed all entities being added as tabs due to a type-matching bug
- Refactored TabProviders to use Block/EntityType/Item instead of itentifiers
- Merged TabManager and TabRenderer into one static class (no injected interface)
- Implement configurable screen support
- Remove 10 mixins
- Removed common-side-looking clientside code (initializer etc)
- Made tabs responsible for their own rendering (including backgrounds)
- Made screens responsible for their own tab placement (defaulted duck interface)
- Refactored the tab provider system to have a purpose-built setup for working with registry values (blocks, items, entity types)
- Each registry value is allowed to only be assigned to one tab provider, which is frozen after tag reload (or during play for entities)
- Tab providers will only operate on in-world objects that match their frozen registry values, preventing duplicate tabs.
- You can manually assign a registry value to have a specific tab provider (or no tab provider) in the config.
- Reliability for preserving the cursor stack between tabs is greatly improved
New Features:
- Support for entities that need to be sneak-clicked like chest boats.
- Full support for rideable entities like horses and chest boats - you can access your own inventory while on a horse, and even open sneak-only inventories like chest boats from a horse (cheat detection warning there ofc)
- Basic support for item tabs.
- No vanilla item opens a handled screen on use, so in practice modded items vary wildly and this doesn't consistently work if manually assigned.
- More types will be added in future to hopefully support some of the modded methods used for screen-items.
- Extensive configuration support for modpackers.
- Each individual block, entity, and item, can be force-excluded from all tab providers, or assigned to a specific one.
- The default logic tab providers use to capture these (e.g. Chest provider capturing AbstractChestBlocks) can be disabled freely (effectively a more fine-tuned whitelist mode)
- Specific screens can be allowed or denied rendering tabs on them via their handler ID.
- All block tabs now support custom names via attached item frames and signs.
- Container screens are mildly modified by default (config option available for compat) so that they're the same height and alignment as other screens, instead of 1 pixel taller and lower.
- An extra option is available to compress large chest screens by removing both titles - this is useful in smaller windows or in high GUI scales, especially when the mod is used alongside recipe viewers like EMI which struggle with large chests.
Full Changeset: https://github.com/sisby-folk/inventory-tabs/commit/23f89c6d64bb79fc38123622e3f66465bdf3e54a
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:VD1aynYU:LcshnMwE"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:VD1aynYU:LcshnMwE"
}

