这些天,我正在用MyEclipse的Java Project开发一款仿DNF 横版格斗游戏。
http://v.youku.com/v_show/id_XMTI5MTE0NDg4MA==.html
这是目前的游戏效果和开发进度。游戏中用到的图片皆由我亲手绘制。
项目下载地址:http://www.jusanluntan.com.cn/JuSan/toTheme.action?theme.id=224
1.[图片] JuSanDnf.jpg
2.[代码][Java]代码
/** *画板*/
public class MyPanel extends JPanel implements KeyListener,Runnable{
/** *游戏主角对象*/
FatherClass fc=new FatherClass();
/** *背景对象*/
Background bg=new Background();
/** *房间对象*/
Room room=new Room();
/** *小地图对象*/
LittleMap lm=new LittleMap();
/** *主角的x轴坐标*/
int x=0;
public MyPanel(){}
/** *绘图方法,此方法用于绘制游戏背景、小地图、障碍物、主角等*/
public void paint(Graphics g){
super.paint(g);
bg.paint(g);
lm.paint(g);
room.paint(g);
fc.paint(g);
Font font=new Font("黑体",Font.PLAIN,20);
g.setFont(font);
g.setColor(Color.white);
g.drawString("聚散论坛·杨站长", fc.positionX-20, fc.y-15);
}
public void keyTyped(KeyEvent e) {}
/** *监听键盘的方法,此方法用于监听用户按住了键盘上的哪个键*/
public void keyPressed(KeyEvent e) {
fc.keyPressed(e);
}
/** *监听键盘的方法,此方法用于监听用户放开了键盘上的哪个键*/
public void keyReleased(KeyEvent e) {
fc.keyReleased(e);
}
public void run() {
while(true){
try {
Thread.sleep(50);
} catch (InterruptedException e) {
e.printStackTrace();
}
repaint();
x=fc.lrMove();
bg.heroX=x;
room.door1.heroX=x;
room.door2.heroX=x;
room.nz1.heroX=x;
room.nz2.heroX=x;
fc.touchDoor(room, bg, lm);
fc.touchOb(room.nz1, room.nz2);
bg.roomNum=room.roomNum;
if(room.oldRoomNum!=room.roomNum){
room.oldRoomNum=room.roomNum;
room.initDoor();
room.initObstacle();
}
}
}
}