1 package code
.kalter
.longflight
.screen
;
3 import code
.kalter
.longflight
.Loader
;
4 import code
.kalter
.longflight
.LongFlight
;
5 import code
.kalter
.longflight
.Quote
;
6 import code
.kalter
.longflight
.Sprite
;
7 import code
.kalter
.longflight
.StringReader
;
8 import java
.io
.IOException
;
9 import java
.io
.InputStream
;
10 import java
.util
.Random
;
11 import javax
.microedition
.lcdui
.Image
;
18 public class Loading
extends Screen
{
20 private static final long SLEEP
= 8000;
22 private final int COUNT
; // of quots
23 private final Quote
[] quote
;
25 private final Sprite loading
;
28 private long lastTime
;
30 public Loading() throws IOException
{
31 final InputStream file
= getClass().getResourceAsStream("/quote.txt");
32 final StringReader reader
= new StringReader(file
);
33 COUNT
= reader
.nextInt();
34 quote
= new Quote
[COUNT
];
35 for (int i
= 0; i
< COUNT
; i
++) {
36 String q
= reader
.nextString(); // quote
37 String a
= reader
.nextString(); // author
38 quote
[i
] = new Quote(q
, a
);
42 Loader loader
= Loader
.getInstance();
45 Image loadingImage
= loader
.getImage("/gfx/loading/loading.png");
46 int loadingX
= screenW
- loadingImage
.getWidth();
48 loading
= new Sprite(loadingImage
, loadingX
, loadingY
);
53 lastTime
= System
.currentTimeMillis();
54 quoteID
= new Random().nextInt(COUNT
);
60 while (getGameLoop()) {
64 LongFlight
.link
.sleep(20);
67 LongFlight
.link
.setScreen(LongFlight
.GAME
);
70 private void update() {
71 if (System
.currentTimeMillis() - lastTime
> SLEEP
) {
76 private void paint() {
78 graphics
.setColor(0x002C40);
79 graphics
.fillRect(0, 0, screenW
, screenH
);
80 graphics
.setColor(0x004C6F);
81 graphics
.fillRect(0, 22, screenW
, 2);
82 loading
.paint(graphics
);
85 String quoteText
= quote
[quoteID
].getQuote();
88 int quoteHeight
= screenW
- 10;
89 font
.paint(graphics
, quoteText
, quoteX
, quoteY
, quoteHeight
);
92 String author
= quote
[quoteID
].getAuthor();
94 int authorY
= 18 + quoteY
+ font
.getHeight(quoteText
, quoteHeight
);
95 int authorHeight
= screenW
- 10;
96 font
.paint(graphics
, author
, authorX
, authorY
, authorHeight
);