Files
Applied-Energistics-2/items/tools/powered/ToolWirelessTerminal.java
T
AlgorithmX2 af8e356bec Wireless block no uses placed side to orient, this is more natural for it instead of the place based version.
Added Wireless Encoder Gui to the Security Term
Security Term now only accepts Biometric Cards in the config slot.
Added Wireless Block.
Added Wireless Terminal.
Fixed Crash when loading world settings.
Configure slot of Security Block now drops on destruction.
2014-02-02 01:32:10 -06:00

93 lines
2.3 KiB
Java

package appeng.items.tools.powered;
import java.util.EnumSet;
import java.util.List;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.StatCollector;
import net.minecraft.world.World;
import appeng.api.AEApi;
import appeng.api.features.IWirelessTermHandler;
import appeng.core.features.AEFeature;
import appeng.core.localization.GuiText;
import appeng.items.tools.powered.powersink.AEBasePoweredItem;
import appeng.util.Platform;
import cpw.mods.fml.common.network.Player;
public class ToolWirelessTerminal extends AEBasePoweredItem implements IWirelessTermHandler
{
String name;
int DISTNACE_CALC = 2;
public ToolWirelessTerminal() {
super( ToolWirelessTerminal.class, null );
setfeature( EnumSet.of( AEFeature.WirelessAccessTerminal, AEFeature.PoweredTools ) );
}
@Override
public ItemStack onItemRightClick(ItemStack item, World w, EntityPlayer player)
{
AEApi.instance().registries().wireless().OpenWirelessTermainlGui( item, w, player );
return item;
}
@Override
public void addInformation(ItemStack i, EntityPlayer p, List l, boolean b)
{
super.addInformation( i, p, l, b );
if ( i.hasTagCompound() )
{
NBTTagCompound tag = Platform.openNbtData( i );
if ( tag != null )
{
String encKey = tag.getString( "encryptionKey" );
if ( encKey == null || encKey == "" )
l.add( GuiText.Unlinked.getLocal() );
else
l.add( GuiText.Linked.getLocal() );
}
}
else
l.add( StatCollector.translateToLocal( "AppEng.GuiITooltip.Unlinked" ) );
}
@Override
public boolean canHandle(ItemStack is)
{
return AEApi.instance().items().itemWirelessTerminal.sameAs( is );
}
@Override
public boolean usePower(Player player, float amount, ItemStack is)
{
return this.extractAEPower( is, amount ) >= amount - 0.5;
}
@Override
public boolean hasPower(Player player, ItemStack is)
{
return getAECurrentPower( is ) > 0.5;
}
@Override
public String getEncryptionKey(ItemStack item)
{
NBTTagCompound tag = Platform.openNbtData( item );
return tag.getString( "encryptionKey" );
}
@Override
public void setEncryptionKey(ItemStack item, String encKey, String name)
{
NBTTagCompound tag = Platform.openNbtData( item );
tag.setString( "encryptionKey", encKey );
tag.setString( "name", name );
}
}