Jump to content

[1.7.10][Unsolved] Sound playing twice


ExoMaster

Recommended Posts

I'm trying to make a block that, when it gets a redstone signal, it makes the creeper sound to the nearest player. This works, but when the redstone wire that is powering it is getting its power from through a block, the block plays the sound upon receiving the redstone signal, but plays it again and much louder upon losing the signal. Here is the block code that makes the sound:

 

@SideOnly(Side.CLIENT)
@Override
public void onNeighborBlockChange(World world, int x,int y, int z, Block block) {
	if (!world.isRemote && world.isBlockIndirectlyGettingPowered(x, y, z)) {
		world.playSoundAtEntity(world.getClosestPlayer(x, y, z, 20), "creeper.primed", 1.0F, 0.5F);
		return;
	} else {
		return;
	}
}

Link to comment
Share on other sites

Originally I only had !world.isRemote, but when I found the bug I added the @SideOnly annotation. And I'll check those vanilla blocks in a moment, but I thought they used onNeighborBlockChange as well.

 

EDIT:

 

I looked at BlockPistonBase and BlockNote, but I noticed something in BlockNote. There's something tracking the previous redstone state of the block. I wonder if this was because Mojang had a similar issue when making Note Blocks? I'm gonna try that.

Link to comment
Share on other sites

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

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



×
×
  • Create New...

Important Information

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