From 4e353a8aaa222cd888bdc3e22c14cda4523ff71b Mon Sep 17 00:00:00 2001 From: Alkalus <3060479+draknyte1@users.noreply.github.com> Date: Fri, 31 Aug 2018 02:22:54 +1000 Subject: + Actually uploaded all of the assets for the new covers, items & overlays. % Renamed IChunkLoader.java to IChunkLoaderTile.java. --- .../gtPlusPlus/api/interfaces/IChunkLoader.java | 9 - .../api/interfaces/IChunkLoaderTile.java | 10 + .../gtPlusPlus/core/util/minecraft/ItemUtils.java | 2 +- src/Java/gtPlusPlus/preloader/DevHelper.java | 1 + .../common/covers/GTPP_Cover_Overflow.java | 213 +++++++++++++++++++++ .../OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE.png | Bin 0 -> 363 bytes ...OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ACTIVE.png | Bin 0 -> 350 bytes ...ERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED.png | Bin 0 -> 883 bytes ...RONT_ELECTRIC_BLAST_FURNACE_ANIMATED.png.mcmeta | 5 + ...RONT_ELECTRIC_BLAST_FURNACE_ANIMATED_ACTIVE.png | Bin 0 -> 808 bytes ...ECTRIC_BLAST_FURNACE_ANIMATED_ACTIVE.png.mcmeta | 5 + .../blocks/iconsets/OVERLAY_OVERFLOW_VALVE.png | Bin 0 -> 928 bytes .../iconsets/OVERLAY_OVERFLOW_VALVE.png.mcmeta | 6 + .../miscutils/textures/items/MU-metaitem.01/71.png | Bin 0 -> 304 bytes .../miscutils/textures/items/MU-metaitem.01/72.png | Bin 0 -> 314 bytes .../miscutils/textures/items/MU-metaitem.01/73.png | Bin 0 -> 318 bytes .../miscutils/textures/items/MU-metaitem.01/74.png | Bin 0 -> 319 bytes .../miscutils/textures/items/MU-metaitem.01/75.png | Bin 0 -> 323 bytes .../miscutils/textures/items/MU-metaitem.01/76.png | Bin 0 -> 321 bytes .../miscutils/textures/items/MU-metaitem.01/77.png | Bin 0 -> 324 bytes .../miscutils/textures/items/MU-metaitem.01/78.png | Bin 0 -> 324 bytes .../miscutils/textures/items/MU-metaitem.01/79.png | Bin 0 -> 314 bytes 22 files changed, 241 insertions(+), 10 deletions(-) delete mode 100644 src/Java/gtPlusPlus/api/interfaces/IChunkLoader.java create mode 100644 src/Java/gtPlusPlus/api/interfaces/IChunkLoaderTile.java create mode 100644 src/Java/gtPlusPlus/xmod/gregtech/common/covers/GTPP_Cover_Overflow.java create mode 100644 src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE.png create mode 100644 src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ACTIVE.png create mode 100644 src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED.png create mode 100644 src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED.png.mcmeta create mode 100644 src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED_ACTIVE.png create mode 100644 src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED_ACTIVE.png.mcmeta create mode 100644 src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_OVERFLOW_VALVE.png create mode 100644 src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_OVERFLOW_VALVE.png.mcmeta create mode 100644 src/resources/assets/miscutils/textures/items/MU-metaitem.01/71.png create mode 100644 src/resources/assets/miscutils/textures/items/MU-metaitem.01/72.png create mode 100644 src/resources/assets/miscutils/textures/items/MU-metaitem.01/73.png create mode 100644 src/resources/assets/miscutils/textures/items/MU-metaitem.01/74.png create mode 100644 src/resources/assets/miscutils/textures/items/MU-metaitem.01/75.png create mode 100644 src/resources/assets/miscutils/textures/items/MU-metaitem.01/76.png create mode 100644 src/resources/assets/miscutils/textures/items/MU-metaitem.01/77.png create mode 100644 src/resources/assets/miscutils/textures/items/MU-metaitem.01/78.png create mode 100644 src/resources/assets/miscutils/textures/items/MU-metaitem.01/79.png diff --git a/src/Java/gtPlusPlus/api/interfaces/IChunkLoader.java b/src/Java/gtPlusPlus/api/interfaces/IChunkLoader.java deleted file mode 100644 index e6aaabbba0..0000000000 --- a/src/Java/gtPlusPlus/api/interfaces/IChunkLoader.java +++ /dev/null @@ -1,9 +0,0 @@ -package gtPlusPlus.api.interfaces; - -import net.minecraft.inventory.IInventory; - -public interface IChunkLoader extends IInventory, net.minecraft.world.chunk.storage.IChunkLoader{ - - long getTicksRemaining(); - -} diff --git a/src/Java/gtPlusPlus/api/interfaces/IChunkLoaderTile.java b/src/Java/gtPlusPlus/api/interfaces/IChunkLoaderTile.java new file mode 100644 index 0000000000..16152668fc --- /dev/null +++ b/src/Java/gtPlusPlus/api/interfaces/IChunkLoaderTile.java @@ -0,0 +1,10 @@ +package gtPlusPlus.api.interfaces; + +import net.minecraft.inventory.IInventory; +import net.minecraft.world.chunk.storage.IChunkLoader; + +public interface IChunkLoaderTile extends IInventory, IChunkLoader{ + + long getTicksRemaining(); + +} diff --git a/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java b/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java index 56707db32b..fdc50bf269 100644 --- a/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java +++ b/src/Java/gtPlusPlus/core/util/minecraft/ItemUtils.java @@ -774,7 +774,7 @@ public class ItemUtils { if (mLocaleCache.get(mCacheKey).toLowerCase().contains(".name")) { mLocaleCache.remove(mCacheKey); String mNew = ItemUtils.simpleMetaStack(block, meta, 1).getDisplayName(); - Logger.INFO("Re-caching "+mNew+" into locale cache."); + //Logger.INFO("Re-caching "+mNew+" into locale cache."); mLocaleCache.put(mCacheKey, mNew); } return mLocaleCache.get(mCacheKey); diff --git a/src/Java/gtPlusPlus/preloader/DevHelper.java b/src/Java/gtPlusPlus/preloader/DevHelper.java index 80830e869b..5b6a92b8f5 100644 --- a/src/Java/gtPlusPlus/preloader/DevHelper.java +++ b/src/Java/gtPlusPlus/preloader/DevHelper.java @@ -27,6 +27,7 @@ public class DevHelper { } + @SuppressWarnings("rawtypes") public Method getForgeMethod(Class c, String s, Class... varags) { String s1, s2; Method a, b; diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/covers/GTPP_Cover_Overflow.java b/src/Java/gtPlusPlus/xmod/gregtech/common/covers/GTPP_Cover_Overflow.java new file mode 100644 index 0000000000..b220dd74e8 --- /dev/null +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/covers/GTPP_Cover_Overflow.java @@ -0,0 +1,213 @@ +package gtPlusPlus.xmod.gregtech.common.covers; + +import java.util.HashMap; + +import gregtech.api.interfaces.tileentity.ICoverable; +import gregtech.api.interfaces.tileentity.IMachineProgress; +import gregtech.api.util.GT_CoverBehavior; +import gregtech.api.util.GT_Utility; +import gtPlusPlus.api.objects.Logger; +import gtPlusPlus.api.objects.data.ObjMap; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraftforge.common.util.ForgeDirection; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.fluids.IFluidHandler; + +public class GTPP_Cover_Overflow extends GT_CoverBehavior { + public final int mMaxTransferRate; + + public static final ObjMap> mOverflowCache = new ObjMap>(10000, 0.5f); + + public GTPP_Cover_Overflow(int aTransferRate) { + this.mMaxTransferRate = aTransferRate*1000; + } + + public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, + long aTimer) { + + HashMap aCoverData = getCover(aSide, aCoverID, aCoverVariable, aTileEntity); + //Do things + + if (aCoverData != null) { + if (aCoverData.containsKey("aCoverVariable")) + return (int) aCoverData.get("aCoverVariable"); + } + + + if (aCoverVariable % 6 > 1 && aTileEntity instanceof IMachineProgress + && ((IMachineProgress) aTileEntity).isAllowedToWork() != aCoverVariable % 6 < 4) { + return aCoverVariable; + } else { + if (aTileEntity instanceof IFluidHandler) { + IFluidHandler tTank2 = aTileEntity.getITankContainerAtSide(aSide); + if (tTank2 != null) { + IFluidHandler tTank1 = (IFluidHandler) aTileEntity; + FluidStack tLiquid; + if (aCoverVariable % 2 == 0) { + tLiquid = tTank1.drain(ForgeDirection.getOrientation(aSide), this.mMaxTransferRate, false); + if (tLiquid != null) { + tLiquid = tLiquid.copy(); + tLiquid.amount = tTank2.fill(ForgeDirection.getOrientation(aSide).getOpposite(), tLiquid, + false); + if (tLiquid.amount > 0) { + if ((aCoverVariable % 2 == 0 || aSide != 1) && (aCoverVariable % 2 != 0 || aSide != 0) + && aTileEntity.getUniversalEnergyCapacity() >= (long) Math.min(1, + tLiquid.amount / 10)) { + if (aTileEntity.isUniversalEnergyStored((long) Math.min(1, tLiquid.amount / 10))) { + aTileEntity.decreaseStoredEnergyUnits((long) Math.min(1, tLiquid.amount / 10), + true); + tTank2.fill(ForgeDirection.getOrientation(aSide).getOpposite(), tTank1.drain( + ForgeDirection.getOrientation(aSide), tLiquid.amount, true), true); + } + } else { + tTank2.fill(ForgeDirection.getOrientation(aSide).getOpposite(), + tTank1.drain(ForgeDirection.getOrientation(aSide), tLiquid.amount, true), + true); + } + } + } + } else { + tLiquid = tTank2.drain(ForgeDirection.getOrientation(aSide).getOpposite(), this.mMaxTransferRate, + false); + if (tLiquid != null) { + tLiquid = tLiquid.copy(); + tLiquid.amount = tTank1.fill(ForgeDirection.getOrientation(aSide), tLiquid, false); + if (tLiquid.amount > 0) { + if ((aCoverVariable % 2 == 0 || aSide != 1) && (aCoverVariable % 2 != 0 || aSide != 0) + && aTileEntity.getUniversalEnergyCapacity() >= (long) Math.min(1, + tLiquid.amount / 10)) { + if (aTileEntity.isUniversalEnergyStored((long) Math.min(1, tLiquid.amount / 10))) { + aTileEntity.decreaseStoredEnergyUnits((long) Math.min(1, tLiquid.amount / 10), + true); + tTank1.fill(ForgeDirection.getOrientation(aSide), + tTank2.drain(ForgeDirection.getOrientation(aSide).getOpposite(), + tLiquid.amount, true), + true); + } + } else { + tTank1.fill(ForgeDirection.getOrientation(aSide), + tTank2.drain(ForgeDirection.getOrientation(aSide).getOpposite(), + tLiquid.amount, true), + true); + } + } + } + } + } + } + + return aCoverVariable; + } + } + + public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, + EntityPlayer aPlayer, float aX, float aY, float aZ) { + + + if ((double) aX > 0.375D && (double) aX < 0.625D || aSide <= 3 || (double) aY > 0.375D && (double) aY < 0.625D + || (double) aZ <= 0.375D || (double) aZ >= 0.625D) { + HashMap aCoverData = getCover(aSide, aCoverID, aCoverVariable, aTileEntity); + float[] tCoords = GT_Utility.getClickedFacingCoords(aSide, aX, aY, aZ); + switch ((byte) ((byte) ((int) (tCoords[0] * 2.0F)) + 2 * (byte) ((int) (tCoords[1] * 2.0F)))) { + case 0 : + aCoverVariable -= 1000; + break; + case 1 : + aCoverVariable += 1000; + break; + case 2 : + aCoverVariable -= 32000; + break; + case 3 : + aCoverVariable += 32000; + } + aCoverData.remove("aCoverVariable"); + aCoverData.put("aCoverVariable", aCoverVariable); + updateCoverMap(aCoverData); + + } + GT_Utility.sendChatToPlayer(aPlayer, "Overflow Limit: " + aCoverVariable); + + return aCoverVariable; + } + + public boolean letsRedstoneGoIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { + return true; + } + + public boolean letsRedstoneGoOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { + return true; + } + + public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { + return true; + } + + public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { + return true; + } + + public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity) { + return true; + } + + public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity) { + return true; + } + + public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity) { + return aCoverVariable > 1 && aTileEntity instanceof IMachineProgress + && ((IMachineProgress) aTileEntity).isAllowedToWork() != aCoverVariable % 6 < 4 + ? false + : aCoverVariable >= 6 || aCoverVariable % 2 != 0; + } + + public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity) { + return aCoverVariable > 1 && aTileEntity instanceof IMachineProgress + && ((IMachineProgress) aTileEntity).isAllowedToWork() != aCoverVariable % 6 < 4 + ? false + : aCoverVariable >= 6 || aCoverVariable % 2 == 0; + } + + public boolean alwaysLookConnected(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { + return true; + } + + public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { + return 1; + } + + public HashMap getCover(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity){ + //Map this cover + String aTileDataKey = "|"+aTileEntity.getXCoord()+"|"+aTileEntity.getYCoord()+"|"+aTileEntity.getZCoord()+"|"+aTileEntity.getWorld().provider.dimensionId+"|"+aSide+"|"; + HashMap aTileData; + long aCurrentTime = System.currentTimeMillis(); + if (mOverflowCache.get(aTileDataKey) != null) { + aTileData = mOverflowCache.get(aTileDataKey); + aTileData.remove("aLastUpdatedTime"); + aTileData.put("aLastUpdateTime", aCurrentTime); + //Logger.INFO("Found Existing Cover in Cache."); + } + else { + aTileData = new HashMap(); + aTileData.put("aCoverKey", aTileDataKey); + aTileData.put("aSide", aSide); + aTileData.put("aCoverID", aCoverID); + aTileData.put("aCoverVariable", aCoverVariable); + aTileData.put("aLastUpdateTime", aCurrentTime); + mOverflowCache.put(aTileDataKey, aTileData); + Logger.INFO("Adding new Cover to Cache. Storing under key: "+aTileDataKey); + } + return aTileData; + } + + public void updateCoverMap(HashMap aCoverData) { + String mAccessKey = (String) aCoverData.get("aCoverKey"); + if (mOverflowCache.get(mAccessKey) != null) { + mOverflowCache.remove(mAccessKey); + } + mOverflowCache.put(mAccessKey, aCoverData); + return; + } +} \ No newline at end of file diff --git a/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE.png b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE.png new file mode 100644 index 0000000000..6a749e96a9 Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ACTIVE.png b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ACTIVE.png new file mode 100644 index 0000000000..92910c9cdf Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ACTIVE.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED.png b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED.png new file mode 100644 index 0000000000..c3ae39d737 Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED.png.mcmeta b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED.png.mcmeta new file mode 100644 index 0000000000..60af678259 --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation":{ + "frametime":4 + } +} \ No newline at end of file diff --git a/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED_ACTIVE.png b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED_ACTIVE.png new file mode 100644 index 0000000000..ed4adf5e6c Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED_ACTIVE.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED_ACTIVE.png.mcmeta b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED_ACTIVE.png.mcmeta new file mode 100644 index 0000000000..24f863c95e --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_FRONT_ELECTRIC_BLAST_FURNACE_ANIMATED_ACTIVE.png.mcmeta @@ -0,0 +1,5 @@ +{ + "animation":{ + "frametime":3 + } +} \ No newline at end of file diff --git a/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_OVERFLOW_VALVE.png b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_OVERFLOW_VALVE.png new file mode 100644 index 0000000000..0f829aa8d9 Binary files /dev/null and b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_OVERFLOW_VALVE.png differ diff --git a/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_OVERFLOW_VALVE.png.mcmeta b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_OVERFLOW_VALVE.png.mcmeta new file mode 100644 index 0000000000..330653c04d --- /dev/null +++ b/src/resources/assets/miscutils/textures/blocks/iconsets/OVERLAY_OVERFLOW_VALVE.png.mcmeta @@ -0,0 +1,6 @@ +{ + "animation":{ + "frametime":2, + "frames": [3, 2, 1, 0] + } +} \ No newline at end of file diff --git a/src/resources/assets/miscutils/textures/items/MU-metaitem.01/71.png b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/71.png new file mode 100644 index 0000000000..bd629f0ee4 Binary files /dev/null and b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/71.png differ diff --git a/src/resources/assets/miscutils/textures/items/MU-metaitem.01/72.png b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/72.png new file mode 100644 index 0000000000..e1ea94bac6 Binary files /dev/null and b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/72.png differ diff --git a/src/resources/assets/miscutils/textures/items/MU-metaitem.01/73.png b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/73.png new file mode 100644 index 0000000000..68de2aba73 Binary files /dev/null and b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/73.png differ diff --git a/src/resources/assets/miscutils/textures/items/MU-metaitem.01/74.png b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/74.png new file mode 100644 index 0000000000..c0d974240c Binary files /dev/null and b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/74.png differ diff --git a/src/resources/assets/miscutils/textures/items/MU-metaitem.01/75.png b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/75.png new file mode 100644 index 0000000000..e1f8be799b Binary files /dev/null and b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/75.png differ diff --git a/src/resources/assets/miscutils/textures/items/MU-metaitem.01/76.png b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/76.png new file mode 100644 index 0000000000..ed806126fb Binary files /dev/null and b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/76.png differ diff --git a/src/resources/assets/miscutils/textures/items/MU-metaitem.01/77.png b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/77.png new file mode 100644 index 0000000000..a7452f94ee Binary files /dev/null and b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/77.png differ diff --git a/src/resources/assets/miscutils/textures/items/MU-metaitem.01/78.png b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/78.png new file mode 100644 index 0000000000..e371af02f9 Binary files /dev/null and b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/78.png differ diff --git a/src/resources/assets/miscutils/textures/items/MU-metaitem.01/79.png b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/79.png new file mode 100644 index 0000000000..e911b80d03 Binary files /dev/null and b/src/resources/assets/miscutils/textures/items/MU-metaitem.01/79.png differ -- cgit