Advertisement
Guest User

Untitled

a guest
Oct 10th, 2013
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.25 KB | None | 0 0
  1. package Game;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Graphics;
  5. import java.awt.Graphics2D;
  6. import java.awt.Image;
  7. import java.awt.Toolkit;
  8. import java.awt.event.ActionEvent;
  9. import java.awt.event.ActionListener;
  10. import java.awt.event.KeyAdapter;
  11. import java.awt.event.KeyEvent;
  12. import javax.swing.JPanel;
  13. import javax.swing.Timer;
  14.  
  15. public class Board extends JPanel {
  16.  
  17.     private final String IMAGE_PATH_DOWN1 = "C:\\Users\\дНМ\\workspace\\Game\\image\\Down_Pic1.png";
  18.     private final String IMAGE_PATH_DOWN2 = "C:\\Users\\дНМ\\workspace\\Game\\image\\Down_Pic2.png";
  19.  
  20.     private final String IMAGE_PATH_RIGHT1 = "C:\\Users\\дНМ\\workspace\\Game\\image\\Right_Pic1.png";
  21.     private final String IMAGE_PATH_RIGHT2 = "C:\\Users\\дНМ\\workspace\\Game\\image\\Right_Pic2.png";
  22.  
  23.     private final String IMAGE_PATH_TOP1 = "C:\\Users\\дНМ\\workspace\\Game\\image\\Top_Pic1.png";
  24.     private final String IMAGE_PATH_TOP2 = "C:\\Users\\дНМ\\workspace\\Game\\image\\Top_Pic2.png";
  25.  
  26.     private final String IMAGE_PATH_LEFT = "C:\\Users\\дНМ\\workspace\\Game\\image\\Left_Pic1.png";
  27.     private final String IMAGE_PATH_LEFT2 = "C:\\Users\\дНМ\\workspace\\Game\\image\\Left_Pic2.png";
  28.  
  29.     private final String IMAGE_PATH_MAP_Z = "C:\\Users\\дНМ\\workspace\\Game\\image\\Map_Z.png";
  30.  
  31.     private static final long serialVersionUID = 1L;
  32.     private Thing thing;
  33.     private Timer repaintTimer;
  34.  
  35.     private Image imgCs;
  36.     private Image imgMap;
  37.     private static int speed = 3;
  38.  
  39.     public Board() {
  40.         init();
  41.  
  42.     }
  43.  
  44.     private void init() {
  45.  
  46.         setFocusable(true);
  47.         setDoubleBuffered(true);
  48.         addKeyListener(new KeyHandler());
  49.         setBackground(Color.BLACK);
  50.         thing = new Thing();
  51.  
  52.         imgCs = Toolkit.getDefaultToolkit().getImage(IMAGE_PATH_DOWN1);
  53.         imgMap = Toolkit.getDefaultToolkit().getImage(IMAGE_PATH_MAP_Z);
  54.  
  55.         repaintTimer = new Timer(50, new ActionListener() {
  56.  
  57.             @Override
  58.             public void actionPerformed(ActionEvent e) {
  59.                 repaint();
  60.             }
  61.         });
  62.  
  63.         repaintTimer.start();
  64.     }
  65.  
  66.     @Override
  67.     public void paint(Graphics g) {
  68.         super.paint(g);
  69.  
  70.         Graphics2D g2d = (Graphics2D) g;
  71.  
  72.         int width = imgCs.getWidth(this);
  73.         int height = imgCs.getHeight(this);
  74.  
  75.         int scale = 4;
  76.         speed = 3;
  77.  
  78.         int w = scale * width;
  79.         int h = scale * height;
  80.        
  81.         //MAP START!
  82.         int widthMap = imgMap.getWidth(this);
  83.         int heightMap = imgMap.getHeight(this);
  84.         int scalem = 4;
  85.         int wm = scalem * widthMap;
  86.         int hm = scalem * heightMap;
  87.        
  88.            for (int s = 0; s < wm * 10; s += wm) {
  89.                 for (int i = 0; i < hm * 10; i += hm) {
  90.                     g2d.drawImage(imgMap, thing.getX()+s, thing.getY()+i,(int) wm, (int) hm, this);
  91.                    
  92.                 }
  93.             }
  94.         //MAP END
  95.        
  96.         g2d.drawImage(imgCs, thing.getX() * speed, thing.getY() * speed,
  97.                 (int) w, (int) h, this);
  98.    
  99.         Toolkit.getDefaultToolkit().sync();
  100.        
  101.     }
  102.  
  103.     private class KeyHandler extends KeyAdapter {
  104.  
  105.         @Override
  106.         public void keyPressed(KeyEvent e) {
  107.             thing.pressed(e.getKeyCode());
  108.             // LEFT!!!
  109.             if (e.getKeyCode() == KeyEvent.VK_LEFT) {
  110.                 if ((thing.getX() * speed % 2) == 0) {
  111.                     imgCs = Toolkit.getDefaultToolkit().getImage(
  112.                             IMAGE_PATH_LEFT);
  113.  
  114.                 } else {
  115.                     imgCs = Toolkit.getDefaultToolkit().getImage(
  116.                             IMAGE_PATH_LEFT2);
  117.                 }
  118.             }
  119.             // RIGHT!
  120.             if (e.getKeyCode() == KeyEvent.VK_RIGHT) {
  121.  
  122.                 imgCs = Toolkit.getDefaultToolkit().getImage(IMAGE_PATH_RIGHT1);
  123.                 if ((thing.getX() * speed % 2) == 0) {
  124.                     imgCs = Toolkit.getDefaultToolkit().getImage(
  125.                             IMAGE_PATH_RIGHT1);
  126.                 } else {
  127.  
  128.                     imgCs = Toolkit.getDefaultToolkit().getImage(
  129.                             IMAGE_PATH_RIGHT2);
  130.                 }
  131.             }
  132.             // DOWN!
  133.             if (e.getKeyCode() == KeyEvent.VK_DOWN) {
  134.                 if ((thing.getY() * speed % 2) == 0) {
  135.                     imgCs = Toolkit.getDefaultToolkit().getImage(
  136.                             IMAGE_PATH_DOWN1);
  137.  
  138.                 } else {
  139.                     imgCs = Toolkit.getDefaultToolkit().getImage(
  140.                             IMAGE_PATH_DOWN2);
  141.  
  142.                 }
  143.  
  144.             }
  145.             // UP!
  146.             if (e.getKeyCode() == KeyEvent.VK_UP) {
  147.                 if ((thing.getY() * speed % 2) == 0) {
  148.  
  149.                     imgCs = Toolkit.getDefaultToolkit().getImage(
  150.                             IMAGE_PATH_TOP1);
  151.  
  152.                 } else {
  153.                     imgCs = Toolkit.getDefaultToolkit().getImage(
  154.                             IMAGE_PATH_TOP2);
  155.  
  156.                 }
  157.  
  158.             }
  159.  
  160.         }
  161.  
  162.         @Override
  163.         public void keyReleased(KeyEvent e) {
  164.             //
  165.         }
  166.  
  167.     }
  168. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement