Add Soviet Anthem music disc with sound, recipe, and assets

This commit is contained in:
IM23a-cernik
2025-05-12 13:23:49 +02:00
parent 480e5d2086
commit 2c868cb3e7
14 changed files with 78 additions and 6 deletions
@@ -0,0 +1,35 @@
package net.krituximon.stalinium.sound;
import net.krituximon.stalinium.Stalinium;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.world.item.JukeboxSong;
import net.neoforged.bus.api.IEventBus;
import net.neoforged.neoforge.registries.DeferredRegister;
import java.util.function.Supplier;
public class ModSounds {
public static final DeferredRegister<SoundEvent> SOUND_EVENTS =
DeferredRegister.create(BuiltInRegistries.SOUND_EVENT, Stalinium.MODID);
public static final Supplier<SoundEvent> SOVIET_ANTHEM = registerSoundEvent("soviet_anthem");
public static final ResourceKey<JukeboxSong> SOVIET_ANTHEM_KEY = createSong("soviet_anthem");
private static ResourceKey<JukeboxSong> createSong(String name) {
return ResourceKey.create(Registries.JUKEBOX_SONG, ResourceLocation.fromNamespaceAndPath(Stalinium.MODID, name));
}
private static Supplier<SoundEvent> registerSoundEvent(String name) {
ResourceLocation id = ResourceLocation.fromNamespaceAndPath(Stalinium.MODID, name);
return SOUND_EVENTS.register(name, () -> SoundEvent.createVariableRangeEvent(id));
}
public static void register(IEventBus eventBus) {
SOUND_EVENTS.register(eventBus);
}
}