Added splash screen

This commit is contained in:
Ziver Koc 2007-04-12 13:07:35 +00:00
parent 1958c7aa7e
commit 09d872f367
8 changed files with 79 additions and 3 deletions

19
log.txt
View file

@ -1 +1,18 @@
2007-04-08 17:55:07:843 # Loading texture: data/units/tank.png
2007-04-12 15:05:12:500 # Loading texture: data/map/sand.jpg
2007-04-12 15:05:13:015 # Loading texture: data/cursor/cursor.png
2007-04-12 15:05:13:203 # Loading texture: data/units/tank.png
2007-04-12 15:05:13:625 # Adding State: InGameState
2007-04-12 15:05:13:625 # Loading texture: data/loadbar_front.png
2007-04-12 15:05:13:734 # Loading texture: data/loadbar.png
2007-04-12 15:05:13:750 # Loading texture: data/loadbar_back.png
2007-04-12 15:05:13:765 # Adding State: LoadingState
2007-04-12 15:05:13:781 # Loading texture: data/splash.png
2007-04-12 15:05:14:531 # Adding State: SplashState
2007-04-12 15:05:14:531 # Enabling(true) State: SplashState
2007-04-12 15:05:20:968 # Removing State: SplashState
2007-04-12 15:05:20:968 # Enabling(true) State: LoadingState
2007-04-12 15:05:22:593 # Removing State: LoadingState
2007-04-12 15:05:22:593 # Enabling(true) State: InGameState
2007-04-12 15:05:24:562 # Moving: 2, 1
2007-04-12 15:05:25:781 # Moving: 1, 1
2007-04-12 15:05:26:234 # Moving: 4, 3

BIN
raw/media/splash.xcf Normal file

Binary file not shown.

BIN
src/data/splash.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

View file

@ -57,7 +57,6 @@ public class Fade extends Entity{
life += fade;
}
entity.update();
System.out.println(life);
}
public void setEntity(Entity e){

View file

@ -1,6 +1,7 @@
package ei.engine.state;
import ei.engine.input.InputHandler;
import ei.engine.util.MultiPrintStream;
public abstract class GameState {
private String name;
@ -27,6 +28,7 @@ public abstract class GameState {
*/
public void setEnabled(boolean b){
enabled = b;
MultiPrintStream.out.println("Enabling("+b+") State: "+getName());
}
/**

View file

@ -2,6 +2,8 @@ package ei.engine.state;
import java.util.ArrayList;
import ei.engine.util.MultiPrintStream;
public class GameStateManager {
private static GameStateManager instance;
private ArrayList<GameState> gameStates;
@ -17,6 +19,7 @@ public class GameStateManager {
*/
public boolean addState(GameState g){
if(!gameStates.contains(g)){
MultiPrintStream.out.println("Adding State: "+g.getName());
gameStates.add(g);
return true;
}
@ -30,6 +33,7 @@ public class GameStateManager {
*/
public boolean removeState(GameState g){
if(gameStates.contains(g)){
MultiPrintStream.out.println("Removing State: "+g.getName());
gameStates.remove(g);
return true;
}
@ -44,6 +48,7 @@ public class GameStateManager {
public boolean removeStateByName(String name){
int i = getId(name);
if(i >= 0){
MultiPrintStream.out.println("Removing State: "+gameStates.get(i).getName());
gameStates.remove(i);
return true;
}

View file

@ -4,6 +4,7 @@ import ei.engine.LWJGLGameWindow;
import ei.engine.state.GameStateManager;
import ei.game.gamestate.InGameState;
import ei.game.gamestate.LoadingState;
import ei.game.gamestate.SplashState;
public class EI extends LWJGLGameWindow{
public static void main(String[] args){
@ -17,6 +18,7 @@ public class EI extends LWJGLGameWindow{
protected void init(){
GameStateManager.getInstance().addState(new InGameState("InGameState"));
GameStateManager.getInstance().addState(new LoadingState("LoadingState","InGameState"));
GameStateManager.getInstance().setActive("LoadingState");
GameStateManager.getInstance().addState(new SplashState("SplashState","LoadingState"));
GameStateManager.getInstance().setActive("SplashState");
}
}

View file

@ -0,0 +1,51 @@
package ei.game.gamestate;
import ei.engine.LWJGLGameWindow;
import ei.engine.effects.Fade;
import ei.engine.math.Vector2f;
import ei.engine.scene.Sprite;
import ei.engine.state.GameState;
import ei.engine.state.GameStateManager;
public class SplashState extends GameState{
private Fade splash;
private boolean fadeInDone;
private int time;
private String nextState;
public SplashState(String name,String next) {
super(name);
nextState = next;
splash = new Fade("Splash");
Sprite s = new Sprite("Splash","data/splash.png");
s.setLocation(new Vector2f(LWJGLGameWindow.getWidth()/2,LWJGLGameWindow.getHeight()/2));
splash.setEntity(s);
splash.fadeOut(false);
fadeInDone = false;
time = 200;
}
@Override
public void render() {
splash.render();
}
@Override
public void update() {
splash.update();
if(!fadeInDone && splash.isDone()){
time--;
if(time <= 0){
fadeInDone = true;
splash.fadeOut(true);
}
}
else if(fadeInDone && splash.isDone()){
GameStateManager.getInstance().removeState(this);
GameStateManager.getInstance().setActive(nextState);
}
}
}