Added previousBlock helper methods
You can reverse cycle with crouch+g key
This commit is contained in:
parent
db2891c508
commit
96639ee9d0
2 changed files with 42 additions and 1 deletions
|
@ -119,4 +119,41 @@ public class TransmutationHelper {
|
|||
return nextStack;
|
||||
}
|
||||
|
||||
public static ItemStack getPreviousBlock(int itemID, int meta) {
|
||||
ArrayList<ItemStack> list = EquivalencyHandler.instance().getEquivalencyList(itemID, meta);
|
||||
|
||||
ItemStack prevStack = null;
|
||||
|
||||
if (list != null) {
|
||||
return getPreviousBlock(itemID, meta, itemID, meta);
|
||||
}
|
||||
return prevStack;
|
||||
}
|
||||
|
||||
private static ItemStack getPreviousBlock(int id, int meta, int origId, int origMeta) {
|
||||
|
||||
ArrayList<ItemStack> list = EquivalencyHandler.instance().getEquivalencyList(id, meta);
|
||||
|
||||
ItemStack prevStack = null;
|
||||
if (list != null) {
|
||||
prevStack = EquivalencyHandler.instance().getPrevInList(id, meta);
|
||||
prevStack.stackSize = 1;
|
||||
|
||||
if ((prevStack.itemID == origId) && (prevStack.getItemDamage() == origMeta)) {
|
||||
return prevStack;
|
||||
}
|
||||
else {
|
||||
if (prevStack.getItem() instanceof ItemBlock) {
|
||||
return prevStack;
|
||||
}
|
||||
else {
|
||||
return getPreviousBlock(prevStack.itemID, prevStack.getItemDamage(), origId, origMeta);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// In the event the list is null, return null
|
||||
return prevStack;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -132,7 +132,11 @@ public class ItemPhilosopherStone extends ItemEE implements
|
|||
}
|
||||
else if (keyBinding.equals(ConfigurationSettings.KEYBINDING_TOGGLE)) {
|
||||
if (TransmutationHelper.targetBlockStack != null) {
|
||||
TransmutationHelper.targetBlockStack = TransmutationHelper.getNextBlock(TransmutationHelper.targetBlockStack.itemID, TransmutationHelper.targetBlockStack.getItemDamage());
|
||||
if(!thePlayer.isSneaking()){
|
||||
TransmutationHelper.targetBlockStack = TransmutationHelper.getNextBlock(TransmutationHelper.targetBlockStack.itemID, TransmutationHelper.targetBlockStack.getItemDamage());
|
||||
}else{
|
||||
TransmutationHelper.targetBlockStack = TransmutationHelper.getPreviousBlock(TransmutationHelper.targetBlockStack.itemID, TransmutationHelper.targetBlockStack.getItemDamage());
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (keyBinding.equals(ConfigurationSettings.KEYBINDING_CHARGE)) {
|
||||
|
|
Loading…
Reference in a new issue