import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.Random;
public class Myjava extends JFrame implements Runnable,KeyListener{
JPanel panel;
long start,finish;
JLabel me;
int che = 1;
public Myjava(int width,int height){
panel = new JPanel();
panel.setLayout(null);
panel.setBackground(Color.yellow);
me = new JLabel();
me.setBackground(Color.blue);
me.setOpaque(true);
me.setSize(10,10);
me.setLocation(width/2,height-100);
add(me);
add(panel);
addKeyListener(this);
setSize(width,height);
paintFrame();
start = System.currentTimeMillis();
}
public void paintFrame(){
setTitle("有一定几率跑过火");
Dimension screenSize = getToolkit().getDefaultToolkit().getScreenSize();
setLocation(screenSize.width/2-getWidth()/2,screenSize.height/2-getHeight()/2);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
public void element(){
int i =0;
int time = 0;
Random r = new Random();
int wei = r.nextInt(getWidth());
while(time<100)
time = r.nextInt(500);
JLabel label = new JLabel("火");
label.setSize(15,20);
// label.setOpaque(true);
label.setBackground(Color.yellow);
// label.setForeground(Color.red);
panel.add(label);
label.setLocation(wei,0);
while(true){
try{
Thread.sleep(time);
}catch(InterruptedException e){System.out.println(e.getMessage());}
i+=10;
label.setLocation(wei,i);
if(i>this.getHeight()){label.setLocation(wei=r.nextInt(getWidth()),0);i=0;}
pzh(label.getLocation());
if(time>20)time-=1;
if(che==0)break;
}
}
public void run(){
element();
}
public void pzh(Point pl){
Point pm = me.getLocation();
if(Math.abs(pl.y-pm.y)<10&&Math.abs(pl.x-pm.x)<10){
finish = System.currentTimeMillis();
int n=JOptionPane.showConfirmDialog(null,"得分:"+(finish-start)/100+"再来一次","你挂了",JOptionPane.YES_NO_OPTION);
if(n==JOptionPane.YES_OPTION){
che = 0;
dispose();
start();
}
else System.exit(0);
}
}
public void keyPressed(KeyEvent e){
int step = 10;
Point pm = me.getLocation();
switch(e.getKeyCode()){
case KeyEvent.VK_LEFT:me.setLocation(pm.x-step,pm.y);break;
case KeyEvent.VK_RIGHT:me.setLocation(pm.x+step,pm.y);break;
case KeyEvent.VK_UP:me.setLocation(pm.x,pm.y-step);break;
case KeyEvent.VK_DOWN:me.setLocation(pm.x,pm.y+step);break;
}
}
public void keyReleased(KeyEvent e){
}
public void keyTyped(KeyEvent e){
}
public static void start(){
Myjava my = new Myjava(400,400);
for(int i=0;i<8;i++)
new Thread(my).start();
}
public static void main(String[] args){
start();
}
}
分享到:
相关推荐
图形渲染通过Java的低级图形API如Graphics2D进行,用户输入处理则与事件监听相关,而音频播放则依赖于MIDP API中的音效管理。 【游戏优化技巧】 由于早期手机硬件限制,Java手机游戏需要特别关注性能优化。这包括...
Java编程中的十大低级错误是每个开发者应该避免的常见陷阱,它们不仅影响代码的可读性和维护性,还可能导致程序运行时出现各种异常。以下是这些错误的详细解释和改进建议: 1. **命名规范**:良好的命名规范是提高...
java十大低级错误详解和案例,灰常不错哦!!
Java十大低级错误,一般容易犯的错误,以及解决方法
### JAVA 10大低级错误详解 #### 1. 命名不规范 **问题描述**: 在代码示例中,类对象 `sss1` 和 `sss2` 的命名不符合Java命名规范。 **解决方案**: - **sss1** 应修改为具有描述性的变量名,例如 `...
在这个项目中,“JAVA低级UI写的一个手机界面”显然是使用Swing或AWT来模拟一个手机的操作界面。对于初学者来说,这是一个很好的实践项目,因为它涉及到组件的布局管理、事件处理以及自定义组件的概念。 1. **Swing...
J2ME通常用于开发手机游戏、应用和服务,它提供了多种框架来构建图形用户界面,其中就包括低级界面API。这个实例代码着重于如何在没有高级图形组件(如 Swing 或 AWT)的情况下实现文字输入功能。 在J2ME中,我们...
在Java编程中,低级设计模板通常指的是在编写代码时使用的结构化框架,这些框架用于指导程序员实现具体的底层逻辑和数据结构。低级设计通常关注于算法、数据结构、内存管理以及性能优化等方面,它是软件设计的基础...
- **Graphics2D**:Java的Graphics2D API允许程序员进行低级的像素级绘图,可能用于绘制连连看中的棋盘和棋子。 - **图像处理**:游戏可能包含了图像资源,需要使用BufferedImage类加载和显示图片。 4. **数据...
"第七讲 Java2基本图形绘制"深入到低级图形操作,这是创建游戏画面的基础。这部分可能涉及使用Graphics2D类进行像素级别的画图,包括直线、曲线、填充区域以及图像的加载和处理。掌握这些技能后,你可以构建自己的...
Java编程中的低级错误是开发者在编码过程中容易犯的一些常见失误,这些错误往往会影响代码的可读性、可维护性和程序的稳定性。以下是对标题和描述中提到的十大低级错误的详细解释: 1. **命名不规范**:命名应该...
Java游戏开发是计算机科学领域中的一个重要分支,尤其在如今的游戏行业中,Java因其跨平台性和高效性能,被广泛用于创建各种类型的游戏。这篇“java游戏毕业论文”可能详细探讨了使用Java进行游戏开发的相关技术和...
描述中提到“很低级”,这可能意味着游戏设计简单,主要关注基础编程技术。同时,游戏是原创的,这意味着它可能没有依赖任何现成的游戏库,而是完全用Java原生API编写。通过阅读和理解这样的代码,初学者可以更深入...
RXTX是一个开源库,为Java提供与硬件的低级交互,包括串口通信。它允许开发者打开、配置和读写串口,就像处理真实硬件一样。RXTX支持多线程,可以在多个线程之间同时读写串口,非常适合需要并发通信的应用。 ...
在这个特定的"Java写的画板"项目中,我们可能找到了一个名为"PaintBrush"的文件,这可能是程序的主类或者包含核心绘图逻辑的源代码文件。 首先,我们要理解Java中的GUI编程通常使用Java AWT(Abstract Window ...
3. **图形和动画**:Java游戏通常使用低级的图形库,如LWJGL(Lightweight Java Game Library)或自定义的绘图API。游戏中的角色和环境可能会以精灵(Sprite)的形式存在,通过帧动画实现动态效果。 4. **音频处理*...
标题中的“java写的一个cpu模拟程序”指的是一个使用Java编程语言开发的计算机程序,它的主要功能是模拟CPU的行为。这个程序允许用户运行汇编语言代码,以便观察和理解CPU如何处理指令。通过这种方式,它为学习...
文章假设读者已熟悉Java编程语言,但对于游戏开发、低级API如OpenGL和DirectX以及Java 3D平台的了解则提供了一定程度的概述。尽管文章没有包含具体的编程示例,但提供了在线代码链接供读者参考。 ### 游戏开发概览 ...
低级迷宫HTML代码低级迷宫HTML代码低级迷宫HTML代码低级迷宫HTML代码低级迷宫HTML代码通常指的是使用HTML、CSS和JavaScript等技术实现的一个简单的迷宫游戏。以下是对低级迷宫HTML代码的介绍: 一、HTML结构 HTML...