Class Hamburger

java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JLayeredPane
miniGame.hamburger.Hamburger
All Implemented Interfaces:
java.awt.event.KeyListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, HamburgerGameConstants, MiniGame

public class Hamburger
extends javax.swing.JLayeredPane
implements MiniGame, HamburgerGameConstants, java.awt.event.KeyListener
Author:
miri 햄버거 게임 실행 되는 메인 클래스
See Also:
Serialized Form
  • Nested Class Summary

    Nested classes/interfaces inherited from class javax.swing.JLayeredPane

    javax.swing.JLayeredPane.AccessibleJLayeredPane

    Nested classes/interfaces inherited from class javax.swing.JComponent

    javax.swing.JComponent.AccessibleJComponent

    Nested classes/interfaces inherited from class java.awt.Container

    java.awt.Container.AccessibleAWTContainer

    Nested classes/interfaces inherited from class java.awt.Component

    java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
  • Field Summary

    Fields
    Modifier and Type Field Description
    private boolean clear  
    private int downKeyCount  
    private boolean gameClear  
    private java.awt.Image gameover  
    private boolean gameOver  
    private int[] hamburgerArray  
    private java.awt.Image image  
    private java.util.ArrayList<java.lang.String> imageArray  
    private int itemcolled  
    private java.awt.Image keyImage  
    private int keyX  
    private int keyY  
    private java.util.TreeMap<java.lang.String,​java.lang.Integer> map  
    private MainPanel_Hamburger parents  
    private int time  
    private boolean timeOver  
    private java.lang.String timePath  
    private javax.swing.Timer timer  
    private java.awt.Image timerImage  

    Fields inherited from class javax.swing.JLayeredPane

    DEFAULT_LAYER, DRAG_LAYER, FRAME_CONTENT_LAYER, LAYER_PROPERTY, MODAL_LAYER, PALETTE_LAYER, POPUP_LAYER

    Fields inherited from class javax.swing.JComponent

    listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW

    Fields inherited from class java.awt.Component

    accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT

    Fields inherited from interface java.awt.image.ImageObserver

    ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
  • Constructor Summary

    Constructors
    Constructor Description
    Hamburger​(MainPanel_Hamburger parents)
    메인 클래스 생성자 생성자
  • Method Summary

    Modifier and Type Method Description
    void checkMakeHamburger()
    문제로 낸 햄버거와 내가 게임에서 만든 햄버거 일치하는지 확인하는 메서드 키보드 리스너에서 담은 맵을 활용하여 비교한다.
    void clear()
    햄버거 게임 1판당 클리어 되었을 때 실행되는 메서드
    void gameOver()
    GAME OVE 되었을 때 실행되는 메서드
    javax.swing.JPanel getQuestionPanel()
    보조 클래스로 만든 햄버거 문제 패널을 생성하고, 사이즈, 위치를 조정하는 메서드
    void keyPressed​(java.awt.event.KeyEvent e)
    키리스너 사용.
    void keyReleased​(java.awt.event.KeyEvent e)  
    void keyTyped​(java.awt.event.KeyEvent e)  
    void makeHamburger​(java.awt.Graphics g)
    햄버거 만들기 메서드 방향키를 누르면 생기는 이미지를 ArrayList에 담아 리페인트 해준다.
    void paintComponent​(java.awt.Graphics g)
    메인 클래스에서 사용되는 그래픽 그림 그리기 부분 보조클래스로 따로 뺀 햄버거 문제 패널을 제외 모든 그림을 그리도록 한다.
    void replayGameYesOrNo​(java.lang.String title, java.lang.String mainText)
    JOp으로 다시 하시겠습니까?
    void setTimerImage()
    타이머 이미지 설정 메서드 초마다 해당되는 숫자 그림을 설정한다.
    void timeOver()
    TIME OVER (타이머에 해당되는 시간이 다 되어 게임이 종료) 되었을 때 나오도록 하는 JOp설정, 키리스너 지우기

    Methods inherited from class javax.swing.JLayeredPane

    addImpl, getAccessibleContext, getComponentCountInLayer, getComponentsInLayer, getComponentToLayer, getIndexOf, getLayer, getLayer, getLayeredPaneAbove, getObjectForLayer, getPosition, highestLayer, insertIndexForLayer, isOptimizedDrawingEnabled, lowestLayer, moveToBack, moveToFront, paint, paramString, putLayer, remove, removeAll, setLayer, setLayer, setPosition

    Methods inherited from class javax.swing.JComponent

    addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI

    Methods inherited from class java.awt.Container

    add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree

    Methods inherited from class java.awt.Component

    action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • parents

      private MainPanel_Hamburger parents
    • keyX

      private int keyX
    • keyY

      private int keyY
    • itemcolled

      private int itemcolled
    • downKeyCount

      private int downKeyCount
    • image

      private java.awt.Image image
    • gameover

      private java.awt.Image gameover
    • keyImage

      private java.awt.Image keyImage
    • timerImage

      private java.awt.Image timerImage
    • gameOver

      private boolean gameOver
    • timeOver

      private boolean timeOver
    • clear

      private boolean clear
    • gameClear

      private boolean gameClear
    • time

      private int time
    • timer

      private javax.swing.Timer timer
    • timePath

      private java.lang.String timePath
    • hamburgerArray

      private int[] hamburgerArray
    • map

      private java.util.TreeMap<java.lang.String,​java.lang.Integer> map
    • imageArray

      private java.util.ArrayList<java.lang.String> imageArray
  • Constructor Details

    • Hamburger

      Hamburger​(MainPanel_Hamburger parents)
      메인 클래스 생성자 생성자
      Parameters:
      parents - 이전 화면에서 해당 패널을 불러올 때 연동하기 위해 사용
  • Method Details

    • paintComponent

      public void paintComponent​(java.awt.Graphics g)
      메인 클래스에서 사용되는 그래픽 그림 그리기 부분 보조클래스로 따로 뺀 햄버거 문제 패널을 제외 모든 그림을 그리도록 한다.
      Overrides:
      paintComponent in class javax.swing.JComponent
    • setTimerImage

      public void setTimerImage()
      타이머 이미지 설정 메서드 초마다 해당되는 숫자 그림을 설정한다.
    • timeOver

      public void timeOver()
      TIME OVER (타이머에 해당되는 시간이 다 되어 게임이 종료) 되었을 때 나오도록 하는 JOp설정, 키리스너 지우기
    • makeHamburger

      public void makeHamburger​(java.awt.Graphics g)
      햄버거 만들기 메서드 방향키를 누르면 생기는 이미지를 ArrayList에 담아 리페인트 해준다.
      Parameters:
      g - 지정할 그래픽
    • getQuestionPanel

      public javax.swing.JPanel getQuestionPanel()
      보조 클래스로 만든 햄버거 문제 패널을 생성하고, 사이즈, 위치를 조정하는 메서드
      Returns:
      보조클래스로 만든 햄버거 문제 패널
    • checkMakeHamburger

      public void checkMakeHamburger()
      문제로 낸 햄버거와 내가 게임에서 만든 햄버거 일치하는지 확인하는 메서드 키보드 리스너에서 담은 맵을 활용하여 비교한다.
    • replayGameYesOrNo

      public void replayGameYesOrNo​(java.lang.String title, java.lang.String mainText)
      JOp으로 다시 하시겠습니까? 네 / 아니오 뜨게 하기
      Parameters:
      title - JOp에 표기될 타이틀
      mainText - JOP에 표기될 내용
    • gameOver

      public void gameOver()
      GAME OVE 되었을 때 실행되는 메서드
    • clear

      public void clear()
      햄버거 게임 1판당 클리어 되었을 때 실행되는 메서드
    • keyTyped

      public void keyTyped​(java.awt.event.KeyEvent e)
      Specified by:
      keyTyped in interface java.awt.event.KeyListener
    • keyPressed

      public void keyPressed​(java.awt.event.KeyEvent e)
      키리스너 사용. 버튼이 눌렸을 때를 인식 화살표 키보드로 햄버거를 만들고, 스페이스바로 제출 내가 키보드를 눌러서 햄버거를 만들 때마다 배열과 맵에 저장되도록 함 문제와 다르게 쌓이는 햄버거는 GAMEOVER 똑같이 만들고 스페이스까지 눌러야 클리어
      Specified by:
      keyPressed in interface java.awt.event.KeyListener
    • keyReleased

      public void keyReleased​(java.awt.event.KeyEvent e)
      Specified by:
      keyReleased in interface java.awt.event.KeyListener