Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Featured Replies

Posted

So I'm trying to do everything to call World.PlaySound but I can't seem to get it to work please help.

 

thanks.

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

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

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);

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.

  • 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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

Important Information

By using this site, you agree to our Terms of Use.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.