分享

打字母游戏

 古方眼宝_燕子 2017-08-15

 package ceshi;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Panel;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

import javax.swing.JFrame;

public class ceshi {
public static void main(String[] args){
JFrame w=new JFrame();
w.setSize(300, 400);
w.setDefaultCloseOperation(w.EXIT_ON_CLOSE);
MyPanel mp=new MyPanel();
w.add(mp);
Thread t=new Thread(mp);
t.start();
w.addKeyListener(mp);
mp.addKeyListener(mp);
w.show();
}
}
class MyPanel extends Panel implements Runnable,KeyListener{

int x[] =new int[10];
int y[] =new int[10];
char c[]=new char[10];
int score=1000;
MyPanel(){
for(int i=0;i<10;i++){
x[i]= (int)(Math.random()*300);
y[i]= (int)(Math.random()*400);
c[i]= (char)(Math.random()*26+97);
}
}
public void paint(Graphics g){
for(int i=0;i<10;i++){
g.drawString(new Character(c[i]).toString(), x[i], y[i]);
}
g.setColor(Color.red);
g.drawString("你的成绩是:"+score, 5, 15);
}
public void run(){
while(true){
for (int i = 0; i < 10; i++) {
y[i] ++ ;
if(y[i]>400){
y[i] = 0 ;
x[i] = (int)(Math.random()*300) ;
c[i] = (char)(Math.random()*26+97) ;
score -= 100 ;
}
}
try{
Thread.sleep(30) ;
}catch(Exception e){}
repaint() ;
}
}
@Override
public void keyPressed(KeyEvent arg0) {
char keyC = arg0.getKeyChar() ;
int nowY = -1 ;
int nowIndex = -1 ;
for(int i = 0 ; i < 10 ; i ++){
if(keyC==c[i]){
if(y[i]>nowY){
nowY = y[i] ;
nowIndex = i ;
}
}
}
if(nowIndex!=-1){
y[nowIndex] = 0 ;
x[nowIndex] = (int)(Math.random()*300) ;
c[nowIndex] = (char)(Math.random()*26+97) ;
score += 10 ;
}else {
score -= 100 ;
}
}
@Override
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub
}
}

图片

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约