package org.mafagafogigante.dungeon.stats; import org.mafagafogigante.dungeon.util.CounterMap; import java.io.Serializable; /** * WorldStatistics class that tracks world statistics. */ public final class WorldStatistics implements Serializable { private final CounterMap<String> spawnCounter = new CounterMap<>(); private final CounterMap<String> locationCounter = new CounterMap<>(); private int spawnCount; private int locationCount; /** * Adds the spawn of a new Creature to the statistics. */ public void addSpawn(String creature) { spawnCount++; spawnCounter.incrementCounter(creature); } /** * Adds the creation of a new Location to the statistics. */ public void addLocation(String location) { locationCount++; locationCounter.incrementCounter(location); } /** * Returns the Creature count. * * @return the Creature count. */ public int getSpawnCount() { return spawnCount; } /** * Returns the Location count. * * @return the Location count. */ public int getLocationCount() { return locationCount; } /** * Returns the CounterMap that relate Creature name to spawn count. * * @return a CounterMap of String. */ public CounterMap<String> getSpawnCounter() { return spawnCounter; } public CounterMap<String> getLocationCounter() { return locationCounter; } }