Class MapLayersManager


  • public class MapLayersManager
    extends java.lang.Object
    This class manages all map layers (object layer, physical layer, tile layer)
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private javax.swing.JPanel cellSet  
      private LevelEditor editor  
      private int height  
      private java.util.LinkedList<java.awt.image.BufferedImage> imagesOfTiles  
      private Map map  
      private javax.swing.JLayeredPane mapLayers  
      private javax.swing.JPanel objectSet  
      private javax.swing.JPanel tileSet  
      private javax.swing.JLayeredPane view  
      private int width  
    • Method Summary

      Modifier and Type Method Description
      javax.swing.JPanel getCellSet()  
      javax.swing.JLayeredPane getMapLayers()  
      javax.swing.JPanel getObjectSet()  
      javax.swing.JPanel getTileSet()  
      protected void repaintCellSet()
      Creates new Physical layer from map cell matrix (mapArray)
      protected void repaintObjectset()
      Creates new Object layer from map foreground matrix
      protected void repaintSets()
      Repaints all layers
      protected void repaintTileset()
      Creates new Tile layer from map background matrix
      private void setCellIcon​(javax.swing.JLabel cell, int i, int j)
      Sets cell a corresponding icon from cellMap dictionary
      private void setDoorImage​(javax.swing.JLabel cell, java.lang.String[] info)
      Sets corresponding image to a door cell (and one cell above/lower)
      private java.awt.image.BufferedImage tilify​(java.awt.image.BufferedImage img, boolean isUp)
      Converts regulat image (50x50px) to a half block (upper or lower)
      private java.awt.image.BufferedImage toBufferedImage​(java.awt.Image img)
      Converts image to buffered image
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • view

        private final javax.swing.JLayeredPane view
      • map

        private final Map map
      • imagesOfTiles

        private java.util.LinkedList<java.awt.image.BufferedImage> imagesOfTiles
      • mapLayers

        private final javax.swing.JLayeredPane mapLayers
      • objectSet

        private final javax.swing.JPanel objectSet
      • cellSet

        private final javax.swing.JPanel cellSet
      • tileSet

        private final javax.swing.JPanel tileSet
      • width

        private final int width
      • height

        private final int height
    • Constructor Detail

      • MapLayersManager

        public MapLayersManager​(LevelEditor editor)
    • Method Detail

      • repaintSets

        protected void repaintSets()
        Repaints all layers
      • repaintObjectset

        protected void repaintObjectset()
        Creates new Object layer from map foreground matrix
      • repaintCellSet

        protected void repaintCellSet()
        Creates new Physical layer from map cell matrix (mapArray)
      • repaintTileset

        protected void repaintTileset()
        Creates new Tile layer from map background matrix
      • setCellIcon

        private void setCellIcon​(javax.swing.JLabel cell,
                                 int i,
                                 int j)
        Sets cell a corresponding icon from cellMap dictionary
        Parameters:
        cell - is cell to ba updated
        i - is cell's Y value
        j - is cell's X value
      • toBufferedImage

        private java.awt.image.BufferedImage toBufferedImage​(java.awt.Image img)
        Converts image to buffered image
        Parameters:
        img - is image to be converted
        Returns:
        converted image
      • tilify

        private java.awt.image.BufferedImage tilify​(java.awt.image.BufferedImage img,
                                                    boolean isUp)
        Converts regulat image (50x50px) to a half block (upper or lower)
        Parameters:
        img - is image to be tilified
        isUp - is an upper block
        Returns:
        tilified image
      • setDoorImage

        private void setDoorImage​(javax.swing.JLabel cell,
                                  java.lang.String[] info)
        Sets corresponding image to a door cell (and one cell above/lower)
        Parameters:
        cell - is cell to be updated
        info - cell text value
      • getMapLayers

        public javax.swing.JLayeredPane getMapLayers()
      • getObjectSet

        public javax.swing.JPanel getObjectSet()
      • getCellSet

        public javax.swing.JPanel getCellSet()
      • getTileSet

        public javax.swing.JPanel getTileSet()