飛行機が着陸するゲームみたいなのを描いてみる

飛行機が着陸するゲームみたいなのを描いてみる その6

 前回は勝手気ままに飛ぶ飛行機を加えました。今回はちとゲーム性を持たせて、クリックすると飛び始める飛行機を表現したいと思います。
白い飛行機と同じところから飛び始めて、同じ軌跡で飛びます。
滑走路まで白い飛行機と同じ軌跡で飛びます。

 最初は、○でクリックするところからです。
例によって、GFrame.javaクラスに、マウスアクションを追加します。
クリックした位置のXY座標をchangeThread.javaに教えます。


		jScrollPane1.addMouseListener(new java.awt.event.MouseAdapter() {
			public void mouseClicked(MouseEvent e) {
				jScrollPane1_mouseClicked(e);
			}
		});

 というマウスリスナーをセットし、


	private void jScrollPane1_mouseClicked(MouseEvent e) {

		if ( e.getClickCount() ==1 ) {
			flgCrick=Chg.getCrick();
			if(!flgCrick){
				flgCrick=true;
				crx0=((Viewp.getp_x( )+e.getX()));
				cry0=((Viewp.getp_y( )+e.getY()));
				Chg.setCrick_Pos(crx0,cry0);
				Chg.setCrick(flgCrick);
			}
		}			  
	}

 クリックがあったら、changeThread.javaにtrueと座標をセットします。

 changeThread.javaは、run()メソッドの中で、このマウスクリックを監視して、もしクリックがあったら、そのクリック位置が○の中なのかをチェックします。4箇所ある○をそれぞれチェックします。
 run()の中で、  


			if(fCrick){
				setCrick(false);
				int hant=getstat();		//丸の中でクリックしたか調べる
				if(hant!=0){
					b99Ap.setB99ap(cnt,hant);

				}

			}

 あとは、AirpB99.javaというクラスファイルを作って、その中で、移動や描画の処理をしています。
白い飛行機と同じ動きをしているだけです。



plane

実行すると、右図のようになります。
どこかの○でくりっくすると虹色みたいな飛行機が飛び出すと思います。
この虹色飛行機が画面から消えないと次の飛行機は出てきません。







今回のプログラムで変更したのは、GFrameとchangeThread.javaです。新たにAirpB99.javaというクラスファイルを作りました。 あとは虹色飛行機の画像を用意しています。