使い方と制約

名前・アトラス画像・色・単位を提供します。共通側で読み込める値に限定し、クライアント描画器やワールドを保持しません。表示で資源IDは変わりません。

NebulaVisualResourceType

NebulaVisualResourceType
package dev.nebulastorage.api.platform

import dev.nebulastorage.api.NebulaResourceType
import dev.nebulastorage.api.resource.ResourceKey
import net.minecraft.network.chat.Component
import net.minecraft.resources.ResourceLocation

/** Common-side display data; no client renderer or mutable world may be retained. The sprite belongs to the block atlas. */
interface NebulaVisualResourceType : NebulaResourceType {
    fun display(key: ResourceKey): NebulaResourceDisplay
}

class NebulaResourceDisplay(name: Component, val sprite: ResourceLocation, val color: Int, val unit: String) {
    private val label = name.copy()
    val name: Component get() = label.copy()
    init { require(unit.length in 1..24) }
}
ソース

src/main/kotlin/dev/nebulastorage/api/platform/NebulaVisualResourceType.kt; editorial/ja.json

43b4d12d69e6033c24fa8c39dac383ef2429b446