NRF SDK 0.9

Référence

ToolWindow

Déclarations publiques Kotlin du SDK.

Contexte d’utilisation

ModulePackageSource SDK
Kotlin/Nativenimbykotlin/src/nimby/ToolWindow.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.ToolWindow
import nimby.ToolWindowEvent
import nimby.ToolClock
import nimby.ToolTimeChange

ToolWindow

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

Déclaration d’une fenêtre autonome d’outil, accessible par raccourci pendant le jeu. Enregistrez-la avec ToolModBuilder.window ; aucun signal sélectionné n’est nécessaire.

ToolWindow.id

nimby · val
val id: String

Identifiant de fenêtre unique dans le mod, reçu dans ToolWindowEvent.window. Gardez-le stable entre versions : la préférence du raccourci lui est rattachée. Ne pas traduire cet identifiant.

ToolWindow.title

nimby · val
val title: String

Texte utilisé à la fois comme titre de fenêtre et comme libellé de son raccourci sous le groupe du mod dans Options → NRF Hub. Accepte tr ; un titre court évite de répéter le nom du mod. Le modifier ne change pas l’identité.

ToolWindow.shortcut

nimby · val
val shortcut: String

Raccourci initial au format accepté par window(...) ; vide pour désactiver. Le joueur peut modifier l’affectation dans les options du SDK. La déclaration ne représente pas forcément son affectation actuelle.

ToolWindowEvent

nimby · class
data class ToolWindowEvent(
    val window: String, val action: String, val values: Map<String, Int>,
    val sequence: Long, val worldId: String, val generation: Long,
)

Événement fourni au handler de fenêtre. Les champs valides sont transmis ensemble au clic, pas à chaque touche. Utilisez la même requête pour publier le formulaire correspondant.

ToolWindowEvent.window

nimby · val
val window: String

Identifiant de la fenêtre déclarée ayant produit cet événement.

ToolWindowEvent.action

nimby · val
val action: String

open à l’ouverture, puis identifiant du bouton activé. Le texte du bouton ne définit pas son traitement.

ToolWindowEvent.values

nimby · val
val values: Map<String, Int>

Carte des entiers validés du formulaire au moment du clic, indexée par identifiant de champ. Un champ absent ne doit pas être inventé à zéro.

ToolWindowEvent.sequence

nimby · val
val sequence: Long

Séquence du formulaire/événement fourni par le SDK. Transmettez-la via la requête reçue ; ne fabriquez pas un événement pour réutiliser une ancienne fenêtre.

ToolWindowEvent.worldId

nimby · val
val worldId: String

Identité de partie de l’événement, exigée identique à celle de ToolContext pour showWindow.

ToolWindowEvent.generation

nimby · val
val generation: Long

Génération de session de l’événement. Une autre génération impose de rejeter l’ancien formulaire et ses intentions.

ToolClock

nimby · class
data class ToolClock(val utcSeconds: Long, val elapsedMillis: Long)

Lecture copiée de deux temps distincts : calendrier UTC et durée simulée écoulée. La pause, l’accélération et une modification de date ne doivent pas être confondues avec le temps réel du PC.

ToolClock.utcSeconds

nimby · val
val utcSeconds: Long

Calendrier de la partie en secondes signées depuis le 1er janvier 1970 UTC. Convertir avec dateTime ; ce n’est pas l’heure système du PC.

ToolClock.elapsedMillis

nimby · val
val elapsedMillis: Long

Temps de simulation écoulé en millisecondes. Utilisez cette unité pour raisonner sur la simulation, sans l’interpréter comme une date UTC.

ToolTimeChange

nimby · class
data class ToolTimeChange(val clock: ToolClock, val interventions: Long)

Résultat d’un changement de calendrier : horloge retournée et nombre d’interventions de recalcul. Une réponse reçue permet d’afficher l’état obtenu, sans rejouer la commande.

ToolTimeChange.clock

nimby · val
val clock: ToolClock

Horloge retournée après le changement, à utiliser pour afficher la date réellement obtenue.

ToolTimeChange.interventions

nimby · val
val interventions: Long

Nombre d’interventions natives lors d’un recalcul de trains ; zéro pour une simple translation du calendrier. Les interventions peuvent déplacer des trains et entraîner des coûts.