1
0
mirror of https://github.com/SquidDev-CC/CC-Tweaked synced 2024-06-16 10:09:55 +00:00
CC-Tweaked/src/main/java/dan200/computercraft/shared/media/items/RecordMedia.java
SquidDev 741ee447ca A wee bit of a cleanup of the API
- Move some method over to defaulted methods
 - Use Objects rather than Preconditions
2018-12-17 21:33:49 +00:00

47 lines
1.1 KiB
Java

/*
* This file is part of ComputerCraft - http://www.computercraft.info
* Copyright Daniel Ratcliffe, 2011-2017. Do not distribute without permission.
* Send enquiries to dratcliffe@gmail.com
*/
package dan200.computercraft.shared.media.items;
import dan200.computercraft.ComputerCraft;
import dan200.computercraft.api.media.IMedia;
import net.minecraft.item.ItemRecord;
import net.minecraft.item.ItemStack;
import net.minecraft.util.SoundEvent;
import javax.annotation.Nonnull;
/**
* An implementation of IMedia for ItemRecord's
*/
public class RecordMedia implements IMedia
{
public static final RecordMedia INSTANCE = new RecordMedia();
private RecordMedia()
{
}
@Override
public String getLabel( @Nonnull ItemStack stack )
{
return getAudioTitle( stack );
}
@Override
public String getAudioTitle( @Nonnull ItemStack stack )
{
return ComputerCraft.getRecordInfo( stack );
}
@Override
public SoundEvent getAudio( @Nonnull ItemStack stack )
{
ItemRecord itemRecord = (ItemRecord) stack.getItem();
return itemRecord.sound;
}
}