package net.anomaly.justasplash; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; import net.minecraft.registry.Registries; import net.minecraft.registry.Registry; import net.minecraft.sound.SoundEvent; import net.minecraft.util.Identifier; import net.anomaly.justasplash.config.SplashConfig; import net.anomaly.justasplash.splash.SplashAssetCache; import net.anomaly.justasplash.splash.SplashKeybind; import net.anomaly.justasplash.splash.SplashManager; import net.anomaly.justasplash.splash.SplashSound; import net.anomaly.justasplash.util.Compat; public class JustASplash implements ClientModInitializer { public static final Identifier SPLASH_SOUND_ID = Compat.id("justasplash", "splash"); public static SoundEvent SPLASH_SOUND_EVENT; @Override public void onInitializeClient() { SPLASH_SOUND_EVENT = SoundEvent.of(SPLASH_SOUND_ID); Registry.register(Registries.SOUND_EVENT, SPLASH_SOUND_ID, SPLASH_SOUND_EVENT); SplashConfig.load(); SplashAssetCache.preload(); SplashKeybind.register(); SplashSound.setup(); ClientTickEvents.END_CLIENT_TICK.register(client -> { if (SplashKeybind.wasPressed()) SplashManager.show(); SplashManager.tick(); }); } }