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

📄 pz.java

📁 这个是用j2me开发的有关球的碰撞和抛物线运动的小demo
💻 JAVA
字号:
package GameTest1;

import java.util.Random;

import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;

public class PZ extends Canvas implements Runnable {
    int Width,Height;
    int x,y;
    int vx,vy;
    int vg,vf;//重力,摩擦力
    Image ball;
    Random ran;
    public PZ()
    {
    	setFullScreenMode(true);
    	Width=getWidth();
    	Height=getHeight();
    	ran=new Random();
    	x=ran.nextInt(Width);
    	y=0;
    	vx=10;//ran.nextInt(5);
    	vy=0;//ran.nextInt(3);
    	vg=1;
    	vf=1;
    
    	try
    	{
    	ball=Image.createImage("/ball.png");
    	}catch(Exception e)
    	{
    		
    	}
    	new Thread(this).start();
    }
	protected void paint(Graphics g) {
		// TODO Auto-generated method stub
        //		清屏
		g.setColor(255,255,255);
		g.fillRect(0, 0, Width, Height);
        g.drawImage(ball,x,y,Graphics.LEFT | Graphics.TOP);
     
	}

	public void run() {
		// TODO Auto-generated method stub
		while(true)
		{
			vg+=1;
			/*if(vg>10&&y==Height-16)
				vg=1;*/
			x+=vx;
			y+=vy+vg;
			if(x<=0)
			{
				vx+=2;
				vx=-vx;
				x=0;
			}
			if(x>=Width-16)
			{
				    
				vx-=2;	
				vx=-vx;
				x=Width-16;
			}
			if(y>=Height-16)
			{
				vg = vg-4;
				vg = -vg;
				y = getHeight()-16;
				
				//地面撞击造成的水平能量损失,当落地都可以当摩擦阻力使用
				if( Math.abs(vx)>0){
				vx = vx - 1;
				}
			}
			repaint();
			try {
				Thread.sleep(100);
			} catch (InterruptedException e)
			{
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			
		}

	}

}

⌨️ 快捷键说明

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