Package com.jcloisterzone.feature

Examples of com.jcloisterzone.feature.Tower


        features.add(cloister);
        game.initFeature(tile, cloister, e);
    }

    private void processTowerElement(Element e) {
        Tower tower = new Tower();
        tower.setId(game.idSequnceNextVal());
        tower.setTile(tile);
        tower.setLocation(Location.TOWER);
        features.add(tower);
        game.initFeature(tile, tower, e);
    }
View Full Code Here


            }
        }
    }

    public void placeTowerPiece(Player player, Position pos) {
        Tower tower = getBoard().get(pos).getTower();
        if (tower  == null) {
            throw new IllegalArgumentException("No tower on tile.");
        }
        if (tower.getMeeple() != null) {
            throw new IllegalArgumentException("The tower is sealed");
        }
        decreaseTowerPieces(player);
        tower.increaseHeight();
        lastIncreasedTower = pos;
        game.post(new TowerIncreasedEvent(player, pos, tower.getHeight()));
    }
View Full Code Here

    }

    protected Set<Position> getOpenTowers(int minHeight) {
        Set<Position> availTower = new HashSet<>();
        for (Position p : getTowers()) {
            Tower t = getBoard().get(p).getTower();
            if (t.getMeeple() == null && t.getHeight() >= minHeight) {
                availTower.add(p);
            }
        }
        return availTower;
    }
View Full Code Here

            Element it = doc.createElement("increased-tower");
            XmlUtils.injectPosition(it, lastIncreasedTower);
            node.appendChild(it);
        }
        for (Position towerPos : towers) {
            Tower tower = getBoard().get(towerPos).getTower();
            Element el = doc.createElement("tower");
            node.appendChild(el);
            XmlUtils.injectPosition(el, towerPos);
            el.setAttribute("height", "" + tower.getHeight());
        }
        for (Player player: game.getAllPlayers()) {
            Element el = doc.createElement("player");
            node.appendChild(el);
            el.setAttribute("index", "" + player.getIndex());
View Full Code Here

        }
        nl = node.getElementsByTagName("tower");
        for (int i = 0; i < nl.getLength(); i++) {
            Element te = (Element) nl.item(i);
            Position towerPos = XmlUtils.extractPosition(te);
            Tower tower = getBoard().get(towerPos).getTower();
            tower.setHeight(Integer.parseInt(te.getAttribute("height")));
            towers.add(towerPos);
            if (tower.getHeight() > 0) {
                game.post(new TowerIncreasedEvent(null, towerPos, tower.getHeight()));
            }
        }
        nl = node.getElementsByTagName("player");
        for (int i = 0; i < nl.getLength(); i++) {
            Element playerEl = (Element) nl.item(i);
View Full Code Here

TOP

Related Classes of com.jcloisterzone.feature.Tower

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.