private boolean drawBallCheck(Graphics g, int aBallColor, int aType, int ai, int aj)
	{
		drawOneBall(g, aBallColor, aType, ai, aj);	// 
		
		Dimension di = new Dimension();
		if (isDying(new Dimension(ai, aj), aBallColor))	// жǷҪȥ
		{
			// ȥ
			int size = mBallDying.size();
			addMarks(size);	// ӷ
			mEmptyPlace += size;	// λ
			try
			{
				for (int j=0; j<2; j++)	// ȥЧ
				{
					for (int i = 0; i < size; i++)
					{
						di = (Dimension) mBallDying.get(i);
						g.drawImage(mEmpty, di.width * FaceStyle.BALL_WIDTH,
								di.height * FaceStyle.BALL_HEIGHT, this);
					}
					Thread.sleep(170);
					
					for (int i = 0; i < size; i++)
					{
						di = (Dimension) mBallDying.get(i);

						drawOneBall(g, mWhatBall[di.width][di.height], 2, di.width, di.height);
					}
					Thread.sleep(230);
				}
			}
			catch (InterruptedException e)
			{
				
			}
			
			for (int i = 0; i < size; i++)	// Ĩиȥ
			{
				di = (Dimension) mBallDying.removeLast();
				mWhatBall[di.width][di.height] = BallColor.EMPTY;
				g.drawImage(mEmpty, di.width * FaceStyle.BALL_WIDTH,
						di.height * FaceStyle.BALL_HEIGHT, this);
			}
			
			return true;	// ȥ
		}
		
		return false;	// ȥ
	}