Table of Contents
Mixin の登録
導入
この記事では、Mixin を resources/fabric.mod.json を介して追加する方法を解説しています。
まず、resources フォルダの中に fabric.mod.json を配置します。
Fabric Example Mod Resources が参考になるかもしれません。
次に、fabric.mod.json の中に mixins.json の場所を登録します。
Fabric への ''mixins.json'' の登録
Mixin を登録するためには、Fabric に mixins.json の場所を伝える必要があります。
具体的には、fabric.mod.json の mixins 配列に mixins.json のファイル名を追加します。
慣例では、mixins.json のファイル名は "<modid>.mixins.json" です。<modid> は適宜変更してください。
{ "mixins": [ "modid.mixins.json" ] }
mixins.json のファイル名を mixins 配列に加えることで、Fabric に mixins.json 内に定義された Mixin を読み込むように伝えることができます。
Mixin の登録
最後に、前節で登録した mixins.json に Mixin を登録します。
以下はmixins.json の一例です:
{
"required": true,
"minVersion": "0.8",
"package": "net.fabricmc.example.mixin",
"compatibilityLevel": "JAVA_17",
"mixins": [],
"client": [
"TitleScreenMixin"
],
"server": [],
"injectors": {
"defaultRequire": 1
}
}
Mixin を登録する際に重要なのは以下の 4 つのフィールドです。
package フィールドには Mixin が配置されたフォルダ名(パッケージ名)を定義します。
mixins フィールドにはクライアントとサーバの両方で読み込む Mixin クラス名の配列を定義します。
client フィールドにはクライアントのみで読み込む Mixin クラス名の配列を定義します。
server フィールドにはサーバのみで読み込む Mixin クラス名の配列を定義します。
これより、前述の例では net.fabricmc.example.mixin.TitleScreenMixin クラスがクライアントのみで読み込む Mixin クラスとして登録されていることが分かるでしょう。