Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 7 additions & 13 deletions dependencies.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -35,27 +35,21 @@
*/
dependencies {
api('com.github.GTNewHorizons:NotEnoughItems:2.8.96-GTNH:dev')
api('com.github.GTNewHorizons:Applied-Energistics-2-Unofficial:rv3-beta-929-GTNH:dev')
api('com.github.GTNewHorizons:Applied-Energistics-2-Unofficial:rv3-beta-936-GTNH:dev')
api('com.github.GTNewHorizons:waila:1.19.25:dev')
api("com.github.GTNewHorizons:GTNHLib:0.9.62:dev")

implementation("com.github.GTNewHorizons:WirelessCraftingTerminal:1.12.15:dev") {
exclude group: 'com.github.GTNewHorizons', module: 'Applied-Energistics-2-Unofficial'
}

compileOnly('com.github.GTNewHorizons:Baubles-Expanded:2.2.14-GTNH:dev')
compileOnly('com.github.GTNewHorizons:BuildCraft:7.1.57:dev') {transitive = false}
compileOnly('com.github.GTNewHorizons:ExtraCells2:2.5.35:dev') { transitive = false }
compileOnly('com.github.GTNewHorizons:ForestryMC:4.11.19:dev')
compileOnly('com.github.GTNewHorizons:EnderIO:5.2.62:dev')
compileOnly('com.github.GTNewHorizons:GT5-Unofficial:5.09.52.495:dev') {
exclude group: 'com.github.GTNewHorizons', module: 'AE2FluidCraft-Rework'
exclude group: 'com.github.GTNewHorizons', module: 'Applied-Energistics-2-Unofficial'
}

compileOnly('thaumcraft:Thaumcraft:1.7.10-4.2.3.5:dev')
compileOnly('com.gregoriust.gregtech:gregtech_1.7.10:6.14.23:dev') { transitive = false }
compileOnly('com.github.GTNewHorizons:OpenComputers:1.12.39-GTNH:dev') { transitive = false }
compileOnly('com.github.GTNewHorizons:ThaumicEnergistics:1.7.48-GTNH:dev') { transitive = false }

compileOnly("org.jetbrains:annotations:26.1.0")

runtimeOnlyNonPublishable("com.github.GTNewHorizons:DuraDisplay:1.4.2:dev")
runtimeOnlyNonPublishable("com.github.GTNewHorizons:WirelessCraftingTerminal:1.12.15:dev") {
exclude group: 'com.github.GTNewHorizons', module: 'Applied-Energistics-2-Unofficial'
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import static com.glodblock.github.common.item.ItemWirelessUltraTerminal.MODE;
import static com.glodblock.github.loader.recipe.WirelessTerminalEnergyRecipe.getEnergyCard;
import static com.glodblock.github.loader.recipe.WirelessTerminalRecipe.getInfinityBoosterCard;
import static com.glodblock.github.loader.recipe.WirelessTerminalQuantumBridgeRecipe.getQuantumBridgeCard;
import static com.glodblock.github.util.Util.DimensionalCoordSide.hasEnergyCard;
import static com.glodblock.github.util.Util.hasInfinityBoosterCard;

Expand Down Expand Up @@ -48,15 +48,16 @@ public ItemBaseWirelessTerminal(Object t) {

@Override
public ItemStack onItemRightClick(final ItemStack item, final World w, final EntityPlayer player) {
if (player.isSneaking()) return removeInfinityBoosterCard(player, item); // todo: doesn't work in universal
// terminal
if (player.isSneaking()) return removeQuantumBridgeCard(player, item); // todo: doesn't work in universal
// terminal
return super.onItemRightClick(item, w, player);
}

private ItemStack removeInfinityBoosterCard(final EntityPlayer player, ItemStack is) {
private ItemStack removeQuantumBridgeCard(final EntityPlayer player, ItemStack is) {
if (hasInfinityBoosterCard(is)) {
if (!player.inventory.addItemStackToInventory(getInfinityBoosterCard())) {
player.entityDropItem(getInfinityBoosterCard(), 0);
ItemStack quantumBridgeCardStack = getQuantumBridgeCard().copy();
if (!player.inventory.addItemStackToInventory(quantumBridgeCardStack)) {
player.entityDropItem(quantumBridgeCardStack, 0);
}
is.getTagCompound().setBoolean(infinityBoosterCard, false);
}
Expand All @@ -71,7 +72,7 @@ public void addCheckedInformation(ItemStack stack, EntityPlayer player, List<Str
if (GuiScreen.isCtrlKeyDown()) {
lines.add(NameConst.i18n(NameConst.TT_WIRELESS_INSTALLED));
if (hasInfinityBoosterCard(stack)) {
lines.add(" " + EnumChatFormatting.GOLD + getInfinityBoosterCard().getDisplayName());
lines.add(" " + EnumChatFormatting.GOLD + getQuantumBridgeCard().getDisplayName());
}
if (hasEnergyCard(stack)) {
lines.add(" " + EnumChatFormatting.GOLD + getEnergyCard().getDisplayName());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -167,15 +167,6 @@ public void openGui(final ItemStack is, final World w, final EntityPlayer player
this.openGui(is, w, player, mode, Integer.MIN_VALUE);
}

public static boolean hasInfinityBoosterCard(EntityPlayer player) {
ImmutablePair<Integer, ItemStack> term = Util.getUltraWirelessTerm(player);
if (term == null) return false;
if (term.getRight().getItem() instanceof ItemWirelessUltraTerminal) {
return Util.hasInfinityBoosterCard(term.getRight());
}
return false;
}

@Override
public void onWornTick(ItemStack itemStack, EntityLivingBase entityLivingBase) {
if (Platform.isServer() && entityLivingBase instanceof EntityPlayer player) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,21 +1,16 @@
package com.glodblock.github.crossmod.thaumcraft;

import javax.annotation.Nullable;

import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;

import com.glodblock.github.util.ModAndClassUtil;

import appeng.api.storage.data.AEStackTypeRegistry;
import appeng.api.storage.data.IAEItemStack;
import appeng.api.storage.data.IAEStack;
import cpw.mods.fml.common.Optional.Method;
import cpw.mods.fml.common.registry.GameRegistry;
import thaumcraft.api.aspects.Aspect;
import thaumicenergistics.common.items.ItemCraftingAspect;
import thaumicenergistics.common.storage.AEEssentiaStack;

public class ThaumicEnergisticsCrafting {

Expand All @@ -37,18 +32,23 @@ public static boolean isAspectStack(ItemStack stack) {
}

public static IAEStack<?> convertItemAspectStack(IAEStack<?> stack) {
if (stack instanceof IAEItemStack ais && isAspectStack(ais.getItemStack())) {
Aspect aspect = getAspect(ais.getItemStack());
if (aspect == null) return stack;
if (AEStackTypeRegistry.getType("essentia") == null) return stack;

return new AEEssentiaStack(aspect, stack.getStackSize());
if (stack instanceof IAEItemStack ais && isAspectStack(ais.getItemStack())) {
String aspectTag = getAspectTag(ais.getItemStack());
if (aspectTag == null || aspectTag.isEmpty()) return stack;

NBTTagCompound tag = new NBTTagCompound();
tag.setString("StackType", "essentia");
tag.setString("AspectTag", aspectTag);
tag.setLong("Cnt", stack.getStackSize());
return IAEStack.fromNBTGeneric(tag);
} else {
return stack;
}
}

@Method(modid = "thaumicenergistics")
private static @Nullable Aspect getAspect(ItemStack stack) {
private static String getAspectTag(ItemStack stack) {
if (stack == null) return null;

if (stack.getItem() == neiAddonAspect) {
Expand All @@ -58,11 +58,14 @@ public static IAEStack<?> convertItemAspectStack(IAEStack<?> stack) {
String aspect = aspects.getCompoundTagAt(0).getString("key");
if (aspect.isEmpty()) return null;

return Aspect.getAspect(aspect);
return aspect;
}

if (stack.getItem() == thaumicEnergisticsAspect) {
return Aspect.getAspect(ItemCraftingAspect.getAspect(stack).getTag());
NBTTagCompound tag = stack.getTagCompound();
if (tag != null && tag.hasKey("Aspect")) {
return tag.getString("Aspect");
}
}

return null;
Expand Down
5 changes: 2 additions & 3 deletions src/main/java/com/glodblock/github/loader/RecipeLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -175,8 +175,6 @@ public class RecipeLoader implements Runnable {
GameRegistry.findItem("appliedenergistics2", "item.ItemMultiMaterial"),
1,
43);
private static final ItemStack WCT_WIRELESS_TERM = GameRegistry
.findItemStack("ae2wct", "wirelessCraftingTerminal", 1);
public static final ItemStack BUCKET = new ItemStack(Items.bucket, 1);
public static final ItemStack IRON_BAR = new ItemStack(Blocks.iron_bars, 1);
public static final ItemStack AE2_ADVANCED_CARD = new ItemStack(
Expand Down Expand Up @@ -711,7 +709,8 @@ public static void runTerminalRecipe() {
}

ItemStack[] term = { AE2_WIRELESS_TERMINAL, WIRELESS_PATTERN_TERM.stack(), WIRELESS_INTERFACE_TERM.stack(),
WIRELESS_LEVEL_TERM.stack(), WCT_WIRELESS_TERM };
WIRELESS_LEVEL_TERM.stack(),
ModAndClassUtil.WCT ? GameRegistry.findItemStack("ae2wct", "wirelessCraftingTerminal", 1) : null };
GameRegistry.addShapelessRecipe(
WIRELESS_ULTRA_TERM.stack(),
Arrays.stream(term).filter(Objects::nonNull).toArray());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,35 +9,41 @@
import net.minecraft.item.crafting.ShapelessRecipes;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.world.World;
import net.p455w0rd.wirelesscraftingterminal.items.ItemEnum;
import net.p455w0rd.wirelesscraftingterminal.items.ItemInfinityBooster;

import com.glodblock.github.common.item.ItemBaseWirelessTerminal;
import com.glodblock.github.util.ModAndClassUtil;

import appeng.util.Platform;
import cpw.mods.fml.common.registry.GameRegistry;

public class WirelessTerminalRecipe extends ShapelessRecipes {

private static final ItemStack infinityBoosterCard = ItemEnum.BOOSTER_CARD.getStack();
private static ItemStack infinityBoosterCard;
private final ItemStack installedTerm;

public WirelessTerminalRecipe(ItemStack term) {
super(term, Arrays.asList(term, infinityBoosterCard));
super(term, Arrays.asList(term, getInfinityBoosterCard()));
this.installedTerm = installInfinityBoosterCard(term);
}

@Override
public boolean matches(InventoryCrafting inv, World w) {
ItemStack term = inv.getStackInSlot(0);
ItemStack infinityBoosterCard = inv.getStackInSlot(1);
ItemStack card = inv.getStackInSlot(1);
ItemStack recipeCard = getInfinityBoosterCard();
return term != null && term.getItem() instanceof ItemBaseWirelessTerminal
&& !hasInfinityBoosterCard(term)
&& infinityBoosterCard != null
&& infinityBoosterCard.getItem() instanceof ItemInfinityBooster;
&& card != null
&& recipeCard != null
&& card.getItem() == recipeCard.getItem();
}

public static ItemStack getInfinityBoosterCard() {
return infinityBoosterCard.copy();
if (!ModAndClassUtil.WCT) return null;
if (infinityBoosterCard == null) {
infinityBoosterCard = GameRegistry.findItemStack("ae2wct", "infinityBoosterCard", 1);
}
return infinityBoosterCard == null ? null : infinityBoosterCard.copy();
}

@Override
Expand Down
52 changes: 0 additions & 52 deletions src/main/java/com/glodblock/github/nei/NEIUtils.java

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Loading
Loading