public int calculateLowestCost() {
        locked = true;
//        System.out.println(name + " is locked");

        int lowestCostStorePrice;
        int lowestFusionCost;

        if (storePricesList.size() > 0) {
            lowestCostStorePrice = getLowestStorePrice();
            if (lowestCostStorePrice < lowestItemCost) {
                lowestItemCost = lowestCostStorePrice;
                bestBuyInStore = true;
            }
        }
        if (fusionList.size() > 0) {
            lowestFusionCost = getLowestFusionCost();
            if (lowestFusionCost < lowestItemCost) {
                lowestItemCost = lowestFusionCost;
                bestBuyInStore = false;
            }
        }
//        locked = false;
//        System.out.println("new lowest item cost (~" + lowestItemCost + ") for " + name );
//        System.out.println(name + " is unlocked");
        return lowestItemCost;
    }