package pneumaticCraft.api.client.pneumaticHelmet;
import java.util.List;
import net.minecraft.entity.Entity;
/**
* Implement this class and register it by adding it to the entityTrackEntries class.
* There needs to be a parameterless constructor. For every entity that's applicable for this definition, an instance is created.
*/
public interface IEntityTrackEntry{
/**
* Return true if you want to add a tooltip for the given entity.
* @param entity
* @return
*/
public boolean isApplicable(Entity entity);
/**
* Add info to the tab. This is only called when isApplicable returned true.
* @param entity
* @param curInfo
*/
public void addInfo(Entity entity, List<String> curInfo);
/**
* Update is called every (client) tick, and can be used to update something like a timer (used for the Creeper countdown).
* @param entity
*/
public void update(Entity entity);
/**
* Called every render tick, this method can be used to render additional info. Used for Drone AI visualisation.
* @param entity
* @param partialTicks TODO
*/
public void render(Entity entity, float partialTicks);
/**
* Just a basic implementation class that can be used if an update and render method isn't needed.
*/
public static abstract class EntityTrackEntry implements IEntityTrackEntry{
@Override
public void update(Entity entity){}
@Override
public void render(Entity entity, float partialTicks){}
}
}