@Override
	public void actionPerformed(ActionEvent ae) {
		if(currX == newX && currY == newY)
			timer.stop();
		
		//	Check for infinite slope
		if(newX != currX) {
			slope = (newY - currY) / (newX - currX);
			
			//	Moving to the left
			if(newX < currX) {
				currX--;
				currY -= slope;
			}
			
			//	Moving to the right
			else if(newX > currX) {
				currX++;
				currY += slope;
			}
		}
		else {
			if(currY < newY)
				currY++;
			else
				currY--;
		}
		
		this.setBounds((int)currX, (int)currY, 50, 50);
		
		this.repaint();
		this.revalidate();
	}