@Override
    public boolean checkPlaceableProjectileHit(Projectile p) {
        if (gameController.multiplayerMode != gameController.multiplayerMode.CLIENT) {
            Placeable placeable = null;

            try {
                for (String key : placeables.keySet()) {
                    placeable = (Placeable) placeables.get(key);
                    if (placeable != null) {
                        if (placeable.getPerimeter().contains(p.getCenterPoint())) {
                            placeable.applyDamage((Monster) p.getSource(), p.getDamage());
                            return true;
                        }
                    }
                }
            } catch (ConcurrentModificationException concEx) {
                //another thread was trying to modify placeables while iterating
                //we'll continue and the new item can be grabbed on the next update
            }
        }

        return false;
    }