package WayofTime.bloodmagic.api.iface; import net.minecraft.block.state.IBlockState; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.math.BlockPos; import net.minecraft.util.text.ITextComponent; import net.minecraft.world.World; import javax.annotation.Nonnull; import java.util.List; /** * Marks blocks as one that is documented. * * This documentation can be read by an * {@link WayofTime.bloodmagic.item.ItemSanguineBook} (or child) */ public interface IDocumentedBlock { /** * Provides the documentation to provide to the player. Usually a * short'n'sweet description about basic usage. * * @param player * - The EntityPlayer attempting to view the Documentation. * @param world * - The World interaction is happening in. * @param pos * - The BlockPos being interacted at. * @param state * - The IBlockState of the interacted Block. * * @return - A list of formatted ITextComponent to provide to the player. * Provide an empty list if there is no available documentation. */ @Nonnull List getDocumentation(EntityPlayer player, World world, BlockPos pos, IBlockState state); }