Posted November 20, 201410 yr Hello. So what am I doing wrong here? Map<ChunkCoordinates, ISound> mapSoundPositions = ReflectionHelper.getPrivateValue(RenderGlobal.class, Minecraft.getMinecraft().renderGlobal, "field_147593_P", "mapSoundPositions"); ISound sound =mapSoundPositions.get(new ChunkCoordinates(xCoord, yCoord, zCoord)); if (sound != null) { HashBiMap<String, ISound> playingSounds = ReflectionHelper.getPrivateValue(SoundManager.class, SoundManagerInstances.soundManagerInstance, "playingSounds", "field_148629_h"); String soundString= playingSounds.inverse().get(sound); SoundManagerInstances.soundSystemInstance.stop(soundString); } There is definitely a sound at the coordinates but the "sound" is always null.
November 21, 201410 yr Hi Have you tried putting a breakpoint at the ISound line and inspecting mapSoundPositions? Should show you pretty quickly what's wrong. -TGG
November 21, 201410 yr Author Good idea, I'll give it a try. I actually changed my code to stop with an identifier cause I couldn't get this to work, but I'll get back to it in a bit as I would prefer not to have to keep track of the previous sound manually.
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.