CaidaLibre.java

Categorías: CategoryJava | CategoryProgramacion

   1 import java.awt.*;
   2 import java.awt.event.KeyEvent;
   3 import java.awt.event.KeyListener;
   4 
   5 
   6 class Pacman{
   7         private int posX,posY;
   8         public Pacman(int x, int y){
   9                 posX=x;
  10                 posY=y; 
  11                 }
  12         public void paint (Graphics g){
  13                         
  14                 g.setColor(Color.WHITE);
  15                 g.drawRect(0,0,1010,700);
  16             g.drawRect(1,1,1010,700);
  17             g.drawRect(2,2,1010,700);
  18             
  19             if(posX<=982){
  20                 if(posX<-20){
  21                         g.setColor(Color.YELLOW);
  22                     g.fillOval(posX+982,posY,30,30);
  23                         g.setColor(Color.BLACK);
  24                         g.fillArc(posX+982, posY, 30, 30, 325, 65);
  25                 }
  26                 g.setColor(Color.YELLOW);
  27             g.fillOval(posX,posY,30,30);
  28                 g.setColor(Color.BLACK);
  29                 g.fillArc(posX, posY, 30, 30, 325, 65);
  30             }
  31             else{
  32                 g.setColor(Color.YELLOW);
  33             g.fillOval(posX-982,posY,30,30);
  34                 g.setColor(Color.BLACK);
  35                 g.fillArc(posX-982, posY, 30, 30, 325, 65);
  36             }
  37             
  38             if(posY<=680){
  39                 if(posY<-2){
  40                         g.setColor(Color.YELLOW);
  41                     g.fillOval(posX,posY+680,30,30);
  42                         g.setColor(Color.BLACK);
  43                         g.fillArc(posX, posY+680, 30, 30, 325, 65);
  44                 }
  45                 g.setColor(Color.YELLOW);
  46             g.fillOval(posX,posY,30,30);
  47                 g.setColor(Color.BLACK);
  48                 g.fillArc(posX, posY, 30, 30, 325, 65);
  49             }
  50             else{
  51                 g.setColor(Color.YELLOW);
  52             g.fillOval(posX,posY-680,30,30);
  53                 g.setColor(Color.BLACK);
  54                 g.fillArc(posX, posY-680, 30, 30, 325, 65);
  55             }
  56             
  57             
  58         }       
  59         public void incX(){
  60                 posX+=10;
  61         }
  62         public void incY(){
  63                 posY+=10;
  64         }
  65         public void decX(){
  66                 posX-=10;
  67         }
  68         public void decY(){
  69                 posY-=10;
  70         }
  71 }
  72 
  73 class Lienzo extends Canvas{
  74         private Pacman pacman;
  75         public Lienzo (final Pacman p){
  76                 pacman=p;
  77         }
  78         public void paint(Graphics g){
  79                 pacman.paint(g);
  80         }
  81 }
  82 class EscucharTeclas implements KeyListener {
  83         private Pacman pacman;
  84         private Lienzo lienzo;
  85         public EscucharTeclas(Pacman p, Lienzo l){
  86                 pacman=p;
  87                 lienzo=l;
  88         }
  89         
  90         public void keyPressed(KeyEvent e) {
  91                 int tecla=e.getKeyCode();
  92                 switch(tecla){
  93                 case KeyEvent.VK_RIGHT:
  94                         pacman.incX();
  95                         lienzo.repaint();
  96                         break;
  97                 case KeyEvent.VK_LEFT:
  98                         pacman.decX();
  99                         lienzo.repaint();
 100                         break;
 101                 case KeyEvent.VK_UP:
 102                         pacman.decY();
 103                         lienzo.repaint();
 104                         break;
 105                 case KeyEvent.VK_DOWN:
 106                         pacman.incY();
 107                         lienzo.repaint();
 108                         break;
 109                         }
 110                 }
 111         
 112         public void keyReleased(KeyEvent e) {
 113                 // TODO Auto-generated method stub
 114                 }
 115         public void keyTyped(KeyEvent e) {
 116                 // TODO Auto-generated method stub
 117                 }
 118         }
 119 
 120 public class JuegoPacman {
 121         public static void main (String[]args){
 122                 Frame marco=new Frame ("Pacman Game");
 123                 Pacman pacman=new Pacman(10,10);
 124                 Lienzo lienzo=new Lienzo(pacman);
 125                 EscucharTeclas escucha=new EscucharTeclas(pacman,lienzo);
 126                 marco.add(lienzo);
 127                 marco.addKeyListener(escucha);
 128             marco.setSize(1050,800);
 129             marco.setBackground(Color.BLACK);
 130                 marco.setVisible(true); 
 131         }
 132 }

Java/Programas/CaidaLibre.java (last edited 2008-04-20 14:40:31 by localhost)