import java.awt.*; import java.awt.event.*; import java.applet.*; import java.awt.Graphics; import java.awt.Image; import java.awt.Point; import java.awt.Event; import java.lang.Math; import java.util.*; import java.io.*; public class AttentionMines extends Applet implements Runnable{ static int size; static int dir =0; static boolean dead = false; static Point[] pos_mines = {new Point(0,0),new Point(0,0),new Point(0,0),new Point(0,0),new Point(0,0)}; Point Mon_point = new Point(0,0); Image img_mine; Image img_bonhomme; Image img_bonhommeex; Image img_home; Image img_school; Image img_fond; Thread runner; public void init() { Mon_point.move(470,275); img_mine = getImage(getCodeBase(),"mine.gif"); img_bonhomme = getImage(getCodeBase(),"bonhomme.gif"); img_home = getImage(getCodeBase(),"home.gif"); img_school = getImage(getCodeBase(),"school.gif"); img_fond = getImage(getCodeBase(),"fond.gif"); img_bonhommeex = getImage(getCodeBase(),"bonhommeex.gif"); prepareImage(img_mine, this); prepareImage(img_bonhomme, this); prepareImage(img_home, this); prepareImage(img_school, this); prepareImage(img_fond, this); pos_mines[0].x = 100; pos_mines[0].y = 50; pos_mines[1].x = 300; pos_mines[1].y = 100; pos_mines[2].x = 150; pos_mines[2].y = 150; pos_mines[3].x = 450; pos_mines[3].y = 230; dead = false; } public void start() { if(runner==null) { runner = new Thread(this); runner.start(); } } public void stop() { if(runner!=null) { runner.stop(); runner = null; } } public void run() { int index = 0; boolean paint = true; while(true) { if (dead == false) { if(dir == 1) { Mon_point.move(Mon_point.x-10,Mon_point.y); paint = true; } else if(dir == 2) { Mon_point.move(Mon_point.x,Mon_point.y+10); paint = true; } else if(dir == 3) { Mon_point.move(Mon_point.x+10,Mon_point.y); paint = true; } else if(dir == 4) { Mon_point.move(Mon_point.x,Mon_point.y-10); paint = true; } dir=0; index = 0; while (pos_mines[index].x + pos_mines[index].y != 0) { if ((Mon_point.x < pos_mines[index].x + 15) & (Mon_point.x > pos_mines[index].x - 15) & (Mon_point.y < pos_mines[index].y + 5) & (Mon_point.y > pos_mines[index].y - 15)) { dead = true; paint = true; } index = index + 1; } } if (paint) { repaint(); paint = false; } try{ Thread.sleep(65); } catch(InterruptedException e) { } } } public void update(Graphics g) { int index = 0; Font currFont; Graphics g3 = g.create(); g3.drawImage(img_fond, 0, 0, 500, 300,this); g3.dispose(); Graphics g2 = g.create(); currFont = new Font("Arial", 1, 25); g2.setFont(currFont); //g.fillRect(0,0,getSize().width, getSize().height); while (pos_mines[index].x + pos_mines[index].y != 0) { g2.drawImage(img_mine, pos_mines[index].x, pos_mines[index].y, 20, 20,this); index = index + 1; } g2.drawImage(img_school, 0, 20, 80, 40,this); // g.drawImage(img_home, 460, 258, 40, 40,this); if (dead == true) { g2.drawImage(img_bonhommeex, Mon_point.x, Mon_point.y, 20, 20,this); g2.setColor(Color.black); g2.drawString("Vous avez perdu !!!", 148, 148); g2.setColor(Color.red); g2.drawString("Vous avez perdu !!!", 150, 150); } else { g2.drawImage(img_bonhomme, Mon_point.x, Mon_point.y, 20, 20,this); } // Draw the upper left 100x100 portion of another image at 10,10 g2.drawImage(img_home, 460, 258, 40, 40,this); g2.dispose(); } public boolean keyDown(Event evt, int key) { if(key == Event.UP) { dir=4; return true; } else if(key == Event.LEFT) { dir=1; return true; } else if(key == Event.DOWN) { dir=2; return true; } else if(key == Event.RIGHT) { dir=3; return true; } dir=0; return false; } }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question