import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import java.io.File; import java.io.IOException; import java.util.Random; import javax.imageio.ImageIO; /** 敌人类,也可以叫苹果类 * @author Mr.xiao * */ public class Emery { public char c; //苹果上的字母 public int x = 60, y = 0; // 敌人出现的坐标 public final int XSPEED=5,YSPEED=2; //苹果xy方向移动的速度 public int center; //初始中心值 public boolean turnleft = true; //是否向左移动 public boolean alive = true; //是否活着 public Random ran = new Random(); //随机数的种子 public TypeFrame tf=null; //所属的框架 public Image appleimg = null; //苹果的图片 public Image bg = Toolkit.getDefaultToolkit().getImage("bg.jpg"); //背景图片 public Emery(TypeFrame tf) { this.tf=tf; x = randomlocation(); //得到随机合格的随机x坐标 y=ran.nextInt(20); //得到随机的y坐标 if(ran.nextInt(2)==0){ turnleft=true; }else { turnleft=false; } center = x; //设置初始中心值为x c=randomchar(); //得到随机的字母值 try { appleimg = ImageIO.read(new File("apple.gif")); //苹果的图片 } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public void draw(Graphics g) { Color color = g.getColor(); //得到上下文颜色 g.setColor(Color.red); //设置上下文颜色 g.setFont(new Font("Dialog", 4, 40)); //设置字体 if (alive) { g.drawImage(appleimg, x, y, null); //绘制苹果图片 g.drawString(c+ "", x + 20, y + 60); //绘制苹果字母 } g.setColor(color); //将上下文颜色设置回去 } public int randomlocation(){ //产生苹果的随机横坐标的函数 int x1=ran.nextInt(TypeFrame.GAME_WIDTH - 40); for (int i = 0; i < tf.apples.size(); i++) { if(Math.abs(x1-tf.apples.get(i).x)<60){ return randomlocation(); } } return x1; } public char randomchar(){ //产生不与存在的苹果字母相同的字母的方法 char ch=(char)('a'+ran.nextInt(26)); for (int i = 0; i < tf.apples.size(); i++) { if(ch==tf.apples.get(i).c) return randomchar(); } return ch; } }
最近下载更多
942395729 LV1
2023年6月30日
655982592 LV2
2023年5月11日
liuhao475230970 LV1
2022年12月4日
Cokkey LV1
2022年6月5日
闫小玥 LV8
2021年12月22日
hrbylw LV8
2021年9月16日
pipichao LV6
2021年6月20日
1972195660 LV1
2021年6月7日
Czhiyi LV6
2021年4月12日
asfaij LV1
2020年12月22日
最近浏览更多
zryljh LV1
8月27日
azzzz1 LV2
6月26日
陈小灏 LV15
1月9日
wangjialiang1 LV17
2023年8月24日
22111303117 LV1
2023年8月21日
你们的代码都是我的了 LV16
2023年8月21日
zz1230012300 LV11
2023年7月20日
942395729 LV1
2023年6月30日
2385649653 LV7
2023年6月25日
655982592 LV2
2023年5月11日