private void initGrid() {
        int address = 0;
        for (int a = 0; a < cellGrid.length; a++) {
            for (int b = 0; b < cellGrid[a].length; b++) {
                CellImpl cell = new CellImpl(address);
                
                if (a % 2 != 0) {
                    cellGrid[a][9 - b] = cell;
                    
                    GameFeature gf = GlobalConstants.boardData[a][9 - b];
                    if (gf != null) {
                        if (gf.getType() == GameFeatureType.LADDER) {
                            cell.setBackground(new Color(196,196,255));
                        } else {
                            cell.setBackground(new Color(255,196,196));
                        }
                    }
                } else {
                    cellGrid[a][b] = cell;
                    
                    GameFeature gf = GlobalConstants.boardData[a][b];
                    if (gf != null) {
                        if (gf.getType() == GameFeatureType.LADDER) {
                            cell.setBackground(new Color(196,196,255));
                        } else {
                            cell.setBackground(new Color(255,196,196));
                        }
                    }
                }
                address++;
            }
        }

        
        
        gridPanel = new JPanel();
    }