Android Open Source - dragon-wars Statistics






From Project

Back to project page dragon-wars.

License

The source code is released under:

GNU General Public License

If you think the Android project dragon-wars listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/* This file is part of Dragon Wars.
 *//from  w  w w . j  a va2  s.  c  o  m
 * Dragon Wars is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * Dragon Wars is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with Dragon Wars.  If not, see <http://www.gnu.org/licenses/>.
 */

package com.group7.dragonwars.engine;

import java.util.Set;
import java.util.TreeMap;
import java.util.Map;
import java.util.Map.Entry;

public class Statistics {
    private Map<String, Double> sMap;

    public Statistics() {
        this.sMap = new TreeMap<String, Double>();
    }

    private void putIfNotPresent(final String stat) {
        if (!sMap.containsKey(stat)) {
            setStatistic(stat, 0.0);
        }
    }

    public void increaseStatistic(final String stat) {
        increaseStatistic(stat, 1.0);
    }

    public void increaseStatistic(final String stat, final Double amount) {
        putIfNotPresent(stat);
        setStatistic(stat, sMap.get(stat) + amount);
    }

    public void decreaseStatistic(final String stat) {
        increaseStatistic(stat, -1.0);
    }

    public void decreaseStatistic(final String stat, final Double amount) {
        increaseStatistic(stat, -amount);
    }

    public void setStatistic(final String stat, final Double amount) {
        sMap.put(stat, amount);
    }

    public Double getStatistic(final String stat) {
        putIfNotPresent(stat);
        return sMap.get(stat);
    }

    public Set<Entry<String, Double>> getEntrySet() {
        return sMap.entrySet();
    }

    @Override
    public String toString() {
        String r = "";

        for (Map.Entry<String, Double> ent : sMap.entrySet()) {
            r += ent.getKey() + ": "  + ent.getValue().doubleValue() + "\n";
        }

        return r;
    }


}




Java Source Code List

com.group7.dragonwars.DrawingThread.java
com.group7.dragonwars.GameActivity.java
com.group7.dragonwars.GameView.java
com.group7.dragonwars.HelpActivity.java
com.group7.dragonwars.IsAiAdapter.java
com.group7.dragonwars.MainMenuActivity.java
com.group7.dragonwars.MapSelectActivity.java
com.group7.dragonwars.PlayerSelectActivity.java
com.group7.dragonwars.Results.java
com.group7.dragonwars.StatisticsActivity.java
com.group7.dragonwars.engine.BasicMapInfo.java
com.group7.dragonwars.engine.BitmapChanger.java
com.group7.dragonwars.engine.Building.java
com.group7.dragonwars.engine.DrawableMapObject.java
com.group7.dragonwars.engine.FloatPair.java
com.group7.dragonwars.engine.FuncEx.java
com.group7.dragonwars.engine.Func.java
com.group7.dragonwars.engine.GameField.java
com.group7.dragonwars.engine.GameFinishedException.java
com.group7.dragonwars.engine.GameMap.java
com.group7.dragonwars.engine.GameState.java
com.group7.dragonwars.engine.InformationState.java
com.group7.dragonwars.engine.Logic.java
com.group7.dragonwars.engine.MapReader.java
com.group7.dragonwars.engine.Pair.java
com.group7.dragonwars.engine.PlayerAI.java
com.group7.dragonwars.engine.Player.java
com.group7.dragonwars.engine.Position.java
com.group7.dragonwars.engine.RangedUnit.java
com.group7.dragonwars.engine.Statistics.java
com.group7.dragonwars.engine.Unit.java
com.group7.dragonwars.engine.Database.Database.java
com.group7.dragonwars.engine.GoalArbitration.AtomicAction.java
com.group7.dragonwars.engine.GoalArbitration.AttackAt.java
com.group7.dragonwars.engine.GoalArbitration.BuildUnit.java
com.group7.dragonwars.engine.GoalArbitration.MoveTo.java
com.group7.dragonwars.engine.GoalArbitration.Node.java
com.group7.dragonwars.engine.GoalArbitration.StateTree.java