@Override
	public boolean findWinner(Game game, Position from, Position to) {
		int attack = game.getUnitAt(from).getAttackingStrength();
		int defense = game.getUnitAt(to).getDefensiveStrength();
		
		attack += Utility.getFriendlySupport(game, from, game.getUnitAt(from).getOwner());
		
		defense += Utility.getFriendlySupport(game, to, game.getUnitAt(to).getOwner());
		
		attack *= Utility.getTerrainFactor(game, from);
		defense *= Utility.getTerrainFactor(game, to);
		
		if(attack * d.rollDice() >= defense * d.rollDice())
		{
			((GameImpl)game).forceRemoveUnit(to);
			((GameImpl)game).forceMoveUnit(from, to);
			return true;
		}else
		{

			((GameImpl)game).forceRemoveUnit(from);
			return false;
		}
	}