====== Mixin の登録 ====== ==== 導入 ==== この記事では、Mixin を ''%%resources/fabric.mod.json%%'' を介して追加する方法を解説しています。 まず、''%%resources%%'' フォルダの中に ''%%fabric.mod.json%%'' を配置します。 [[https://github.com/FabricMC/fabric-example-mod/tree/master/src/main/resources|Fabric Example Mod Resources]] が参考になるかもしれません。 次に、''%%fabric.mod.json%%'' の中に ''mixins.json'' の場所を登録します。 ==== Fabric への ''mixins.json'' の登録 ==== Mixin を登録するためには、Fabric に ''mixins.json'' の場所を伝える必要があります。 具体的には、''fabric.mod.json'' の ''mixins'' 配列に ''mixins.json'' のファイル名を追加します。 慣例では、''mixins.json'' のファイル名は ''%%".mixins.json"%%'' です。'''' は適宜変更してください。 { "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 クラスとして登録されていることが分かるでしょう。