import java.applet.*; import java.awt.*; public class MoguraApp extends Applet implements Runnable{ Thread m_MoguraApp = null; int moveInterval = 5000; int totalTime = 30000; int elapseTime =0; boolean isRunning =false; Mogura mogura; int Score = 0; public void init(){ setBackground(Color.white); mogura = new Mogura(); //Moguraクラスのオブジェクトmogura mogura.init(this,220,140); //Moguraクラスでもぐらの性質を定義 resize(320,240); } public void start(){ if(m_MoguraApp == null){ m_MoguraApp = new Thread(this); m_MoguraApp.start(); } } public void run(){ isRunning = true; while(elapseTime < totalTime){ try{ timerAction(); Thread.sleep(moveInterval); elapseTime = elapseTime + moveInterval; }catch(InterruptedException e){stop();} } isRunning = false; repaint(); } public void stop(){ if(m_MoguraApp !=null){ m_MoguraApp.stop(); m_MoguraApp = null; } } public void timerAction(){ mogura.timerAction(); //Moguraクラスでもぐらの位置を定義 repaint(); } public void paint(Graphics g){ mogura.paint(g); //Moguraクラスでもぐらを描画 if(isRunning){ g.drawString("得点 =" + Score,10,20); }else{ g.drawString("得点 =" + Score + "<終了>",10,20); } } public boolean mouseDown(Event evt, int x, int y){ if(mogura.inside(x,y)){ //どのもぐらが叩かれたかチェック mogura.mouseDown(evt,x,y); //もぐらを叩かれたならば、得点加算 } return true; } public void addScore(int Sco){ Score = Score + Sco; } }