hello
i have make a mini game as with the coding below
i have only 2 classes..MIDlet and canvas
i wish to make a timer which limit the game time to 30 sec
i have done some coding but end up failure...
can any please help me?
thank you in advance
ps.formatTime is my first work.. n the public void run is my second..but both are not working
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
| public class BetweenCanvas extends Canvas{
int ans; int bomb; String name = "Enter"; int tick = 950; int ntick = tick; static String my = "1:00"; String myTime= my; boolean winGame; long startTime = System.currentTimeMillis(); public BetweenCanvas(){ randomNumber();
}
protected void randomNumber(){ Random ranA = new Random(); Random ranB = new Random(); Random minus = new Random(); ans = Math.abs(ranA.nextInt())%9; bomb = Math.abs(ranB.nextInt())%9; int mi = Math.abs(minus.nextInt())%3; if (ans==bomb){ bomb = bomb-mi; }
if ((ans==0)||(ans==0)){ randomNumber(); }
if ((bomb==0)||(bomb<0)){ randomNumber(); }
} public void run() { while(System.currentTimeMillis() - startTime <= 30000) winGame = false; }
protected void keyPressed(int keyCode){ if (keyCode==KEY_NUM1){ if (ans==1){ name = "Bingo"; } if (bomb==1) name = "bb"; }
} repaint(); }
public String formatTime(){ if((ntick/16)+1 != tick){ myTime=""; tick = (ntick/16)+1; int small = tick%60; int big = tick / 60; myTime += big + ":"; if (small / 10<1){ myTime+="0"; } myTime+=small; } return(myTime); } public void paint (Graphics g) { g.setColor(255,255,255); g.fillRect(0,0, getWidth(),getHeight()); g.setColor(0,0,0); g.drawString("Time: " + startTime/1000,20,40,Graphics.LEFT|Graphics.TOP); } } |