PlatonCraft Posted August 18, 2013 Share Posted August 18, 2013 Hello there! I want to add my custom sound to game and then play it. I have .ogg file (vorbis 2.0 codec) in assets.flintstonetools.sound folder in project. [spoiler=My Base of mod] package platon.mods.flintstonetools; import net.minecraft.item.EnumToolMaterial; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.network.NetServerHandler; import net.minecraftforge.common.Configuration; import net.minecraftforge.common.EnumHelper; import net.minecraftforge.common.MinecraftForge; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.network.NetworkMod; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; @Mod (modid = FlintBase.modid, name = "Flintstone Tools", version = "1.1.1a") @NetworkMod (clientSideRequired = true, serverSideRequired = false) public class FlintBase { public static final String modid = "flintstonetools"; @Instance(FlintBase.modid) public static FlintBase instance; public static Item flintpickaxe; static int flintpickaxeid; public static Item flintshovel; static int flintshovelid; public static Item flintaxe; static int flintaxeid; public static Item flinthoe; static int flinthoeid; public static Item flintsword; static int flintswordid; @EventHandler public void reg(FMLPreInitializationEvent event) { MinecraftForge.EVENT_BUS.register(new SoundLoader()); } @EventHandler public void preLoad(FMLPreInitializationEvent event) { Configuration config = new Configuration(event.getSuggestedConfigurationFile()); config.load(); config.defaultEncoding="windows-1251"; flintpickaxeid = config.get("Mod IDs", "flintpickaxeid", 650).getInt(); flintshovelid = config.get("Mod IDs", "flintshovelid", 651).getInt(); flintaxeid = config.get("Mod IDs", "flintaxeid", 652).getInt(); flinthoeid = config.get("Mod IDs", "flinthoeid", 653).getInt(); flintswordid = config.get("Mod IDs", "flintswordid", 654).getInt(); SetBlockOnFire.fireableids = config.get("flintstonetools", "fireableids", SetBlockOnFire.deffireableids).getIntList(); config.addCustomCategoryComment("flintstonetools", "Here is the list of IDs of blocks that can be setted on fire by the flint pickaxe.\nThat list can be modified. Just add the Ids you want in column.\n\nЗдесь в столбик указаны ID блоков, которые можно поджигать кремневой киркой.\nВы можете изменять его. Просто добавьте свои ID в колонку с новой строки"); config.save(); } @EventHandler public void load(FMLInitializationEvent event) { flintpickaxe = new ItemFlintPickAxe(flintpickaxeid).setUnlocalizedName("flintpickaxe"); GameRegistry.addRecipe(new ItemStack(FlintBase.flintpickaxe, 1), new Object[]{ "XXX", " # ", " # ", Character.valueOf('X'), Item.flint, ('#'), Item.stick}); LanguageRegistry.instance().addNameForObject(flintpickaxe, "en_US", "Flint Pickaxe"); LanguageRegistry.instance().addNameForObject(flintpickaxe, "ru_RU", "Кремневая Кирка"); flintshovel = new ItemFlintShovel(flintshovelid).setUnlocalizedName("flintshovel"); GameRegistry.addRecipe(new ItemStack(FlintBase.flintshovel, 1), new Object[]{ " X ", " # ", " # ", Character.valueOf('X'), Item.flint, ('#'), Item.stick}); LanguageRegistry.instance().addNameForObject(flintshovel, "en_US", "Flint Shovel"); LanguageRegistry.instance().addNameForObject(flintshovel, "ru_RU", "Кремневая Лопата"); flintaxe = new ItemFlintAxe(flintaxeid).setUnlocalizedName("flintaxe"); GameRegistry.addRecipe(new ItemStack(FlintBase.flintaxe, 1), new Object[]{ " XX", " #X", " # ", Character.valueOf('X'), Item.flint, ('#'), Item.stick}); LanguageRegistry.instance().addNameForObject(flintaxe, "en_US", "Flint Axe"); LanguageRegistry.instance().addNameForObject(flintaxe, "ru_RU", "Кремневый Топор"); flinthoe = new ItemFlintHoe(flinthoeid).setUnlocalizedName("flinthoe"); GameRegistry.addRecipe(new ItemStack(FlintBase.flinthoe, 1), new Object[]{ " XX", " # ", " # ", Character.valueOf('X'), Item.flint, ('#'), Item.stick}); LanguageRegistry.instance().addNameForObject(flinthoe, "en_US", "Flint Hoe"); LanguageRegistry.instance().addNameForObject(flinthoe, "ru_RU", "Кремневая Мотыга"); flintsword = new ItemFlintSword(flintswordid).setUnlocalizedName("flintsword"); GameRegistry.addRecipe(new ItemStack(FlintBase.flintsword, 1), new Object[]{ " X ", " X ", " # ", Character.valueOf('X'), Item.flint, ('#'), Item.stick}); LanguageRegistry.instance().addNameForObject(flintsword, "en_US", "Flint Sword"); LanguageRegistry.instance().addNameForObject(flintsword, "ru_RU", "Кремневый Меч"); } static EnumToolMaterial FLINT = EnumHelper.addToolMaterial("FLINT", 2, 150, 5.0F, 2.0F, 10); } [spoiler=SoundLoader] package platon.mods.flintstonetools; import net.minecraft.client.audio.SoundManager; import net.minecraftforge.client.event.sound.SoundLoadEvent; import net.minecraftforge.event.ForgeSubscribe; public class SoundLoader { @ForgeSubscribe public void onSoundsLoaded(SoundLoadEvent event) { event.manager.soundPoolSounds.addSound("flintstonetools/sound/stonestrike.ogg"); } } [spoiler=My item i want to play this sound] package platon.mods.flintstonetools; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.renderer.texture.IconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.EnumToolMaterial; import net.minecraft.item.ItemPickaxe; import net.minecraft.item.ItemStack; import net.minecraft.world.World; import net.minecraftforge.common.EnumHelper; import net.minecraftforge.common.Property; import java.util.Random; public class ItemFlintPickAxe extends ItemPickaxe{ public ItemFlintPickAxe(int par1) { super(par1,FlintBase.FLINT); this.setCreativeTab(CreativeTabs.tabTools); } @Override public void registerIcons(IconRegister reg){ this.itemIcon = reg.registerIcon("flintstonetools:ItemFlintPickAxe"); } public boolean onItemUse(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, World par3World, int par4, int par5, int par6, int par7, float par8, float par9, float par10) { par3World.playSoundAtEntity(par2EntityPlayer, "flintstonetools.sound.stonestrike", 1.0F, 1.0F); return true; } } Please help me!!! What should i do to make it work??? Minecraft 1.6.2 Forge 804 Quote [spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here [spoiler=Spoiler]And here too [spoiler=Spoiler]But that image is pretty good Link to comment Share on other sites More sharing options...
GotoLink Posted August 18, 2013 Share Posted August 18, 2013 event.manager.soundPoolSounds.addSound("flintstonetools:stonestrike.ogg"); par3World.playSoundAtEntity(par2EntityPlayer, "flintstonetools:stonestrike", 1.0F, 1.0F); Quote Link to comment Share on other sites More sharing options...
PlatonCraft Posted August 18, 2013 Author Share Posted August 18, 2013 I already tried this and its wasnt work but now i guessed that this is eclipse's problem i compiled my code and put it to minecraft mods folder and all get work but now in eclipse it doesn't works anyway. When i use my tool, all sounds are disappearing and minecraft writes the error code: 2013-08-18 22:00:04 [iNFO] [sTDERR] Exception in thread "Thread-15" java.lang.NullPointerException 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.codecs.CodecJOrbis.readHeader(CodecJOrbis.java:448) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.codecs.CodecJOrbis.initialize(CodecJOrbis.java:301) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.libraries.LibraryLWJGLOpenAL.loadSound(LibraryLWJGLOpenAL.java:392) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.libraries.LibraryLWJGLOpenAL.newSource(LibraryLWJGLOpenAL.java:640) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.SoundSystem.CommandNewSource(SoundSystem.java:1800) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.SoundSystem.CommandQueue(SoundSystem.java:2415) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.CommandThread.run(CommandThread.java:121) In what package in eclipe my sound must to be? Quote [spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here [spoiler=Spoiler]And here too [spoiler=Spoiler]But that image is pretty good Link to comment Share on other sites More sharing options...
PlatonCraft Posted August 18, 2013 Author Share Posted August 18, 2013 maybe common package? Quote [spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here [spoiler=Spoiler]And here too [spoiler=Spoiler]But that image is pretty good Link to comment Share on other sites More sharing options...
Mazetar Posted August 18, 2013 Share Posted August 18, 2013 There are tutorials on this, if you have trouble finding them you could try my website (self promoting, I know ): mazetar.com/mctuts/displayTutorials.php For sounds I wrote a tutorial which may aid you: www.minecraftforum.net/topic/1886370-forge16x-mazs-tutorials-working-custom-sounds-w-random-sound-from-soundpool-190713/ Quote If you guys dont get it.. then well ya.. try harder... Link to comment Share on other sites More sharing options...
PlatonCraft Posted August 18, 2013 Author Share Posted August 18, 2013 I already get mod works but not in eclipse. Where must assets/modname/sound directory must to be in eclipse, say please. I would be glad to some screenshot. Quote [spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here [spoiler=Spoiler]And here too [spoiler=Spoiler]But that image is pretty good Link to comment Share on other sites More sharing options...
Mazetar Posted August 18, 2013 Share Posted August 18, 2013 it must be inside ANY src folder in the project. if you have multiple source folders for your project you can have it inside ANY of them. Quote If you guys dont get it.. then well ya.. try harder... Link to comment Share on other sites More sharing options...
PlatonCraft Posted August 18, 2013 Author Share Posted August 18, 2013 I just copied all i need to the src folder which in the mcp's home (where is files recomp and reobf). And it doesn't works and gives me an error described upper Quote [spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here [spoiler=Spoiler]And here too [spoiler=Spoiler]But that image is pretty good Link to comment Share on other sites More sharing options...
Mazetar Posted August 18, 2013 Share Posted August 18, 2013 Do you keep the src for your mod inside the mcp/src/minecraft folder as well? Quote If you guys dont get it.. then well ya.. try harder... Link to comment Share on other sites More sharing options...
GotoLink Posted August 18, 2013 Share Posted August 18, 2013 I already tried this and its wasnt work but now i guessed that this is eclipse's problem i compiled my code and put it to minecraft mods folder and all get work but now in eclipse it doesn't works anyway. When i use my tool, all sounds are disappearing and minecraft writes the error code: 2013-08-18 22:00:04 [iNFO] [sTDERR] Exception in thread "Thread-15" java.lang.NullPointerException 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.codecs.CodecJOrbis.readHeader(CodecJOrbis.java:448) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.codecs.CodecJOrbis.initialize(CodecJOrbis.java:301) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.libraries.LibraryLWJGLOpenAL.loadSound(LibraryLWJGLOpenAL.java:392) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.libraries.LibraryLWJGLOpenAL.newSource(LibraryLWJGLOpenAL.java:640) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.SoundSystem.CommandNewSource(SoundSystem.java:1800) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.SoundSystem.CommandQueue(SoundSystem.java:2415) 2013-08-18 22:00:04 [iNFO] [sTDERR] at paulscode.sound.CommandThread.run(CommandThread.java:121) In what package in eclipe my sound must to be? Looks like a codec error. Can you try with a .wav file ? Quote Link to comment Share on other sites More sharing options...
PlatonCraft Posted August 18, 2013 Author Share Posted August 18, 2013 If you mean code - yes, all the code here, too. in mcp/src/minecraft Quote [spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here [spoiler=Spoiler]And here too [spoiler=Spoiler]But that image is pretty good Link to comment Share on other sites More sharing options...
PlatonCraft Posted August 18, 2013 Author Share Posted August 18, 2013 @Gotolink Just another error, and as I said if i compiling mod and put it to minecraft mods folder, all works 2013-08-18 23:24:30 [iNFO] [sTDOUT] Error in class 'CodecWav' 2013-08-18 23:24:30 [iNFO] [sTDOUT] Error setting up audio input stream in method 'initialize' 2013-08-18 23:24:30 [iNFO] [sTDOUT] ERROR MESSAGE: 2013-08-18 23:24:30 [iNFO] [sTDOUT] Stream closed 2013-08-18 23:24:30 [iNFO] [sTDOUT] STACK TRACE: 2013-08-18 23:24:30 [iNFO] [sTDOUT] java.io.BufferedInputStream.getInIfOpen(Unknown Source) 2013-08-18 23:24:30 [iNFO] [sTDOUT] java.io.BufferedInputStream.fill(Unknown Source) 2013-08-18 23:24:30 [iNFO] [sTDOUT] java.io.BufferedInputStream.read(Unknown Source) 2013-08-18 23:24:30 [iNFO] [sTDOUT] com.sun.media.sound.RIFFReader.read(Unknown Source) 2013-08-18 23:24:30 [iNFO] [sTDOUT] com.sun.media.sound.RIFFReader.<init>(Unknown Source) 2013-08-18 23:24:30 [iNFO] [sTDOUT] com.sun.media.sound.WaveFloatFileReader.internal_getAudioFileFormat(Unknown Source) 2013-08-18 23:24:30 [iNFO] [sTDOUT] com.sun.media.sound.WaveFloatFileReader.getAudioFileFormat(Unknown Source) 2013-08-18 23:24:30 [iNFO] [sTDOUT] com.sun.media.sound.WaveFloatFileReader.getAudioInputStream(Unknown Source) 2013-08-18 23:24:30 [iNFO] [sTDOUT] javax.sound.sampled.AudioSystem.getAudioInputStream(Unknown Source) 2013-08-18 23:24:30 [iNFO] [sTDOUT] paulscode.sound.codecs.CodecWav.initialize(CodecWav.java:128) 2013-08-18 23:24:30 [iNFO] [sTDOUT] paulscode.sound.libraries.LibraryLWJGLOpenAL.loadSound(LibraryLWJGLOpenAL.java:392) 2013-08-18 23:24:30 [iNFO] [sTDOUT] paulscode.sound.libraries.LibraryLWJGLOpenAL.newSource(LibraryLWJGLOpenAL.java:640) 2013-08-18 23:24:30 [iNFO] [sTDOUT] paulscode.sound.SoundSystem.CommandNewSource(SoundSystem.java:1800) 2013-08-18 23:24:30 [iNFO] [sTDOUT] paulscode.sound.SoundSystem.CommandQueue(SoundSystem.java:2415) 2013-08-18 23:24:30 [iNFO] [sTDOUT] paulscode.sound.CommandThread.run(CommandThread.java:121) 2013-08-18 23:24:30 [iNFO] [sTDOUT] Error in class 'CodecWav' 2013-08-18 23:24:30 [iNFO] [sTDOUT] Audio input stream null in method 'readAll' 2013-08-18 23:24:30 [iNFO] [sTDOUT] Error in class 'LibraryLWJGLOpenAL' 2013-08-18 23:24:30 [iNFO] [sTDOUT] Sound buffer null in method 'loadSound' 2013-08-18 23:24:30 [iNFO] [sTDOUT] Error in class 'LibraryLWJGLOpenAL' 2013-08-18 23:24:30 [iNFO] [sTDOUT] Source 'sound_29' was not created because an error occurred while loading flintstonetools:stonestrike.wav 2013-08-18 23:24:30 [iNFO] [sTDOUT] Error in class 'LibraryLWJGLOpenAL' 2013-08-18 23:24:30 [iNFO] [sTDOUT] Source 'sound_29' not found in method 'play' Quote [spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here [spoiler=Spoiler]And here too [spoiler=Spoiler]But that image is pretty good Link to comment Share on other sites More sharing options...
GotoLink Posted August 18, 2013 Share Posted August 18, 2013 Well...maybe a wrong Eclipse installation...or...did you touch mcp/bin folder ? Quote Link to comment Share on other sites More sharing options...
PlatonCraft Posted August 18, 2013 Author Share Posted August 18, 2013 In a sence? I just copied this sound to src. I tried to create package and folder named assets.flintstonetools.sound but the result is same - error Quote [spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here [spoiler=Spoiler]And here too [spoiler=Spoiler]But that image is pretty good Link to comment Share on other sites More sharing options...
PlatonCraft Posted August 18, 2013 Author Share Posted August 18, 2013 YEAH!!! I fixed it. I put the sound in mcp/eclipse folder. My sound is very bad. I need the sound of flint scratching stone. Can anyone help me with that? at least give me a link to site with different sounds. Quote [spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler][spoiler=Spoiler]LOL,Its nothing interesting here [spoiler=Spoiler]And here too [spoiler=Spoiler]But that image is pretty good Link to comment Share on other sites More sharing options...
Recommended Posts
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.