Add safety checks to prevent itemblocks with invalid metadata turning into invalid blockstates, fixes #382
(Because *some* mod authors are not very careful...)
This commit is contained in:
@@ -107,7 +107,9 @@ public class BlockPedestal extends Block implements ITileEntityProvider {
|
|||||||
natural = true;
|
natural = true;
|
||||||
metadata -= ELEMENT.getAllowedValues().size();
|
metadata -= ELEMENT.getAllowedValues().size();
|
||||||
}
|
}
|
||||||
return this.getDefaultState().withProperty(ELEMENT, Element.values()[metadata]).withProperty(NATURAL, natural);
|
Element element = Element.values()[metadata];
|
||||||
|
if(!ELEMENT.getAllowedValues().contains(element)) return this.getDefaultState().withProperty(NATURAL, natural);
|
||||||
|
return this.getDefaultState().withProperty(ELEMENT, element).withProperty(NATURAL, natural);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -69,7 +69,9 @@ public class BlockRunestone extends Block {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IBlockState getStateFromMeta(int metadata){
|
public IBlockState getStateFromMeta(int metadata){
|
||||||
return this.getDefaultState().withProperty(ELEMENT, Element.values()[metadata]);
|
Element element = Element.values()[metadata];
|
||||||
|
if(!ELEMENT.getAllowedValues().contains(element)) return this.getDefaultState();
|
||||||
|
return this.getDefaultState().withProperty(ELEMENT, element);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
Reference in New Issue
Block a user