상세 컨텐츠

본문 제목

[JAVA] BUBBLE GAME (버블 게임) 1단계

JAVA/Java 응용

by 미로910 2024. 5. 2. 16:27

본문

방향키 (왼쪽, 오른쪽) 으로만 움직일 수 있게 만들기 - 1단계

파일(이미지 파 따로 만들어 놓기)

인터페이스 파일

[Player]

     import javax.swing.ImageIcon;

 

      public class Player extends JLabel implements Moveable {

 

              private int x;

              private int y;

              private ImageIcon playerR, playerL;

 

              public Player() {

                     initData();

                     setInitLayout();

                  }

 

               private void initData() {

                       playerR = new ImageIcon("img/playerR.png");

                       playerL = new ImageIcon("img/playerL.png");

 

                       // 처음 실행 시 초기값 셋팅

                       x = 55;

                       y = 535;

                       setIcon(playerR);

                       setSize(50, 50);

                       setLocation(x, y);

                     }

 

                    private void setInitLayout() {

 

                     }

                   @Override

                    public void left() {

                     // 이미지를 왼쪽으로 보는 이미지로 셋팅

                        setIcon(playerL);

                        x = x - 10;

                       setLocation(x, y);

 

                      }

 

                      @Override

                       public void rigth() {

                           setIcon(playerR);

                            x = x + 10;

                            setLocation(x, y);

 

                      }

 

                      @Override

                       public void up() {

                       System.out.println("점프");

 

                    }

 

                    @Override

                     public void down() {

                     System.out.println("다운");

 

                    }

 

            }

 

 

[BubbleFrame]

 

   import java.awt.event.KeyAdapter;

 

    public class BubbleFrame extends JFrame {

 

               private JLabel backgroundMap;

 

               private Player player;

 

               public BubbleFrame() {

                      initData();

                      setInitLayout();

                      addEventListener();

 

                  }

 

                 private void initData() {

 

                        backgroundMap = new JLabel(new ImageIcon("img/backgroundMap.png"));

                        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

                        setContentPane(backgroundMap); // add 처리

                        setSize(1000, 640);

 

                        player = new Player();

 

                  }

 

                 private void setInitLayout() {

 

                         // 좌표 값으로 배치

                        setLayout(null);

                        setResizable(false); // 프레임 크기 조절 불가

                        setLocationRelativeTo(null); // JFrame 여러분 모니터 가운데 자동 배치

                        setVisible(true);

 

                        add(player);

 

                  }

 

                  private void addEventListener() {

 

                       this.addKeyListener(new KeyAdapter() {

 

                           @Override

                            public void keyPressed(KeyEvent e) {

                                     System.out.println("key code : " + e.getKeyCode());

 

                                     switch (e.getKeyCode()) {

 

                                     case KeyEvent.VK_LEFT:

                                             player.left();

 

                                             break;

                                             case KeyEvent.VK_RIGHT:

                                             player.rigth();

 

                                             break;

                                             case KeyEvent.VK_UP:

                                             player.up();

 

                                             break;

 

                                           }

 

                                  }// end of KeyPressed

 

                         });

 

                  }

 

                  // 코드 테스트

                  public static void main(String[] args) {

                         new BubbleFrame();

 

                    }// end of main

 

                  }

 

 

실행 화면____________________

 

실행을 하면 콘솔창에 출력이 됨

관련글 더보기