Posted January 2, 201411 yr So I'm trying to do everything to call World.PlaySound but I can't seem to get it to work please help. thanks.
January 2, 201411 yr Yeah what sound? ModSound or MCSound? For playSound you need the prosition for the block, the sound file as String, the volume and pitch (pitch is always at 1.0F) And if you want to play a MCSound than look in the classes which play it too.//for the string And mod sound is a little differend
January 2, 201411 yr You can see a working example in my mod. worldObj.playSoundEffect((double) xCoord + 0.5D, (double) yCoord + 0.5D, (double) zCoord + 0.5D, TwoTility.proxy.SOUND_FLUIDSUCKIN, 0.6F, worldObj.rand.nextFloat() * 0.1F + 0.9F); Where the parameters are: x, y, z, soundName, volume, pitch The point is that you first need to register the sound (as done in my ProxyBase (should actually be done in ProxyClient)): @ForgeSubscribe public void onSoundSetup(final SoundLoadEvent event) { event.manager.addSound(SOUND_FLUIDSUCKIN + ".ogg"); } Where SOUND_FLUIDSUCKIN is: TwoTility.MOD_ID + ":" + "fluidsuckin" And the sound-file is stored in: assets\twotility\sound My Mods New Dawn - A completely new terrain engine for Minecraft TwoTility - Blocks and Items for a better Minecraft TwoGraves - Keeps your items safe on death
January 2, 201411 yr first remove the final out of your sound registry. Then the soundfile path has to be like this: ModID:SoundFile And do not forget to register the soundHandler. look at this maybe it helps: https://www.dropbox.com/s/zpayp0qib53a61z/SoundHandler.java
January 2, 201411 yr Be sure you only register your SoundHandler class on the client side, or you will crash when you try to run your mod on a server environment (because the event's SoundManager is a client side only class). Easiest way to ensure that is to put the registration in your ClientProxy. P.S. volume AND pitch can both have pretty much any value; vanilla often uses random values for the pitch especially so that the sound doesn't always sound the same: // from ItemBow; note the final parameter for pitch is different every time the bow fires, // but volume, in this particular case, is set at 1.0F par2World.playSoundAtEntity(par3EntityPlayer, "random.bow", 1.0F, 1.0F / (itemRand.nextFloat() * 0.4F + 1.2F) + f * 0.5F); http://i.imgur.com/NdrFdld.png[/img]
January 2, 201411 yr with Volume you are right. It can be any number. But should be 1.0F. and MC does change it a little bit to getDifferend sounds from 1 sound.
January 2, 201411 yr Author I can't seem to get any of these working, i usually get change modifier of to static thanks for the help
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.