Package org.freerealm.player

Source Code of org.freerealm.player.SettlementManager

package org.freerealm.player;

import org.freerealm.settlement.Settlement;
import java.util.Iterator;
import java.util.TreeMap;
import org.freerealm.settlement.SettlementBuildable;

/**
*
* @author Deniz ARIKAN
*/
public class SettlementManager {

    private TreeMap<Integer, Settlement> settlements;
    private Player player;

    public SettlementManager(Player player) {
        this.player = player;
        settlements = new TreeMap<Integer, Settlement>();
    }

    public void addSettlement(Settlement settlement) {
        settlements.put(settlement.getId(), settlement);
    }

    public void removeSettlement(Settlement settlement) {
        settlements.remove(settlement.getId());
    }

    public Settlement getSettlement(int settlementId) {
        return settlements.get(settlementId);
    }

    public Iterator<Settlement> getSettlementsIterator() {
        return settlements.values().iterator();
    }

    public int getSettlementCount() {
        return settlements.size();
    }

    public Player getPlayer() {
        return player;
    }

    public int getSettlementUpkeep() {
        int upkeep = 0;
        Iterator<Settlement> settlementIterator = getSettlementsIterator();
        while (settlementIterator.hasNext()) {
            upkeep = upkeep + settlementIterator.next().getImprovementUpkeep();
        }
        return upkeep;
    }

    public int getNumberOfSettlementsBuilding(SettlementBuildable buildable) {
        int result = 0;
        Iterator<Settlement> iterator = getSettlementsIterator();
        while (iterator.hasNext()) {
            Settlement settlement = iterator.next();
            if (settlement.getCurrentProduction() != null && settlement.getCurrentProduction().equals(buildable)) {
                result = result + 1;
            }
        }
        return result;
    }
}
TOP

Related Classes of org.freerealm.player.SettlementManager

TOP
Copyright © 2018 www.massapi.com. 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.