Posted September 4, 201312 yr Hi,i coded a music disc by myself with this code package DubGun; import net.minecraft.block.Block; import net.minecraft.block.BlockJukeBox; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemRecord; import net.minecraft.item.ItemStack; import net.minecraft.world.World; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; public class ItemWubRecord extends ItemRecord { public ItemWubRecord(int id, String recordName) { super(id, recordName); this.setCreativeTab(CreativeTabs.tabMisc); this.maxStackSize = 1; } @SideOnly(Side.CLIENT) /** * Return the title for this record. */ public String getRecordTitle() { if(this.recordName == "mac_dubstepgun:seeherobrine.ogg") return "McMillan - Polyhymnia"; return "C418 - " + this.recordName; } } But when i put it in a Jukebox,it doesn't play music at ALL. I use this SoundLoader code in the main class for loading sounds in preInit. (And i think the error is there,somewhere) public void registerSound() { MinecraftForge.EVENT_BUS.register(new EventSounds()); } @EventHandler public void load(FMLPreInitializationEvent event) {
September 5, 201312 yr Author Here's the EventSounds Class : package DubGun; import net.minecraft.client.audio.SoundManager; import net.minecraftforge.client.event.sound.SoundLoadEvent; import net.minecraftforge.event.ForgeSubscribe; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; public class EventSounds { @SideOnly(Side.CLIENT) @ForgeSubscribe public void onSoundsLoaded(SoundLoadEvent event) { SoundManager manager = event.manager; manager.soundPoolStreaming.addSound("mac_dubstepgun:seeherobrine.ogg"); } } The seeherobrine.ogg is in /assets/mac_dubstepgun/records/ I made a Pastebin collection of the entire code : MAIN : http://pastebin.com/pwNFDAHn EVENTSOUNDS : http://pastebin.com/MPEwBwjQ ITEMWUBRECORD : http://pastebin.com/0myFVkF5
September 5, 201312 yr Like I already told you in the Minecraft forums, it may have something todo with the file itself. That was the solution for me. And if your preInit is missing @EventManager and it still doesn't work, try the thing with GoldWaves again. Your preInit is missing the @EventHandler annotation. And it is missing the FMLPreInitializationEvent event in the brackets. http://i.imgur.com/kPfhwnJ.png[/img] ↑↑↑↑↑↑↑↑↑↑ Click it please? :3 ↑↑↑↑↑↑↑↑↑↑
September 5, 201312 yr Author Actually,my friend,you made it. This is the new code for sake : @EventHandler public void preInit(FMLPreInitializationEvent event) { MinecraftForge.EVENT_BUS.register(new EventSounds()); MinecraftForge.EVENT_BUS.register(this); } @EventHandler public void load(FMLPreInitializationEvent event) For the main class. Thanks everyone for their support YAY!
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.