Work on in world transmuting, still lots to do
This commit is contained in:
parent
884e024377
commit
203fdedf80
|
@ -7,6 +7,7 @@ import cpw.mods.fml.common.ReflectionHelper;
|
|||
|
||||
import ee3.client.core.KeyBindingHandler;
|
||||
import ee3.client.core.SoundHandler;
|
||||
import ee3.core.mod_EE3;
|
||||
import ee3.core.interfaces.IProxy;
|
||||
import static ee3.lib.CustomItemRarity.*;
|
||||
import net.minecraft.client.Minecraft;
|
||||
|
@ -16,7 +17,6 @@ import net.minecraft.src.KeyBinding;
|
|||
import net.minecraft.src.ModLoader;
|
||||
import net.minecraft.src.NetworkManager;
|
||||
import net.minecraft.src.World;
|
||||
import net.minecraft.src.mod_EE3;
|
||||
import net.minecraft.src.forge.EnumHelperClient;
|
||||
import net.minecraft.src.forge.MinecraftForgeClient;
|
||||
|
||||
|
|
|
@ -2,9 +2,10 @@ package ee3.client.core;
|
|||
|
||||
import org.lwjgl.input.Keyboard;
|
||||
|
||||
import ee3.core.mod_EE3;
|
||||
|
||||
import net.minecraft.src.KeyBinding;
|
||||
import net.minecraft.src.ModLoader;
|
||||
import net.minecraft.src.mod_EE3;
|
||||
|
||||
/**
|
||||
* TODO Class Description
|
||||
|
|
|
@ -6,7 +6,6 @@ import java.util.HashMap;
|
|||
import static ee3.lib.ItemIds.*;
|
||||
import ee3.lib.Reference;
|
||||
|
||||
import net.minecraft.src.mod_EE3;
|
||||
import static net.minecraft.src.forge.Configuration.*;
|
||||
import net.minecraft.src.forge.Configuration;
|
||||
import net.minecraft.src.forge.Property;
|
||||
|
|
|
@ -1,11 +1,6 @@
|
|||
package net.minecraft.src;
|
||||
package ee3.core;
|
||||
|
||||
import cpw.mods.fml.common.FMLCommonHandler;
|
||||
import ee3.core.ConfigurationManager;
|
||||
import ee3.core.CraftingHandler;
|
||||
import ee3.core.EntityLivingHandler;
|
||||
import ee3.core.RecipesPhilStone;
|
||||
import ee3.core.TickHandler;
|
||||
import ee3.core.interfaces.IProxy;
|
||||
import ee3.emc.EMCList;
|
||||
import ee3.gui.GuiHandler;
|
||||
|
@ -15,7 +10,9 @@ import ee3.lib.Reference;
|
|||
import ee3.lib.Sounds;
|
||||
import ee3.lib.Version;
|
||||
import ee3.network.PacketHandler;
|
||||
import net.minecraft.src.BaseMod;
|
||||
import net.minecraft.src.ModLoader;
|
||||
import net.minecraft.src.SidedProxy;
|
||||
import net.minecraft.src.forge.MinecraftForge;
|
||||
import net.minecraft.src.forge.NetworkMod;
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
package ee3.gui;
|
||||
|
||||
import ee3.core.mod_EE3;
|
||||
import ee3.lib.GuiIds;
|
||||
import net.minecraft.src.EntityPlayer;
|
||||
import net.minecraft.src.World;
|
||||
import net.minecraft.src.mod_EE3;
|
||||
import net.minecraft.src.forge.IGuiHandler;
|
||||
|
||||
/**
|
||||
|
|
|
@ -7,10 +7,11 @@ import net.minecraft.src.EntityPlayer;
|
|||
import net.minecraft.src.EnumRarity;
|
||||
import net.minecraft.src.ItemStack;
|
||||
import net.minecraft.src.World;
|
||||
import net.minecraft.src.mod_EE3;
|
||||
import ee3.core.mod_EE3;
|
||||
import ee3.core.interfaces.ITransmuteStone;
|
||||
import ee3.lib.CustomItemRarity;
|
||||
import ee3.lib.Helper;
|
||||
import ee3.lib.Sounds;
|
||||
import ee3.lib.TransmuteEquivalencyList;
|
||||
|
||||
public class ItemMiniumStone extends ItemEE implements ITransmuteStone {
|
||||
|
@ -23,11 +24,16 @@ public class ItemMiniumStone extends ItemEE implements ITransmuteStone {
|
|||
public boolean onItemUse(ItemStack itemStack, EntityPlayer entityPlayer, World world,
|
||||
int x, int y, int z, int l) {
|
||||
|
||||
ArrayList<ItemStack> list = TransmuteEquivalencyList.getEquivalencyListForItem(Block.blocksList[world.getBlockId(x, y, z)]);
|
||||
System.out.println(world.getBlockId(x, y, z) + ", " + world.getBlockMetadata(x, y, z));
|
||||
ItemStack nextItem = TransmuteEquivalencyList.getNextItemInEquivalencyList(world.getBlockId(x, y, z), world.getBlockMetadata(x, y, z));
|
||||
|
||||
if (list != null)
|
||||
System.out.println(list.toString());
|
||||
if (nextItem != null) {
|
||||
if (Block.blocksList[nextItem.itemID] != null) {
|
||||
System.out.println(world.setBlockAndMetadataWithNotify(x, y, z, nextItem.itemID, nextItem.getItemDamage()));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
world.playSoundAtEntity(entityPlayer, Sounds.TRANSMUTE, 1.0F, 1.0F);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
package ee3.item;
|
||||
|
||||
import ee3.core.mod_EE3;
|
||||
import ee3.core.interfaces.IItemChargeable;
|
||||
import ee3.core.interfaces.IItemModal;
|
||||
import ee3.core.interfaces.ITransmuteStone;
|
||||
import ee3.lib.CustomItemRarity;
|
||||
import net.minecraft.src.EnumRarity;
|
||||
import net.minecraft.src.ItemStack;
|
||||
import net.minecraft.src.mod_EE3;
|
||||
|
||||
/**
|
||||
* TODO Class Description
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
package ee3.lib;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
|
||||
import net.minecraft.src.Block;
|
||||
import net.minecraft.src.ItemStack;
|
||||
|
||||
public class TransmuteEquivalencyList {
|
||||
|
@ -64,6 +66,23 @@ public class TransmuteEquivalencyList {
|
|||
return null;
|
||||
}
|
||||
|
||||
public static Integer getEquivalencyIndexForItem(int id, int meta) {
|
||||
ArrayList<ItemStack> currentList;
|
||||
int i = 0;
|
||||
|
||||
while (i < equivalencyLists.size()) {
|
||||
currentList = equivalencyLists.get(i);
|
||||
for (ItemStack currentStack : currentList) {
|
||||
if ((id == currentStack.itemID) && (meta == currentStack.getItemDamage())) {
|
||||
return new Integer(i);
|
||||
}
|
||||
}
|
||||
++i;
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public static ArrayList<ItemStack> getEquivalencyListForItem(Object obj) {
|
||||
ItemStack checkStack = Helper.convertObjectToItemStack(obj);
|
||||
|
||||
|
@ -80,6 +99,75 @@ public class TransmuteEquivalencyList {
|
|||
|
||||
return null;
|
||||
}
|
||||
|
||||
public static ArrayList<ItemStack> getEquivalencyListForItem(int id, int meta) {
|
||||
for (ArrayList<ItemStack> list : equivalencyLists) {
|
||||
for (ItemStack currentStack : list) {
|
||||
if ((id == currentStack.itemID) && (meta == currentStack.getItemDamage())) {
|
||||
return list;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public static ItemStack getNextItemInEquivalencyList(Object obj) {
|
||||
ItemStack checkStack = Helper.convertObjectToItemStack(obj);
|
||||
|
||||
if (checkStack == null)
|
||||
return null;
|
||||
|
||||
return getNextItemInEquivalencyList(checkStack.itemID, checkStack.getItemDamage());
|
||||
}
|
||||
|
||||
public static ItemStack getNextItemInEquivalencyList(int id, int meta) {
|
||||
System.out.println("id: " + id + ", meta: " + meta);
|
||||
ArrayList<ItemStack> list = getEquivalencyListForItem(id, meta);
|
||||
ItemStack currentStack;
|
||||
ItemStack returnStack = null;
|
||||
int i = 0;
|
||||
|
||||
if (list != null) {
|
||||
System.out.println(list.toString());
|
||||
while (i < list.size()) {
|
||||
currentStack = list.get(i);
|
||||
if ((id == currentStack.itemID) && (meta == currentStack.getItemDamage())) {
|
||||
returnStack = list.get((i + 1) % list.size());
|
||||
System.out.println(list.toString());
|
||||
break;
|
||||
}
|
||||
++i;
|
||||
}
|
||||
}
|
||||
|
||||
return returnStack;
|
||||
}
|
||||
|
||||
public static ItemStack getNextBlockInEquivalencyList(int id, int meta) {
|
||||
ArrayList<ItemStack> list = getEquivalencyListForItem(id, meta);
|
||||
ItemStack currentStack;
|
||||
ItemStack returnStack = null;
|
||||
int i = 0;
|
||||
|
||||
if (list != null) {
|
||||
while (i < list.size()) {
|
||||
currentStack = list.get(i);
|
||||
if ((id == currentStack.itemID) && (meta == currentStack.getItemDamage())) {
|
||||
for (int index = (i + 1) % list.size(); index < i; ++index) {
|
||||
if (Block.blocksList[list.get(index).itemID] != null) {
|
||||
returnStack = list.get(index);
|
||||
System.out.println(returnStack.toString());
|
||||
return returnStack;
|
||||
}
|
||||
}
|
||||
}
|
||||
++i;
|
||||
}
|
||||
}
|
||||
|
||||
return returnStack;
|
||||
}
|
||||
|
||||
public static void debugPrintEquivalencyList() {
|
||||
int i = 0;
|
||||
|
|
|
@ -6,9 +6,10 @@ import java.io.InputStreamReader;
|
|||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
|
||||
import ee3.core.mod_EE3;
|
||||
|
||||
|
||||
import net.minecraft.src.ModLoader;
|
||||
import net.minecraft.src.mod_EE3;
|
||||
|
||||
/**
|
||||
* TODO Class Description
|
||||
|
|
|
@ -4,8 +4,9 @@ import java.io.DataInputStream;
|
|||
import java.io.DataOutputStream;
|
||||
import java.io.IOException;
|
||||
|
||||
import ee3.core.mod_EE3;
|
||||
|
||||
import net.minecraft.src.NetworkManager;
|
||||
import net.minecraft.src.mod_EE3;
|
||||
|
||||
/**
|
||||
* TODO Class Description
|
||||
|
|
|
@ -4,8 +4,9 @@ import java.io.DataInputStream;
|
|||
import java.io.DataOutputStream;
|
||||
import java.io.IOException;
|
||||
|
||||
import ee3.core.mod_EE3;
|
||||
|
||||
import net.minecraft.src.NetworkManager;
|
||||
import net.minecraft.src.mod_EE3;
|
||||
|
||||
/**
|
||||
* TODO Class Description
|
||||
|
|
|
@ -5,7 +5,8 @@ import java.io.DataInputStream;
|
|||
import java.io.DataOutputStream;
|
||||
import java.io.IOException;
|
||||
|
||||
import net.minecraft.src.mod_EE3;
|
||||
import ee3.core.mod_EE3;
|
||||
|
||||
import net.minecraft.src.NetworkManager;
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in a new issue