public ImageBuffer() throws IOException
	{
		hansBuffer = new BufferedImage[Const.PlayerState.Names.length][8];

		for(int playerState = 0; playerState < hansBuffer.length; playerState++ )
		{
			String s = Const.PlayerState.Names[playerState] + ".bmp";
			URL u = getClass().getClassLoader().getResource(s);
			BufferedImage img;
			try
			{
				img = ImageIO.read(u);
			}
			catch(IllegalArgumentException e)
			{
				throw new IOException("Resource '" + s + "' not Found", e);
			}
			for(int slot = 0; slot < hansBuffer[playerState].length; slot++ )
			{
				BufferedImage newImg = changer.changeColor(img, hansMainReplaceColor, hansMainColors[slot]);
				newImg = changer.changeColor(newImg, hansSubReplaceColor, hansSubColors[slot]);

				hansBuffer[playerState][slot] = newImg;
			}

		}

		cellBuffer = new BufferedImage[Const.CellTypes.NAMES.length];

		for(int cellState = 0; cellState < cellBuffer.length; cellState++ )
		{
			String s = Const.CellTypes.NAMES[cellState] + ".bmp";
			URL u = getClass().getClassLoader().getResource(s);
			BufferedImage img;
			try
			{
				img = ImageIO.read(u);
			}
			catch(IllegalArgumentException e)
			{
				throw new IOException("Resource '" + s + "' not Found", e);
			}
			cellBuffer[cellState] = img;
		}
	}