package Factory.GameLogic.TransportTypes; import Factory.GameLogic.Enums.Faction; import Factory.Interfaces.IHasConsistencyCheck; /** * Created with IntelliJ IDEA. * User: N3trunner * Date: 21.05.12 * Time: 12:11 * To change this template use File | Settings | File Templates. */ public class TFactory implements IHasConsistencyCheck, java.io.Serializable { private int remainingRoundsForRespawn; private int currentInfluence; private Faction owningFaction; private int factoryID; public TFactory(int remainingRoundsForRespawn, int currentInfluence, Faction owningFaction, int factoryID) { this.remainingRoundsForRespawn = remainingRoundsForRespawn; this.currentInfluence = currentInfluence; this.owningFaction = owningFaction; this.factoryID = factoryID; } public int getRemainingRoundsForRespawn() { return remainingRoundsForRespawn; } public int getCurrentInfluence() { return currentInfluence; } public Faction getOwningFaction() { return owningFaction; } public int getFactoryID() { return factoryID; } @Override public boolean equals(Object o) { if (this == o) return true; if (!(o instanceof TFactory)) return false; TFactory factory = (TFactory) o; if (currentInfluence != factory.currentInfluence) return false; if (factoryID != factory.factoryID) return false; if (remainingRoundsForRespawn != factory.remainingRoundsForRespawn) return false; if (owningFaction != factory.owningFaction) return false; return true; } @Override public int hashCode() { int result = remainingRoundsForRespawn; result = 31 * result + currentInfluence; result = 31 * result + (owningFaction != null ? owningFaction.hashCode() : 0); result = 31 * result + factoryID; return result; } @Override public boolean isConsistent() { if (remainingRoundsForRespawn < 0 || factoryID < 0 || owningFaction == null) { return false; } return true; } }