diff options
| author | NotAPenguin <michiel.vandeginste@gmail.com> | 2024-09-02 23:17:17 +0200 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-09-02 23:17:17 +0200 | 
| commit | 1b820de08a05070909a267e17f033fcf58ac8710 (patch) | |
| tree | 02831a025986a06b20f87e5bcc69d1e0c639a342 /src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsInput.java | |
| parent | afd3fd92b6a6ab9ab0d0dc3214e6bc8ff7a86c9b (diff) | |
| download | GT5-Unofficial-1b820de08a05070909a267e17f033fcf58ac8710.tar.gz GT5-Unofficial-1b820de08a05070909a267e17f033fcf58ac8710.tar.bz2 GT5-Unofficial-1b820de08a05070909a267e17f033fcf58ac8710.zip | |
The Great Renaming (#3014)
* move kekztech to a single root dir
* move detrav to a single root dir
* move gtnh-lanthanides to a single root dir
* move tectech and delete some gross reflection in gt++
* remove more reflection inside gt5u
* delete more reflection in gt++
* fix imports
* move bartworks and bwcrossmod
* fix proxies
* move galactigreg and ggfab
* move gtneioreplugin
* try to fix gt++ bee loader
* apply the rename rules to BW
* apply rename rules to bwcrossmod
* apply rename rules to detrav scanner mod
* apply rename rules to galacticgreg
* apply rename rules to ggfab
* apply rename rules to goodgenerator
* apply rename rules to gtnh-lanthanides
* apply rename rules to gt++
* apply rename rules to kekztech
* apply rename rules to kubatech
* apply rename rules to tectech
* apply rename rules to gt
apply the rename rules to gt
* fix tt import
* fix mui hopefully
* fix coremod except intergalactic
* rename assline recipe class
* fix a class name i stumbled on
* rename StructureUtility to GTStructureUtility to prevent conflict with structurelib
* temporary rename of GTTooltipDataCache to old name
* fix gt client/server proxy names
Diffstat (limited to 'src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsInput.java')
| -rw-r--r-- | src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsInput.java | 139 | 
1 files changed, 139 insertions, 0 deletions
| diff --git a/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsInput.java b/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsInput.java new file mode 100644 index 0000000000..e7d604328a --- /dev/null +++ b/src/main/java/tectech/thing/metaTileEntity/hatch/MTEHatchWirelessDataItemsInput.java @@ -0,0 +1,139 @@ +package tectech.thing.metaTileEntity.hatch; + +import static gregtech.api.enums.Dyes.MACHINE_METAL; +import static net.minecraft.util.StatCollector.translateToLocal; +import static net.minecraft.util.StatCollector.translateToLocalFormatted; +import static tectech.thing.metaTileEntity.hatch.MTEHatchDataConnector.EM_D_ACTIVE; +import static tectech.thing.metaTileEntity.hatch.MTEHatchDataConnector.EM_D_CONN; +import static tectech.thing.metaTileEntity.hatch.MTEHatchDataConnector.EM_D_SIDES; + +import java.util.List; +import java.util.function.Predicate; +import java.util.stream.Collectors; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.EntityPlayerMP; +import net.minecraft.item.ItemStack; +import net.minecraftforge.common.util.ForgeDirection; + +import org.apache.commons.lang3.reflect.FieldUtils; + +import gregtech.api.enums.Dyes; +import gregtech.api.interfaces.ITexture; +import gregtech.api.interfaces.tileentity.IGregTechTileEntity; +import gregtech.api.metatileentity.MetaTileEntity; +import gregtech.api.metatileentity.implementations.MTEHatchDataAccess; +import gregtech.api.objects.GTRenderedTexture; +import gregtech.common.WirelessDataStore; +import tectech.util.CommonValues; +import tectech.util.TTUtility; + +public class MTEHatchWirelessDataItemsInput extends MTEHatchDataAccess { + +    private String clientLocale = "en_US"; + +    public MTEHatchWirelessDataItemsInput(int aID, String aName, String aNameRegional, int aTier) { +        super(aID, aName, aNameRegional, aTier); +        TTUtility.setTier(aTier, this); +    } + +    public MTEHatchWirelessDataItemsInput(String aName, int aTier, String aDescription, ITexture[][][] aTextures) { +        super(aName, aTier, aDescription, aTextures); +    } + +    public MTEHatchWirelessDataItemsInput(String aName, int aTier, String[] aDescription, ITexture[][][] aTextures) { +        super(aName, aTier, aDescription, aTextures); +    } + +    @Override +    public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) { +        return new MTEHatchWirelessDataItemsInput(this.mName, this.mTier, mDescriptionArray, this.mTextures); +    } + +    @Override +    public ITexture[] getTexturesActive(ITexture aBaseTexture) { +        return new ITexture[] { aBaseTexture, +            new GTRenderedTexture( +                EM_D_ACTIVE, +                Dyes.getModulation(getBaseMetaTileEntity().getColorization(), MACHINE_METAL.getRGBA())), +            new GTRenderedTexture(EM_D_CONN) }; +    } + +    @Override +    public ITexture[] getTexturesInactive(ITexture aBaseTexture) { +        return new ITexture[] { aBaseTexture, +            new GTRenderedTexture( +                EM_D_SIDES, +                Dyes.getModulation(getBaseMetaTileEntity().getColorization(), MACHINE_METAL.getRGBA())), +            new GTRenderedTexture(EM_D_CONN) }; +    } + +    @Override +    public boolean allowPullStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side, +        ItemStack aStack) { +        return false; +    } + +    @Override +    public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, ForgeDirection side, +        ItemStack aStack) { +        return false; +    } + +    @Override +    public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) { +        if (aBaseMetaTileEntity.isClientSide()) { +            return true; +        } +        try { +            EntityPlayerMP player = (EntityPlayerMP) aPlayer; +            clientLocale = (String) FieldUtils.readField(player, "translator", true); +        } catch (Exception e) { +            clientLocale = "en_US"; +        } +        return true; +    } + +    @Override +    public int getInventoryStackLimit() { +        return 1; +    } + +    @Override +    public boolean isOutputFacing(ForgeDirection side) { +        return false; +    } + +    @Override +    public boolean isInputFacing(ForgeDirection side) { +        return side == getBaseMetaTileEntity().getFrontFacing(); +    } + +    @Override +    public String[] getDescription() { +        return new String[] { CommonValues.TEC_MARK_EM, +            translateToLocal("gt.blockmachines.hatch.datainasswireless.desc.0"), +            translateToLocal("gt.blockmachines.hatch.datainasswireless.desc.1"), }; +    } + +    @Override +    public List<ItemStack> getInventoryItems(Predicate<ItemStack> filter) { +        WirelessDataStore wirelessData = WirelessDataStore +            .getWirelessDataSticks(getBaseMetaTileEntity().getOwnerUuid()); +        return wirelessData.downloadData() +            .stream() +            .filter(stack -> stack != null && filter.test(stack)) +            .collect(Collectors.toList()); +    } + +    @Override +    public boolean isGivingInformation() { +        return true; +    } + +    @Override +    public String[] getInfoData() { +        return new String[] { translateToLocalFormatted("tt.keyphrase.Content_Stack_Count", clientLocale) + ": " +            + getInventoryItems(_stack -> true).size() }; +    } +} | 
