mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-03-11 06:11:50 +09:00
added sources for Slick
Former-commit-id: 1647fa32ef6894bd7db44f741f07c2f4dcdf9054 Former-commit-id: 0e5810dcfbe1fd59b13e7cabe9f1e93c5542da2d
This commit is contained in:
274
lib/slick-source/org/newdawn/slick/tests/TestBox.java
Normal file
274
lib/slick-source/org/newdawn/slick/tests/TestBox.java
Normal file
@@ -0,0 +1,274 @@
|
||||
package org.newdawn.slick.tests;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
import org.newdawn.slick.AppGameContainer;
|
||||
import org.newdawn.slick.BasicGame;
|
||||
import org.newdawn.slick.Color;
|
||||
import org.newdawn.slick.GameContainer;
|
||||
import org.newdawn.slick.Graphics;
|
||||
import org.newdawn.slick.Input;
|
||||
import org.newdawn.slick.SlickException;
|
||||
import org.newdawn.slick.opengl.SlickCallable;
|
||||
import org.newdawn.slick.util.Log;
|
||||
|
||||
/**
|
||||
* A test box containing a bunch of tests that can be used for quickly sanity
|
||||
* checking tests.
|
||||
*
|
||||
* @author kevin
|
||||
*/
|
||||
public class TestBox extends BasicGame {
|
||||
/** The games that have been added */
|
||||
private ArrayList games = new ArrayList();
|
||||
/** The current game */
|
||||
private BasicGame currentGame;
|
||||
/** The index of the current game */
|
||||
private int index;
|
||||
/** The game container */
|
||||
private AppGameContainer container;
|
||||
|
||||
/**
|
||||
* Create a new box containing all the tests
|
||||
*/
|
||||
public TestBox() {
|
||||
super("Test Box");
|
||||
}
|
||||
|
||||
/**
|
||||
* Add a game to the box
|
||||
*
|
||||
* @param game The game to add to the test box
|
||||
*/
|
||||
public void addGame(Class game) {
|
||||
games.add(game);
|
||||
}
|
||||
|
||||
/**
|
||||
* Move to the next game
|
||||
*/
|
||||
private void nextGame() {
|
||||
if (index == -1) {
|
||||
return;
|
||||
}
|
||||
|
||||
index++;
|
||||
if (index >= games.size()) {
|
||||
index=0;
|
||||
}
|
||||
|
||||
startGame();
|
||||
}
|
||||
|
||||
/**
|
||||
* Start a particular game
|
||||
*/
|
||||
private void startGame() {
|
||||
try {
|
||||
currentGame = (BasicGame) ((Class) games.get(index)).newInstance();
|
||||
container.getGraphics().setBackground(Color.black);
|
||||
currentGame.init(container);
|
||||
currentGame.render(container, container.getGraphics());
|
||||
} catch (Exception e) {
|
||||
Log.error(e);
|
||||
}
|
||||
|
||||
container.setTitle(currentGame.getTitle());
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#init(org.newdawn.slick.GameContainer)
|
||||
*/
|
||||
public void init(GameContainer c) throws SlickException {
|
||||
if (games.size() == 0) {
|
||||
currentGame = new BasicGame("NULL") {
|
||||
public void init(GameContainer container) throws SlickException {
|
||||
}
|
||||
|
||||
public void update(GameContainer container, int delta) throws SlickException {
|
||||
}
|
||||
|
||||
public void render(GameContainer container, Graphics g) throws SlickException {
|
||||
}
|
||||
};
|
||||
currentGame.init(c);
|
||||
index = -1;
|
||||
} else {
|
||||
index = 0;
|
||||
container = (AppGameContainer) c;
|
||||
startGame();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#update(org.newdawn.slick.GameContainer, int)
|
||||
*/
|
||||
public void update(GameContainer container, int delta) throws SlickException {
|
||||
currentGame.update(container, delta);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.Game#render(org.newdawn.slick.GameContainer, org.newdawn.slick.Graphics)
|
||||
*/
|
||||
public void render(GameContainer container, Graphics g) throws SlickException {
|
||||
SlickCallable.enterSafeBlock();
|
||||
currentGame.render(container, g);
|
||||
SlickCallable.leaveSafeBlock();
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#controllerButtonPressed(int, int)
|
||||
*/
|
||||
public void controllerButtonPressed(int controller, int button) {
|
||||
currentGame.controllerButtonPressed(controller, button);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#controllerButtonReleased(int, int)
|
||||
*/
|
||||
public void controllerButtonReleased(int controller, int button) {
|
||||
currentGame.controllerButtonReleased(controller, button);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#controllerDownPressed(int)
|
||||
*/
|
||||
public void controllerDownPressed(int controller) {
|
||||
currentGame.controllerDownPressed(controller);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#controllerDownReleased(int)
|
||||
*/
|
||||
public void controllerDownReleased(int controller) {
|
||||
currentGame.controllerDownReleased(controller);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#controllerLeftPressed(int)
|
||||
*/
|
||||
public void controllerLeftPressed(int controller) {
|
||||
currentGame.controllerLeftPressed(controller);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#controllerLeftReleased(int)
|
||||
*/
|
||||
public void controllerLeftReleased(int controller) {
|
||||
currentGame.controllerLeftReleased(controller);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#controllerRightPressed(int)
|
||||
*/
|
||||
public void controllerRightPressed(int controller) {
|
||||
currentGame.controllerRightPressed(controller);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#controllerRightReleased(int)
|
||||
*/
|
||||
public void controllerRightReleased(int controller) {
|
||||
currentGame.controllerRightReleased(controller);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#controllerUpPressed(int)
|
||||
*/
|
||||
public void controllerUpPressed(int controller) {
|
||||
currentGame.controllerUpPressed(controller);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#controllerUpReleased(int)
|
||||
*/
|
||||
public void controllerUpReleased(int controller) {
|
||||
currentGame.controllerUpReleased(controller);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#keyPressed(int, char)
|
||||
*/
|
||||
public void keyPressed(int key, char c) {
|
||||
currentGame.keyPressed(key, c);
|
||||
|
||||
if (key == Input.KEY_ENTER) {
|
||||
nextGame();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#keyReleased(int, char)
|
||||
*/
|
||||
public void keyReleased(int key, char c) {
|
||||
currentGame.keyReleased(key, c);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#mouseMoved(int, int, int, int)
|
||||
*/
|
||||
public void mouseMoved(int oldx, int oldy, int newx, int newy) {
|
||||
currentGame.mouseMoved(oldx, oldy, newx, newy);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#mousePressed(int, int, int)
|
||||
*/
|
||||
public void mousePressed(int button, int x, int y) {
|
||||
currentGame.mousePressed(button, x, y);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#mouseReleased(int, int, int)
|
||||
*/
|
||||
public void mouseReleased(int button, int x, int y) {
|
||||
currentGame.mouseReleased(button, x, y);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see org.newdawn.slick.BasicGame#mouseWheelMoved(int)
|
||||
*/
|
||||
public void mouseWheelMoved(int change) {
|
||||
currentGame.mouseWheelMoved(change);
|
||||
}
|
||||
|
||||
/**
|
||||
* Entry point to our test
|
||||
*
|
||||
* @param argv The arguments to pass into the test
|
||||
*/
|
||||
public static void main(String[] argv) {
|
||||
try {
|
||||
TestBox box = new TestBox();
|
||||
box.addGame(AnimationTest.class);
|
||||
box.addGame(AntiAliasTest.class);
|
||||
box.addGame(BigImageTest.class);
|
||||
box.addGame(ClipTest.class);
|
||||
box.addGame(DuplicateEmitterTest.class);
|
||||
box.addGame(FlashTest.class);
|
||||
box.addGame(FontPerformanceTest.class);
|
||||
box.addGame(FontTest.class);
|
||||
box.addGame(GeomTest.class);
|
||||
box.addGame(GradientTest.class);
|
||||
box.addGame(GraphicsTest.class);
|
||||
box.addGame(ImageBufferTest.class);
|
||||
box.addGame(ImageReadTest.class);
|
||||
box.addGame(ImageTest.class);
|
||||
box.addGame(KeyRepeatTest.class);
|
||||
box.addGame(MusicListenerTest.class);
|
||||
box.addGame(PackedSheetTest.class);
|
||||
box.addGame(PedigreeTest.class);
|
||||
box.addGame(PureFontTest.class);
|
||||
box.addGame(ShapeTest.class);
|
||||
box.addGame(SoundTest.class);
|
||||
box.addGame(SpriteSheetFontTest.class);
|
||||
box.addGame(TransparentColorTest.class);
|
||||
|
||||
AppGameContainer container = new AppGameContainer(box);
|
||||
container.setDisplayMode(800,600,false);
|
||||
container.start();
|
||||
} catch (SlickException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user