分享
 
 
 

BallCanvas.java---BallGame

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

//package BallGame;

import javax.microedition.lcdui.Graphics;

import javax.microedition.lcdui.Image;

import javax.microedition.lcdui.game.GameCanvas;

import javax.microedition.lcdui.game.LayerManager;

import javax.microedition.lcdui.game.TiledLayer;

/**

* <strong>FileName</strong>: BallCanvas.java

* <HR>

* <strong>Description</strong>: Basic game canvans with background description and input functions.

* <P><HR>

* @author

* <em>

* This Game is developed by <B>Fansy</B>.<BR>

* F.S.Studio 1999~2005

* </em>

* @version 0.3.2

*/

public class BallCanvas extends GameCanvas implements Runnable

{

private LayerManager manager; //图层管理

private Image backimage; //背景图像

private int Level=4; //初始关卡

private static int keyState; //键盘状态

private Ball ball;

private Bar bar;

private Block block;

private Graphics g; //绘图缓冲

private int Score=0; //游戏得分

private byte[][] backmap={ //背景描述

{1,3,3,3,3,3,3,2},

{7,0,0,0,0,0,0,4},

{7,0,0,0,0,0,0,4},

{7,0,0,0,0,0,0,4},

{7,0,0,0,0,0,0,4},

{7,0,0,0,0,0,0,4},

{7,0,0,0,0,0,0,4},

{7,0,0,0,0,0,0,4},

{7,0,0,0,0,0,0,4}};

public TiledLayer background; //背景图层

public static final int MAX_LEVEL=5;

public BallCanvas()

{

super(false);

g=getGraphics();

bar=new Bar(this); //建立挡板对象

block=new Block(); //建立砖块对象

ball=new Ball(this,bar,block); //建立小球对象

try {backimage=Image.createImage("/backimage.png");} //装载背景图像

catch(Exception e){}

background=new TiledLayer(8,9,backimage,30,30); //建立背景图层,共有8行,9列

for(int i=0;i<9;i++) //初始化背景图层

for(int j=0;j<8;j++)

background.setCell(j,i,backmap[i][j]);

block.InitLevel(Level); //初始化关卡

manager=new LayerManager(); //

manager.append(ball.createBallSprite()); //

manager.append(bar.createBarSprite()); //建立图层管理对象并添加图层进行管理

manager.append(block.blocktd); //

manager.append(background); //

}

public void run()

{

ball.BallReady();

ball.start();

while (true)

{

keyState=getKeyStates(); //获取键盘状态

if((keyState&LEFT_PRESSED)!=0&&bar.getBarRefPixelX()>30) //左键按下

{

bar.BarMoveLeft();

if(!ball.isBallRun())

ball.setBallPosition(bar.getBarRefPixelX(),257);

}

else if((keyState&RIGHT_PRESSED)!=0&&bar.getBarRefPixelX()<210) //右键按下

{

bar.BarMoveRight();

if(!ball.isBallRun())

ball.setBallPosition(bar.getBarRefPixelX(),257);

}

try{Thread.sleep(20);}

catch(Exception e){}

}

}

public void isLevelClear()

{

if(block.isAllClear()) //过关

{

if(Level<MAX_LEVEL)

{

Level++;

block.InitLevel(Level);

ball.reset();

ball.BallReady();

bar.reset();

}

else

{

new GameOver().showGameOver();

}

}

}

public void drawScore() //绘制分数到缓冲区

{

g.setColor(0x00ffffffff);

g.drawString("Level:"+(Level+1)+" Score:"+Score,10,270,20);

}

public void drawScreen() //刷新屏幕

{

g.setColor(0x00000000);

g.fillRect(0,0,240,290); //清除图像缓冲区

drawScore();

manager.paint(g,0,0); //重绘缓冲图像

flushGraphics(); //刷新用户屏幕并显示

}

public void start()

{

Thread t=new Thread(this);

t.setPriority(Thread.MAX_PRIORITY);

t.start();

}

public void addScore(int extraScore)

{

Score+=extraScore;

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有