良いプログラマは、Javaの学習ルート共有FlappyBirdのヘルプドキュメントを開発します

良いプログラマは、プロジェクトの要件をJavaの学習ルート共有FlappyBirdのヘルプドキュメントを開発します:

完全なゲームをFlappyBird。

1.機能:

ゲームは、マウスの断続的なクリックを開始し、該当しない、鳥が飛ぶせ、そして列に隙間を通って、列には、会った死者それをヒットし、一点のカラムを通過することはできませんした後

2.インタフェースの要件:

インターフェースを開始します:

ゲームを開始するには、マウスをクリックして、ゲームのインターフェイス:

ゲームのインターフェイスの終わりに:

 

3.パフォーマンス要件:

各ゲームには鳥が減少している鳥の高さとスピードを飛ぶためにマウスクリック、リアルタイム応答が指定されなければならない必要とし、柱は最終的にポストにバーディー柔軟性コヒーレントシャトルを作り、登場循環されています部屋。

4.開発ステップ:

Bird.java、柱クラスColumn.java、地上カテゴリ:Ground.java、プロジェクトがメインクラスGame.java、カスタムパネルクラスBirdGame.java、小さな鳥が含まれています

(1)列クラスColumn.javaを作成します。

プロパティが含まれます:

画像のBufferedImageは、画像の幅、高さのX、Y、幅と高さを調整します

(オブジェクト2つの列を初期化するまでの)列数の数。

コンストラクタカラム():

この方法は、()カラムの動きを移動します。

(2)Ground.javaクラスを作成します。

負荷ピクチャ(0500)の座標を初期化するコンストラクタは、メソッドの動きを作成します

(3)Bird.javaクラスを作成します。

負荷の画像座標(190、220)を初期化するコンストラクタは、アップとダウン作成方法

プラスポイントを追加する場合、すなわち点addScore(列C)法、カラムのカラム幅に等しい横横鳥の原理を、作成します。

地上衝突メソッドを作成し、鳥の縦と地上座標を比較し、メソッド、原則のヒントをhitGround。

 

ポスト衝突検出方法hitColumnを作成します。

(4)のJPanelを拡張BirdGame.javaパネルクラスを作成

状態変数は、ゲームの状態を表し、0は開始状態、ゲームの状態、状態オーバー2ゲームです。

コンストラクタローディングbg.png、start.png、gameover.png、初期状態= 0、初期接地、鳥、COLUMN1のCOLUMN2およびオブジェクト。

重写paint方法public void paint(Graphics g)

利用g.drawImage方法绘制界面

显示分数

定义内部类MyMouseAdapter 继承MouseAdapter

重写mousePressed方法public void mousePressed(MouseEvent e)

根据当前游戏状态,更改鼠标点击后状态及对应对象坐标。

创建action方法,添加鼠标监听事件

无限循环(while(true))根据不同游戏状态调用bird,ground,column对象中的方法(利用switch case),然后利用线程延迟实现重复绘制

(5).创建Game.java作为运行主类,原理:

Main方法中创建JFrame对象,将BirdGame面板实例化后添加进JFrame对象中,最后调用BirdGame对象的action方法。

 

おすすめ

転載: www.cnblogs.com/gcghcxy/p/11352760.html