aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJohann Bernhardt <johann.bernhardt@tum.de>2021-12-15 16:02:51 +0100
committerJohann Bernhardt <johann.bernhardt@tum.de>2021-12-15 16:02:51 +0100
commit10182ddb54b6df57118cfe0715a037edf0fee14b (patch)
tree9116c76f46d49d951ac63442af335a0bd6016052 /src
parent3bc44bf69d4991288e4b9c22e4c997239109ee9d (diff)
downloadGT5-Unofficial-10182ddb54b6df57118cfe0715a037edf0fee14b.tar.gz
GT5-Unofficial-10182ddb54b6df57118cfe0715a037edf0fee14b.tar.bz2
GT5-Unofficial-10182ddb54b6df57118cfe0715a037edf0fee14b.zip
Revert "Removed build craft dependency"
This reverts commit 3bc44bf69d4991288e4b9c22e4c997239109ee9d.
Diffstat (limited to 'src')
-rw-r--r--src/main/java/gtPlusPlus/xmod/forestry/bees/tileentities/TileDenseBeeHouse.java92
1 files changed, 92 insertions, 0 deletions
diff --git a/src/main/java/gtPlusPlus/xmod/forestry/bees/tileentities/TileDenseBeeHouse.java b/src/main/java/gtPlusPlus/xmod/forestry/bees/tileentities/TileDenseBeeHouse.java
new file mode 100644
index 0000000000..9b3424ef08
--- /dev/null
+++ b/src/main/java/gtPlusPlus/xmod/forestry/bees/tileentities/TileDenseBeeHouse.java
@@ -0,0 +1,92 @@
+/*******************************************************************************
+ * Copyright (c) 2011-2014 SirSengir.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the GNU Lesser Public License v3
+ * which accompanies this distribution, and is available at
+ * http://www.gnu.org/licenses/lgpl-3.0.txt
+ *
+ * Various Contributors including, but not limited to:
+ * SirSengir (original work), CovertJaguar, Player, Binnie, MysteriousAges
+ ******************************************************************************/
+package gtPlusPlus.xmod.forestry.bees.tileentities;
+
+import java.util.*;
+
+import cpw.mods.fml.common.Optional;
+
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.tileentity.TileEntity;
+
+import buildcraft.api.statements.ITriggerExternal;
+import forestry.api.apiculture.*;
+import forestry.apiculture.ApiaryBeeListener;
+import forestry.apiculture.ApiaryBeeModifier;
+import forestry.apiculture.IApiary;
+import forestry.apiculture.inventory.IApiaryInventory;
+import forestry.apiculture.inventory.InventoryApiary;
+import forestry.apiculture.tiles.TileBeeHousingBase;
+import forestry.apiculture.trigger.ApicultureTriggers;
+import gtPlusPlus.xmod.forestry.bees.gui.ContainerBeeHouse;
+import gtPlusPlus.xmod.forestry.bees.gui.GuiBeeHouse;
+import net.minecraftforge.common.util.ForgeDirection;
+
+public class TileDenseBeeHouse extends TileBeeHousingBase implements IApiary {
+ private final IBeeModifier beeModifier = new ApiaryBeeModifier();
+ private final IBeeListener beeListener = new ApiaryBeeListener(this);
+ private final InventoryApiary inventory = new InventoryApiary(getAccessHandler());
+
+ public TileDenseBeeHouse() {
+ super("apiary2");
+ setInternalInventory(inventory);
+ }
+
+ @Override
+ public IBeeHousingInventory getBeeInventory() {
+ return inventory;
+ }
+
+ @Override
+ public IApiaryInventory getApiaryInventory() {
+ return inventory;
+ }
+
+ @Override
+ public Collection<IBeeModifier> getBeeModifiers() {
+ List<IBeeModifier> beeModifiers = new ArrayList<>();
+
+ beeModifiers.add(beeModifier);
+
+ for (IHiveFrame frame : inventory.getFrames()) {
+ beeModifiers.add(frame.getBeeModifier());
+ }
+
+ return beeModifiers;
+ }
+
+ @Override
+ public Iterable<IBeeListener> getBeeListeners() {
+ return Collections.singleton(beeListener);
+ }
+
+ /* ITRIGGERPROVIDER */
+ @Optional.Method(modid = "BuildCraftAPI|statements")
+ @Override
+ public Collection<ITriggerExternal> getExternalTriggers(ForgeDirection side, TileEntity tile) {
+ LinkedList<ITriggerExternal> res = new LinkedList<>();
+ res.add(ApicultureTriggers.missingQueen);
+ res.add(ApicultureTriggers.missingDrone);
+ res.add(ApicultureTriggers.noFrames);
+ return res;
+ }
+
+ @Override
+ public Object getGui(EntityPlayer player, int data) {
+ ContainerBeeHouse container = new ContainerBeeHouse(player.inventory, this, true);
+ return new GuiBeeHouse<>(this, container, GuiBeeHouse.Icon.APIARY);
+ }
+
+ @Override
+ public Object getContainer(EntityPlayer player, int data) {
+ return new ContainerBeeHouse(player.inventory, this, true);
+ }
+}