aboutsummaryrefslogtreecommitdiff
path: root/src/Java/binnie/craftgui/binniecore
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-02-19 17:38:35 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-02-19 17:38:35 +1000
commit7011e367ac5ccc34473283d6245bc2cec93b835e (patch)
treecc5675471f1101631bec2cde9713cb9c0004cc8f /src/Java/binnie/craftgui/binniecore
parentc68c67d74f39c3eb075ac29e88936a1976ef089b (diff)
downloadGT5-Unofficial-7011e367ac5ccc34473283d6245bc2cec93b835e.tar.gz
GT5-Unofficial-7011e367ac5ccc34473283d6245bc2cec93b835e.tar.bz2
GT5-Unofficial-7011e367ac5ccc34473283d6245bc2cec93b835e.zip
Removed Hard dependency on gregtech as another Project and added dev versions of all requires libs.
Also started work on GT-EU EnderIO conduits, adding @Optional annotations where possible and a few other nice things.
Diffstat (limited to 'src/Java/binnie/craftgui/binniecore')
-rw-r--r--src/Java/binnie/craftgui/binniecore/WindowFieldKit.java334
-rw-r--r--src/Java/binnie/craftgui/binniecore/WindowGenesis.java264
2 files changed, 0 insertions, 598 deletions
diff --git a/src/Java/binnie/craftgui/binniecore/WindowFieldKit.java b/src/Java/binnie/craftgui/binniecore/WindowFieldKit.java
deleted file mode 100644
index d52a6cde31..0000000000
--- a/src/Java/binnie/craftgui/binniecore/WindowFieldKit.java
+++ /dev/null
@@ -1,334 +0,0 @@
-package binnie.craftgui.binniecore;
-
-import binnie.Binnie;
-import binnie.core.AbstractMod;
-import binnie.core.BinnieCore;
-import binnie.core.genetics.BreedingSystem;
-import binnie.core.genetics.ManagerGenetics;
-import binnie.core.language.ManagerLanguage;
-import binnie.core.machines.inventory.SlotValidator;
-import binnie.core.machines.inventory.ValidatorIcon;
-import binnie.craftgui.controls.ControlText;
-import binnie.craftgui.controls.core.Control;
-import binnie.craftgui.core.CraftGUI;
-import binnie.craftgui.core.geometry.IArea;
-import binnie.craftgui.core.geometry.IPoint;
-import binnie.craftgui.core.geometry.TextJustification;
-import binnie.craftgui.core.renderer.Renderer;
-import binnie.craftgui.events.EventHandler.Origin;
-import binnie.craftgui.events.EventValueChanged;
-import binnie.craftgui.events.EventValueChanged.Handler;
-import binnie.craftgui.minecraft.InventoryType;
-import binnie.craftgui.minecraft.Window;
-import binnie.craftgui.minecraft.WindowInventory;
-import binnie.craftgui.minecraft.control.ControlImage;
-import binnie.craftgui.minecraft.control.ControlPlayerInventory;
-import binnie.craftgui.minecraft.control.ControlSlot;
-import binnie.craftgui.resource.StyleSheet;
-import binnie.craftgui.resource.minecraft.CraftGUITexture;
-import binnie.craftgui.resource.minecraft.PaddedTexture;
-import binnie.craftgui.resource.minecraft.StandardTexture;
-import binnie.extrabees.core.ExtraBeeTexture;
-import binnie.extrabees.gui.punnett.ExtraBeeGUITexture;
-import binnie.genetics.gui.ControlChromosome;
-import binnie.genetics.machine.Analyser;
-import cpw.mods.fml.relauncher.Side;
-import forestry.api.genetics.AlleleManager;
-import forestry.api.genetics.IAllele;
-import forestry.api.genetics.IAlleleRegistry;
-import forestry.api.genetics.IChromosomeType;
-import forestry.api.genetics.IGenome;
-import forestry.api.genetics.IIndividual;
-import forestry.api.genetics.ISpeciesRoot;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Random;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.EntityPlayerMP;
-import net.minecraft.init.Items;
-import net.minecraft.inventory.IInventory;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-
-public class WindowFieldKit
- extends Window
-{
- public WindowFieldKit(EntityPlayer player, IInventory inventory, Side side)
- {
- super(280.0F, 230.0F, player, inventory, side);
- }
-
- protected AbstractMod getMod()
- {
- return BinnieCore.instance;
- }
-
- protected String getName()
- {
- return "Field Kit";
- }
-
- private void setupValidators()
- {
- getWindowInventory().setValidator(0, new SlotValidator(null)
- {
- public boolean isValid(ItemStack object)
- {
- return (AlleleManager.alleleRegistry.isIndividual(object)) || (Binnie.Genetics.getConversion(object) != null);
- }
-
- public String getTooltip()
- {
- return "Individual";
- }
- });
- getWindowInventory().setValidator(1, new SlotValidator(null)
- {
- public boolean isValid(ItemStack object)
- {
- return object.getItem() == Items.paper;
- }
-
- public String getTooltip()
- {
- return "Paper";
- }
- });
- getWindowInventory().disableAutoDispense(1);
- }
-
- public void initialiseClient()
- {
- setTitle("Field Kit");
-
- CraftGUI.Render.stylesheet(new StyleSheetPunnett());
-
- getWindowInventory().createSlot(0);
- getWindowInventory().createSlot(1);
-
- setupValidators();
-
- new ControlPlayerInventory(this);
-
- IPoint handGlass = new IPoint(16.0F, 32.0F);
- this.GlassControl = new ControlImage(this, handGlass.x(), handGlass.y(), new StandardTexture(0, 160, 96, 96, ExtraBeeTexture.GUIPunnett));
- new ControlSlot(this, handGlass.x() + 54.0F, handGlass.y() + 26.0F).assign(InventoryType.Window, 0);
-
- new ControlSlot(this, 208.0F, 8.0F).assign(InventoryType.Window, 1);
-
- this.text = new ControlText(this, new IPoint(232.0F, 13.0F), "Paper");
- this.text.setColour(2236962);
-
- this.text = new ControlText(this, new IArea(0.0F, 120.0F, w(), 24.0F), "", TextJustification.MiddleCenter);
- this.text.setColour(2236962);
-
- this.chromo = new ControlChromosome(this, 150.0F, 24.0F);
-
- addEventHandler(new EventValueChanged.Handler()
- {
- public void onEvent(EventValueChanged event)
- {
- IChromosomeType type = (IChromosomeType)event.getValue();
- if ((type != null) && (WindowFieldKit.this.info.containsKey(type)))
- {
- String t = (String)WindowFieldKit.this.info.get(type);
- WindowFieldKit.this.text.setValue(t);
- }
- else
- {
- WindowFieldKit.this.text.setValue("");
- }
- }
- }.setOrigin(EventHandler.Origin.DirectChild, this.chromo));
- }
-
- public void initialiseServer()
- {
- ItemStack kit = getPlayer().getHeldItem();
- int sheets = 64 - kit.getItemDamage();
- if (sheets != 0) {
- getWindowInventory().setInventorySlotContents(1, new ItemStack(Items.paper, sheets));
- }
- setupValidators();
- }
-
- private float glassOffsetX = 0.0F;
- private float glassOffsetY = 0.0F;
- private float glassVX = 0.0F;
- private float glassVY = 0.0F;
- private Random glassRand = new Random();
- private Control GlassControl;
- private ControlChromosome chromo;
- private ControlText text;
- private float analyseProgress = 1.0F;
- private boolean isAnalysing = false;
-
- public void onUpdateClient()
- {
- super.onUpdateClient();
- if (this.isAnalysing)
- {
- this.analyseProgress += 0.01F;
- if (this.analyseProgress >= 1.0F)
- {
- this.isAnalysing = false;
- this.analyseProgress = 1.0F;
- ItemStack stack = getWindowInventory().getStackInSlot(0);
- if (stack != null) {
- sendClientAction("analyse", new NBTTagCompound());
- }
- refreshSpecies();
- }
- }
- this.glassVX += this.glassRand.nextFloat() - 0.5F - this.glassOffsetX * 0.2F;
- this.glassVY += this.glassRand.nextFloat() - 0.5F - this.glassOffsetY * 0.2F;
-
- this.glassOffsetX += this.glassVX;
- this.glassOffsetX *= (1.0F - this.analyseProgress);
- this.glassOffsetY += this.glassVY;
- this.glassOffsetY *= (1.0F - this.analyseProgress);
-
- this.GlassControl.setOffset(new IPoint(this.glassOffsetX, this.glassOffsetY));
- }
-
- private Map<IChromosomeType, String> info = new HashMap();
-
- private void refreshSpecies()
- {
- ItemStack item = getWindowInventory().getStackInSlot(0);
- if ((item == null) || (!AlleleManager.alleleRegistry.isIndividual(item))) {
- return;
- }
- IIndividual ind = AlleleManager.alleleRegistry.getIndividual(item);
- if (ind == null) {
- return;
- }
- ISpeciesRoot root = AlleleManager.alleleRegistry.getSpeciesRoot(item);
- this.chromo.setRoot(root);
- Random rand = new Random();
- this.info.clear();
- for (IChromosomeType type : root.getKaryotype()) {
- if (!Binnie.Genetics.isInvalidChromosome(type))
- {
- IAllele allele = ind.getGenome().getActiveAllele(type);
- List<String> infos = new ArrayList();
- int i = 0;
- String pref = root.getUID() + ".fieldkit." + type.getName().toLowerCase() + ".";
- while (Binnie.Language.canLocalise(pref + i))
- {
- infos.add(Binnie.Language.localise(pref + i));
- i++;
- }
- String text = Binnie.Genetics.getSystem(root).getAlleleName(type, allele);
- if (!infos.isEmpty()) {
- text = (String)infos.get(rand.nextInt(infos.size()));
- }
- this.info.put(type, text);
- this.chromo.setRoot(root);
- }
- }
- }
-
- private ItemStack prev = null;
-
- public void onWindowInventoryChanged()
- {
- super.onWindowInventoryChanged();
- if (isServer())
- {
- ItemStack kit = getPlayer().getHeldItem();
- int sheets = 64 - kit.getItemDamage();
- int size = getWindowInventory().getStackInSlot(1) == null ? 0 : getWindowInventory().getStackInSlot(1).stackSize;
- if (sheets != size) {
- kit.setItemDamage(64 - size);
- }
- ((EntityPlayerMP)getPlayer()).updateHeldItem();
- }
- if (isClient())
- {
- ItemStack item = getWindowInventory().getStackInSlot(0);
- this.prev = item;
- this.text.setValue("");
- if ((item != null) && (!Analyser.isAnalysed(item)))
- {
- if (getWindowInventory().getStackInSlot(1) == null)
- {
- this.text.setValue("No Paper!");
- this.isAnalysing = false;
- this.analyseProgress = 1.0F;
- }
- else
- {
- startAnalysing();
- this.chromo.setRoot(null);
- if (!damageKit()) {}
- }
- }
- else if (item != null)
- {
- this.isAnalysing = false;
- this.analyseProgress = 1.0F;
- refreshSpecies();
- if (!damageKit()) {}
- }
- else
- {
- this.isAnalysing = false;
- this.analyseProgress = 1.0F;
-
- this.chromo.setRoot(null);
- }
- }
- }
-
- private boolean damageKit()
- {
- return false;
- }
-
- private void startAnalysing()
- {
- this.glassVX = 0.0F;
- this.glassVY = 0.0F;
- this.glassOffsetX = 0.0F;
- this.glassOffsetY = 0.0F;
- this.isAnalysing = true;
- this.analyseProgress = 0.0F;
- }
-
- public boolean showHelpButton()
- {
- return true;
- }
-
- public String showInfoButton()
- {
- return "The Field Kit analyses bees, trees, flowers and butterflies. All that is required is a piece of paper to jot notes";
- }
-
- public void recieveGuiNBT(Side side, EntityPlayer player, String name, NBTTagCompound action)
- {
- super.recieveGuiNBT(side, player, name, action);
- if ((side == Side.SERVER) && (name.equals("analyse")))
- {
- getWindowInventory().setInventorySlotContents(0, Analyser.analyse(getWindowInventory().getStackInSlot(0)));
- getWindowInventory().decrStackSize(1, 1);
- }
- }
-
- static class StyleSheetPunnett
- extends StyleSheet
- {
- public StyleSheetPunnett()
- {
- this.textures.put(CraftGUITexture.Window, new PaddedTexture(0, 0, 160, 160, 0, ExtraBeeTexture.GUIPunnett, 32, 32, 32, 32));
- this.textures.put(CraftGUITexture.Slot, new StandardTexture(160, 0, 18, 18, 0, ExtraBeeTexture.GUIPunnett));
- this.textures.put(ExtraBeeGUITexture.Chromosome, new StandardTexture(160, 36, 16, 16, 0, ExtraBeeTexture.GUIPunnett));
- this.textures.put(ExtraBeeGUITexture.Chromosome2, new StandardTexture(160, 52, 16, 16, 0, ExtraBeeTexture.GUIPunnett));
- this.textures.put(CraftGUITexture.HelpButton, new StandardTexture(178, 0, 16, 16, 0, ExtraBeeTexture.GUIPunnett));
- this.textures.put(CraftGUITexture.InfoButton, new StandardTexture(178, 16, 16, 16, 0, ExtraBeeTexture.GUIPunnett));
- }
- }
-}
diff --git a/src/Java/binnie/craftgui/binniecore/WindowGenesis.java b/src/Java/binnie/craftgui/binniecore/WindowGenesis.java
deleted file mode 100644
index 8295645f5a..0000000000
--- a/src/Java/binnie/craftgui/binniecore/WindowGenesis.java
+++ /dev/null
@@ -1,264 +0,0 @@
-package binnie.craftgui.binniecore;
-
-import binnie.Binnie;
-import binnie.core.AbstractMod;
-import binnie.core.BinnieCore;
-import binnie.core.genetics.BreedingSystem;
-import binnie.core.genetics.Gene;
-import binnie.core.genetics.ManagerGenetics;
-import binnie.craftgui.controls.listbox.ControlList;
-import binnie.craftgui.controls.listbox.ControlListBox;
-import binnie.craftgui.controls.listbox.ControlTextOption;
-import binnie.craftgui.controls.tab.ControlTab;
-import binnie.craftgui.controls.tab.ControlTabBar;
-import binnie.craftgui.core.IWidget;
-import binnie.craftgui.core.geometry.IArea;
-import binnie.craftgui.core.geometry.Position;
-import binnie.craftgui.events.EventHandler.Origin;
-import binnie.craftgui.events.EventMouse.Down;
-import binnie.craftgui.events.EventMouse.Down.Handler;
-import binnie.craftgui.events.EventValueChanged;
-import binnie.craftgui.events.EventValueChanged.Handler;
-import binnie.craftgui.minecraft.MinecraftGUI.PanelType;
-import binnie.craftgui.minecraft.Window;
-import binnie.craftgui.minecraft.control.ControlItemDisplay;
-import binnie.craftgui.minecraft.control.ControlPlayerInventory;
-import binnie.craftgui.minecraft.control.ControlTabIcon;
-import binnie.craftgui.window.Panel;
-import binnie.genetics.gui.ControlGenesisOption;
-import cpw.mods.fml.relauncher.Side;
-import forestry.api.genetics.IAllele;
-import forestry.api.genetics.IChromosomeType;
-import forestry.api.genetics.IIndividual;
-import forestry.api.genetics.ISpeciesRoot;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import net.minecraft.entity.player.EntityPlayer;
-import net.minecraft.entity.player.EntityPlayerMP;
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.inventory.Container;
-import net.minecraft.inventory.IInventory;
-import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.NBTTagCompound;
-
-public class WindowGenesis
- extends Window
-{
- private ISpeciesRoot root;
- private IAllele[] template;
- private ControlListBox<Gene> geneList;
- private ControlListBox<Gene> geneOptions;
- private Panel panelPickup;
-
- public WindowGenesis(EntityPlayer player, IInventory inventory, Side side)
- {
- super(342.0F, 228.0F, player, inventory, side);
- }
-
- protected AbstractMod getMod()
- {
- return BinnieCore.instance;
- }
-
- protected String getName()
- {
- return "Genesis";
- }
-
- public void initialiseClient()
- {
- new ControlPlayerInventory(this);
- setTitle("Genesis");
-
- ControlTabBar<BreedingSystem> tabSystems = new ControlTabBar(this, 8.0F, 28.0F, 23.0F, 100.0F, Position.Left)
- {
- public ControlTab<BreedingSystem> createTab(float x, float y, float w, float h, BreedingSystem value)
- {
- new ControlTabIcon(this, x, y, w, h, value)
- {
- public ItemStack getItemStack()
- {
- int type = ((BreedingSystem)this.value).getDefaultType();
- IIndividual ind = ((BreedingSystem)this.value).getDefaultIndividual();
- return ((BreedingSystem)this.value).getSpeciesRoot().getMemberStack(ind, type);
- }
-
- public String getName()
- {
- return ((BreedingSystem)this.value).getName();
- }
-
- public int getOutlineColour()
- {
- return ((BreedingSystem)this.value).getColour();
- }
-
- public boolean hasOutline()
- {
- return true;
- }
- };
- }
- };
- tabSystems.setValues(Binnie.Genetics.getActiveSystems());
-
- this.root = ((BreedingSystem)Binnie.Genetics.getActiveSystems().iterator().next()).getSpeciesRoot();
- this.template = this.root.getDefaultTemplate();
-
- IArea one = new IArea(32.0F, 28.0F, 170.0F, 100.0F);
- IArea two = new IArea(214.0F, 28.0F, 100.0F, 100.0F);
-
- new Panel(this, one.outset(1), MinecraftGUI.PanelType.Black);
- new Panel(this, two.outset(1), MinecraftGUI.PanelType.Black);
-
- this.geneList = new ControlListBox(this, one.x(), one.y(), one.w(), one.h(), 10.0F)
- {
- public IWidget createOption(Gene value, int y)
- {
- return new ControlGenesisOption((ControlList)getContent(), value, y);
- }
- };
- this.geneOptions = new ControlListBox(this, two.x(), two.y(), two.w(), two.h(), 10.0F)
- {
- public IWidget createOption(Gene value, int y)
- {
- return new ControlTextOption((ControlList)getContent(), value, y);
- }
- };
- tabSystems.addEventHandler(new EventValueChanged.Handler()
- {
- public void onEvent(EventValueChanged event)
- {
- WindowGenesis.this.root = ((BreedingSystem)event.getValue()).getSpeciesRoot();
- WindowGenesis.this.template = WindowGenesis.this.root.getDefaultTemplate();
- WindowGenesis.this.refreshTemplate(null);
- }
- }.setOrigin(EventHandler.Origin.Self, tabSystems));
-
-
-
- this.geneList.addEventHandler(new EventValueChanged.Handler()
- {
- public void onEvent(EventValueChanged event)
- {
- Map<IChromosomeType, List<IAllele>> map = Binnie.Genetics.getChromosomeMap(WindowGenesis.this.root);
- List<Gene> opts = new ArrayList();
- IChromosomeType chromo = ((Gene)event.value).getChromosome();
- for (IAllele allele : (List)map.get(chromo)) {
- opts.add(new Gene(allele, chromo, WindowGenesis.this.root));
- }
- WindowGenesis.this.geneOptions.setOptions(opts);
- }
- }.setOrigin(EventHandler.Origin.Self, this.geneList));
-
-
-
- this.geneOptions.addEventHandler(new EventValueChanged.Handler()
- {
- public void onEvent(EventValueChanged event)
- {
- if (event.value == null) {
- return;
- }
- IChromosomeType chromo = ((Gene)event.value).getChromosome();
- WindowGenesis.this.template[chromo.ordinal()] = ((Gene)event.value).getAllele();
- if (chromo == ((Gene)event.value).getSpeciesRoot().getKaryotypeKey()) {
- WindowGenesis.this.template = ((Gene)event.value).getSpeciesRoot().getTemplate(((Gene)event.value).getAllele().getUID());
- }
- WindowGenesis.this.refreshTemplate(chromo);
- }
- }.setOrigin(EventHandler.Origin.Self, this.geneOptions));
-
-
-
-
- this.panelPickup = new Panel(this, 16.0F, 140.0F, 60.0F, 42.0F, MinecraftGUI.PanelType.Black);
-
- refreshTemplate(null);
- }
-
- private void refreshTemplate(IChromosomeType selection)
- {
- List<Gene> genes = new ArrayList();
- IChromosomeType[] chromos = (IChromosomeType[])Binnie.Genetics.getChromosomeMap(this.root).keySet().toArray(new IChromosomeType[0]);
- for (IChromosomeType type : chromos)
- {
- IAllele allele = this.template[type.ordinal()];
- if (allele == null) {
- throw new NullPointerException("Allele missing for Chromosome " + type.getName());
- }
- genes.add(new Gene(allele, type, this.root));
- }
- Map<IChromosomeType, List<IAllele>> map = Binnie.Genetics.getChromosomeMap(this.root);
- this.geneList.setOptions(genes);
- if (selection != null) {
- this.geneList.setValue(new Gene(this.template[selection.ordinal()], selection, this.root));
- } else {
- this.geneOptions.setOptions(new ArrayList());
- }
- refreshPickup();
- }
-
- private void refreshPickup()
- {
- this.panelPickup.deleteAllChildren();
- int i = 0;
- for (int type : Binnie.Genetics.getSystem(this.root).getActiveTypes())
- {
- IIndividual ind = this.root.templateAsIndividual(this.template);
- ind.analyze();
- final ItemStack stack = this.root.getMemberStack(ind, type);
- ControlItemDisplay display = new ControlItemDisplay(this.panelPickup, 4 + i % 3 * 18, 4 + i / 3 * 18);
- display.setItemStack(stack);
- display.setTooltip();
- display.addEventHandler(new EventMouse.Down.Handler()
- {
- public void onEvent(EventMouse.Down event)
- {
- NBTTagCompound nbt = new NBTTagCompound();
- stack.writeToNBT(nbt);
- Window.get(event.getOrigin()).sendClientAction("genesis", nbt);
- }
- }.setOrigin(EventHandler.Origin.Self, display));
-
-
-
- i++;
- }
- }
-
- public void recieveGuiNBT(Side side, EntityPlayer player, String name, NBTTagCompound action)
- {
- super.recieveGuiNBT(side, player, name, action);
- if ((side == Side.SERVER) && (name.equals("genesis")))
- {
- ItemStack stack = ItemStack.loadItemStackFromNBT(action);
- InventoryPlayer playerInv = player.inventory;
- if (stack == null) {
- return;
- }
- if (playerInv.getItemStack() == null)
- {
- playerInv.setItemStack(stack);
- }
- else if ((playerInv.getItemStack().isItemEqual(stack)) && (ItemStack.areItemStackTagsEqual(playerInv.getItemStack(), stack)))
- {
- int fit = stack.getMaxStackSize() - (stack.stackSize + playerInv.getItemStack().stackSize);
- if (fit >= 0)
- {
- ItemStack rec = stack;
- rec.stackSize += playerInv.getItemStack().stackSize;
- playerInv.setItemStack(rec);
- }
- }
- player.openContainer.detectAndSendChanges();
- if ((player instanceof EntityPlayerMP)) {
- ((EntityPlayerMP)player).updateHeldItem();
- }
- }
- }
-}