API

Dimensioni

Mondi tuoi, con il loro cielo, il loro terreno e i loro biomi. Giocatori e creature ci arrivano teletrasportandosi.

Dichiarare una dimensione

Si dichiara con un genere e una forma del terreno:

content/dimensions.craftCraftScript
dimension "ruby_realm" { kind: "overworld", terrain: "normal", biome: "ruby_meadow" }
dimension "flatland" { terrain: "flat" }
Proprietà Valori
kind il suo cielo, la luce e le regole: overworld, nether o end
terrain la sua forma, vedi sotto
biome facoltativo: un solo bioma ovunque, della mod ("ruby_meadow") o del gioco ("minecraft:cherry_grove"). Senza, i biomi abituali di quel terreno

Terreno

Terreno Forma
normal colline, grotte e oceani, come il mondo principale
flat piatto: substrato, terra ed erba
nether un mondo chiuso di caverne con mari di lava
islands isole fluttuanti nel vuoto

Rimodellare le dimensioni del gioco

Anche l’Overworld, il Nether e l’End si possono cambiare, senza una dimensione tutta tua. Una mod può dare al terreno di una di esse una forma scritta nel codice (terrain "minecraft:the_end" { … }), e scegliere quale bioma va dove nell’End (biome_map "minecraft:the_end" { … }). Solo una mod può dare forma a ciascuna dimensione, e solo una può sceglierne i biomi. Entrambe le cose sono spiegate nella pagina Generazione tramite codice.

Viaggiare

Giocatori e creature viaggiano teletrasportandosi in un punto della dimensione. Il suo mondo si trova con il suo id, <id della mod>:<nome>. Il chunk di destinazione viene caricato all’arrivo.

Lo stesso vale da un evento, per esempio usando un oggetto. Un buon esempio è un comando /realm che porta il giocatore là e lo riporta indietro:

commands/realm.craftCraftScript
command realm describe "Travel to the Ruby Realm and back" {
    if player == null { return "Players only" }
    let realm = world("rubies:ruby_realm")
    if player.world.id == realm.id {
        player.teleport(world().block_at(0, 100, 0).location)
        return "Back home"
    }
    player.teleport(realm.block_at(0, 100, 0).location)
    return "Welcome to the Ruby Realm"
}

In Kotlin

content/Dimensions.ktKotlin
dimension("ruby_realm") {
    kind = DimensionKind.OVERWORLD
    terrain = Terrain.NORMAL
    biome = "ruby_meadow"
}

dimension("flatland") { terrain = Terrain.FLAT }

Viaggia con entity.teleport(location), con un punto di quel mondo.