NRF SDK 0.9

Référence

ModResources

Déclarations publiques Kotlin du SDK.

Contexte d’utilisation

ModulePackageSource SDK
Kotlin/Nativenimbykotlin/src/nimby/ModResources.kt

API publique du SDK 0.9.0-alpha.2. Chaque entrée donne la signature Kotlin et son contrat : sens de la valeur, conditions d’utilisation et effets à connaître. Choisissez les imports du module indiqué ci-dessus.

Imports de cette page
import nimby.ModInfo
import nimby.ModMetadata
import nimby.SignalConstruction
import nimby.signalMod
import nimby.toolMod

ModInfo

nimby · class
data class ModInfo(val id: String, val title: String)

Identité du paquet générée depuis mod.json sous nimby.mod.modInfo. Réutilisez cette valeur dans createMod pour éviter de dupliquer identifiant et nom.

ModInfo.id

nimby · val
val id: String

Identifiant technique stable du paquet, issu de mod.json ; utilisé pour déclarer le mod et ses services.

ModInfo.title

nimby · val
val title: String

Nom issu de mod.json, utilisé comme titre du groupe dans Options → NRF Hub avec toolMod(modInfo) ou signalMod(modInfo). metadata(name=...) personnalise séparément le nom des listes de mods du jeu.

ModMetadata

nimby · class
data class ModMetadata(val author: String, val description: String, val name: String? = null)

Informations destinées aux listes et fiches de mods du jeu. name et description acceptent tr ; les métadonnées de distribution du Hub ou de Steam restent séparées.

ModMetadata.author

nimby · val
val author: String

Signature de l’auteur affichée dans les informations du mod ; ce texte ne définit ni identité de service ni règle.

ModMetadata.description

nimby · val
val description: String

Description affichée du mod ; accepte tr et des retours à la ligne. Le paquet conserve un texte de repli lisible.

ModMetadata.name

nimby · val
val name: String? = null

Nom optionnel pour les listes et fiches de mods du jeu, éventuellement traduit. null reprend le nom de mod.json. Ne remplace pas GameMod.title dans le groupe Options → NRF Hub, ni ToolWindow.title ; identifiant et version restent inchangés.

SignalConstruction

nimby · class
class SignalConstruction(
    states: List<String>, val name: String, val kind: String = "path",
    val catalogueName: String = name,
    val nameKey: String? = null, val catalogueNameKey: String? = null,
    val size: Int = 0,
    val left: Boolean = false,
)

Déclaration du catalogue d’images et du signal constructible. Les chemins sont relatifs au paquet et vérifiés lors de sa génération. Conservez l’ordre publié pour les sauvegardes.

SignalConstruction.name

nimby · val
val name: String

Nom dans le menu de construction ; accepte un texte ou tr. Distinct de l’identifiant du modèle.

SignalConstruction.kind

nimby · val
val kind: String = "path"

Type de signal reconnu par le jeu ; path par défaut. Une valeur syntaxiquement valide ne garantit pas qu’un autre type soit pris en charge.

SignalConstruction.catalogueName

nimby · val
val catalogueName: String = name

Nom affiché du jeu de textures, égal à name par défaut ; accepte tr.

SignalConstruction.nameKey

nimby · val
val nameKey: String? = null

Clé de localisation native pour un catalogue existant. null avec name=tr(...), car ces deux mécanismes ne se combinent pas pour le même nom.

SignalConstruction.catalogueNameKey

nimby · val
val catalogueNameKey: String? = null

Clé de localisation native du catalogue. Laissez null lorsque catalogueName utilise tr ; ce n’est pas une clé du JSON de traductions du mod.

SignalConstruction.size

nimby · val
val size: Int = 0

Taille par défaut du signal à construire, de 0 à 4 ; 0 par défaut. Déclarez 4 explicitement pour choisir cette taille.

SignalConstruction.left

nimby · val
val left: Boolean = false

Choix initial du côté gauche lors de la construction. false par défaut ; définir true si le modèle doit être placé à gauche.

SignalConstruction.states

nimby · val
val states: List<String>

Copie de 1 à 256 chemins distincts, dans leur ordre définitif. Déclarez chaque image fixe et les deux images de tout clignotement.

signalMod

nimby · fun
fun signalMod(info: ModInfo, block: SignalModelsBuilder.() -> Unit): SignallingMod

Assemble des modèles indépendants avec l’identité générée depuis mod.json. À renvoyer depuis createMod ; la déclaration doit rester sans accès au jeu.

toolMod

nimby · fun
fun toolMod(info: ModInfo, block: ToolModBuilder.() -> Unit): ToolMod

Assemble un outil avec l’identité générée depuis mod.json, sans signal fictif. Déclarez au moins un service ou une fenêtre.