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

I have a Tile Entity that calls the playSound method in my class, MovingSoundInfusedLog, which extends 'MovingSound'. My sound works fine when just playing it normally, using world.playSound.

 

MovingSoundInfusedLog (extends MovingSound)

public class MovingSoundInfusedLog extends MovingSound{
    TileEntityInfusedLog infused_log;

    public MovingSoundInfusedLog(TileEntityInfusedLog infusedLogIn) {
        super(RegistryEventHandler.infused_log_ambient, SoundCategory.BLOCKS);
        this.infused_log = infusedLogIn;
        this.repeat = true;
        this.repeatDelay = 0;
    }

    @Override
    public void update() {

    }
}

Tile Entity Infused Log:

public class TileEntityInfusedLog extends TileEntity {
    private int carveAmount = 0;

    public TileEntityInfusedLog() {
        Minecraft.getMinecraft().getSoundHandler().playSound(new MovingSoundInfusedLog(this));
    }
}

 

I get the output:

[14:15:55] [Client thread/INFO]: Infused Log In: io.github.mspacedev.tiles.TileEntityInfusedLog@586c85e8
[14:15:55] [Server thread/INFO]: Infused Log In: io.github.mspacedev.tiles.TileEntityInfusedLog@74326d4b

Meaning, the MovingSoundInfusedLog code is running. So yeah, I get the output, but no sound playing when I "place down" the Tile Entity.

Edited by MSpace-Dev

  • Author

I looked at the code in WorldClient. I tried to replicate it, which is how I got to where I am.

if (entityIn instanceof EntityMinecart)
            {
                this.mc.getSoundHandler().playSound(new MovingSoundMinecart((EntityMinecart)entityIn));
            }

 

  • Author

Oh, got it working. Never realized this. Just had to set the VOLUME. It was actually playing all along.

 

public class MovingSoundInfusedLog extends MovingSound{
    private TileEntityInfusedLog infused_log;

    public MovingSoundInfusedLog(TileEntityInfusedLog infusedLogIn) {
        super(RegistryEventHandler.infused_log_ambient, SoundCategory.BLOCKS);
        this.infused_log = infusedLogIn;
        this.repeat = true;
        this.repeatDelay = 0;
        this.volume = 1000.0F;
        Utils.getLogger().info("Infused Log In: " + infusedLogIn);
    }

    @Override
    public void update() {
        if(infused_log.isInvalid()) {
            this.donePlaying = true;
        }
    }
}

 

  • Author

Alright, now I've got a really weird problem. I can only hear the sound when the VOLUME is  100.0f+! Anything under 100 does not play.

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.