keyinputs.class is to use keylistener and keybord inputs
import java.awt.event.*;
import java.awt.*;
public class keyinputs extends engerekcore implements KeyListener{
public static void main(String[] args){
new keyinputs().run();
}
public String tostring(int a){
return mess+""+a;
}
public String tostring2(int a){
return mess3+""+a;
}
public int getsonrakiyon(){
return sonrakiyon;
}
public void init(){
super.init();
Window w = s.getFullScreenWindow();
w.setFocusTraversalKeysEnabled(false);
w.addKeyListener(this);
}
//keypressed
public void keyPressed(KeyEvent e){
int keyCode = e.getKeyCode();
if(keyCode == KeyEvent.VK_ENTER){//to stop //oyunu durdurur
pause = true;
becontinue = false;
}
if(keyCode == KeyEvent.VK_SPACE){
pause = false;
becontinue = true;
}
if(keyCode == KeyEvent.VK_BACK_SPACE)
continued = true;
if(keyCode == KeyEvent.VK_ESCAPE){//to exit //oyundan çıkar
stop();
}else{
yon = sonrakiyon;
if(keyCode == KeyEvent.VK_W)
if(yon!=kuzey && yon!=guney)
sonrakiyon = kuzey;
if(keyCode == KeyEvent.VK_S)
if(yon!=guney && yon!=kuzey)
sonrakiyon = guney;
if(keyCode == KeyEvent.VK_A)
if(yon!=bati && yon!=dogu)
sonrakiyon = bati;
if(keyCode == KeyEvent.VK_D)
if(yon!=dogu && yon!=bati)
sonrakiyon = dogu;
e.consume();
}
}
//keyReleased
public void keyReleased(KeyEvent e){
e.consume();
}
//last method from interface
public void keyTyped(KeyEvent e){
e.consume();
}
//engerekcoredaki draw metoduyla eş zamanlı çalışır//run in the same time with draw method in engerekcore
public synchronized void draw(Graphics2D g){
Window w = s.getFullScreenWindow();//tam ekrana geçiş
g.setColor(w.getBackground());//arka ekran rengi
g.fillRect(0, 0, s.getWidth(), s.getHeight());
g.setColor(w.getForeground());//ön ekran rengi
g.setFont(new Font("Matisse ITC",1,18));//yazı biçimi
for(int i=0;i<coord.size();i++)//yılanın ekrana bastırılması //drawing snake
g.drawImage(coord.get(i).gethead(),coord.get(i).getx(),coord.get(i).gety(),null);
for(int j=0;j<=780;j+=20){
g.drawImage(wall,j,0,null);
g.drawImage(wall,j,560,null);
}
for(int k=0;k<=560;k+=20){
g.drawImage(wall,0,k,null);
g.drawImage(wall,780,k,null);
}
for(int m = 0;m<8;m++)//yemin ekrana bastırılması //drawing seed
g.drawImage(food.get(m).gethead(),food.get(m).getx(),food.get(m).gety(),null);
g.drawString(tostring(score),570 ,595);
g.drawString(mess2,100,595);
g.drawString(tostring2(dead), 300, 595);
}
public synchronized void draw2(Graphics2D g){
Window w = s.getFullScreenWindow();
g.setColor(w.getBackground());
g.fillRect(0, 0, s.getWidth(), s.getHeight());
g.setColor(w.getForeground());
g.setFont(new Font("Matisse ITC",1,50));
g.drawString(mess5, 300, 250);
g.drawString(mess6, 100, 350);
}
public synchronized void draw3(Graphics2D g){
Window w = s.getFullScreenWindow();
g.setColor(w.getBackground());
g.fillRect(0, 0, s.getWidth(), s.getHeight());
g.setColor(w.getForeground());
g.setFont(new Font("Matisse ITC",1,50));
g.drawString(mess4, 300, 250);
}
}
No comments:
Post a Comment