31 lines
1.0 KiB
Java
31 lines
1.0 KiB
Java
package io.gitlab.jfronny.resclone.mixin;
|
|
|
|
import io.gitlab.jfronny.resclone.Resclone;
|
|
import io.gitlab.jfronny.resclone.data.PackMetaLoaded;
|
|
import net.minecraft.client.option.GameOptions;
|
|
import org.spongepowered.asm.mixin.Mixin;
|
|
import org.spongepowered.asm.mixin.Shadow;
|
|
import org.spongepowered.asm.mixin.injection.At;
|
|
import org.spongepowered.asm.mixin.injection.Inject;
|
|
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
|
|
|
|
import java.util.List;
|
|
|
|
@Mixin(GameOptions.class)
|
|
public abstract class GameOptionsMixin {
|
|
@Shadow public List<String> resourcePacks;
|
|
|
|
@Shadow public abstract void write();
|
|
|
|
@Inject(at = @At("TAIL"), method = "load()V")
|
|
public void load(CallbackInfo ci) {
|
|
for (PackMetaLoaded meta : Resclone.newPacks) {
|
|
Resclone.LOGGER.info(Resclone.MOD_ID + "/" + meta.name);
|
|
resourcePacks.add(Resclone.MOD_ID + "/" + meta.name);
|
|
}
|
|
if (!Resclone.newPacks.isEmpty())
|
|
write();
|
|
Resclone.newPacks.clear();
|
|
}
|
|
}
|