blob: a2de95df58545ec7b87e463272fa63cf02d0f6eb [file] [log] [blame] [raw]
package mekanism.common.base;
import net.minecraft.util.ResourceLocation;
import mekanism.client.sound.IResettableSound;
import mekanism.client.sound.ISoundSource;
import mekanism.client.sound.SoundHandler;
import mekanism.client.sound.TileSound;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
public class SoundWrapper
{
@SideOnly(Side.CLIENT)
public IResettableSound sound;
public SoundWrapper(IHasSound tile, ISoundSource source)
{
try {
sound = new TileSound(tile, source);
} catch(Throwable t) {}
}
public SoundWrapper(IHasSound tile, ISoundSource source, ResourceLocation location)
{
try {
sound = new TileSound(tile, source, location);
} catch(Throwable t) {}
}
@SideOnly(Side.CLIENT)
public void reset()
{
sound.reset();
}
@SideOnly(Side.CLIENT)
public void play()
{
SoundHandler.playSound(sound);
}
@SideOnly(Side.CLIENT)
public boolean canRestart()
{
return SoundHandler.canRestartSound(sound);
}
}