Merge pull request #260 from TehNut/patch-3
Fix teleposerBlacklist shorthand support
This commit is contained in:
commit
5bcf253659
1 changed files with 13 additions and 2 deletions
|
@ -684,12 +684,13 @@ public class AlchemicalWizardryEventHooks
|
||||||
for (int i = 0; i < BloodMagicConfiguration.teleposerBlacklist.length; i++) {
|
for (int i = 0; i < BloodMagicConfiguration.teleposerBlacklist.length; i++) {
|
||||||
String[] blockData = BloodMagicConfiguration.teleposerBlacklist[i].split(":");
|
String[] blockData = BloodMagicConfiguration.teleposerBlacklist[i].split(":");
|
||||||
|
|
||||||
|
// If the block follows full syntax: modid:blockname:meta
|
||||||
if (blockData.length == 3) {
|
if (blockData.length == 3) {
|
||||||
|
|
||||||
Block block = GameRegistry.findBlock(blockData[0], blockData[1]);
|
Block block = GameRegistry.findBlock(blockData[0], blockData[1]);
|
||||||
int meta;
|
int meta;
|
||||||
|
|
||||||
// Check if it's an int, if so, parse it. If not, set to 0 to avoid crashing.
|
// Check if it's an int, if so, parse it. If not, set meta to 0 to avoid crashing.
|
||||||
if (blockData[2].matches("-?\\d+"))
|
if (blockData[2].matches("-?\\d+"))
|
||||||
meta = Integer.parseInt(blockData[2]);
|
meta = Integer.parseInt(blockData[2]);
|
||||||
else if (blockData[2].equals("*"))
|
else if (blockData[2].equals("*"))
|
||||||
|
@ -700,6 +701,16 @@ public class AlchemicalWizardryEventHooks
|
||||||
if (block != null)
|
if (block != null)
|
||||||
if (( block == event.initialBlock || block == event.finalBlock) && (meta == event.initialMetadata || meta == event.finalMetadata || meta == OreDictionary.WILDCARD_VALUE))
|
if (( block == event.initialBlock || block == event.finalBlock) && (meta == event.initialMetadata || meta == event.finalMetadata || meta == OreDictionary.WILDCARD_VALUE))
|
||||||
event.setCanceled(true);
|
event.setCanceled(true);
|
||||||
|
|
||||||
|
// If the block uses shorthand syntax: modid:blockname
|
||||||
|
} else if (blockData.length == 2) {
|
||||||
|
|
||||||
|
Block block = GameRegistry.findBlock(blockData[0], blockData[1]);
|
||||||
|
int meta = 0;
|
||||||
|
|
||||||
|
if (block != null)
|
||||||
|
if (( block == event.initialBlock || block == event.finalBlock) && (meta == event.initialMetadata || meta == event.finalMetadata || meta == OreDictionary.WILDCARD_VALUE))
|
||||||
|
event.setCanceled(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue