]> git.lizzy.rs Git - BoundingBoxOutlineReloaded.git/blob - src/main/java/com/irtimaled/bbor/mixin/client/MixinMinecraft.java
b3213f47a9523d8652d5827847ee1bdf58c1ea78
[BoundingBoxOutlineReloaded.git] / src / main / java / com / irtimaled / bbor / mixin / client / MixinMinecraft.java
1 package com.irtimaled.bbor.mixin.client;
2
3 import com.irtimaled.bbor.client.ClientProxy;
4 import com.irtimaled.bbor.client.interop.ModPackFinder;
5 import com.irtimaled.bbor.common.interop.CommonInterop;
6 import net.minecraft.client.Minecraft;
7 import net.minecraft.client.main.GameConfiguration;
8 import net.minecraft.client.resources.ResourcePackInfoClient;
9 import net.minecraft.resources.ResourcePackList;
10 import org.spongepowered.asm.mixin.Final;
11 import org.spongepowered.asm.mixin.Mixin;
12 import org.spongepowered.asm.mixin.Shadow;
13 import org.spongepowered.asm.mixin.injection.At;
14 import org.spongepowered.asm.mixin.injection.Inject;
15 import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
16
17 @Mixin(Minecraft.class)
18 public class MixinMinecraft {
19     @Shadow @Final private ResourcePackList<ResourcePackInfoClient> resourcePackRepository;
20     private ClientProxy clientProxy;
21
22     @Inject(method = "<init>", at = @At("RETURN"))
23     private void constructor(GameConfiguration configuration, CallbackInfo ci) {
24         CommonInterop.init();
25         clientProxy = new ClientProxy();
26         this.resourcePackRepository.addPackFinder(new ModPackFinder());
27     }
28
29     @Inject(method = "init", at = @At("RETURN"))
30     private void init(CallbackInfo ci) {
31         clientProxy.init();
32     }
33 }