Mekanism-tilera-Edition/common/mekanism/client/sound/PlayerSound.java
2013-12-22 01:04:35 -05:00

59 lines
971 B
Java

package mekanism.client.sound;
import mekanism.api.Pos3D;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.world.World;
public abstract class PlayerSound extends Sound
{
/** The TileEntity this sound is associated with. */
public EntityPlayer player;
public int ticksSincePlay = 0;
public PlayerSound(String id, String sound, EntityPlayer entity)
{
super(id, sound, entity, new Pos3D(entity));
player = entity;
}
@Override
public float getMultiplier()
{
return Math.min(1, ((float)ticksSincePlay/20F))*0.3F;
}
@Override
public boolean update(World world)
{
if(player.isDead)
{
return false;
}
else if(player.worldObj != world)
{
return false;
}
else if(!world.loadedEntityList.contains(player))
{
return false;
}
return true;
}
@Override
public Pos3D getLocation()
{
return new Pos3D(player);
}
@Override
public void play()
{
super.play();
ticksSincePlay = 0;
}
}