🇮🇹 Italiano (Italian)
🇮🇹 Italiano (Italian)
Aspetto
🇮🇹 Italiano (Italian)
🇮🇹 Italiano (Italian)
Aspetto
This page is written for:
1.21
This page is written for:
1.21
Questa pagina analizzerà la struttura di un progetto per una mod Fabric, e l'utilità di ogni file e cartella nel progetto.
fabric.mod.json
Il file fabric.mod.json
è il file principale che descrive la tua mod al Loader di Fabric. Contiene informazioni come l'ID della mod, la versione, e le dipendenze.
Gli attributi più importanti nel file fabric.mod.json
sono:
id
: L'ID della mod, che dovrebbe essere unico.name
: Il nome della mod.environment
: L'ambiente in cui la tua mod viene eseguita, come client
, server
, o *
per entrambi.entrypoints
: Gli entrypoint che la tua mod fornisce, come main
o client
.depends
: Le mod da cui la tua mod dipende.mixins
: I mixin che la tua mod fornisce.Puoi trovare un esempio del file fabric.mod.json
sotto - questo è il file fabric.mod.json
per il progetto di riferimento su cui è basato questo sito di documentazione.
fabric.mod.json
del Progetto di Riferimento{
"schemaVersion": 1,
"id": "fabric-docs-reference",
"version": "1.0.0",
"name": "Fabric docs reference",
"icon": "assets/fabric-docs-reference/icon.png",
"environment": "*",
"entrypoints": {
"main": [
"com.example.docs.FabricDocsReference",
"com.example.docs.event.FabricDocsReferenceEvents",
"com.example.docs.command.FabricDocsReferenceCommands",
"com.example.docs.effect.FabricDocsReferenceEffects",
"com.example.docs.potion.FabricDocsReferencePotions",
"com.example.docs.sound.FabricDocsReferenceSounds",
"com.example.docs.damage.FabricDocsReferenceDamageTypes",
"com.example.docs.item.FabricDocsReferenceItems",
"com.example.docs.block.FabricDocsReferenceBlocks",
"com.example.docs.component.FabricDocsReferenceComponents"
],
"client": [
"com.example.docs.FabricDocsReferenceClient",
"com.example.docs.client.command.FabricDocsReferenceClientCommands"
],
"fabric-datagen": [
"com.example.docs.FabricDocsReferenceDataGenerator",
"com.example.docs.damage.FabricDocsReferenceDamageTypesDataGenerator"
]
},
"mixins": [
"fabric-docs-reference.mixins.json",
{
"config": "fabric-docs-reference.client.mixins.json",
"environment": "client"
}
],
"depends": {}
}
Come detto in precedenza, il file fabric.mod.json
contiene un attributo entrypoints
- questo attributo è usato per specificare gli entrypoint che la tua mod fornisce.
Il generatore di mod modello crea sia un entrypoint main
che client
predefiniti - l'entrypoint main
è usato per codice comune, mentre l'entrypoint client
è usato per codice client specifico. Questi entrypoint vengono chiamati rispettivamente quando il gioco viene avviato.
public class FabricDocsReference implements ModInitializer {
// This logger is used to write text to the console and the log file.
// It is considered best practice to use your mod id as the logger's name.
// That way, it's clear which mod wrote info, warnings, and errors.
public static final String MOD_ID = "fabric-docs-reference";
public static final Logger LOGGER = LoggerFactory.getLogger(MOD_ID);
@Override
public void onInitialize() {
// This code runs as soon as Minecraft is in a mod-load-ready state.
// However, some things (like resources) may still be uninitialized.
// Proceed with mild caution.
LOGGER.info("Hello Fabric world!");
}
}
Quello sopra è un esempio di un semplice entrypoint main
che logga un messaggio alla console quando il gioco si avvia.
src/main/resources
Nella cartella src/main/resources
si memorizzano le risorse che la tua mod usa, come texture, modelli, e suoni.
È anche la posizione di fabric.mod.json
e di qualsiasi file di configurazione mixin che la tua mod usa.
Le risorse sono memorizzate in una struttura che rispecchia la struttura dei pacchetti risorse - per esempio, una texture per un blocco verrebbe memorizzata in assets/modid/textures/block/block.png
.
src/client/resources
Nella cartella src/client/resources
si memorizzano risorse client specifiche, come texture, modelli, e suoni che sono solo usati dal lato client.
src/main/java
La cartella src/main/java
viene usata per memorizzare il codice sorgente Java per la tua mod - esiste sia su ambienti client sia server.
src/client/java
La cartella src/client/java
viene usata per memorizzare codice sorgente Java client specifico, come codice per il rendering o logica del lato client - come provider per il colore dei blocchi.