public void fromSectionValue(Object aValue) { if (aValue instanceof ArrayList) { for (Object lItem : ((ArrayList) aValue)) { Mat lMat = new Mat(); lMat.quest = quest; if (lItem instanceof HashMap) { lMat.fromSectionValue(lItem); } else if (lItem instanceof String) { String lStr = lItem.toString().toUpperCase(); lMat.material = Material.getMaterial(lStr); if (lMat.material == null) { lMat.material = Material.getMaterial(Integer.parseInt(lStr)); } } add(lMat); } } }
public Mat getNext(int aMazeLevel) { Mat lResult = null; Mat lFound = new Mat(); lFound.material = fMat; lFound.data = baseMaterialData; for (Mat lMat : this) { if (lMat.mazeLevel < 0 || lMat.mazeLevel == aMazeLevel) { lFound = lMat; if (fRnd.nextInt(100) < lMat.chanceToUse) { lResult = lMat; } } } return lResult == null ? lFound : lResult; }