🇺🇦 Українська (Ukrainian - Ukraine)
🇺🇦 Українська (Ukrainian - Ukraine)
Зовнішній вигляд
🇺🇦 Українська (Ukrainian - Ukraine)
🇺🇦 Українська (Ukrainian - Ukraine)
Зовнішній вигляд
Ця сторінка написана для версії:
1.21.4
Ця сторінка написана для версії:
1.21.4
На цій сторінці буде описано структуру мод-проєкту Fabric і призначення кожного файлу та теки в проєкті.
fabric.mod.json
Файл fabric.mod.json
— це основний файл, який описує ваш мод Fabric Loader. Він містить таку інформацію, як ID мода, версія та залежності.
Найважливіші поля у файлі fabric.mod.json
:
id
: ID мода, який має бути унікальним.name
: назва мода.environment
: середовище, у якому працює ваш мод, наприклад client
, server
або *
для обох.entrypoints
: точки входу, які надає ваш мод, наприклад main
або client
.depends
: моди, від яких залежить ваш мод.mixins
: міксини, які надає ваш мод.Нижче ви можете побачити приклад файлу fabric.mod.json
- це файл fabric.mod.json
для еталонного проєкту, який підтримує цей сайт документації.
fabric.mod.json
{
"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.enchantment.FabricDocsReferenceEnchantments",
"com.example.docs.block.FabricDocsReferenceBlocks",
"com.example.docs.block.entity.FabricDocsReferenceBlockEntities",
"com.example.docs.component.FabricDocsReferenceComponents",
"com.example.docs.advancement.FabricDocsReferenceDatagenAdvancement",
"com.example.docs.networking.FabricDocsReferenceNetworking"
],
"client": [
"com.example.docs.FabricDocsReferenceClient",
"com.example.docs.client.command.FabricDocsReferenceClientCommands",
"com.example.docs.FabricDocsDynamicSound",
"com.example.docs.FabricDocsBlockEntityRenderer"
],
"fabric-datagen": [
"com.example.docs.datagen.FabricDocsReferenceDataGenerator"
]
},
"mixins": [
"fabric-docs-reference.mixins.json",
{
"config": "fabric-docs-reference.client.mixins.json",
"environment": "client"
}
],
"depends": {}
}
Як згадувалося раніше, файл fabric.mod.json
містить поле під назвою entrypoints
- це поле використовується для визначення точок входу, які надає ваш мод.
Як згадувалося раніше, файл fabric.mod.json
містить поле під назвою entrypoints
- це поле використовується для визначення точок входу, які надає ваш мод.
main
використовується для загального коду та міститься в класі, який реалізує ModInitializer
client
використовується для клієнтського коду, а її клас реалізує ClientModInitializer
Ці точки входу викликаються відповідно, коли починається гра.
Ці точки входу викликаються відповідно, коли починається гра.
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!");
}
}
src/main/resources
Тека src/main/resources
використовується для зберігання ресурсів, які використовує ваш мод, таких як текстури, моделі та звуки.
Тека src/main/resources
використовується для зберігання ресурсів, які використовує ваш мод, таких як текстури, моделі та звуки.
Це також розташування fabric.mod.json
та будь-яких налаштовуваних файлів міксинів, які використовує ваш мод.
src/client/resources
Тека src/client/resources
використовується для зберігання ресурсів клієнта, таких як текстури, моделі та звуки, які використовуються лише на стороні клієнта.
src/main/java
Тека src/main/java
використовується для зберігання вихідного коду Java для вашого мода - він існує як на клієнтському, так і на серверному середовищах.
src/client/java
Тека src/client/java
використовується для зберігання клієнтського вихідного коду Java, наприклад коду промальовування або логіки на стороні клієнта, наприклад постачальників кольорів блоку.