⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 planesbomb.java

📁 一个J2ME的游戏,有源程序.是原创!适合S60的176*208的规格.
💻 JAVA
字号:
package src;

import javax.microedition.lcdui.Graphics;

public class PlaneSbomb {

	KingCanvas KC;

	int PlaneX, PlaneY;

	int PlaneWidth, PlaneHeight;

	boolean bFlaySbombPlaneDisplay, bFlagSbombPlaneArticleDisplay,
			bFlaySbombPlaneExplosionDisplay;

	int ExplosionNumber, PlaneArticleNumber;

	int randomStem;

	int BombIntervalCounter;

	int TempY;

	int Explosion_X, Explosion_Y, PlaneArticle_X, PlaneArticle_Y;

	public PlaneSbomb(KingCanvas KC, int PlaneSbombStem) {
		this.KC = KC;
		InitPlane(PlaneSbombStem);
	}

	/**
	 * 初始化友军轰炸相关属性以及加载相关图片处理方法
	 */

	public void InitPlane(int PlaneSbombStem) {
		PlaneX = KC.GetRandom(144);
		PlaneY = KingCanvas.SCREEN_HEIGHT + PlaneSbombStem;
		PlaneWidth = 32;
		PlaneHeight = 25;
	}

	/**
	 * 移动友军轰炸处理方法
	 */

	public void MoveOtherPlane() {
		if (bFlagSbombPlaneArticleDisplay == false)
			randomStem = KC.GetRandom(3);
		if (PlaneY + PlaneHeight >= 0) {
			PlaneY -= 8;
			if (randomStem == 1) {
				bFlagSbombPlaneArticleDisplay = true;
				PlaneArticle_X = PlaneX + 13;
				PlaneArticle_Y = PlaneY + 6;
				TempY = PlaneArticle_Y;
				randomStem = 0;
			}
			if (PlaneArticleNumber == 3) {
				Explosion_X = PlaneArticle_X - 8;
				Explosion_Y = PlaneArticle_Y - 4;
				bFlaySbombPlaneExplosionDisplay = true;
				KC.SbombCollide();
			}
		} else {
			if (KC.bFlagArticle == 1) {
				PlaneX = KC.GetRandom(144);
				PlaneY = KingCanvas.SCREEN_HEIGHT + PlaneHeight;
			}
		}
	}

	/**
	 * 友军轰炸掉落炸弹移动处理方法
	 */

	public void MovePlaneArticle() {
		if (bFlagSbombPlaneArticleDisplay == true) {
			PlaneArticle_Y++;
		}
	}

	// -------------------------------------- 画笔

	/**
	 * 友军轰炸画笔
	 */

	public void drawSbombPlane(Graphics g) {
		KingCanvas.Brush(g, KingCanvas.Plane, PlaneX, PlaneY, PlaneWidth,
				PlaneHeight, 0, 0);
	}

	/**
	 * 友军轰炸掉落炸弹爆炸画笔
	 */

	public void drawOtherPlaneExplosion(Graphics g) {
		KingCanvas.Brush(g, KingCanvas.PlaneExplosion, Explosion_X,
				Explosion_Y, KingCanvas.PlaneExplosion.getWidth(),
				KingCanvas.PlaneExplosion.getWidth(), ExplosionNumber, 0);
	}

	/**
	 * 友军轰炸掉落炸弹画笔
	 */

	public void drawPlaneSmbombArticle(Graphics g) {
		KingCanvas.Brush(g, KingCanvas.PlaneArticle, PlaneArticle_X,
				PlaneArticle_Y, KingCanvas.PlaneArticle.getWidth(),
				KingCanvas.PlaneArticle.getHeight() / 3, PlaneArticleNumber, 0);
	}

	// -------------------------------------------------

	/**
	 * 友军轰炸相关处理方法
	 */

	public void PlaneSbombPacket() {
		MoveOtherPlane();
		MovePlaneArticle();
	}

	/**
	 * 友军轰炸相关画笔
	 */

	public void drawPlaneSbomb(Graphics g) {
		if (KC.bFlagArticle == 0)
			return;
		if (bFlaySbombPlaneDisplay == false) {
			if (bFlagSbombPlaneArticleDisplay == true) {
				drawPlaneSmbombArticle(g);
				if (PlaneArticleNumber < 3) {
					BombIntervalCounter++;
					if (BombIntervalCounter % 10 == 0)
						PlaneArticleNumber++;
				} else {
					PlaneArticleNumber = 0;
					bFlagSbombPlaneArticleDisplay = false;
				}
			}
			drawSbombPlane(g);
		}

		if (bFlaySbombPlaneExplosionDisplay == true) {
			drawOtherPlaneExplosion(g);
			bFlagSbombPlaneArticleDisplay = true;
			if (ExplosionNumber < 5) {
				ExplosionNumber++;
			} else {
				ExplosionNumber = 0;
				bFlaySbombPlaneExplosionDisplay = false;
			}
			bFlagSbombPlaneArticleDisplay = false;
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -