public void atualizarPosicaoNavios() { ImageIcon img = null; this.limparGrid(true, false); ArrayList<Navio> navios = jogador.getTabuleiro().getNaviosPosicionados(); for (Navio navio : navios) { int x = navio.getPos()[0]; int y = navio.getPos()[1]; for (int j = 1; j <= navio.getTamanho(); j++) { String ori = "h"; if (navio.getOrientacao() == Orientacao.VERTICAL) { ori = "v"; } img = new ImageIcon(getClass().getResource(navio.getCaminhoImagens() + ori + j + ".png")); grid[x][y].setImagemNavio(img); if (navio.getOrientacao() == Orientacao.VERTICAL) { y += 1; } else { x += 1; } } } }
private void mouseOver(int[] pos) { Navio navio = pai.getNavioSelecionado(); ArrayList<Integer[]> coords = this.jogador.getTabuleiro().getCoordenadasNavio(pos, navio); if (Jogo.modoPreparacao) { Color cor = this.corSelecao; if (!jogador.getTabuleiro().coordenadasEstaoLivres(coords)) { cor = this.corSelecaoErro; } for (int i = 0; i < coords.size(); i++) { this.grid[coords.get(i)[0]][coords.get(i)[1]].setHighlightNavio(true); this.grid[coords.get(i)[0]][coords.get(i)[1]].setBackground(cor); this.grid[coords.get(i)[0]][coords.get(i)[1]].setOrientacao(navio.getOrientacao()); } } else { mirar(pos); } }
public void mostrarNaviosMortos() { ArrayList<Navio> navios = jogador.getTabuleiro().getNaviosPosicionados(); for (int i = 0; i < navios.size(); i++) { Navio navio = navios.get(i); if (!navio.isVivo()) { int[] pos = new int[] {navio.getPos()[0], navio.getPos()[1]}; for (int j = 0; j < navio.getTamanho(); j++) { this.grid[pos[0]][pos[1]] .getIcone() .setImagemNavio(new ImageIcon(jogador.getTabuleiro().getCaminhoImagem(pos))); this.grid[pos[0]][pos[1]].updateUI(); if (navio.getOrientacao() == Orientacao.HORIZONTAL) { pos[0]++; } else { pos[1]++; } } } } }