package org.newdawn.slick.tests;
import org.newdawn.slick.*;
import org.newdawn.slick.util.Log;
/**
* Tests the SpriteSheetFont.
*
* @author Onno Scheffers
*/
public class SpriteSheetFontTest extends BasicGame {
/**
* The font we're going to use to render
*/
private Font font;
/**
* Create a new test for font rendering
*/
public SpriteSheetFontTest() {
super("SpriteSheetFont Test");
}
/**
* @see org.newdawn.slick.Game#init(org.newdawn.slick.GameContainer)
*/
public void init(GameContainer container) throws SlickException {
SpriteSheet sheet = new SpriteSheet("testdata/spriteSheetFont.png", 32, 32);
font = new SpriteSheetFont(sheet, ' ');
}
/**
* @see org.newdawn.slick.BasicGame#render(org.newdawn.slick.GameContainer,org.newdawn.slick.Graphics)
*/
public void render(GameContainer container, Graphics g) {
g.setBackground(Color.gray);
font.drawString(80, 5, "A FONT EXAMPLE", Color.red);
font.drawString(100, 50, "A MORE COMPLETE LINE");
}
/**
* @see org.newdawn.slick.BasicGame#update(org.newdawn.slick.GameContainer,int)
*/
public void update(GameContainer container, int delta) throws SlickException {
}
/**
* @see org.newdawn.slick.BasicGame#keyPressed(int, char)
*/
public void keyPressed(int key, char c) {
if (key == Input.KEY_ESCAPE) {
System.exit(0);
}
if (key == Input.KEY_SPACE) {
try {
container.setDisplayMode(640, 480, false);
} catch (SlickException e) {
Log.error(e);
}
}
}
/**
* The container we're using
*/
private static AppGameContainer container;
/**
* Entry point to our test
*
* @param argv The arguments passed in the test
*/
public static void main(String[] argv) {
try {
container = new AppGameContainer(new SpriteSheetFontTest());
container.setDisplayMode(800, 600, false);
container.start();
} catch (SlickException e) {
e.printStackTrace();
}
}
}