refactor: Move transparent ui into built in resource pack

This commit is contained in:
Linnea Gräf
2025-03-14 20:18:29 +01:00
parent 2cfe476909
commit ce2e4f48d4
23 changed files with 24 additions and 21 deletions

View File

@@ -19,6 +19,8 @@ import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents
import net.fabricmc.fabric.api.client.item.v1.ItemTooltipCallback
import net.fabricmc.fabric.api.client.screen.v1.ScreenEvents
import net.fabricmc.fabric.api.resource.ResourceManagerHelper
import net.fabricmc.fabric.api.resource.ResourcePackActivationType
import net.fabricmc.loader.api.FabricLoader
import net.fabricmc.loader.api.Version
import net.fabricmc.loader.api.metadata.ModMetadata
@@ -49,6 +51,7 @@ import moe.nea.firmament.repo.RepoManager
import moe.nea.firmament.util.MC
import moe.nea.firmament.util.SBData
import moe.nea.firmament.util.data.IDataHolder
import moe.nea.firmament.util.tr
object Firmament {
val modContainer by lazy { FabricLoader.getInstance().getModContainer(MOD_ID).get() }
@@ -145,6 +148,12 @@ object Firmament {
})
})
ClientInitEvent.publish(ClientInitEvent())
ResourceManagerHelper.registerBuiltinResourcePack(
identifier("transparent_storage"),
modContainer,
tr("firmament.resourcepack.transparentstorage", "Transparent Firmament Storage Overlay"),
ResourcePackActivationType.NORMAL
)
}

View File

@@ -7,7 +7,6 @@ import net.minecraft.client.gui.screen.ingame.HandledScreen
import net.minecraft.entity.player.PlayerInventory
import net.minecraft.item.Items
import net.minecraft.network.packet.c2s.play.CloseHandledScreenC2SPacket
import net.minecraft.util.StringIdentifiable
import moe.nea.firmament.annotations.Subscribe
import moe.nea.firmament.events.ScreenChangeEvent
import moe.nea.firmament.events.SlotClickEvent
@@ -34,16 +33,6 @@ object StorageOverlay : FirmamentFeature {
val inverseScroll by toggle("inverse-scroll") { false }
val padding by integer("padding", 1, 20) { 5 }
val margin by integer("margin", 1, 60) { 20 }
val texture by choice("texture") { StorageTexture.DEFAULT }
}
enum class StorageTexture(val id: Int) : StringIdentifiable {
DEFAULT(0),
CLEAR(1);
override fun asString(): String? {
return id.toString()
}
}
fun adjustScrollSpeed(amount: Double): Double {
@@ -162,5 +151,4 @@ object StorageOverlay : FirmamentFeature {
}
}
}
}

View File

@@ -108,12 +108,12 @@ class StorageOverlayScreen : Screen(Text.literal("")) {
fun getMaxScroll() = lastRenderedInnerHeight.toFloat() - getScrollPanelInner().height
val playerInventorySprite = Identifier.of("firmament:storageoverlay/player_inventory_${StorageOverlay.TConfig.texture.asString()}")
val upperBackgroundSprite = Identifier.of("firmament:storageoverlay/upper_background_${StorageOverlay.TConfig.texture.asString()}")
val slotRowSprite = Identifier.of("firmament:storageoverlay/storage_row_${StorageOverlay.TConfig.texture.asString()}")
val scrollbarBackground = Identifier.of("firmament:storageoverlay/scroll_bar_background_${StorageOverlay.TConfig.texture.asString()}")
val playerInventorySprite = Identifier.of("firmament:storageoverlay/player_inventory")
val upperBackgroundSprite = Identifier.of("firmament:storageoverlay/upper_background")
val slotRowSprite = Identifier.of("firmament:storageoverlay/storage_row")
val scrollbarBackground = Identifier.of("firmament:storageoverlay/scroll_bar_background")
val scrollbarKnob = Identifier.of("firmament:storageoverlay/scroll_bar_knob")
val controllerBackground = Identifier.of("firmament:storageoverlay/storage_controls_${StorageOverlay.TConfig.texture.asString()}")
val controllerBackground = Identifier.of("firmament:storageoverlay/storage_controls")
override fun close() {
isExiting = true

View File

@@ -0,0 +1,10 @@
{
"pack": {
"pack_format": 15,
"supported_formats": {
"min_inclusive": 15,
"max_inclusive": 2147483647
},
"description": "Adds a more transparent storage overlay for /firm storage"
}
}

View File

@@ -266,10 +266,6 @@
"firmament.config.storage-overlay.rows.description": "Max columns used by the storage overlay and overview.",
"firmament.config.storage-overlay.scroll-speed": "Scroll Speed",
"firmament.config.storage-overlay.scroll-speed.description": "Scroll speed inside of the storage overlay and overview.",
"firmament.config.storage-overlay.texture": "Storage Overlay Texture",
"firmament.config.storage-overlay.texture.description": "Set which texture to use for storage overlay",
"firmament.config.storage-overlay.texture.choice.default": "Default",
"firmament.config.storage-overlay.texture.choice.clear": "Clear",
"firmament.config.waypoints": "Waypoints",
"firmament.config.waypoints.show-index": "Show ordered waypoint indexes",
"firmament.config.waypoints.show-index.description": "Show the number of an ordered waypoint in the world.",