engerekcore.java is need to run game
import java.awt.*;
//import javax.swing.*;
public abstract class engerekcore extends engerek{
//ekran modları
private static DisplayMode modes[] = {
new DisplayMode(800,600,32,0),
new DisplayMode(800,600,24,0),
new DisplayMode(800,600,16,0),
new DisplayMode(640,480,32,0),
new DisplayMode(640,480,24,0),
new DisplayMode(640,480,16,0),
};
private boolean running;
protected screen s;
//stop method
public void stop(){
running = false;
}
//call init and gameloop
public void run(){
try{
init();
start();
gameLoop();
}finally{
s.restoreScreen();
}
}
//set to full screen
public void init(){
s = new screen();
DisplayMode dm = s.findFirstCompatibleMode(modes);
s.setFullScreen(dm);
Window w = s.getFullScreenWindow();
w.setFont(new Font("Arial",Font.PLAIN,20));
w.setBackground(Color.white);
w.setForeground(Color.black);
running = true;
}
//main gameLoop
public void gameLoop(){
long startTime = System.currentTimeMillis();
long cumTime = startTime;
while(running){
Graphics2D g = s.getGraphics();
long timePassed = System.currentTimeMillis() - cumTime;
cumTime += timePassed;
if(pause==false){
if(lost!=false){
try{
draw2(g);
g.dispose();
if(continued){
collision();
s.update();
continued = false;
continue;
}
}catch(Exception ex){}
}else
update(timePassed);
draw(g);
g.dispose();
s.update();
}else{
try{
draw3(g);
g.dispose();
s.update();
if(becontinue){
continue;
}
}catch(Exception ex){}
}
try{
Thread.sleep(20);
}catch(Exception ex){}
}
}
//update snake move
public void update(long timePassed){
lastmove += timePassed;
if(lastmove>movedelay){
snakeupdate();
if(growup==true){
seedupdate();
growup = false;
}
lastmove = 0;
}
}
//draw game screen
public abstract void draw(Graphics2D g);
//draw lost screen
public abstract void draw2(Graphics2D g);
//draw pause screen
public abstract void draw3(Graphics2D g);
}
No comments:
Post a Comment